- (begin <expression[1]> <expression[2]> ...)syntax
The <expression>s are evaluated sequentially from left to right, and the value(s) of the last <expression> is(are) returned. This expression type is used to sequence side effects such as input and output.
(define x 0) (begin (set! x 5) (+ x 1)) ===> 6 (begin (display "4 plus 1 equals ") (display (+ 4 1))) ===> unspecified and prints 4 plus 1 equals 5
As an extension to R5RS, CHICKEN also allows (begin) without body expressions in any context, not just at toplevel. This simply evaluates to the unspecified value.