Omnimaga
Omnimaga => News => Topic started by: apcalc on April 12, 2011, 10:12:56 pm
-
Earlier today, Texas Instruments introduced a seemingly innocent Periodic Table (http://ti.bank.free.fr/index.php?mod=archives&ac=voir&id=3211) TNS Document for the Nspire.
(http://www.techpoweredmath.com/wp-content/uploads/2011/04/nspire-periodic-table.jpg)
At first usage of the "Periodic Table" page of this document, it is clear that it certainly could not be created with any of the existing Applications for the TI-Nspire. After more investigations by members of TI-BANK (http://ti.bank.free.fr/index.php?mod=news&ac=commentaires&id=1042) it has become evident that TI used a new, mysterious application, "TI.ScriptApp", to develop this Periodic Table. Furthermore, more searching into this tns file has shown that this language very well may be Lua (http://www.lua.org/).
Sadly, Texas Instruments has released no indication of allowing public users of the Nspire to develop using the "ScriptApp" application. It is probably safe to assume that special SDK software is needed for easy development of these documents. Nevertheless, having the ability to program in Lua on the Nspire offers many possibilities for Nspire developers. Although it might be difficult to make an emulator in Lua, games such as simple Card Games (solitaire) and puzzle games (Block Dude) might be easily developed in this language!
-
Hmm. Very interesting. Maybe TI will give us programming capabilities on the new Nspire. I sure hope so.
Unfortunately, it will probably be like programming with a cinderblock on our backs.
I also wonder who on Omni knows Lua.
-
If It is Lua it isn't the fastest or the best language but it is a useful portable language. We should be able to get quite a few good programs written with it if/when TI releases the SDK for it. The only question is how much they're going to expect us to pay for it.
-
Is Lua interpreted? I wonder if TI would let us edit it on calc. If they release the SDK for free, I will be even more tempted to buy a CX.
-
Is Lua interpreted? I wonder if TI would let us edit it on calc. If they release the SDK for free, I will be even more tempted to buy a CX.
Yes, it's an interpreted scripting language.
-
If Lua is what I think it is. It is a programming language much like python just slower and less powerful(I do not mean to be putting down the language this is just what I have heard). I hope for an on calc editor maybe with a debugger also. I doubt very much that they will release the SDK for free though. There is too much interest in it for them not to try to market it. They are TI after all
-
In case no ones knows the syntax of Lua, I can tell you firsthand that any BASIC users would be able to pick it up fast -- it does have powerful features such as tables and methods, but these are implemented so that anyone can use them comfortably and with ease.
-
Hmm interesting. If only TI would make it available to public instead of just the limited TI-BASIC...
In any case, if it's really Lua, do you think a third-party Lua IDE could be written by the community, like SimonLothar and others are doing with the Prizm?
By the way Lua is available on the Casio Classpad 300 and I think there was a project about porting it to the FX-9860G too (which would obviously mean Prizm later too).
-
I think lua is actually an extremely simple thing t port -- and its really lightweight :)
-
It could definitely (and I would stake $100 on it, but not for reals) and will be written if TI doesn't make one.
-
Do you think TI could purposely limit its features, though, to discourage game development? I wouldn't be surprised, for example, if they totally got rid of any getkey or pixel/line drawing command...
Also I wonder if it will be any faster than TI-Nspire BASIC...
-
Do you think TI could purposely limit its features, though, to discourage game development? I wouldn't be surprised, for example, if they totally got rid of any getkey or pixel/line drawing command...
Also I wonder if it will be any faster than TI-Nspire BASIC...
Yes, they could limit it in their IDE by simply not allowing certain commands, and I'm sure they would to a point. But not entirely as well. The problem will be if these have an RSA signature or something.
And I think it'll be faster than TI-Nspire BASIC.
-
how can anything be slower than Nspire BASIC?
-
how can anything be slower than Nspire BASIC?
True. A three-toed sloth going across the US from east coast to west coast would finish before the NSpire could count to 999.
-
My calculator crashed(took to long so I turned it off by taking the keypad out) when I tried to run a factoring program on it
I was only trying to factor 10000 as a test
-
Well, they would have enough power to program the periodic table app.
Even if they don't release an SDK, we would still have their libs to use.
Also, I am not going to jump on any conclusions at all. All of my statements are pure speculation.
-
how can anything be slower than Nspire BASIC?
True. A three-toed sloth going across the US from east coast to west coast would finish before the NSpire could count to 999.
Both of which would finish before the Prizm could draw a stick figure :P
-
how can anything be slower than Nspire BASIC?
True. A three-toed sloth going across the US from east coast to west coast would finish before the NSpire could count to 999.
Both of which would finish before the Prizm could draw a stick figure :P
I thought the line width was too thick to draw a decent stick figure? That would be awful if one line took up the entire screen.
I would yell at Qwerty.55 to get working on AXE for prizm, but... I have a feeling he'd need an assembler for that...
/me goes back to work...
-
Yay, possibilties!/me is a little late to the prty.
-
how can anything be slower than Nspire BASIC?
True. A three-toed sloth going across the US from east coast to west coast would finish before the NSpire could count to 999.
Both of which would finish before the Prizm could draw a stick figure :P
Speaking of which how fast can a Prizm draw a stick figure. Well the answer to that is 2.75 seconds meaning that the three toed sloth must be traveling faster than 3,927,272 miles per hour! O.O That's one fast sloth and one frickin slow calc. :P
(http://img.removedfromgame.com/imgs/stickfigure.bmp)
-
Yeah prizm BASIC is really slow. X.x
I'm glad Lua on the Nspire isn't too slow, at least from what I could see from Goplat's game.
I'll post a news about it I think.
-
Hmm. Very interesting. Maybe TI will give us programming capabilities on the new Nspire. I sure hope so.
Unfortunately, it will probably be like programming with a cinderblock on our backs.
I also wonder who on Omni knows Lua.
Ashbad and I do, at least.
-
Hmm. Very interesting. Maybe TI will give us programming capabilities on the new Nspire. I sure hope so.
Unfortunately, it will probably be like programming with a cinderblock on our backs.
I also wonder who on Omni knows Lua.
Ashbad and I do, at least.
I also know Lua, and knowing how TI doesn't like us anymore, it will probably have horrid processing speed, even compared to an 81.
-
You won't know...
I like your avatar ;D
-
I saw the preview and can give it this much: Huge improvement over nSpire BASIC.
-
That at least.
-
Something with better functionality than the Nspire's BASIC was not a difficult concept, but it took TI only more than three years to do it :D
-
Lol, yeah. So Lua can do anything it can do on computer, but interpreted?
-
It depends on how complete the standard lib embedded into the Nspire's interpreter is, I guess.
-
I always wondered: How do people make those functions that come in the lib, the first ones with no dependencies? Probably a ton of strenuous hard-coding.
-
Yep. think of it like
-repeat this for each token-
if string=token
code
end
-
Well then... :o
I call not first candidate for hacking in more functions!
-
The Lua interpreter itself is open source, and a fairly small code base with good portability :)
-
oh, but they've been working on it with >10 ppl, I think, and not only on that.
(Someone should make a TI-8x Lua interpreter in Axe/Asm)
-
Portable code is fun to play with...
Until you brick everything :/
-
mhm you can brick your calc with everything... just be careful
-
That being the reason for emulators.
-
Wait, Lua is interpreted? I thought it was compiled?
-
Interpreter?! CRAP! :mad: <--umad
EDIT to add clarity: I am generally not good with interpreters. I am not trying to degrade them in any way, shape or form. Thank you for your negative ratings. Seriously, I don't mind.
-
Not all interpreters are crap. Some are.
-
I don't think it's a wise thing to bash interpreters :P Some, like Lua, are extremely powerful.
This actually seems it could be extremely awesome -- Lua is a really fun language to code in :) I haven't coded in it for a while, but it's fast enough to fulfill most of your needs, including game coding.
-
Even though Lua is a little bit slower than python and the libraries aren't as extensive, the good thing is that an interpreter is much easier to make and is well designed for less powerful systems such as calcs. Python would still be good to see, but it would be hell to code all of that OOP in an interpreted platform.
-
I wonder how Nspire Lua speed compares to TI-BASIC... someone should try making a program that draws the RPG stuff in Jhgenius01 game to compare. It's definitively better than nothing.
I wonder if in the future it could be possible to port Lua files between the TI-Nspire and Casio Classpad? The screen size differences might sometimes be an issue, though...
-
for a=1,10 do
print("That would be awesome")
end
-
Interesting, I was actually trying to port it. A decent console was probably just what was missing to make it work.
-
hmmm, I only know lua to program models in this game called Rigid Chips. It's the same lua, but im not sure how to do like programs
-
yeah, basically those games (GMod has it too, and a bunch of others) use their own custom libs that interface with the game's engine, allowing for programs with Game output. It's pretty cool!
-
There are lost of good interpreted languages out there :) Java is one!
And before you say its compiled, know that it is 'compiled' into bytecode, not assembly, and then it is interpreted :P
-
Which is also what Java, TI-86 BASIC, and a few other langs do.
-
Earlier I was thinking about creating a new version of Casio BASIC for the Prizm that was still interpreted, but was tokenized before running and extremely fast. It would be easier to learn than Java (which is also in development) as it would be just the BASIC language and would be safer and still easier than the currently being developed Axe port. But now if I'm wondering if I should lean more to Lua/python side for the easier to write code. The only downside is that I might have to give up the on-calc coding coding which is a big plus.
-
Lua is usually considered a good choice for embedded platforms, indeed. The Lua runtime doesn't have too high requirements, in terms of API breadth and code consumption.
I tried to compile it yesterday evening for the TI-68k/AMS platform, which revealed that it needs strtod, errno, stdin, stderr (and, I guess, stdout, though that one didn't appear in the file that made me give up). PedroM and Punix are nearer from a POSIX platform, Lua may be easier to port on them.
-
Considering the 86 had a much worse CPU, its BASIC is really fast. It's as fast as 83+ BASIC I daresay. But, you'd have huge source because of the ASCII-Based coding. Fortunately there was the 96k of ram, but no archive X(
Lua seems nice enough, basically fancy basic. Can we have more than one XML per doc, say, in problem2?
-
Lua seems nice enough, basically fancy basic. Can we have more than one XML per doc, say, in problem2?
I don't have time to test that right now, and won't have before tonight at best.
But feel free to beat me, using manual hex editing, or further modification with AdRiWeB's Lua -> TNS converter, which I modified to take arguments ( http://tibank.forumactif.com/t6885p30-topolangage-script-ti-os-30-enfin-un-langage-api#109335 ) :)
-
Still can't :P no OS 3.0 on mine, prob. won't be for a while, I've got a big Axe project now. Unless it supports 1.4, then I'd do it.
-
Considering the 86 had a much worse CPU, its BASIC is really fast. It's as fast as 83+ BASIC I daresay. But, you'd have huge source because of the ASCII-Based coding. Fortunately there was the 96k of ram, but no archive X(
Lua seems nice enough, basically fancy basic. Can we have more than one XML per doc, say, in problem2?
Really? I ran the exact same program on my TI-82, 83, 83+, 85 and 86 once, and the 86 version ran about 1.5 times slower ??? . I heard it was because of the paged RAM memory.
-
All right, I'll also write here what I found with some "hacks" :
I'm able to kind of "dump" some lua functions in the API.
here's a screenshot for example
(http://i27.servimg.com/u/f27/11/67/13/30/captur12.jpg)
So far, I found some functions, tables, read-only values etc. like
"Platform" (table) -> apilevel, window, isDeviceModeRendering, gc, isColorDisplay.
"gc" (graphics component/controller) -> drawArc, clipRect, setColorRGB, drawLine, getStringHeight, drawImage, fillPolygon, begin, setPen, setFont, drawPolyLine, drawString, fillArc, finish
_G (which is temporary but can be interesting) -> _G, _VERSION, assert, class, clipboard, collectgarbage, coroutine, cursor, D2Editor, document, error, gcinfo, getfenv, image, ipairs, load, loadstring, locale, math, newproxy, next, on, pairs, pcall, platform, print, rawequal, rawget, rawset, select, setfenv, setmetatable, string, table, timer, tonumber, toolpalette, var, xpcall (and some more, like functions I defined)
-
Some of the last ones are actually standard functions (http://pgl.yoyo.org/luai/i/5.1+Basic+Functions).
-
Some of the last ones are actually standard functions (http://pgl.yoyo.org/luai/i/5.1+Basic+Functions).
yep
And I managed to improve the dump program to show the whole (well, a big part) structure of the api (including lua's standard) :
-> Examining 'table: 0x58cef0
**** string (table: 0x585f60)
-> Examining 'table: 0x585f60
-------- split (function: 0x57ced0)
-------- match (function: 0x56e8b0)
-------- gmatch (function: 0x576ec0)
-------- upper (function: 0x591270)
-------- gsub (function: 0x5bce10)
-------- format (function: 0x576e40)
-------- lower (function: 0x5bce90)
-------- sub (function: 0x591230)
-------- usub (function: 0x57ce90)
-------- gfind (function: 0x576e80)
-------- find (function: 0x59e110)
-------- char (function: 0x59e090)
-------- dump (function: 0x59e0d0)
-------- reverse (function: 0x56e930)
-------- byte (function: 0x585f80)
-------- uchar (function: 0x598450)
-------- len (function: 0x5bce50)
-------- rep (function: 0x56e8f0)
**** xpcall (function: 0x590f60)
**** tostring (function: 0x584930)
**** print (function: 0x55ec80)
**** tellme7 (function: 0x5920d0)
**** image (table: 0x5c4840)
-> Examining 'table: 0x5c4840
-------- copy (function: 0x592e80)
-------- new (function: 0x592f30)
-------- height (function: 0x5c4860)
-------- __index (table: 0x5c4840)
-------- __gc (function: 0x5c4880)
-------- width (function: 0x5c48a0)
**** unpack (function: 0x590f00)
**** getfenv (function: 0x58cf10)
**** tellme5 (function: 0x592090)
**** tellme6 (function: 0x5920b0)
**** setmetatable (function: 0x5848b0)
**** next (function: 0x585950)
**** assert (function: 0x592960)
**** tellme2 (function: 0x59bcd0)
**** tonumber (function: 0x5848f0)
**** rawequal (function: 0x585350)
**** dump (function: 0x5aa9f0)
**** collectgarbage (function: 0x5d8ed0)
**** gcinfo (function: 0x5d8f30)
**** getmetatable (function: 0x5bc840)
**** document (table: 0x5983b0)
-> Examining 'table: 0x5983b0
-------- markChanged (function: 0x5983f0)
**** tellme8 (function: 0x5acca0)
**** timer (table: 0x582570)
-> Examining 'table: 0x582570
-------- start (function: 0x582590)
-------- getMilliSecCounter (function: 0x5825b0)
-------- stop (function: 0x5825d0)
**** tellme3 (function: 0x59bcf0)
**** coroutine (table: 0x57f7f0)
-> Examining 'table: 0x57f7f0
-------- resume (function: 0x592840)
-------- yield (function: 0x5ddb30)
-------- status (function: 0x5928c0)
-------- wrap (function: 0x5ddaf0)
-------- create (function: 0x592940)
-------- running (function: 0x592880)
**** tellme9 (function: 0x5c8d70)
**** rawset (function: 0x5853d0)
**** _VERSION (Lua 5.1)
**** table (table: 0x5c3760)
-> Examining 'table: 0x5c3760
-------- setn (function: 0x57cde0)
-------- insert (function: 0x5725e0)
-------- getn (function: 0x572560)
-------- foreachi (function: 0x5c37c0)
-------- maxn (function: 0x5725a0)
-------- foreach (function: 0x5c3780)
-------- concat (function: 0x562410)
-------- sort (function: 0x57ce20)
-------- remove (function: 0x57cda0)
**** locale (table: 0x5826d0)
-> Examining 'table: 0x5826d0
-------- name (function: 0x582710)
**** platform (table: 0x5c6ba0)
-> Examining 'table: 0x5c6ba0
-------- apilevel (1.0.0)
-------- window (userdata: 0x584124)
-> Examining 'table: 0x5a4eb0
---------------- height (function: 0x5be840)
---------------- invalidate (function: 0x5c3f60)
---------------- __index (table: 0x5a4eb0)
---------------- width (function: 0x5ddc50)
-------- isDeviceModeRendering (function: 0x5840c0)
-------- gc (function: 0x5c6c30)
++ --> -> Examining gc : '' table: 0x59de80
-------- drawRect (function: 0x57ce20)
-------- setAlpha (function: 0x585f00)
-------- getStringWidth (function: 0x5976f0)
-------- fillRect (function: 0x59c8d0)
-------- __index (table: 0x59de80)
-------- drawArc (function: 0x59c920)
-------- clipRect (function: 0x5c3990)
-------- setColorRGB (function: 0x585f40)
-------- drawLine (function: 0x5980a0)
-------- getStringHeight (function: 0x5976b0)
-------- drawImage (function: 0x57cda0)
-------- fillPolygon (function: 0x5bceb0)
-------- begin (function: 0x5dddf0)
-------- setPen (function: 0x5b4080)
-------- setFont (function: 0x585f80)
-------- drawPolyLine (function: 0x57cde0)
-------- drawString (function: 0x5bce30)
-------- fillArc (function: 0x5bce70)
-------- finish (function: 0x597670)
-------- isColorDisplay (function: 0x584080)
**** tellme4 (function: 0x592070)
**** var (table: 0x5c6bf0)
-> Examining 'table: 0x5c6bf0
-------- monitor (function: 0x5a1f40)
-------- list (function: 0x5a2010)
-------- recallstr (function: 0x57cfb0)
-------- unmonitor (function: 0x57d080)
-------- store (function: 0x5c6c10)
-------- recall (function: 0x5e6e00)
**** math (table: 0x5a4ef0)
-> Examining 'table: 0x5a4ef0
-------- log (function: 0x597fc0)
-------- eval (function: 0x521780)
-------- acos (function: 0x5a4f10)
-------- huge (inf)
-------- ldexp (function: 0x571680)
-------- pi (3.1415926535898)
-------- cos (function: 0x5976d0)
-------- tanh (function: 0x586800)
-------- pow (function: 0x5b40e0)
-------- deg (function: 0x597710)
-------- tan (function: 0x5a7150)
-------- cosh (function: 0x597690)
-------- sinh (function: 0x5c3990)
-------- random (function: 0x5c3910)
-------- randomseed (function: 0x5c3950)
-------- frexp (function: 0x571640)
-------- ceil (function: 0x59c930)
-------- floor (function: 0x5befe0)
-------- rad (function: 0x5b4120)
-------- abs (function: 0x57f810)
-------- sqrt (function: 0x5867c0)
-------- modf (function: 0x5b40a0)
-------- asin (function: 0x5a4f50)
-------- min (function: 0x598040)
-------- max (function: 0x598000)
-------- fmod (function: 0x5bf020)
-------- log10 (function: 0x5716c0)
-------- atan2 (function: 0x59c8b0)
-------- exp (function: 0x5befa0)
-------- sin (function: 0x586780)
-------- atan (function: 0x59c8f0)
**** cursor (table: 0x582790)
-> Examining 'table: 0x582790
-------- show (function: 0x59b850)
-------- hide (function: 0x59b810)
-------- set (function: 0x5827b0)
**** pcall (function: 0x585990)
**** clipboard (table: 0x556810)
-> Examining 'table: 0x556810
-------- getText (function: 0x597a30)
-------- addText (function: 0x5979f0)
**** class (function: 0x5aaa10)
**** type (function: 0x590ec0)
**** toolpalette (table: 0x43e1cc80)
-> Examining 'table: 0x43e1cc80
-------- enableCopy (function: 0x5217c0)
-------- enablePaste (function: 0x5cb510)
-------- enableCut (function: 0x521700)
-------- register (function: 0x43e1cca0)
-------- enable (function: 0x521720)
**** D2Editor (table: 0x5e6e40)
-> Examining 'table: 0x5e6e40
-------- newRichText (function: 0x5a33e0)
-------- move (function: 0x5e6e80)
-------- setText (function: 0x5e6ec0)
-------- __gc (function: 0x5a3400)
-------- getText (function: 0x5e6e60)
-------- setReadOnly (function: 0x5216a0)
-------- setFormattedText (function: 0x5cb560)
-------- __index (table: 0x5e6e40)
-------- resize (function: 0x5a1fa0)
**** select (function: 0x59de70)
**** _G (table: 0x58cef0)
-> Examining 'table: 0x58cef0
-------- string (table: 0x585f60)
-------- xpcall (function: 0x590f60)
-------- tostring (function: 0x584930)
-------- print (function: 0x55ec80)
-------- tellme7 (function: 0x5920d0)
-------- image (table: 0x5c4840)
-> Examining 'table: 0x5c4840
---------------- copy (function: 0x592e80)
---------------- new (function: 0x592f30)
---------------- height (function: 0x5c4860)
---------------- __index (table: 0x5c4840)
---------------- __gc (function: 0x5c4880)
---------------- width (function: 0x5c48a0)
-------- unpack (function: 0x590f00)
-------- getfenv (function: 0x58cf10)
-------- tellme5 (function: 0x592090)
-------- tellme6 (function: 0x5920b0)
-------- setmetatable (function: 0x5848b0)
-------- next (function: 0x585950)
-------- assert (function: 0x592960)
-------- tellme2 (function: 0x59bcd0)
-------- tonumber (function: 0x5848f0)
-------- rawequal (function: 0x585350)
-------- dump (function: 0x5aa9f0)
-------- collectgarbage (function: 0x5d8ed0)
-------- gcinfo (function: 0x5d8f30)
-------- getmetatable (function: 0x5bc840)
-------- document (table: 0x5983b0)
-> Examining 'table: 0x5983b0
---------------- markChanged (function: 0x5983f0)
-------- tellme8 (function: 0x5acca0)
-------- timer (table: 0x582570)
-> Examining 'table: 0x582570
---------------- start (function: 0x582590)
---------------- getMilliSecCounter (function: 0x5825b0)
---------------- stop (function: 0x5825d0)
-------- tellme3 (function: 0x59bcf0)
-------- coroutine (table: 0x57f7f0)
-> Examining 'table: 0x57f7f0
---------------- resume (function: 0x592840)
---------------- yield (function: 0x5ddb30)
---------------- status (function: 0x5928c0)
---------------- wrap (function: 0x5ddaf0)
---------------- create (function: 0x592940)
---------------- running (function: 0x592880)
-------- tellme9 (function: 0x5c8d70)
-------- rawset (function: 0x5853d0)
-------- _VERSION (Lua 5.1)
-------- table (table: 0x5c3760)
-> Examining 'table: 0x5c3760
---------------- setn (function: 0x57cde0)
---------------- insert (function: 0x5725e0)
---------------- getn (function: 0x572560)
---------------- foreachi (function: 0x5c37c0)
---------------- maxn (function: 0x5725a0)
---------------- foreach (function: 0x5c3780)
---------------- concat (function: 0x562410)
---------------- sort (function: 0x57ce20)
---------------- remove (function: 0x57cda0)
-------- locale (table: 0x5826d0)
-> Examining 'table: 0x5826d0
---------------- name (function: 0x582710)
-------- platform (table: 0x5c6ba0)
-> Examining 'table: 0x5c6ba0
---------------- apilevel (1.0.0)
---------------- window (userdata: 0x584124)
-> Examining 'table: 0x5a4eb0
------------------------ height (function: 0x5be840)
------------------------ invalidate (function: 0x5c3f60)
------------------------ __index (table: 0x5a4eb0)
------------------------ width (function: 0x5ddc50)
---------------- isDeviceModeRendering (function: 0x5840c0)
---------------- gc (function: 0x5c6c30)
---------------- isColorDisplay (function: 0x584080)
-------- tellme4 (function: 0x592070)
-------- var (table: 0x5c6bf0)
-> Examining 'table: 0x5c6bf0
---------------- monitor (function: 0x5a1f40)
---------------- list (function: 0x5a2010)
---------------- recallstr (function: 0x57cfb0)
---------------- unmonitor (function: 0x57d080)
---------------- store (function: 0x5c6c10)
---------------- recall (function: 0x5e6e00)
-------- math (table: 0x5a4ef0)
-------- cursor (table: 0x582790)
-> Examining 'table: 0x582790
---------------- show (function: 0x59b850)
---------------- hide (function: 0x59b810)
---------------- set (function: 0x5827b0)
-------- pcall (function: 0x585990)
-------- clipboard (table: 0x556810)
-> Examining 'table: 0x556810
---------------- getText (function: 0x597a30)
---------------- addText (function: 0x5979f0)
-------- class (function: 0x5aaa10)
-------- type (function: 0x590ec0)
-------- toolpalette (table: 0x43e1cc80)
-> Examining 'table: 0x43e1cc80
---------------- enableCopy (function: 0x5217c0)
---------------- enablePaste (function: 0x5cb510)
---------------- enableCut (function: 0x521700)
---------------- register (function: 0x43e1cca0)
---------------- enable (function: 0x521720)
-------- D2Editor (table: 0x5e6e40)
-> Examining 'table: 0x5e6e40
---------------- newRichText (function: 0x5a33e0)
---------------- move (function: 0x5e6e80)
---------------- setText (function: 0x5e6ec0)
---------------- __gc (function: 0x5a3400)
---------------- getText (function: 0x5e6e60)
---------------- setReadOnly (function: 0x5216a0)
---------------- setFormattedText (function: 0x5cb560)
---------------- __index (table: 0x5e6e40)
---------------- resize (function: 0x5a1fa0)
-------- select (function: 0x59de70)
-------- _G (table: 0x58cef0)
-------- on (table: 0x5cb4a0)
-> Examining 'table: 0x5cb4a0
---------------- paint (function: 0x555e50)
-------- rawget (function: 0x585390)
-------- loadstring (function: 0x55ec20)
-------- tellme (function: 0x584af0)
-------- newproxy (function: 0x576b20)
-------- setfenv (function: 0x59deb0)
-------- pairs (function: 0x58c970)
-------- ipairs (function: 0x58c910)
-------- error (function: 0x5859c0)
-------- load (function: 0x5bc880)
**** on (table: 0x5cb4a0)
-> Examining 'table: 0x5cb4a0
-------- paint (function: 0x555e50)
**** rawget (function: 0x585390)
**** loadstring (function: 0x55ec20)
**** tellme (function: 0x584af0)
**** newproxy (function: 0x576b20)
**** setfenv (function: 0x59deb0)
**** pairs (function: 0x58c970)
**** ipairs (function: 0x58c910)
**** error (function: 0x5859c0)
**** load (function: 0x5bc880)
-
IS there much hope for a documented API in the near future?
This looks like it is going to be fun
-
IS there much hope for a documented API in the near future?
This looks like it is going to be fun
I asked TI about that on their facebook page lol
-
Nice stuff! Hopefully Nspire Lua programming will be documented well enough soon so more people can program on their calculator.
-
Damn. I need an nspire.
-
IS there much hope for a documented API in the near future?
This looks like it is going to be fun
Have they replied yet. I can see them saying "What we do not have a hidden programming language this is all a lie" aor "I'm sorry we are not allowed to release that information
The Community(Us) will probably have to make our own one
I asked TI about that on their facebook page lol
-
I'm sure they'll claim such language isn't available on the calc. :P Kinda like when they reply that the 84+ has a total of 24 KB of RAM instead of 48.
-
A huge list of LUA IDEs can be found at http://www.wowwiki.com/Lua_editors . Multiple of them are bound to be scriptable, a scriptability which could be used to act upon improved nspire_emu & Ncubate versions.
Having one sub-par IDE specific to the Nspire platform, with a sub-par build system specific to that IDE, is probably not a model to follow :)
-
If I was to suggest a Lua IDE, I'd say your best bet would to be to go with SciTE. It's really useful for bigger projects, and has quick code checking options.
-
SciTE is my main code edition tool for various programming languages, but I'm not sure it's scriptable enough for full integration with the emulators, and it's not native under MacOS X (it's a GTK+ program on top of X11, I sometimes use the version compiled from MacPorts).
Notepad++ (for Windows) and Komodo Edit (Windows, MacOS X, Linux) sound like other good choices.
-
TextWrangler for Mac is what I use... but I might look at some others
-
IS there much hope for a documented API in the near future?
This looks like it is going to be fun
Have they replied yet. I can see them saying "What we do not have a hidden programming language this is all a lie" aor "I'm sorry we are not allowed to release that information
The Community(Us) will probably have to make our own one
I asked TI about that on their facebook page lol
It's likely that they won't reply, or that they'll delete the post.
-
Well, it's still there lol ... They haven't answered [yet ?] but they posted some new things on their wall so I think they're ignoring it for now ....
-
my lua ide:
Notepad. It works. :P
-
my lua ide:
Notepad. It works. :P
I use the slightly easier to use notepad++
-
my lua ide:
Notepad. It works. :P
I use the slightly easier to use notepad++
Thats what I'm using! ;D
-
I find it easy to use and its in LiberKey(portable programs) so that is just a plus
-
I'm currently using UltraEdit (license required) for syntax coloring, with keyboard shortcuts to call the Lua to TNS converter and luac for computer-side syntax checking. Maybe I'll try to integrate it with nspire_emu/Ncubate, sending the file by hand between each test is a pain.
-
gEdit has Lua coloring, but I use Geany, since it has debug features
-
Also, this topic's name doesn't need a "?" anymore. It's not a question, but a statement :D LUA!
-
Well, yes, but it's a sub-par Lua. Whole sets of useful functions have been removed, according to the page on Hackspire.
-
Hmm this sucks... I seriously hope they did not remove way too much things.
Fortunately they appear to have left Getkey, rectangles, images/sprites and that stuff intact, though, according to what we saw from Apcalc and others, though, so at least it's a step above TI-Nspire BASIC.