From e865961c8c4d7ef2dc32274249c106a41c1ad663 Mon Sep 17 00:00:00 2001 From: Matthew Butterick Date: Fri, 12 Aug 2016 11:58:05 -0700 Subject: [PATCH] gbye --- beautiful-racket-lib/br/load.rkt | 26 ------------------- beautiful-racket-lib/br/stxparam.rkt | 37 ---------------------------- 2 files changed, 63 deletions(-) delete mode 100644 beautiful-racket-lib/br/load.rkt delete mode 100644 beautiful-racket-lib/br/stxparam.rkt diff --git a/beautiful-racket-lib/br/load.rkt b/beautiful-racket-lib/br/load.rkt deleted file mode 100644 index c1e39fc..0000000 --- a/beautiful-racket-lib/br/load.rkt +++ /dev/null @@ -1,26 +0,0 @@ -#lang racket -(provide (except-out (all-from-out racket) #%module-begin) - (rename-out [loader-module-begin #%module-begin])) - -#| - -br/load makes it possible to invoke a quick #lang by its pathname (without installing it as a collection) - -#lang br/load "path.rkt" - -Should simply delegate the reader & semantics. - -|# - -(define-syntax-rule (loader-module-begin loadpath expr ...) - (#%module-begin - (module loader-module loadpath - expr ...) - (require 'loader-module) - - (module reader racket/base - (require '(submod loadpath reader)) - (provide (all-from-out '(submod loadpath reader)))))) - -(module reader syntax/module-reader - br/load) \ No newline at end of file diff --git a/beautiful-racket-lib/br/stxparam.rkt b/beautiful-racket-lib/br/stxparam.rkt deleted file mode 100644 index c6b1ab7..0000000 --- a/beautiful-racket-lib/br/stxparam.rkt +++ /dev/null @@ -1,37 +0,0 @@ -#lang racket/base -(require (for-syntax racket/base) racket/stxparam racket/splicing) -(provide splicing-syntax-parameterize - define-syntax-parameters - define-language-variables - define-language-variable - inject-language-variables - (rename-out [br:define-syntax-parameter define-syntax-parameter])) - -(define-syntax (br:define-syntax-parameter stx) - (syntax-case stx () - [(_ ID STX) #'(define-syntax-parameter ID STX)] - [(_ [ID VAL]) #'(define-syntax-parameter ID (λ (stx) #'VAL))] - [(_ ID) #'(define-syntax-parameter ID - (λ (stx) (raise-syntax-error (syntax-e stx) "parameter not set")))])) - -(define-syntax-rule (define-syntax-parameters ID ...) - (begin (br:define-syntax-parameter ID) ...)) - -(define-syntax-rule (define-language-variable ID VAL) - (br:define-syntax-parameter [ID VAL])) - -(define-syntax-rule (define-language-variables [ID VAL] ...) - (begin (define-language-variable ID VAL) ...)) - -(define-syntax (inject-language-variables stx) - (syntax-case stx () - [(_ (VAR-PARAM ...) LANG-CODE ...) - (with-syntax ([(HOLDS-ORIG-PARAM-VALUE ...) (generate-temporaries #'(VAR-PARAM ...))] - [(INTERNAL-NAME ...) (generate-temporaries #'(VAR-PARAM ...))]) - ;; need to use splicing expressions in a module-begin to compose with requires etc. that might be in lang code - #'(splicing-let ([HOLDS-ORIG-PARAM-VALUE VAR-PARAM] ...) - (splicing-syntax-parameterize - ([VAR-PARAM (make-rename-transformer #'INTERNAL-NAME)] ...) - (define INTERNAL-NAME HOLDS-ORIG-PARAM-VALUE) ... - (provide (rename-out [INTERNAL-NAME VAR-PARAM] ...)) - LANG-CODE ...)))]))