Terminology - urschleim/scream GitHub Wiki
Closure
A good definition can be found here...
; Create a lambda keeping a in its closure.
(define (make-adder a)
(lambda (b) (+ a b)))
⇒ () ; unspecified
; Create an operation using make-adder with a=5 in its closure.
(define plus-five (make-adder 5))
⇒ () ; unspecified
; Usage example.
(plus-five 3)
⇒ 8 ;
Continuation
The concept Continuation is described in r7rs * chapter 6.10 Control features. Access to continuations is an outstanding feature of the Scheme language.
One starting point of urschleim/scream was to research options and possibilities for implementing continuations on a Java platform. The final boost for the successful implementation came from Marcin Chwedczuk and his blog entry Continuations in Java.
Disjoint type
A type that is different from all existing types. Commonly an operation (<disjoint-type>? object) is offered.
Immutable
Certain objects like lists and vectors can be modified. Using the quote-syntax these can be created in an immutable form. This means that a mutation attempt results in an error message. Described in r7rs chapter 3.4 Storage model.
(define v #(1 2 3)) ⇒ () ; unspecified
v ⇒ #(1 2 3)
(vector-set! v 0 313) ⇒ () ; unspecified
v ⇒ #(313 2 3)
(define v '#(1 2 3)) ⇒ () ; unspecified
(vector-set! v 0 313) ⇒ Error: CANNOT_MODIFY_CONSTANT