1.3. Syntax support
Support for a subset of python3 standard syntax.
1.3.1. object support
| Syntax | compile-time | Runtime | Shell |
|---|---|---|---|
| Module Definition | √ | - | - |
| Module import | √ | √ | √ |
| Class Definition | √ | √ | √ |
| class inheritance | √ | √ | √ |
| method definition | √ | √ | √ |
| method overloading | √ | √ | √ |
| method invocation | √ | √ | √ |
| parameter definition | √ | √ | √ |
| parameter assignment | √ | √ | √ |
| object creation | √ | √ | √ |
| object destruction | √ | √ | √ |
| object nesting | √ | √ | √ |
| control flow | √ | √ | √ |
1.3.2. Operator
| + | - | * | / | == | > | < | >= | <= | % | ** | // | != | & | >> | << | and | or | not | in | += | -= | *= | /= |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| √ | √ | √ | √ | √ | √ | √ | √ | √ | √ | √ | √ | √ | √ | √ | √ | √ | √ | √ | √ | √ | √ | √ | √ |
1.3.3. Control flow
| Syntax | State |
|---|---|
| if | √ |
| while | √ |
| for in [list] | √ |
| for in range(a, b) | √ |
| for in [dict] | √ |
| if elif else | √ |
| for break/continue | √ |
| while break/continue | √ |
1.3.4. Module
| Syntax | Python Module | C Module |
|---|---|---|
| import [module] | √ | √ |
| import [module] as | √ | - |
| from [module] import [class/function>] | √ | - |
| from [module] import [class/function>] as | √ | - |
| from [module] import * | - | PikaObj Module Only |
1.3.5. List/Dict
| Syntax | State |
|---|---|
| l = list() | √ |
| l = [a, b, c] | √ |
| d = dict() | √ |
| d = {'a':x, 'b':y, 'c':z} | √ |
1.3.6. Exception
| Syntax | State |
|---|---|
| try: | √ |
| except: | √ |
| except [Exception]: | - |
| except [Exception] as [err]: | - |
| except: ... | |
| raise: | √ |
| raise [Exception]: | - |
| finally: | - |
1.3.7. Slice
| Syntax | str | bytes | list |
|---|---|---|---|
| test[i] | √ | √ | √ |
| test[a : b] | √ | √ | √ |
| test[a :] | √ | √ | √ |
1.3.8. Other keywords/Syntax
| yield | is | comprehensions |
|---|---|---|
| - - | √ | - |