0 Members and 2 Guests are viewing this topic.
Today's suggestion: I can't find any functions to alter system settings. Are they in predefined variables, or functions, or what? I'd like to be able to, for example, switch angle modes to the correct one in a program.
VARS->HOME is where most items of interest will reside. Yes, they are in variables. Note however that some can be overridden by application variables (AAngle takes priority over HAngle) and so to do things properly you need to handle those.
There's a new firmware?
A suggestion! I've also have been having trouble when coding recently with aligning my text on screen. I want ti centered, but I can't figure out how big a string will be on the screen! A function to give me the width of a given string of a given font would be nice for my GUI-using programs.I have to say, though, with the new firmware, I'm going great guns on programming! It's actually sorta nice to work in.
Well, I am glad you are liking it more. Here is something to ponder on for you though. The reality is this - there were simply much higher priority items in the initial development and releases needing focused attention and polish. This means there are definitely some holes in the language (to name a few - getting the width of a string, being able to print something as a user in a 2d formula format, or a much nicer terminal) yet you already have what I think is the fastest user language on any calculator (excluding assembly and things that need a computer to do), easy to learn, and yet extremely capable programming language. There are TONS of things that I would personally like to do in the editor, UI, language, and so on to really make it shine.
Btw, what's the stance about the idea of adding a new type of variable that is preserved even if you accidentally open the program code in the editor on-calc? For example, for game highscores or Zelda/Final Fantasy save files? I suggested it a few times before and that issue was brought up a while ago too, but it seemed pretty much ignored.
- Pointers or anonymous functions (or just passing functions like variables) would be a godsend. (I know it's a bit like C, but it works. I'd like to stay functional and still modify state, but I can't do that from a function without lists being parsed or global vars, which are icky and hardcoded. Pointers would allow pass-by-refrence.)
FUNC1()BEGIN MSGBOX("Function One!!");END;FUNC2()BEGIN MSGBOX("Function Two.");END;EXPORT PASSITAROUND()BEGIN LOCAL C,L={"FUNC1","FUNC2"},A; A:=CHOOSE(C,"Choose 1",L); EXPR(L(A)+"()");END;
EXPORT CRASHHYPE()BEGIN RETURN MAKELIST('I+1',I,1,10);END;