I’ve written a meta-language that adds function literal syntax to the reader, inspired by Clojure and Rackjure’s shorthand function literals. It uses curly braces for these literals, so #{+ 2 %} reads as (lambda (%) (+ 2 %)).
This actually works great, but I also want to add a feature that the shorthand syntax becomes a shorthand for curry if no arguments are specified, so #{+ 2} reads as ((curry +) 2). This works fine when the language I pass to my meta-language is racket, but it fails in racket/base because the curry function is from racket/function, which hasn’t been instantiated. This is the error I get: require: namespace mismatch; reference to a module that is not available reference phase: 0 referenced module: "~/gits/racket/racket/collects/racket/function.rkt" referenced phase level: 0 in: curry Is there any way for my meta-language to force this to be instantiated whenever my meta-language is used? I’m using make-meta-reader from syntax/module-reader to implement my meta-language. Thanks! -- You received this message because you are subscribed to the Google Groups "Racket Users" group. To unsubscribe from this group and stop receiving emails from it, send an email to racket-users+unsubscr...@googlegroups.com. For more options, visit https://groups.google.com/d/optout.