Skip to content

Commit 844b762

Browse files
committed
[update] documentation to include instructions on how to enable experimentation features.
1 parent 6cb9075 commit 844b762

File tree

1 file changed

+33
-0
lines changed

1 file changed

+33
-0
lines changed

README.md

+33
Original file line numberDiff line numberDiff line change
@@ -105,6 +105,39 @@ it out and prove me wrong!
105105
Not directly supported yet, but should be the same as linux assuming you have a
106106
bash shell and access to a c++ compiler from it.
107107

108+
## Experimental features
109+
If building lamscript from source, you can enable experimental features that
110+
are being being developed on but are not stable. This requires passing the flag
111+
```bash
112+
// If building inside of a directory inside the repo, using cmake to generate
113+
// build files would look like:
114+
cmake .. -DLAMSCRIPT_ENABLE_EXPERIMENTATION=ON
115+
116+
// Lamscripten requires experimentation to be enabled.
117+
cmake .. -DLAMSCRIPT_ENABLE_EXPERIMENTATION=ON -DLAMSCRIPTEN_BUILD_EXECUTABLE
118+
119+
```
120+
### Lamscripten
121+
Lamscripten is the successor language to lamscript and will feature a wide
122+
variety of added features and improvements. It is currently just a prototype
123+
and is highly unstable/experimental.
124+
125+
To build, utilize these flags within cmake:
126+
```bash
127+
// Lamscripten requires experimentation to be enabled.
128+
cmake .. -DLAMSCRIPT_ENABLE_EXPERIMENTATION=ON -DLAMSCRIPTEN_BUILD_EXECUTABLE
129+
```
130+
131+
If you're using bash, you can run:
132+
```bash
133+
./scripts/compile_lamscripten.sh
134+
```
135+
This will generate a release build of lamscripten with experimentation flags
136+
turned on.
137+
138+
Lamscripten can currently only be built as an executable and not a library, but
139+
there is no user interaction with said executable just yet.
140+
108141
## Resources I used to implement this langauge
109142
* [Crafting interpreters](http://craftinginterpreters.com/inheritance.html) was
110143
used for learning the theory behind how languages work. Unfortunately, their

0 commit comments

Comments
 (0)