Ecosyste.ms: Awesome

An open API service indexing awesome lists of open source software.

Awesome Lists | Featured Topics | Projects

https://github.com/moxon6/cobol-js-emscripten


https://github.com/moxon6/cobol-js-emscripten

cobol emscripten pong wasm webassembly

Last synced: 2 months ago
JSON representation

Awesome Lists containing this project

README

        

# COBOL -> WebAssembly proof of concept

This a proof of concept for building COBOL to WebAssembly

## How it works
1. Builds and installs the GNU Multiprecision Library [GMP](https://gmplib.org/) (dependency of GNUCOBOL)
1. Builds and installs [GnuCOBOL](https://www.gnu.org/software/gnucobol/)

1. Builds an LLVM bitcode version of GMP
1. Builds an LLVM bitcode version of libcob

1. Transpile COBOL source to C using GnuCOBOL
1. Build WebAssembly (and helper JS) using [emscripten](https://emscripten.org/), linking in the GMP and libcob bitcode

## Testing it out
The whole development environment is contained in the `.devContainer` directory.

Use Docker and the [containers remote extension](https://code.visualstudio.com/docs/remote/containers) for VSCode to reliably reproduce this environment

## Live Demo
[moxon6.github.io/cobol-js-emscripten](https://moxon6.github.io/cobol-js-emscripten)