language-info.rkt (606B)
1 #lang racket/base 2 3 (provide get-language-info) 4 5 (require racket/match) 6 7 (define (get-language-info data) 8 (define other-get-info 9 (match data 10 [(vector mod sym data2) 11 ((dynamic-require mod sym) data2)] 12 [_ (lambda (key default) default)])) 13 (lambda (key default) 14 (case key 15 [(configure-runtime) 16 (define config-vec '#[aful/lang/runtime-config configure #f]) 17 (define other-config (other-get-info key default)) 18 (cond [(list? other-config) (cons config-vec other-config)] 19 [else (list config-vec)])] 20 [else (other-get-info key default)]))) 21