Code Monkey home page Code Monkey logo

otterkit's Introduction

Otterkit COBOL Compiler

Otterkit is a free and open source compiler for the COBOL Programming Language on the .NET platform.

Warning: The project is currently in pre-release, so not all of the standard has been implemented.

About

COBOL was created in 1959 by the CODASYL Committee (With Rear Admiral Grace Hopper as a technical consultant to the committee), its design follows Grace Hopper's belief that programs should be written in a language that is close to English. It prioritizes readability, reliability, and long-term maintenance. The language has been implemented throughout the decades on many platforms with many dialects. Otterkit COBOL is a free and open source compiler that aims to implement the ISO/IEC 1989:2023 COBOL Standard (COBOL 2023) on the .NET platform.

Installation

Quick Install

Otterkit is available to install on the Nuget package manager (.NET 7 is required). To install, type these two lines into the command line:

dotnet new install Otterkit.Templates::1.0.45-alpha

dotnet tool install --global Otterkit --version 1.0.50-alpha

Build from Source

First, run the git clone command, with the relevant arguments:

git clone https://github.com/otterkit/otterkit.git --recurse-submodules --remote-submodules

The recurse-submodules and remote-submodules flags are needed to access the libotterkit submodule inside.

Then, navigate into the otterkit/src folder (for the compiler, not libotterkit) and then type dotnet run into the command line to run and test if everything is working.

Build from Source on MacOS (For Intel and Apple Silicon processors)

After clone the git repo navigate into the src folder and type:

dotnet run new app   

For build the COBOL file type:

dotnet run build -e ${COBOLFILEPATH} --free       

For build and run the COBOL file type:

dotnet run build --run -e ${COBOLFILEPATH} --free          

Sponsors and Open Source Support

Open Source Support

JetBrains Logo (Main) logo.

Standard Acknowledgement

Any organization interested in reproducing the COBOL standard and specifications in whole or in part, using ideas from this document as the basis for an instruction manual or for any other purpose, is free to do so. However, all such organizations are requested to reproduce the following acknowledgment paragraphs in their entirety as part of the preface to any such publication (any organization using a short passage from this document, such as in a book review, is requested to mention "COBOL" in acknowledgment of the source, but need not quote the acknowledgment):

COBOL is an industry language and is not the property of any company or group of companies, or of any organization or group of organizations.

No warranty, expressed or implied, is made by any contributor or by the CODASYL COBOL Committee as to the accuracy and functioning of the programming system and language. Moreover, no responsibility is assumed by any contributor, or by the committee, in connection therewith.

The authors and copyright holders of the copyrighted materials used herein:

  • FLOW-MATIC® (trademark of Sperry Rand Corporation), Programming for the 'UNIVAC® I and II, Data Automation Systems copyrighted 1958,1959, by Sperry Rand Corporation;
  • IBM Commercial Translator Form No F 28-8013, copyrighted 1959 by IBM;
  • FACT, DSI 27A5260-2760, copyrighted 1960 by Minneapolis-Honeywell

Have specifically authorized the use of this material in whole or in part, in the COBOL specifications. Such authorization extends to the reproduction and use of COBOL specifications in programming manuals or similar publications.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.