It sounds like racket generics are at least partway on the road to a type system. And those placeholder values seem a bit greenspunny - I&#x27;m not sure how they&#x27;d interact with native racket features (e.g. macros). (I mean, you are right, but in a degenerate sense you could implement typeclasses in any dynamic language by having your program construct strings and writing a Haskell compiler in that language that executed those strings at runtime. So the more relevant question is whether monad techniques can be used effectively in an idiomatic program).