Author Topic: Axe Parser  (Read 498267 times)

0 Members and 3 Guests are viewing this topic.

Offline Binder News

  • LV8 Addict (Next: 1000)
  • ********
  • Posts: 785
  • Rating: +46/-3
  • Zombie of Tomorrow
    • View Profile
Re: Axe Parser
« Reply #1770 on: May 22, 2011, 11:33:36 pm »
I would love this feature. Great for smaller programs.
Runner, I like your idea even better.
Also, a request: a way to optimize for constants for axioms.
What I mean is, the same token could be used, but instead of having a jump table at the beginning of axiom code, add an extra field in the Axiom header that allows for different variants of the code to be used depending on which constant is specified. The Fix command would be perfect for this.
« Last Edit: May 22, 2011, 11:37:11 pm by Binder News »
Spoiler For userbars:







Hacker-in-training!   Z80 Assembly Programmer     Axe Programmer
C++ H4X0R             Java Coder                           I <3 Python!

Perdidisti ludum     Cerebrum non habes

"We are humans first, no matter what."
"Fame is a vapor, popularity an accident, and riches take wings. Only one thing endures, and that is character."
Spoiler For Test Results:





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: Axe Parser
« Reply #1771 on: May 23, 2011, 08:42:08 am »
I like Runer's suggestion the best.  I think having a three pass system is the way to go.

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: Axe Parser
« Reply #1772 on: May 25, 2011, 04:24:21 am »
Another pass would be nice. The only issue that can arise is if someone compiles a massive program like the Hero of Might and Magic game from last year's contest on a regular 83+ (which had like 100 programs and took almost 1 minute to compile)
« Last Edit: May 25, 2011, 04:24:37 am by DJ_O »
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: Axe Parser
« Reply #1773 on: May 25, 2011, 05:04:10 am »
On the subject of passes, I could also have a 4th pass to relocate all the data after the builtin subroutines to allow shell compatible programs to break the 8kb executable limit more easily.
___Axe_Parser___
Today the calculator, tomorrow the world!

Offline Runer112

  • Project Author
  • LV11 Super Veteran (Next: 3000)
  • ***********
  • Posts: 2289
  • Rating: +639/-31
    • View Profile
Re: Axe Parser
« Reply #1774 on: May 25, 2011, 11:22:27 am »
That would be pretty awesome too. I'm always a fan of more features at the cost of being a little slower.
« Last Edit: May 25, 2011, 11:23:43 am by Runer112 »

Offline Builderboy

  • Physics Guru
  • CoT Emeritus
  • LV13 Extreme Addict (Next: 9001)
  • *
  • Posts: 5673
  • Rating: +613/-9
  • Would you kindly?
    • View Profile
Re: Axe Parser
« Reply #1775 on: May 25, 2011, 11:24:36 am »
Perhaps an optional 4th pass for those of us that like to squeeze every bit of speed from everything we encounter?

Offline aeTIos

  • Nonbinary computing specialist
  • LV12 Extreme Poster (Next: 5000)
  • ************
  • Posts: 3915
  • Rating: +184/-32
    • View Profile
    • wank.party
Re: Axe Parser
« Reply #1776 on: May 25, 2011, 01:13:41 pm »
Another suggestion: To cut the size of programs, perhaps use the shell routines? (You can for example always use ion routines when compiling for shell)
I'm not a nerd but I pretend:

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: Axe Parser
« Reply #1777 on: May 25, 2011, 03:45:48 pm »
Perhaps an optional 4th pass for those of us that like to squeeze every bit of speed from everything we encounter?
I think that's a great idea.  I vote for three passes with an optional 4th.

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: Axe Parser
« Reply #1778 on: May 25, 2011, 11:28:14 pm »
If Axe adds more passes, can we also have a hotkey to break compiling at any point? I think that would be useful a lot.




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: Axe Parser
« Reply #1779 on: May 25, 2011, 11:38:12 pm »
It would be too difficult to make passes optional because that stuff is hard coded.  The break key is a great idea though, I think I will make the [On] key break compiling and clean up unfinished files so that if you accidentally compile a huge program for the wrong shell or something, you don't have to wait a minute for it to compile just to delete it and compile again.
___Axe_Parser___
Today the calculator, tomorrow the world!

Offline Runer112

  • Project Author
  • LV11 Super Veteran (Next: 3000)
  • ***********
  • Posts: 2289
  • Rating: +639/-31
    • View Profile
Re: Axe Parser
« Reply #1780 on: May 25, 2011, 11:48:29 pm »
I don't quite understand why it would be hard to make passes optional. Could you make normal parsing the 4-pass system that moves data to the end? But if this option is turned off, start parsing with a pass outside the normal 4-pass system that acts like the first two passes combined and then resumes with/jumps to the final two passes as usual? This "fifth" pass would probably share a lot of redundant code with the first two passes, but you're not exactly tight on space in the application, are you?
« Last Edit: May 25, 2011, 11:53:03 pm by Runer112 »

Offline leafy

  • CoT Emeritus
  • LV10 31337 u53r (Next: 2000)
  • *
  • Posts: 1554
  • Rating: +475/-97
  • Seizon senryakuuuu!
    • View Profile
    • keff.me
Re: Axe Parser
« Reply #1781 on: May 25, 2011, 11:58:43 pm »
I'm in favor of that fourth pass. For me, size is everything ><
In-progress: Graviter (...)

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: Axe Parser
« Reply #1782 on: May 26, 2011, 01:23:30 am »
That 4th pass idea sounds good to me. :)
Now active at https://discord.gg/cuZcfcF (CodeWalrus server)

Offline Michael_Lee

  • LV9 Veteran (Next: 1337)
  • *********
  • Posts: 1019
  • Rating: +124/-9
    • View Profile
Re: Axe Parser
« Reply #1783 on: May 26, 2011, 01:30:45 am »
I like the 4th pass idea.
An additional second or two (or ten, for that matter) wouldn't really matter to me if it meant that I would get an uber-compressed/speedy program.
My website: Currently boring.

Projects:
Axe Interpreter
   > Core: Done
   > Memory: Need write code to add constants.
   > Graphics: Rewritten.  Needs to integrate sprites with constants.
   > IO: GetKey done.  Need to add mostly homescreen IO stuff.
Croquette:
   > Stomping bugs
   > Internet version: On hold until I can make my website less boring/broken.

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: Axe Parser
« Reply #1784 on: May 26, 2011, 10:44:24 am »
* Freyaday likes the idea of smaller Axe programs
Another one for the Fourth pass, then.
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!