@raviqqe/stak 0.10.15 → 0.10.16

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/README.md CHANGED
@@ -11,7 +11,7 @@ The miniature, embeddable R7RS Scheme implementation in Rust
11
11
  Stak Scheme aims to be:
12
12
 
13
13
  - An embeddable Scheme interpreter for Rust with very small memory footprint and reasonable performance
14
- - Its virtual machine (VM) is written in only 1.2 KLOC in Rust.
14
+ - Its virtual machine (VM) is written in only 1.4 KLOC in Rust.
15
15
  - The minimal implementation of [the R7RS-small standard][r7rs-small]
16
16
  - A subset of [Chibi Scheme](https://github.com/ashinn/chibi-scheme), [Gauche](https://github.com/shirok/Gauche), and [Guile](https://www.gnu.org/software/guile/)
17
17
  - A portable scripting environment that supports even no-`std` and no-`alloc` platforms
@@ -171,16 +171,16 @@ fn run_scheme(module: &UniversalModule) -> Result<(), EngineError> {
171
171
 
172
172
  ### Computational benchmarks
173
173
 
174
- The Stak Scheme interpreter runs 2 to 4 times slower than Python 3 at computationally heavy tasks depending on its configuration and benchmarks. For all the benchmark results, see [the GitHub Action](https://github.com/raviqqe/stak/actions/workflows/bench.yaml).
174
+ The Stak Scheme interpreter runs 1.6 to 2.3 times slower than Python 3 at computationally heavy tasks depending on its configuration and benchmarks. For all the benchmark results, see [the GitHub Action](https://github.com/raviqqe/stak/actions/workflows/bench.yaml).
175
175
 
176
- - Baseline: Python 3.12
176
+ - Baseline: Python 3.13
177
177
  - Environment: Ubuntu 24.04, x86-64
178
178
 
179
179
  | Benchmark | Stak (minimal [^1]) | Stak (full [^2]) |
180
180
  | ---------------- | ------------------: | ---------------: |
181
- | Fibonacci number | 1.87x slower | 3.11x slower |
182
- | Integer sum | 2.04x slower | 3.71x slower |
183
- | Tak function | 2.12x slower | 3.57x slower |
181
+ | Fibonacci number | 1.80x slower | 1.98x slower |
182
+ | Integer sum | 1.61x slower | 1.87x slower |
183
+ | Tak function | 2.10x slower | 2.27x slower |
184
184
 
185
185
  ### Startup benchmarks
186
186
 
@@ -192,11 +192,11 @@ This means that Stak Scheme is suitable for embedding many small pieces of Schem
192
192
 
193
193
  | Benchmark | Stak (full [^2]) | Lua 5.4 |
194
194
  | ------------- | ---------------: | ------: |
195
- | Empty program | 0.568 us | 26.3 us |
195
+ | Empty program | 0.528 us | 50.9 us |
196
196
 
197
197
  [^1]: Minimal: Integer-only support + standard libraries based on libc
198
198
 
199
- [^2]: Full: Floating-point number support + standard libraries based on the `std` library in Rust
199
+ [^2]: Full: 64-bit floating-point number support + standard libraries based on the `std` library in Rust
200
200
 
201
201
  ## References
202
202
 
package/package.json CHANGED
@@ -2,7 +2,7 @@
2
2
  "name": "@raviqqe/stak",
3
3
  "type": "module",
4
4
  "description": "Stak Scheme in WebAssembly",
5
- "version": "0.10.15",
5
+ "version": "0.10.16",
6
6
  "license": "SEE LICENSE IN ../LICENSE",
7
7
  "repository": {
8
8
  "type": "git",
package/stak_wasm_bg.wasm CHANGED
Binary file