2 Using Envy with S-expression syntax
Envy’s syntax does not look like traditional S-expressions, but in fact it is just using ordinary Racket syntax with a special reader, called “sweet expressions”. The ordinary, S-expression based syntax is exposed through the envy/s-exp language, as well as the envy module, which can be used in any Typed Racket module via require.
2.1 #lang envy/s-exp
#lang envy/s-exp | package: envy |
The envy/s-exp language works exactly like the envy language, but it does not enable the sweet expression reader. Each declaration must be properly grouped.
#lang envy/s-exp [some-var : Positive-Integer #:default #f] [another-var : Boolean #:name "CUSTOM NAME"]
This language works just like using the envy module directly, but its body is wrapped in define/provide-environment.
2.2 The envy module
Using envy as a module imports the Envy API, which allows embedding Envy’s functionality in larger modules.
(require envy) (define/provide-environment [some-var : Positive-Integer #:default #f] [another-var : Boolean #:name "CUSTOM NAME"])
For full information on all the forms provided by Envy, see the API Reference.