{"size": 955, "ext": "scrbl", "max_stars_repo_path": "elle-doc/scribblings/core-forms.scrbl", "max_stars_repo_name": "tail-reversion/elle", "max_stars_repo_stars_event_min_datetime": "2021-01-07T04:34:50.000Z", "max_stars_repo_stars_event_max_datetime": "2021-03-08T01:07:58.000Z", "max_issues_repo_path": "elle-doc/scribblings/core-forms.scrbl", "max_issues_repo_name": "tail-reversion/elle", "max_issues_repo_issues_event_min_datetime": null, "max_issues_repo_issues_event_max_datetime": null, "max_forks_repo_path": "elle-doc/scribblings/core-forms.scrbl", "max_forks_repo_name": "tail-reversion/elle", "max_forks_repo_forks_event_min_datetime": null, "max_forks_repo_forks_event_max_datetime": null}
{"max_stars_count": 7, "max_issues_count": null, "max_forks_count": null, "avg_line_length": 41.5217391304, "max_line_length": 347, "alphanum_fraction": 0.7717277487}
#lang scribble/manual

@(require "util.rkt")


@title{Core Syntactic Forms}

Elle differs from other Lisps in that it uses several delimiters, each having a different meaning. Elle recognizes parentheses @racket[()], brackets @racket[[]], and braces @racket[{}] as delimiters. A syntactic form may assign arbitrary meaning to the delimiters, but each has an independent meaning, when used as part of a standalone expression:

@itemlist[
 @item{parentheses are used for procedure application;}
 @item{brackets are (currently) not used for anything and will result in a syntax error;}
 @item{braces are used for “syntax application” (special forms and macros).}
 ]


@include-section["core-forms/definition.scrbl"]
@include-section["core-forms/procedure.scrbl"]
@include-section["core-forms/local-binding.scrbl"]
@include-section["core-forms/conditional.scrbl"]
@include-section["core-forms/type.scrbl"]
@include-section["core-forms/require-provide.scrbl"]
