Recently after upgrading from Paul's fork, substitute stopped working
inside my reduction relation. I get the following error:
> compiled-lang-binding-table: contract violation
> expected: compiled-lang?
> given: #f
> context...:
> /home/bluephoenix47/workspace/racket/extra-pkgs/redex/redex-lib/redex/private/reduction-semantics.rkt:1425:42
> /home/bluephoenix47/workspace/racket/racket/collects/racket/private/map.rkt:21:13: map
> /home/bluephoenix47/workspace/racket/extra-pkgs/redex/redex-lib/redex/private/reduction-semantics.rkt:1724:24: loop
> /home/bluephoenix47/workspace/racket/extra-pkgs/redex/redex-lib/redex/private/reduction-semantics.rkt:840:15
> /home/bluephoenix47/workspace/racket/extra-pkgs/redex/redex-lib/redex/private/reduction-semantics.rkt:973:9
> /home/bluephoenix47/workspace/racket/extra-pkgs/redex/redex-lib/redex/private/reduction-semantics.rkt:1047:7
> /home/bluephoenix47/workspace/racket/extra-pkgs/redex/redex-lib/redex/private/reduction-semantics.rkt:250:0: apply-reduction-relation/tagged
> /home/bluephoenix47/workspace/racket/extra-pkgs/redex/redex-lib/redex/private/reduction-semantics.rkt:2464:2
> /home/bluephoenix47/workspace/racket/extra-pkgs/redex/redex-lib/redex/private/reduction-semantics.rkt:2442:0: apply-reduction-relation*15
> /home/bluephoenix47/workspace/racket/racket/collects/racket/contract/private/arrow-val-first.rkt:324:3
I notice that substitute recently changed to a metafunction--which is
handy--and requires (default-language) be set. According to the
documentation, (default-language) is only set inside metafunction and
judgment-forms, *not* reduction-relations. Perhaps this is the cause of
the error?
--
William J. Bowman
On Sat, Sep 19, 2015 at 12:21:17PM -0500, Robby Findler wrote:
> --
> 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...@googlegroups.com.