# swark **Repository Path**: mirrors_thejoshwolfe/swark ## Basic Information - **Project Name**: swark - **Description**: a small go-like language that compiles into DCPU-16 - **Primary Language**: Unknown - **License**: MIT - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 0 - **Created**: 2020-09-26 - **Last Updated**: 2026-03-08 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README swark - a small, powerful language that compiles to DCPU-16 assembly. Inspired by go, coffee-script, and python. To set up dependencies: sudo npm link To build: cake build To run the tests: ./bin/test To run a swark program: ./bin/swark program.swark To run a dcpu16 program with our non-standard extensions: ./bin/swark -a program.dasm Non-standard dcpu16 emulator extentions: Read/write characters from memory address 0x8fff to access stdout/stdin. Write the return code to memory address 0x8ffe to stop the program. Technical info that should find a home in a different document someday: Calling convention is to push each argument in order and then jump with jsr which will push the return address as the final item on the stack. All registers may be mangled by callees, so callers should save any important data to the stack before calling subroutines. The first parameter is always a pointer to the enclosing scope's stack frame.