Author Topic: Features Wishlist  (Read 612676 times)

0 Members and 2 Guests are viewing this topic.

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 #735 on: June 17, 2010, 02:17:12 am »
DJ suggested a really cool idea.  I think If I use my hooks correctly, I can have the Axe Tokens automatically enabled whenever the basic editor detects the program it is editing is an Axe source file and then revert back to normal when you quit so that the tokens never get mixed up or confused when you're dealing with regular BASIC.

I'm just worried if I eventually want to switch to Axe Tokens as the default tokens, then computer coding might get more complicated since programs like SourceCoder only use the original tokens.
You could always ask Kerm to add Axe support to Sourcecoder :)
"Most people ask, 'What does a thing do?' Hackers ask, 'What can I make it do?'" - Pablos Holman

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 #736 on: June 17, 2010, 02:21:23 am »
While that is true, and he probably would, what about things like TI-GraphLink?  I don't know if anyone still uses that but that's what I used to use a lot for basic editing.  But I suppose as long as there is at least one computer editor that supports it, then it at least gives you the option.  Does anyone here code on the computer in something other than SourceCoder and would be uncomfortable switching?
« Last Edit: June 17, 2010, 02:22:12 am by Quigibo »
___Axe_Parser___
Today the calculator, tomorrow the world!

Offline DJ Omnimaga

  • Clacualters are teh gr33t
  • CoT Emeritus
  • LV15 Omnimagician (Next: --)
  • *
  • Posts: 55942
  • Rating: +3154/-232
  • CodeWalrus founder & retired Omnimaga founder
    • View Profile
    • Dream of Omnimaga Music
Re: Features Wishlist
« Reply #737 on: June 17, 2010, 02:23:48 am »
Why not just keep things as they were? Sure, Conj() sounds weird, but think about new members who are gonna ask for help. They're gonna get told to copy bytes they need Conj. Experienced users all ggot used to Conj. I feel like you are forcing this on people and despite what I said regarding that stuff you did not care.

So for now I am sticking to Axe 0.2.6 and am no longer going to provide new feature suggestions.
« Last Edit: June 17, 2010, 02:24:47 am by DJ Omnimaga »
Now active at https://discord.gg/cuZcfcF (CodeWalrus server)

Offline Raylin

  • Godslayer
  • LV10 31337 u53r (Next: 2000)
  • **********
  • Posts: 1392
  • Rating: +83/-25
  • I am a certifiable squirrel ninja.
    • View Profile
    • Ray M. Perry
Re: Features Wishlist
« Reply #738 on: June 17, 2010, 02:30:02 am »
Easy, DJ, easy.
Be cool.

Quigibo's obviously wants to evolve Axe into an independent language and if he's doing that, I say let him.
Besides, you can toggle the changes. They aren't really forced... :\
Bug me about my book.

Sarah: TI-83 Plus Silver Edition [OS 1.19]
Cassie: TI-86 [OS 1.XX]
Elizabeth: TI-81 [OS 1.XX]
Jehuty: TI-83 Plus Silver Edition [OS 1.19]
Tesla: CASIO Prizm







Offline DJ Omnimaga

  • Clacualters are teh gr33t
  • CoT Emeritus
  • LV15 Omnimagician (Next: --)
  • *
  • Posts: 55942
  • Rating: +3154/-232
  • CodeWalrus founder & retired Omnimaga founder
    • View Profile
    • Dream of Omnimaga Music
Re: Features Wishlist
« Reply #739 on: June 17, 2010, 02:32:09 am »
True but he's planning to quit documenting the old commands...
Now active at https://discord.gg/cuZcfcF (CodeWalrus server)

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 #740 on: June 17, 2010, 02:33:49 am »
I'm not planning anything yet.  This is just an experiment.  I'm going to see if people like it or not.  I've clearly got 1 vote for not.
___Axe_Parser___
Today the calculator, tomorrow the world!

Offline meishe91

  • Super Ninja
  • LV11 Super Veteran (Next: 3000)
  • ***********
  • Posts: 2946
  • Rating: +115/-11
    • View Profile
    • DeviantArt
Re: Features Wishlist
« Reply #741 on: June 17, 2010, 02:42:59 am »
I like the idea of just being able to toggle them off and on when you want. That way both sides are happy. What you could do on like the command list to show what both names are is just have one column that says "TI Token" and then the other "Axe Token" and then just state in documentation or something which is which. Just a thought :)
« Last Edit: June 17, 2010, 02:43:15 am by meishe91 »
Spoiler For Spoiler:



For the 51st time, that is not my card! (Magic Joke)

Offline Galandros

  • LV9 Veteran (Next: 1337)
  • *********
  • Posts: 1140
  • Rating: +42/-10
    • View Profile
Re: Features Wishlist
« Reply #742 on: June 18, 2010, 04:46:49 pm »
I have seen in disassembled code:
 ld ($8000),hl
 ld hl,($8000) ; $8000 is an example

Will that be optimized? Or is the user not optimized code that leads to that?

Also some push and pop of hl could optimize sometimes. Dunno how hard it could be.

When Axe Parser reaches final releases, I will like to see the compiled code for curiosity. :P
Hobbing in calculator projects.

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 #743 on: June 18, 2010, 04:54:31 pm »
That would only be from unoptimized code by the programmer.  Like this:

