What is the reason of syntax error in this Lazy script in Dr.Racket?

196 Views Asked by At

I have this really simple script file test.rkt which tries to define a construct called pair:

#lang lazy

(define (pair A B)
  (λ (sel)
    (sel A B)))

(define (fst A B) A)
(define (snd A B) B)

syntax checker gives me error:

test.rkt:1:0: printing:module-begin: allowed only around a module body in: 
(printing:module-begin (module configure-runtime (quote #%kernel) (#%require 
racket/runtime-config) (configure #f)) (define (pair A B) (λ (sel) (sel A 
B))) (define (fst A B) A) (define (snd A B) B))

parentheses looks ok. so this error is rather arcane to me. what exactly went wrong?

EDIT: after closing Dr.Racket and restart it, the error went away. really weird.

I really wanted to understand what that error means. so next time it pops up I can start debugging right away, even if it would be a bug in Dr.racket.

0

There are 0 best solutions below