https://github.com/periapsises/crater
The Crater Programming Language
https://github.com/periapsises/crater
compiler crater lua transpiler
Last synced: about 2 months ago
JSON representation
The Crater Programming Language
- Host: GitHub
- URL: https://github.com/periapsises/crater
- Owner: Periapsises
- Created: 2025-03-27T21:21:39.000Z (about 1 year ago)
- Default Branch: main
- Last Pushed: 2025-03-27T21:58:26.000Z (about 1 year ago)
- Last Synced: 2025-03-27T22:33:42.723Z (about 1 year ago)
- Topics: compiler, crater, lua, transpiler
- Language: C#
- Homepage: https://discord.gg/n3T4299v5K
- Size: 0 Bytes
- Stars: 0
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
# Crater
Crater is a programming language based on Lua.
The goal is to add static typing and compile directly into Lua source code.
## Planned features
- [ ] Standard Lua types
- [x] Numbers
- [x] `integer`, `decimal`, `exponential`, `hexadecimal` and `binary`
- [x] Binary `+`, `-`, `*`, `/`, `^` and `%`
- [x] Unary `-`
- [x] Concatenation `..`
- [x] To string
- [x] String coercion
- [x] Strings
- [x] Concatenation
- [x] Number coercion
- [ ] Booleans
- [ ] Tables
- [ ] Tuples
- [ ] Functions
- [ ] Variable arguments
- [ ] Multiple returns
- [ ] Custom type definition
- [ ] Support for `require`
- [ ] Generic support
- [ ] Custom `List` type
- [ ] Custom `Dictionary` type
- [ ] Handling special syntax
- [ ] Garry's Mod support
- [ ] Asynchronous support
- [ ] Coroutine type support
- [ ] Custom compilation settings
- [ ] Custom tabulation
- [ ] Custom spacing
- [ ] Conserve comments
- [ ] Documentation generation
- [ ] Library definition
## Examples
```lua
local function printFormatted( msg: string, ...: any ): void
local message = string.format( msg, ... )
print( message )
end
local target: string = "World"
printFormtted( "Hello, %s!", target )
```