Crust Simple toy scripting language, JavaScript-like programming language.
- Variables and Constants (
setandkeep) - Functions and closures with lexical scoping
- Control Flow (
if,elif,else,while) - Break and Continue statements
- Basic Data Types
- Numbers ( Integers and Floating Points )
- Strings
- Booleans
- Null
- Objects
- Arrays
- Operators
- Arithmetic (
+,-,*,/,%,**,//) - Comparison (
==,!=,<,>,<=,>=) - Compound Assignment (
+=,-=,*=,/=,%=,**=,//=) - Logical (
&&,!!) - Unary (
!,-,+)
- Arithmetic (
- Exceptions handling with (
try,catch,throw) - Native Functions Support
- Standard Library
# Variables
set x = 10
keep PI = Math.PI
# Functions
fn add(x, y) {
return x + y
}
# Objects
set person = {
name: "John",
age: 30
}
# Control flow
if x > 5 {
output("x is greater than 5")
} elif x < 5 {
output("x is less than 5")
} else {
output("x is equal to 5")
}
# While loops
while x > 0 {
x = x - 1
if x == 5 {
continue
}
output(x)
}
- Comments
- Float numbers
- Arrays with proper array methods
- String methods and operations
- For loops
- Error handling
- Module/import system
- Implement standard library
- Template strings
- Add async/await support
- JavaScript block
- Optimization
- Documentation and Web Playground
- VSCode extension for syntax highlighting