Dotted identifiers and λ<arg>.code syntax
- A single dot splits the identifier, and the dot is replaced with #%dot-separator. If an identifier is split by one or more non-consecutive dots, all the resulting identifiers, including the occurrences #%dot-separator are placed in a syntax list, starting with #%dotted-id, so that a.b.c gets transformed into (#%dotted-id a #%dot-separator b #%dot-separator c). 
- A leading dot (which is not followed by another dot) is allowed, and is replaced with #%dot-separator, like dots occurring in the middle of the identifier. 
- A dot immediately preceded or followed by an ellipsis … can be omitted, so that a.….b, a….b, a.…b and a…b are all translated to (#%dotted-id a #%dot-separator … #%dot-separator b). 
- Two or more dots do not split the identifier, but one of the dots is removed (i.e. it escapes the other dots). 
- If an identifier ends with a dot, a single trailing dot is removed and the identifier is otherwise left intact (i.e. the trailing dot escapes the whole identifier). 
- Identifiers consisting only of dots are left unchanged, as well as the following: ..+, ...+, ..*, ...*, …, …+, …* and ::.... 
syntax parameter
(#%dotted-id ids-and-separators …)
This behaviour can be altered using syntax-parameterize. I don’t think syntax parameters can be modified globally for the whole containing file like parameters can (via (param new-value)), so the exact mechanism used to customise the behaviour of #%dotted-id may change in the future.
syntax
syntax
(#%module-begin . body)
syntax
(#%top-interaction . expression)
1 Typed version of dotlambda
| #lang typed/dotlambda | package: dotlambda | 
syntax
(#%module-begin . body)
syntax
(#%top-interaction . expression)