Also, to be transparent in your benchmarks you should compare against idiomatic safe code, and optimized code. It's trivial to throw your benchmark examples into an LLM and tell it to optimize them to parity with Goose. It's more trustworthy to show other languages can achieve the same performance, Goose isn't doing anything special there. What it is doing is doing the same with better safety guarantees, which I think is headline result not the speed itself.
As for the benchmarks, that's exactly what I do: https://aardappel.github.io/goose/bench/results.html
If you mean the other benchmarks (LangArena), I don't control their design.
> As for the benchmarks, that's exactly what I do
What I mean is the story of those benchmarks is incomplete, you're missing a column for optimized Rust. This is what I get on my M1 if I ask the LLM to write more performant (still safe) solutions to a couple benchmarks, I'm sure your LLM can do the same:
| Benchmark | vs original Rust | vs optimized safe Rust | Memory vs original Rust | Memory vs optimized safe Rust |
|---|---:|---:|---:|---:|
| `sexp` (flagship workload) | 1.00× | 0.95× | 2.22× | 1.60× |
| `records` | 1.52× | 0.54× | 4.77× | 2.58× |
| `graph` | 1.24× | 0.75× | 1.00× | 1.00× |
I think for the Benchmarks Game entry specifically, for the expert solutions you should use submissions to the game for both C++ and Rust instead of LLM generated code. After all, those are legitimate expert-implemented solutions to the benchmark, so it's nice to not have to lean on an LLM there. That would also give you something to optimize towards.