forked from syndicate-lang/marketplace-ssh-2014
Rename
This commit is contained in:
parent
600d732561
commit
5381a0b8d3
|
@ -9,7 +9,7 @@
|
|||
|
||||
(provide repl-shell)
|
||||
|
||||
(struct user-state (name master-sandbox master-namespace) #:transparent)
|
||||
(struct user-state (name primary-sandbox primary-namespace) #:transparent)
|
||||
|
||||
(define *user-states* (make-hash))
|
||||
|
||||
|
@ -24,7 +24,7 @@
|
|||
(hash-ref *user-states* username))
|
||||
|
||||
(define (repl-shell username in out)
|
||||
(match-define (user-state _ master-sandbox master-namespace) (get-user-state username))
|
||||
(match-define (user-state _ primary-sandbox primary-namespace) (get-user-state username))
|
||||
(parameterize ((current-input-port in)
|
||||
(current-output-port out)
|
||||
(current-error-port out)
|
||||
|
@ -33,14 +33,14 @@
|
|||
(sandbox-error-output out)
|
||||
(sandbox-memory-limit 2) ;; megabytes
|
||||
(sandbox-eval-limits #f)
|
||||
(sandbox-namespace-specs (list (lambda () master-namespace))))
|
||||
(sandbox-namespace-specs (list (lambda () primary-namespace))))
|
||||
(printf "Hello, ~a.\n" username)
|
||||
(define slave-sandbox (make-evaluator '(begin)))
|
||||
;; ^^ uses master-namespace via sandbox-namespace-specs
|
||||
(parameterize ((current-namespace master-namespace)
|
||||
(current-eval slave-sandbox))
|
||||
(define secondary-sandbox (make-evaluator '(begin)))
|
||||
;; ^^ uses primary-namespace via sandbox-namespace-specs
|
||||
(parameterize ((current-namespace primary-namespace)
|
||||
(current-eval secondary-sandbox))
|
||||
(read-eval-print-loop))
|
||||
(fprintf out "\nGoodbye!\n")
|
||||
(kill-evaluator slave-sandbox)
|
||||
(kill-evaluator secondary-sandbox)
|
||||
(close-input-port in)
|
||||
(close-output-port out)))
|
||||
|
|
Loading…
Reference in New Issue