#lang racket (require "TL-syntax.rkt" "SL-syntax.rkt" "SL-semantics.rkt" redex) (provide -->TL) (define -->TL (extend-reduction-relation -->SL SL #:domain (Σ / (side-condition e_1 (TL-expr? (term e_1)))) (--> any any (side-condition #f) "*") (--> any any (side-condition #f) "#"))) (define TL-expr? (redex-match TL e))