This is written for the syllabus assessed from 2014 to 2026. Assessments in 2027 and later are beyond the scope of this project.
Linxuan Ma previously created a pseudocode IDE in JavaScript. I see the need for a IB Pseudocode compiler and debugging environment, but modern Web technology is inaccessible in my usual workflow. Therefore, I've set out to create a pseudocode compiler with much simpler technology, namely:
- Use a simple environment. For example, lex/yacc, or perhaps OCaml.
- Transpile to POSIX-compliant C, or Lua.
Preferrably, the ability to use standard debugging environments like GDB and rr
This is likely impossible as I'm transpiling to C rather than using QBE/LLVM IL. Some debugging utilities must then be added, such as the ability to print every line of code as they are executed.- It should be able to run on musl Linux, glibc Linux, OpenBSD, and FreeBSD. macOS does not implement POSIX.1-2007 or later, but it should not be that hard to port to.