From 4554ea3ab0ca05adee07f78cb093d597904ca9e6 Mon Sep 17 00:00:00 2001
From: Francesco Cozzuto
Date: Wed, 15 Oct 2025 16:44:29 +0200
Subject: [PATCH] Remove duplicate docs
---
MANUAL.md | 8 ++
README.md | 267 +++---------------------------------------------------
2 files changed, 22 insertions(+), 253 deletions(-)
diff --git a/MANUAL.md b/MANUAL.md
index bbcbbc3..8ed2ff1 100644
--- a/MANUAL.md
+++ b/MANUAL.md
@@ -557,4 +557,12 @@ import "other.wl"
"The A variable is accessible here: "
A
+```
+
+## External Symbols
+
+WL programs may reference external symbols (variables or functions) defined by the host program. These symbols behave like variables and procedures, except they don't need to be declared and their names start with `$`. For instance, you could have a `$platform` symbol return the name of the current platform (as in "Linux" or "Windows")
+
+```
+
The process is running on a \$platform machine
```
\ No newline at end of file
diff --git a/README.md b/README.md
index c6e7d40..1a0b6e1 100644
--- a/README.md
+++ b/README.md
@@ -10,276 +10,37 @@ WL is a powerful and flexible, yet experimental scripting language for templatin
6. **No I/O or dynamic allocations** - Any I/O or memory management is left to the user
7. **Include system** - Modular template composition over multiple files
-## Language
-
-WL is designed to be extremely powerful and flexible, but realistically you will use a small number of features most of the time. For instance, I expect most templates to look something like this:
+To learn about the language check out the `MANUAL.md` file. But for a sneak peek, here's an example:
```
let title = "Title of my webpage"
let items = ["A", "B", "C"]
-let navigator =
-```
-
-Since HTML literals are just expressions, you can also assign them to variables:
-
-```
-let links = {
- "home": "home.html",
- "about": "about.html",
- "contacts": "contacts.html"
-}
-let navigator =
-
- \for name in links:
- \name
-
-```
-
-### HTML escaping
-
-If you want to escape any value to avoid rendering dynamic data as HTML elements, you can use the `escape` operator
-
-```
-escape(
Hello, world!
)
-```
-
-### File inclusion
-
-You can include files using the `include` keyword.
-
-Say you have a file `file_A.wl` containing some symbol definitions or outputs:
-
-```
-let myvar = 100
-
-"Some output here"
-```
-
-You can import the symbols and generate the output from another file by including the first one
-
-```
-include "file_A.wl"
-
-"myvar is accessible here: "
-myvar
-```
-
-### External Symbols
-
-WL programs may reference external symbols (variables or functions) defined by the host program. These symbols behave like variables and procedures, except they don't need to be declared and their names start with `$`. For instance, you could have a `$platform` symbol return the name of the current platform (as in "Linux" or "Windows")
-
-```
-
The process is running on a \$platform machine
-```
-
## Embedding
WL programs need to first be translated to bytecode, then evaluated in a virtual machine. The bytecode is completely standalone and can be cached.