839 B
839 B
I have a few changes to this to make it match my vision more:
- Every operator defined should have a trait
- Remove
-rot,2dup,2drop,nip, andtuck - Make
rolluse the top two of the stack as the number of items to rotate and how many times to do so - Make
rotdo whatrollcurrently does - Change
**to^
Base Traits (Non-Exhaustive):
PushableArrayOfAddableNumberStringIdentifierTrait
Trait Examples:
{ (TokenString Identifier --) trait: (Identifier TokenString Identifier --) impl: (ArrayOf[Identifier] Identifier --) inher: } ::Implementable trait{ (Self Self -- Self) +: (Self Self -- Self) -: } ::Addable trait
Example Implementations:
::i32 { (Self Self -- Addable) { code } } ::Addable impl
Example Inheritance:
[ ::Addable ::Multiplyable ] ::Number inher