Updated README
This commit is contained in:
parent
f1875736e3
commit
c4dc8dc3a2
50
README.md
50
README.md
|
@ -62,36 +62,32 @@ like an import system, exception handling, a package manager, etc.
|
||||||
### TODO List
|
### TODO List
|
||||||
|
|
||||||
In no particular order, here's a list of stuff that's done/to do (might be incomplete/out of date):
|
In no particular order, here's a list of stuff that's done/to do (might be incomplete/out of date):
|
||||||
|
- User-defined types
|
||||||
Toolchain:
|
- Function calls ✅
|
||||||
|
- Control flow (if-then-else, switch) ✅
|
||||||
- Tokenizer (with dynamic symbol table) ✅
|
- Looping (while) ✅
|
||||||
- Parser (with support for custom operators, even builtins) ✅
|
- Iteration (foreach)
|
||||||
- Compiler ✅
|
- Type conversions
|
||||||
- VM ✅
|
- Type casting
|
||||||
- Bytecode (de-)serializer ✅
|
|
||||||
- Static code debugger ✅
|
|
||||||
- Runtime debugger/inspection tool ✅
|
|
||||||
|
|
||||||
Type system:
|
|
||||||
|
|
||||||
- Custom types
|
|
||||||
- Intrinsics ✅
|
- Intrinsics ✅
|
||||||
- Type unions ✅
|
- Type unions ✅
|
||||||
- Generics ✅
|
|
||||||
- Functions ✅
|
- Functions ✅
|
||||||
- Closures ✅
|
- Closures
|
||||||
|
- Managed references
|
||||||
Misc:
|
- Unmanaged references
|
||||||
|
- Named scopes/blocks ✅
|
||||||
|
- Inheritance
|
||||||
|
- Interfaces
|
||||||
|
- Indexing operator
|
||||||
|
- Generics ✅
|
||||||
|
- Automatic types ✅
|
||||||
|
- Iterators/Generators
|
||||||
|
- Coroutines
|
||||||
- Pragmas ✅
|
- Pragmas ✅
|
||||||
- Attribute resolution ✅
|
- Attribute resolution ✅
|
||||||
- UFCS (Universal Function Call Syntax)
|
- Universal Function Call Syntax
|
||||||
- Import system (with namespaces and visibility control) ✅
|
- Import system ✅
|
||||||
|
- Exceptions
|
||||||
|
|
||||||
__Note__: Since peon isn't complete yet, the toolchain (lexer, parser, compiler and VM) may change, but since they
|
|
||||||
currently work and run, they're marked as "complete" even if technically speaking they aren't. They're functional, though
|
|
||||||
|
|
||||||
|
|
||||||
## Feature wishlist
|
## Feature wishlist
|
||||||
|
@ -103,8 +99,6 @@ have been implemented alredady):
|
||||||
- C/C++ backend
|
- C/C++ backend
|
||||||
- Nim backend
|
- Nim backend
|
||||||
- Structured concurrency (must-have!)
|
- Structured concurrency (must-have!)
|
||||||
- Capability-based programming (i.e. functions are passed objects to act on the real world. This is just a maybe)
|
|
||||||
- Parametric Polymorphism ✅
|
|
||||||
- Simple OOP (with multiple dispatch!)
|
- Simple OOP (with multiple dispatch!)
|
||||||
- RTTI, with methods that dispatch at runtime based on the true type of a value
|
- RTTI, with methods that dispatch at runtime based on the true type of a value
|
||||||
- Limited compile-time evaluation (embed the Peon VM in the C/C++/Nim backend and use that to execute peon code at compile time)
|
- Limited compile-time evaluation (embed the Peon VM in the C/C++/Nim backend and use that to execute peon code at compile time)
|
||||||
|
|
Loading…
Reference in New Issue