Author Topic: Features Wishlist  (Read 693823 times)

0 Members and 3 Guests are viewing this topic.

Offline Deep Toaster

  • So much to do, so much time, so little motivation
  • Administrator
  • LV13 Extreme Addict (Next: 9001)
  • *************
  • Posts: 8217
  • Rating: +758/-15
    • View Profile
    • ClrHome
Re: Features Wishlist
« Reply #2235 on: May 07, 2011, 04:37:52 pm »
That's a great idea :D

And another suggestion: Pt-Zero( or something like that (maybe for Plot2(?) to use AND logic. It would be really useful to me right now <_<




Offline Munchor

  • LV13 Extreme Addict (Next: 9001)
  • *************
  • Posts: 6199
  • Rating: +295/-121
  • Code Recycler
    • View Profile
Re: Features Wishlist
« Reply #2236 on: May 07, 2011, 04:41:39 pm »
I just saw the poll, I think parentheses are very important since all programming languages enforce them (TI-Basic not included). As long as Axe redirects us to the error if we press PRGM.

I'd really really like this implemented :D

Offline Deep Toaster

  • So much to do, so much time, so little motivation
  • Administrator
  • LV13 Extreme Addict (Next: 9001)
  • *************
  • Posts: 8217
  • Rating: +758/-15
    • View Profile
    • ClrHome
Re: Features Wishlist
« Reply #2237 on: May 07, 2011, 04:47:55 pm »
Would it slow compiling down though?




Offline Quigibo

  • The Executioner
  • CoT Emeritus
  • LV11 Super Veteran (Next: 3000)
  • *
  • Posts: 2031
  • Rating: +1075/-24
  • I wish real life had a "Save" and "Load" button...
    • View Profile
Re: Features Wishlist
« Reply #2238 on: May 07, 2011, 10:29:13 pm »
Wow, this is a really dead-close poll!  Not sure what I'm going to do yet, I usually only make a change this large if there is overwhelming support for it.  And no, it doesn't affect compile time because axe has to figure out where to close the parenthesis (pop the stack) on its own already without them so it would take just as long.  This would only be a programmer convenience and wouldn't change anything at all about the compiling process or generated programs.  If you are extremely for it or against it, please state your lengthy opinions why this is either a terrible idea or an absolute necessity.

Another new feature I am adding is a new style of pointer referencing.  For any variable or static pointer you can now write {__+A} as A(__).  and {__*2+A}r as A(__)r.  Here, the variable A can also be a ram location like L1, a static pointer like Str1, and possibly a file object like Y1 if I can get that to work.  That means things like L1(7) means the same thing as in basic as it does in Axe; the 7th item in L1's memory.  I think this form will make pointers easier for beginners to understand and reduce pointer related errors.

randInt(min,max) for a range of numbers is definitely useful and I'll probably get to that in this release.  I have been working this whole week with little sleep to finish my python compiler project for class so I'm a little "compiled out" right now, but hopefully I'll get this all done soon.  My goal is to finish adding core features so that the next release after that will be 1.0.0 but we'll see what happens...

___Axe_Parser___
Today the calculator, tomorrow the world!

Offline Deep Toaster

  • So much to do, so much time, so little motivation
  • Administrator
  • LV13 Extreme Addict (Next: 9001)
  • *************
  • Posts: 8217
  • Rating: +758/-15
    • View Profile
    • ClrHome
Re: Features Wishlist
« Reply #2239 on: May 07, 2011, 10:32:41 pm »
Wow, this is a really dead-close poll!  Not sure what I'm going to do yet, I usually only make a change this large if there is overwhelming support for it.  And no, it doesn't affect compile time because axe has to figure out where to close the parenthesis (pop the stack) on its own already without them so it would take just as long.  This would only be a programmer convenience and wouldn't change anything at all about the compiling process or generated programs.  If you are extremely for it or against it, please state your lengthy opinions why this is either a terrible idea or an absolute necessity.

Good to hear. In that case I support forcing programmers to close brackets (reasons have been posted already by a couple of us).

And how about a hotkey to quit compiling? :D

Another new feature I am adding is a new style of pointer referencing.  For any variable or static pointer you can now write {__+A} as A(__).  and {__*2+A}r as A(__)r.  Here, the variable A can also be a ram location like L1, a static pointer like Str1, and possibly a file object like Y1 if I can get that to work.  That means things like L1(7) means the same thing as in basic as it does in Axe; the 7th item in L1's memory.  I think this form will make pointers easier for beginners to understand and reduce pointer related errors.

That makes sense, and it would make arrays so much easier to understand and use :)
« Last Edit: May 07, 2011, 10:33:00 pm by Deep Thought »




Offline calc84maniac

  • eZ80 Guru
  • Coder Of Tomorrow
  • LV11 Super Veteran (Next: 3000)
  • ***********
  • Posts: 2912
  • Rating: +471/-17
    • View Profile
    • TI-Boy CE
Re: Features Wishlist
« Reply #2240 on: May 07, 2011, 10:33:22 pm »
That means things like L1(7) means the same thing as in basic as it does in Axe; the 7th item in L1's memory.
Well, actually the 8th item (unless you plan on starting with 1 instead of 0 for arrays, which of course wouldn't be a great idea from a low-level programming perspective)
"Most people ask, 'What does a thing do?' Hackers ask, 'What can I make it do?'" - Pablos Holman

Offline ztrumpet

  • The Rarely Active One
  • CoT Emeritus
  • LV13 Extreme Addict (Next: 9001)
  • *
  • Posts: 5712
  • Rating: +364/-4
  • If you see this, send me a PM. Just for fun.
    • View Profile
Re: Features Wishlist
« Reply #2241 on: May 07, 2011, 10:34:27 pm »
Here's one that I think would be pretty useful and easy to implement: custom interrupts that call the OS interrupt handler before starting or upon finishing. This would allow programmers to use commands like getKey or getKeyr with custom interrupts enabled, which could be very useful. Perhaps fnInt(LBL,FREQ)r? If they wanted they could actually use this to speed up arrow key repeats as well.
I think this is a great idea as well.

I'm for closing the parenthesis; since some commands already require it, I think it should be universal.

The new syntax sounds neat. ;D

Offline Freyaday

  • The One And Only Serial Time Killing Catboy-Capoeirista-Ballerino
  • LV10 31337 u53r (Next: 2000)
  • **********
  • Posts: 1970
  • Rating: +128/-15
  • I put on my robe and pixel hat...
    • View Profile
Re: Features Wishlist
« Reply #2242 on: May 07, 2011, 10:36:17 pm »
Another new feature I am adding is a new style of pointer referencing.  For any variable or static pointer you can now write {__+A} as A(__).  and {__*2+A}r as A(__)r.  Here, the variable A can also be a ram location like L1, a static pointer like Str1, and possibly a file object like Y1 if I can get that to work.  That means things like L1(7) means the same thing as in basic as it does in Axe; the 7th item in L1's memory.  I think this form will make pointers easier for beginners to understand and reduce pointer related errors.
Sweetness!
In other news, Frey continues kicking unprecedented levels of ass.
Proud member of LF#N--Lolis For #9678B6 Names


I'm a performer at heart; I stole it last week.
My Artwork!

Offline Munchor

  • LV13 Extreme Addict (Next: 9001)
  • *************
  • Posts: 6199
  • Rating: +295/-121
  • Code Recycler
    • View Profile
Re: Features Wishlist
« Reply #2243 on: May 08, 2011, 08:22:29 am »
@Quigibo: All that looks cool and here's my text on parentheses:

If we are not forced to use parentheses then we won't use them sometimes (like I used to) and then some stuff goes wrong  (this happened to me) and I had no idea why! since everything made sense. If parentheses are forced, it makes code cleaner and more universal among other languages. I think all commands should require them and even on If's they should exist like :If (X=88):.DO THIS:End.

Offline Deep Toaster

  • So much to do, so much time, so little motivation
  • Administrator
  • LV13 Extreme Addict (Next: 9001)
  • *************
  • Posts: 8217
  • Rating: +758/-15
    • View Profile
    • ClrHome
Re: Features Wishlist
« Reply #2244 on: May 08, 2011, 11:40:11 am »
Wait, even on Ifs and Disps and things like that? Remember Python doesn't even enforce them for those. The commands with a space with them are meant to have a different interface IMO.

EDIT: Unless you make Axe Tokens get rid of the spaces and replace them with (, but I doubt that's practical.
« Last Edit: May 08, 2011, 11:40:50 am by Deep Thought »




Offline ztrumpet

  • The Rarely Active One
  • CoT Emeritus
  • LV13 Extreme Addict (Next: 9001)
  • *
  • Posts: 5712
  • Rating: +364/-4
  • If you see this, send me a PM. Just for fun.
    • View Profile
Re: Features Wishlist
« Reply #2245 on: May 08, 2011, 11:41:27 am »
Wait, even on Ifs and Disps and things like that? Remember Python doesn't even enforce them for those. The commands with a space with them are meant to have a different interface IMO.
Yeah, I think this is the way to do it as well.  I only think it should be only after a '('.

Offline Munchor

  • LV13 Extreme Addict (Next: 9001)
  • *************
  • Posts: 6199
  • Rating: +295/-121
  • Code Recycler
    • View Profile
Re: Features Wishlist
« Reply #2246 on: May 08, 2011, 04:44:01 pm »
Wait, even on Ifs and Disps and things like that? Remember Python doesn't even enforce them for those. The commands with a space with them are meant to have a different interface IMO.

EDIT: Unless you make Axe Tokens get rid of the spaces and replace them with (, but I doubt that's practical.

I didn't say Disps, did I?

Offline Admiral-Bell

  • LV1 Newcomer (Next: 20)
  • *
  • Posts: 5
  • Rating: +0/-0
    • View Profile
Re: Features Wishlist
« Reply #2247 on: May 08, 2011, 05:27:21 pm »
Wait, even on Ifs and Disps and things like that? Remember Python doesn't even enforce them for those. The commands with a space with them are meant to have a different interface IMO.

EDIT: Unless you make Axe Tokens get rid of the spaces and replace them with (, but I doubt that's practical.

Yes, python does require parentheses for it's display command. You don't need them for if, but print() is a function and python always requires parentheses for functions. Unless, of course, you are still using python 2.x, but at this point you really should be using 3.x
« Last Edit: May 10, 2011, 12:28:58 am by Admiral-Bell »

Offline Deep Toaster

  • So much to do, so much time, so little motivation
  • Administrator
  • LV13 Extreme Addict (Next: 9001)
  • *************
  • Posts: 8217
  • Rating: +758/-15
    • View Profile
    • ClrHome
Re: Features Wishlist
« Reply #2248 on: May 09, 2011, 09:37:50 am »
Wait, even on Ifs and Disps and things like that? Remember Python doesn't even enforce them for those. The commands with a space with them are meant to have a different interface IMO.

EDIT: Unless you make Axe Tokens get rid of the spaces and replace them with (, but I doubt that's practical.

I didn't say Disps, did I?

If you enforce it on some commands that end in a space but not others, you create a UI disconnect which is always a bit annoying :(




Offline ZippyDee

  • LV8 Addict (Next: 1000)
  • ********
  • Posts: 729
  • Rating: +83/-8
  • Why not zoidberg?
    • View Profile
Re: Features Wishlist
« Reply #2249 on: May 09, 2011, 09:40:34 am »
I have to agree with Deep Thought on this one...If you're going to require something, make it a uniform requirement. Also, make sure it's a logical requirement... I personally think If statements are fine the way they are. However, I can understand adding parentheses to other commands that already prompt you for parentheses such as For( and Output(.
« Last Edit: May 09, 2011, 09:41:21 am by ZippyDee »
There's something about Tuesday...


Pushpins 'n' stuff...