Finally, we have a proper journal paper about Spade 馃帀!

It is a pretty complete description of the current state of the language, but I'm honestly more excited about the way we managed to argue for having a new HDL at Spade's abstraction level, roughly RTL but with zero cost abstractions on top

https://dl.acm.org/doi/10.1145/3793550

@thezoq2 Any plans for some kind of metaprogramming? I read through the docs a while back and I want to like it, but the lack of comptime mutable variables and for loops (or an equivalent functional construct) feels a bit limiting. For example how would I write a parameterised one-hot-to-binary in Spade?

@wren6991 Metaprogramming has improved quite a bit in the past year or so. We don't have any for-loops yet, but functional (recursive) metaprogramming works pretty well

There are a few examples of this in https://gitlab.com/spade-lang/lib/nstd/-/blob/main/src/array.spade?ref_type=heads

Metaprogramming still isn't quite where I want it to be, but it is certainly doable

src/array.spade 路 main 路 spade-lang / lib / Nstd 路 GitLab

GitLab.com

GitLab