diff options
author | Camil Staps | 2017-03-07 08:23:41 +0100 |
---|---|---|
committer | Camil Staps | 2017-03-07 08:23:41 +0100 |
commit | 02cafc218d2b2589430f74d72ebc21e89b21e0ec (patch) | |
tree | 6a6a35801eb23655211b961a66c641cd2679b54a /README.md | |
parent | Allow module on lower levels (diff) |
Also accept system keyword in record fields
Diffstat (limited to 'README.md')
-rw-r--r-- | README.md | 17 |
1 files changed, 12 insertions, 5 deletions
@@ -13,7 +13,7 @@ This is a fork to implement experimental new features. 1\. [Syntactic sugar](#1-syntactic-sugar) 1.1. [Lambda-case](#11-lambda-case) 2\. [Syntax changes](#2-syntax-changes) -2.1. [Use of the `module` keyword](#21-use-of-the-module-keyword) +2.1. [Use of module header keywords](#21-use-of-module-header-keywords) --- @@ -52,16 +52,23 @@ LambdaAbstr = ... ## 2. Syntax changes -### 2.1. Use of the `module` keyword +### 2.1. Use of module header keywords -The `module` keyword is only a keyword on the topmost level. This allows for -using it as a record field, for example: +Four keywords are now only recognised on the topmost level. This allows for +using them as a record field, for example: ```clean :: MyType = { module :: Int } ``` -However, it is not allowed to define a function named `module`. +The keywords are: + + - `module` + - `definition` + - `implementation` + - `system` + +It is not allowed to define a function named as one of these keywords. [clean]: http://clean.cs.ru.nl [cocl]: https://svn.cs.ru.nl/repos/clean-compiler/ |