For the PL folks: I want to quickly prototype a structurally-typed DSL. I need to express a combination of linear, affine, and non-linear resources (ADTs + functions).

What language would you recommend for this? I know Haskell has a linear types extension. Anything else I should look at?

@notypes Idris has quantitative (0,1,w) types (and is pretty easy to jump into if you know Haskell imo)
@bhaktishh @notypes If you want more control over typing rules, maybe something like Turnstile would work?
@notypes You can do anything with templates and C++, or like go if you want the structural stuff built-in. Otherwise if you want to stay in functional land (with out relying on llvm stl) this sounds like something Scala or Zig can support fairly easily
@miado Ah, typo in my original post: *substructural* types (linear & affine types)