Martin Henz
Martin Henz
I think src/ec-evaluator is replacing src/interpreter/interpreter.ts, so the latter is dead code. Background: The interpreter used to be the workhorse implementation in SA, prior to the transpiler. After the transpiler...
Once https://github.com/source-academy/sicp/issues/991 is done, we can retire the SVML machine in `src/vm`. The machine is poorly written (mostly by yours truly). We shall keep the compiler, which is needed for...
Once https://github.com/source-academy/sicp/issues/989 is resolved, we can retire the languages Source §x Lazy including their documentation.
In #1686, @ZweZeya writes: "To fully make this functional, we have to enable preprocessor to take in Typed AST instead of non-typed AST which I have changed. However, we have...
Should declarations inherit the type of their right-hand side? Example: ``` let a: number = 1; let b = a; b = "a string"; ``` does not give a type...
Currently ``` display(1.5, "abc") ``` prints: ``` abc 1.5 ``` and ``` display("cde", abc") ``` prints: ``` abc: "cde" ``` This works quite well, with the exception that sometimes, I...
Currently: math_hypot(3,4,5); Line 1: Expected 2 arguments, but got 3. Specs: math_hypot() → {number} computes the square root of the sum of squares of its arguments. If no arguments are...
Source §3 Non-Det currently does not work at all: It always crashes:
Source §3 Concurrent does not support ellipses syntax. Supporting ellipses will allow us to close a gap in SICP JS 3.4, and it will allow us to move the function...
When a Full JavaScript program evaluates to a promise, it is automatically unpacked by the REPL. The display function correctly displays the promise object in orange. The REPL should also...