✨Features
Supported Languages
TOMB generates code that runs in the PhantasmaVM, and supports multiple programming languages.
Language | File Extension | Status | Description |
---|---|---|---|
TOMB lang | .tomb | Fully working | The original language supported by TOMB (the rest of this document samples use it) |
Solidity | .tomb | Working (around 70% features support) | The language originally created for Ethereum EVM |
Supported Features
Smart contracts and Non-contract Scripts (eg: transactions, raw invokes)
Constants
Enums (Example)
Global and local variables (Example)
Array indexing (Example)
Bitshifting and logical operators
Contract constructors, methods and triggers
Contract public methods (Example)
Return values
Collections (Maps (Example) and lists)
Generic types
If ... Else (Example)
While ... and Do ... While loops
Switch .. case (Example)
Break and Continue
Throw Exceptions
Uninitialized globals validation
Custom events
Interop and Contract calls
Inline asm
Structs
Import libraries (Runtime, Leaderboard, Token, etc)
Comments (single and multi line)
Contract tasks
ABI generation
Planned Features
Some of the planned features:
Try .. Catch
More...
Warnings
Debugger support
Feature requests
Feature's requested from the Community
Call a function from anywhere in the code
Create Classes that can be manipulated
Change Struct values of an instanciated struct without needing to recreated
Add && and || (currently its or, and)
Better support for Arrays, methods like, Array.shuffle() | Array.push() | Array.add() | Array.pop() | Array.shift()
Better Math Library, implement methods like, Math.Ceil() | Math.floor()
Multiple file support (Before compiling it, to make the code easier to write.)
Implement a null types
Last updated