[ prog / sol / mona ]

prog


SchemeBBS [part 2]

88 2022-05-15 00:30

You might be able to get rid of patch-runtime_http-syntax.scm by patching MIT Scheme at runtime instead. Here's an untested idea:

;;;; Patch MIT Scheme at runtime

(ge '(runtime http-syntax))
(load-option '*PARSER)

;; Redefine Location header to allow relative URIs, which RFC 7231 allows
(define-header "Location"
  (direct-parser
    (*parser
      (alt parse-absolute-uri
           parse-relative-uri)))
  (lambda (value)
    (and (uri? value)
         (not (uri-fragment value))))
  write-uri)

(ge '(user))  ; Go back to the default REPL environment
89 2022-05-22 07:27

>>88
It works! I have tested it using MIT Scheme 9.2 in FreeBSD. SchemeBBS no longer requires a custom installation of MIT Scheme! Simply add the code in >>88 to a file named patches.scm and add (load "patches.scm") to the beginning of bbs.scm.

112


VIP:

do not edit these