cobweb
cobweb copied to clipboard
COBOL to WebAssembly compiler
CobWeb
See announcement Cloudflare Workers Now Support COBOL.
Uses GnuCOBOL 2.2.
Usage with Docker
To avoid setting up the compiler environment locally, you can use a pre-built
Docker image: xtuc/cobweb:
docker run \
-e EM_OUT \
-e EM_ARGS \
-v /tmp/cobol-worker:/root/.emscripten_cache/ \
-v $PWD:/worker \
-v $PWD/build:/build \
xtuc/cobweb \
/worker/src/worker.cob
Usage
Compile dependecies:
make all
Compile COBOL to WebAssembly:
./cobweb.sh source.cob
program-id
The program-id should be worker otherwise the program will fail to compile.
Worker API
Set the HTTP status code:
CALL "set_http_status" USING "400".
Set the response body to a string:
CALL "set_http_body" USING "something".
Append a string to the response body:
CALL "append_http_body" USING "something".
Get HTTP form values:
WORKING-STORAGE SECTION.
01 THE-VALUE PIC S9(9) BINARY.
PROCEDURE DIVISION.
CALL "get_http_form" USING "key" RETURNING THE-VALUE.
Example
See the example.