I’m happy to report that My implementation compiled with Crystal 1.6.2 is much faster than the Go Version.
Update: Dec 23 2022: @jgaskins gave me a good Christmas gift, and now Crystal 1.6.2 is faster in both Interpreted and VM modes than Go 1.19. I’ll write an update on my blog
Thanks so much for that writeup! It’s great to see benchmarks for something more broad than synthetic math things.
Just a nit, it’d be great if the post had some pretty graphs to summarize the results. It’s a little hard to follow with just the raw data spread across a few different embeds.
I can recommend hyperfine for some easy benchmarking. It can output JSON data that can be used to make boxplots. Also the “time” command can be used to show the max RSS of a process (which I’ve found to be impressively low in my Crystal programs, although they’re mostly just toys and Advent of Code solutions).