From what I've read, this will be the first on-calc interpreter. I'm working on it. Unfortunately, my calc decided to reset twice. But, it's still on. The premise of this basic program is this. You download a picture from Cemetech. Your calculator reads the pixels and uses them to run a program. While this seems rather useless... its not. This is one of the only ways to write polymorphic code for calculator. I will be posting updates. Written all in TI-Basic.
Do you mean like PICO-8 cartridges?
polymorphic? would you have to download a picture from cemetech? care to explain? This seems exciting but I'm not sure what I'm excited about
I believe he means that rather than download an .8xp program you would download an image and this program would run it on the calc like a program. Here is the
Wikipedia Article on polymorphic code. Personally, I've never heard of it before but it sounds cool.
So, does this ring a bell as Esoteric?
Err, my question is why? Its much simpler to just have .8xp program; and a parsing program in TIBasic (which is itself parsed) would be very slow
Is this for encryption or compression or something else like QR kind of scanning... Sounds a bit dangerous not to know what the picture will run but intriguing to know what you are trying to achieve
I don't know exactly what you mean, but I've got mixed opinions on what I'm hearing. If it really is a program that can use a picture/screenshot and turn that into code that should display the same things given the same inputs, that sounds cool, horrendously complex and kind of scary not knowing what it might create (I feel like it would get way different code than the original). I also think this might be a very challenging thing to try and achieve (I definitely would not tackle such a project, but you're not me
) I like the enthusiasm
If your idea is not what I've just mentioned (I glanced at the wikipedia page and it seems like polymorphic code is just another way of saying self-modifying code, which is not really what I just described...) then could you please explain what it is exactly that you are trying to achieve?
Oh and you might want to change the name of the project to something a little more catchy
mr womp womp wrote:
Oh and you might want to change the name of the project to something a little more catchy
What are you talking about; cool people like me would call it "Wuddy-Jub"!
To be honest, when I first saw this topic, I thought it was someone who decided to post a rant against people who use ASM/C instead of TI-BASIC.
As for the polymorphic request, because the program can change itself in the program (data and code are in the same place) it can change itself while running. Difficult, but... You know. Luxon, you where right about the Esorteric. I realized the name is dumb. I have a couple ideas, but I'm not going to give it a new official name until its done. I'm maybe 15% done, and its going a lot faster now.
So it reads the binary numbers to tell it what to do, but it can also write values to the screen that can be read.
I'm intrigued and feels cryptic - language name is difficult to remember - voodoo would sound catchier...
Yeah, Working on better names. FOCIL, maybe? (First On Calc Interpreted Language)
CodertheBarbarian wrote:
Yeah, Working on better names. FOCIL, maybe? (First On Calc Interpreted Language)
I hate to burst your bubble, but it's not the first interpreted language by far. Merthsoft made a turtle program, which has its own language, and Xeda made grammar, which is an interpreted language for calculators. I'm sure there are others I'm forgetting too. The project looks really cool however, I like the idea of code and data being in the same place so the code can edit itself (although that's not called polymorphism, that's SMC (self modifying code)). Does this also mean that you can see the program as its executing? That'd be pretty neat.
Commands that PROBABLY will be in the final release:
IF
Display Char
New Line (Display char will be on the same line, unless it wraps over or this is used)
Jump Back (Change where its reading bytes backwords)
Jump FWD (Same)
Display
Read Data (From screen, into one of 4 accumulators)
Write Bit (Same, but draws)
End
Read Key (Waits until key press, then puts key # in acc F)
Add (Adds two accumulators)
Subtract (Subtracts two accumulators
Finished
Jump Back
Jump Forward
Add
Modules That are needed
Binary 2 base 10 (done)
Read bits from screen (Done)
Base 10 to binary
Write bits from screen
Hmm. I haven't seen the turtle or Xeda. Any better ideas for names?
I like Voodoo, it sounds cool and could be its own thing yanno. Credits to amazonka because I'm too lazy to quote
Good News!!
I almost finished the if command , so all I have left to do is:
Organize how to do scrolling screen for Display Character and NewLine
Finish If
Add Stop
Add Read Key
So... I can probably get the Alpha out before the end of the week.
Congrats on good news and keep us updated