Vishesh Yadav
Vishesh Yadav
We compute identifier and module dependency graph each time we start rapture. ~~Also, each module is recompiled even though it is not changed~~. Keep some metadata around previous compilation history...
Try to write as much runtime in RacketScript as possible. https://github.com/vishesh/racketscript/compare/task/rjs-kernel https://github.com/vishesh/racketscript/tree/task/rjs-kernel - [X] Add a minimal `#lang racketscript/boot` for writing kernel. - [X] Migrate basic primitives to kernel.rkt -...
For example, currently we have some primitive set of module whose import we ignore in `kernel.rkt` to avoid circular links and plus because they are not actually used at first...
Compile functions in all phases (or at-least ones that can be used outside current module by looking into provides): Possible solutions: - 1 Module file/phase - Append phase number to...
This will make code more readable and far less nested . Currently we don't generate if-elseif, while almost everywhere we could. - [X] Add transform to lift nested-if-else - [...
To find all unimplemented primitives in kernel
Debugging is painful. https://developers.google.com/web/tools/chrome-devtools/javascript/source-maps?hl=en
Import identifiers directly from modules and use the original name instead of referring them from modules. We originally did that, but removed that by referring all module objects because due...
Now that we have mutable structs, we should be able to check for circular references. Equal? and display should not get hung up on them.
I'm using a M1 MacBook. Currently, I'm running ARM build for command line and Intel build for GUI (as that's what available currently). Starting vterm-module compiles for the right target,...