@Dennis is there any way to add a language that requires its compiler to be recompiled every time?
I want to make Cubically be able to have multiple cube sizes, but the interpreter would have to be recompiled every time, unless I wanted to hardcode hundreds of cube sizes, which would eat RAM so bad.
It's your interpreter; you can do whatever you want. That said, the occurrences of cube[x][y][z] could be replaced with a regex, and rotations (of the cube, I assume) could be achieved with a temporary buffer and 6 to 7 calls to memcpy.
lang.c:31:25: warning: implicit declaration of function ‘atoi’; did you mean ‘atan’? [-Wimplicit-function-declaration]
CUBESIZE = -atoi(argv[i]);
^~~~
atan
Syncing anyway as it won't affect functionality. I'll take care of Commentator later.
@Dennis How would I go about writing my own SBCS? Do I actually have to write something that transforms Unicode into single-byte characters, or can I write something like in Charcoal's wiki, Lang-here uses a custom code page. This means that its commands can be considered to take one byte apiece, even though many of them are Unicode characters.?
This whole thing is confusing. Say My-SBCS 0x01 is the same character as U+2080. Can my interpreter say if (char_read == 0x01 || char_read == '\u2080') { ... } ?
@MDXF Way too complicated. Stick to one charset for the internal stuff, and perform translation first if the other one is being used. It's not just built-ins; you can't use one charset for commands and the other for literals, unless you want to make things really complicated.
@Dennis Do you think it would be interesting to add Scipy to TIO's Python? I'm learning a bit of Python and I have missed Scipy a couple of times. Not sure how much space all the submodules would take, though