You will never actually write ASIL code. Rather, you'd use either of one two derivatives. If you're expecting to compile your code into binaries, you'd probably want SASIL. It's more like C# or Java. If you want to script something, DASIL would be a better choice. Below is a brief comparison. For details on both, see the page on each.
Feature | SASIL | DASIL |
---|---|---|
File extension | .sasil | .dasil |
Global code | ✗ | ✓ |
Global variables | ✗ | ✓ |
Global procedures and properties | ✗ | ✓ |
Can undeclare global objects | ✗ | ✓ |
Creates binary executables | ✓ | ✗ |
Typing system | Statically-typed—Any member you reference is checked at compile time to ensure it's a valid member of the type | Dynamically-typed—DASIL waits until runtime to check that the members you reference really are members. A special Error maybe thrown if it doesn't. |
Both derivatives are very interchangeable. Suppose the namespace "MyNamespace
" has a class called "MyClass
". It also has a script using the ASIL identifier "MyScript
". You'd call the script (as a whole) with this code in the class:
MyNamespace@MyScript
For how to pass parameters, see the section DASIL. To call something in the class from the script, just treat the class like you would from any other ASIL code.