#lang racket ;; Implement wisp in Racket ;; ;; -Author: Arne Babenhauserheide ; adapted from wisp-in-guile and algol60.rkt (require (for-syntax "parse-base.rkt")) (provide literal-wisp) (define-syntax (literal-wisp stx) (syntax-case stx () [(_ strs ...) (andmap (λ (x) (string? (syntax-e x))) (syntax->list (syntax (strs ...)))) (parse-wisp-port (open-input-string (apply string-append (map syntax-e (syntax->list #'(strs ...))))) (syntax-source stx))]))