Oscar Spencer

Results 135 issues of Oscar Spencer

Refactors the `DependenciesCompiled`, `ObjectsLinked`, `Compiled`, and `Assembled` states out of `compile.re` and introduces the `grainc` flag `--single-file` to compile a single dependency. The linker is now completely separate from the...

compiler

Depending on the order the test suites are run, calling `Ident.create` in the tests will change what stamps idents in further tests get, which can cause snapshot tests to fail....

### Overview This PR replaces Grain's intermediate `.gr.wasm` files with Grain object files. This is for a variety of reasons, including: - Debuggability. Our wasm-based linker is unable to reconstruct...

compiler

I arbitrarily chose the number 64 way back when. I don't know why. The Grain runtime reserves 2k of space for itself (and only uses about 1k). A hello world...

good first issue

This PR does some initial project scaffolding for Silo, Grain's new project manager and build system. This isn't quite an initial version, but rather some project setup to provide a...

silo

When the compiler is compiled to JavaScript, large lists/arrays can experience stack overflows in various parts of the compiler.

compiler

In ``` let f = () => (1, 2) f() f() f() f() ``` the memory allocated by the calls to `f` is not reclaimed. This is not the case...

bug
gc

I did an audit of the stdlib and found these cases where it would be _possible_ to encounter use-after-free bugs.

Should the location for this be the top of the file instead of a `dummy_loc`? _Originally posted by @spotandjake in https://github.com/grain-lang/grain/pull/2104#discussion_r1770643849_