All Projects → cloudflare → cobweb

cloudflare / cobweb

Licence: MIT license
COBOL to WebAssembly compiler

Programming Languages

COBOL
34 projects
c
50402 projects - #5 most used programming language
Makefile
30231 projects
Dockerfile
14818 projects
shell
77523 projects
HTML
75241 projects

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.

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].