>>73307146>I'm specifically asking about how you place a label in a program written directly in awatalk.Well, I haven't really decided as I met the issue at hand before deciding on a representation. Fundamentally there are two ways: either use the human-readable AWASCII, that is, actually write the name of the label using the 64 valid characters, or write the labels using the "awa" representation of said characters, meaning to name a label "A" you'd write it as "awa awa awa awa awa awa awa awa" inside the file. This is just a matter of finding a consensus.
The problem is making sure the boundaries of the label name are properly recognized, since the language (and thus the compiler) does not care about end of line or anything like that. An explicit indicator for a textual label is unfortunately required.
>If you keep extending the language with heaps of convenience elements, then why not just write x86 assembly instead?True, but I believe being unable to make anything beyond Hello World just because the "fun" ends is kinda pointless, so I'm willing to take the risk of making the whole thing too complex for its own good. In the worst case people can just go back to use the original.
>I don't think you write directly in awatalk alreadyI do, I need to test the compiler somehow.
>This is very similar to the Unix syscall methodI based the opcode idea on that API. It still needs to pass through some runtime even when making linked binaries because the code should not be able to know the address of specific functions (PIE, address randomization, etc.) so a call through a symbolic name still requires a table somewhere to be filled in with the real addresses when the process is started. If the procedure being called is "syscall" itself there's not much of a problem, but for stuff like SDL or other external libraries you still need the runtime.