Paul Bone
Paul Bone
Figure a way to pass compiler options through the build tool that make sense to users.
A list of strings is used to find filenames for each module. If we process this list once and build a map it'll speed up each module lookup.
`pragma Name[(Option[=Value][,...])]` Any option/value are accepted provided that: * it does not contain , except within brackets. * All brackets match. `() [] {}` The parser need not recognise `=`...
eg: uint32_t, pid_t, offset_t, uintptr_t, size_t for a C backend. all defined in some c_types module.
Once bytecode is linked into libraries we need a way to manage those libraries, both locally (user directory and system wide) and as some kind of repository. My notes so...
* Use `const` and `restrict` to annotate pointers and allow more C-level optimisations. * Registers can be typed as `uintptr_t` then easily cast to const/non-const.
There's better ways to represent this with less memory.
OO languages allow the syntax: object.method() To invoke a method call, and this is based around field/property access (`.`). Functional languages, and Plasma so far don't have this. But it's...
The code to name-apart variables within expressions traverses the expression multiple times: I haven't worked out if it's definitly quadratic, if it is it's a technicality but it's still something...
Add support for reallocing memory in the GC.