Code: [Select]
A+1->A
Disp A>Dec

In the above example you first increment the value of A and then save it.  Immediately after, the next instruction is to load A again to display it.  Since you have just saved it and now are immediately loading it, that is obviously an inefficiency.  You can optimize it like this:

Code: [Select]
Disp A+1->A>Dec

So that way, it doesn't need to load the value of A a second time.  I might be able to have this be done automatically, I don't know how hard that would be though becasue that type of optimization is not dependent on the source, rather, it would need to make checks on  the assembly code written.  I haven't tried that yet, but it might be possible in the future.
« Last Edit: June 18, 2010, 04:55:18 pm by Quigibo »
___Axe_Parser___
Today the calculator, tomorrow the world!

Offline Galandros

  • LV9 Veteran (Next: 1337)
  • *********
  • Posts: 1140
  • Rating: +42/-10
    • View Profile
Re: Features Wishlist
« Reply #744 on: June 18, 2010, 05:04:53 pm »
I see. I am still getting into Axe Parser details. :P
Since that only comes from user not optimized code, we can leave to the end or just forget it and instead document how to code optimized.

In the future would an Axe Parser optimizator be a viable project? Like a program that takes compiled code and tries to replace code by smaller or faster code.
Btw, programs (and appsvars) can be shrink directly and safely by changing its size word (it is the first 2 bytes that the VAT points to the program memory) to a lesser value?
« Last Edit: June 18, 2010, 05:07:44 pm by Galandros »
Hobbing in calculator projects.

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 #745 on: June 18, 2010, 05:12:14 pm »
I doubt you can shrink it that way because I think then the OS is unaware of the change and it will say you have less RAM available on your calculator than you really do and it will not correct itself until the next ram clear.

I hope to have the Parser itself optimize as much as possible.  The reason you don't really see C or Java optimizers is that its really really hard to optimize code at the higher levels, even for a medium level like Axe.
___Axe_Parser___
Today the calculator, tomorrow the world!

Offline DJ Omnimaga

  • Clacualters are teh gr33t
  • CoT Emeritus
  • LV15 Omnimagician (Next: --)
  • *
  • Posts: 55942
  • Rating: +3154/-232
  • CodeWalrus founder & retired Omnimaga founder
    • View Profile
    • Dream of Omnimaga Music
Re: Features Wishlist
« Reply #746 on: June 18, 2010, 05:15:43 pm »
Code: [Select]
Disp A+1->A>Dec
Gotta love how we can do that ;D . I always wished we could do stuff like this in TI-BASIC too (or in xLIB)
Now active at https://discord.gg/cuZcfcF (CodeWalrus server)

Offline Galandros

  • LV9 Veteran (Next: 1337)
  • *********
  • Posts: 1140
  • Rating: +42/-10
    • View Profile
Re: Features Wishlist
« Reply #747 on: June 18, 2010, 05:34:13 pm »
Code: [Select]
Disp A+1->A>Dec
Gotta love how we can do that ;D . I always wished we could do stuff like this in TI-BASIC too (or in xLIB)
Yes, I also like the syntax after understanding the implications.
It is bit like the Ans (some differences) but even faster. :D
I also wish in TI-BASIC we could do some expressions that did not change Ans for faster code. :D Like lines started with colons instead of enter did not change Ans. I see lots of optimization coming from this.

Even more important would be TI-BASIC be faster interpreting. I will experiment a simple interpreter that looks like TI-BASIC but adds some BBC BASIC, Axe Parser and some of my ideas to it. The floating point operations could be easily added later with bcalls to the TIOS routines. Until that I would use integers for numbers, lists, etc..
The main advantage of a interpreter against Axe Parser is stability and source code is also the code. It would be slower anyway, but I believe is possible to come with a bit faster than BBC Basic.
Also 1000th post. ^^
« Last Edit: June 18, 2010, 05:35:35 pm by Galandros »
Hobbing in calculator projects.

souvik1997

  • Guest
Re: Features Wishlist
« Reply #748 on: June 20, 2010, 08:04:13 pm »
Something that would be really cool would be the addition of matrices.

Offline calcdude84se

  • Needs Motivation
  • LV11 Super Veteran (Next: 3000)
  • ***********
  • Posts: 2272
  • Rating: +78/-13
  • Wondering where their free time went...
    • View Profile
Re: Features Wishlist
« Reply #749 on: June 20, 2010, 09:00:52 pm »
You can do matrices already, albeit indirectly. For a matrix with X columns and Y rows, for example, you can access (A,B) (with A being the column and B the row, indexed from 0) with {B*X+A+GDB1} (assuming the data is ordered a row at a time, beginning at GDB1)
As for a direct method, it might cause too much overhead, though, even if it didn't (I can already think of an implementation where everything that can be figured out is at compile time), I'm not sure it would be added. That would be up to Quigibo.
So, rather, you would like a direct, simple-looking way to use matrices. (Actually, these are really just two-dimensional arrays, but w/e. You're not getting matrix multiplication in Axe except by your own subroutine :P)
"People think computers will keep them from making mistakes. They're wrong. With computers you make mistakes faster."
-Adam Osborne
Spoiler For "PartesOS links":
I'll put it online when it does something.