Top Projects
hwtest
hwtest
is Scala 3 testing library for homeworks/problem sets.
TradeMaximizer
Tool used extensively by the BoardGameGeek community since 2007 for running multi-party trades known as “Math Trades”.Other projects
scads (Scala Algorithms and Data Structures)
This isn't a full-fledged library, more a proof-of-concept built around this essay. The TLDR version is that type classes using implicits in Scala are *not* the same thing as type classes in Haskell, and bad things can happen if you treat them like they are.
scads demos a safer approach in Scala to managing data
structures that need access to an implicit Ordered
instance. This was done in Scala 2, but the ideas are
also applicable to Scala 3.
lambdastepper
(Will likely eventually be integrated intohwtest
.)
Tool for displaying the step-by-step evaluation of a lambda-calculus expression.
Here's an example reduction. The command
> (\x.\f.f x) ((\a.a a) b) (\c.c c)produces the step-by-step output
> (\x.\f.f x) ((\a.a a) b) (\c.c c) : |||||||||||||||||||||||| : ||||||||||||||||||| : (\f.f ((\a.a a) b)) (\c.c c) : |||||||||||||||||||||||||||| : ||||||||||||||||||||| : (\c.c c) ((\a.a a) b) : ||||||||||||||||||||| : ||||||||||||||||||||||| : (\a.a a) b ((\a.a a) b) : |||||||||| : ||| : b b ((\a.a a) b) : |||||||||||| : ||||| : b b (b b) : Done (5 reductions).