@Ven Dyalog doesn't have a universal way to use scripts as the world understands scripts. I'm pushing hard for this. Gave a long talk about it at our yearly planning meeting.
You can store any array, function, operator, namespace, or class in a .dyallg file
Of course, namespaces and classes can contain more of the above.
The easiest way to create such script files (and thus to see what their format is like), is to use ]save: E.g. say you have a function called foo in your workspace; just enter ]save foo /tmp/ into the session.
You don't need to save your workspace. When you want to use your function, just type ]load /tmp/foo
@Ven So that was my question, what you want to accomplish. If it is just keeping your APL source code in human readable files, ]save and ]load (and ]snap for batch processing) is the way to go. For automated execution of arbitrary code, use ⎕FIX.
Because the .dyalog file must define something, not just contain arbitrary code. Now users of TIO don't need things, they just want to execute some code or define some functions and use them. So Dennis wraps the user submitted code in a namespace wrapper. Thus ⎕FIX has a thing (a namespace) to define.