they share the same namespace in the wasm DSL, so when I used it like a parameter in a loop it resolved to the number of scopes between the statement and the block'th parameter which had the same type and the calculation worked fine, but it overwrote the parameter I thought wasn't being used and called a function later with. Also, that seemed like that last of the really bad leaks & corruption, so re-enabling the freelist and am able to run some less-trivial benchmarks, namely (fib 30)! The compiled version is between 4.7x and 65x slower than Python, depending on if you're using wasmer, wasmtime, wasm3. Would like to try WAVM as well. A solid place to start, I think, and hopefully we'll be faster than Python once I implement a variety of dont-be-dumb optimizations (real-er malloc, static calls of statically known functions, etc)
18 lines
200 B
Nix
18 lines
200 B
Nix
|
|
with import <nixpkgs> { };
|
|
|
|
mkShell {
|
|
LANG="en_US.UTF-8";
|
|
nativeBuildInputs = [
|
|
chicken
|
|
#gambit
|
|
gambit-unstable
|
|
chez
|
|
wabt
|
|
wasmtime
|
|
wasm3
|
|
wasmer
|
|
kakoune
|
|
];
|
|
}
|