How extensively can we modify Lua before Decoda gives up?

LuaPineappleLuaPineapple Join Date: 2008-10-25 Member: 65296Members, Reinforced - Silver
edited May 2009 in Decoda
I'm planning to create a super-set of Lua called Lua Lux (Moonlight)*, and it'll feature close tie-ins with the OpenCL (when ATi/NVidea/Intel/AMD get their act in gear!) portion of the engine. I'm not expecting Decoda to reach into the OpenCL-Lua-ed parts of the engine (seperate states with some restrictions, etc..), but I would like to know how far I can stretch the elastic band, and in what directions, before it snaps and viciously hurts me. The things I hope to add are partially syntactically based (no problems here), a few new opcodes for various things (here??), and a few other little goodies (userdata/metamethod stuff, no problems here).

Also, how well would Decoda handle multiple states all using one environment? Would it have a seizure and die, or would it just shrug and keep moving? Need to know before I unintentionally sabotage my only debug tool other then print. That and the fact that it would require quite a bit of redesigning...


PS: The 'Toggle Side Panel' doesn't work for me? Anyone else?
PPS: The bug where you can't open a non-project-ed Lua file with the same name as one which is Project-ed (because it opens the project one instead, even when you open it via double click in explorer), is still around. Could you fix it? Pretty please?


* Because my engine is called Aeterna, i.e. Eternal Moonlight... Yah I know it sucks. And yes I know I'm mixing Latin and Portugese! <img src="style_emoticons/<#EMO_DIR#>/tounge.gif" style="vertical-align:middle" emoid=":p" border="0" alt="tounge.gif" />

Comments

  • MaxMax Technical Director, Unknown Worlds Entertainment Join Date: 2002-03-15 Member: 318Super Administrators, Retired Developer, NS1 Playtester, Forum Moderators, NS2 Developer, Constellation, Subnautica Developer, Pistachionauts, Future Perfect Developer
    <!--quoteo(post=1706032:date=May 1 2009, 04:32 PM:name=LuaPineapple)--><div class='quotetop'>QUOTE (LuaPineapple @ May 1 2009, 04:32 PM) <a href="index.php?act=findpost&pid=1706032"><{POST_SNAPBACK}></a></div><div class='quotemain'><!--quotec-->I'm planning to create a super-set of Lua called Lua Lux (Moonlight)*, and it'll feature close tie-ins with the OpenCL (when ATi/NVidea/Intel/AMD get their act in gear!) portion of the engine. I'm not expecting Decoda to reach into the OpenCL-Lua-ed parts of the engine (seperate states with some restrictions, etc..), but I would like to know how far I can stretch the elastic band, and in what directions, before it snaps and viciously hurts me. The things I hope to add are partially syntactically based (no problems here), a few new opcodes for various things (here??), and a few other little goodies (userdata/metamethod stuff, no problems here).

    Also, how well would Decoda handle multiple states all using one environment? Would it have a seizure and die, or would it just shrug and keep moving? Need to know before I unintentionally sabotage my only debug tool other then print. That and the fact that it would require quite a bit of redesigning...


    PS: The 'Toggle Side Panel' doesn't work for me? Anyone else?
    PPS: The bug where you can't open a non-project-ed Lua file with the same name as one which is Project-ed (because it opens the project one instead, even when you open it via double click in explorer), is still around. Could you fix it? Pretty please?


    * Because my engine is called Aeterna, i.e. Eternal Moonlight... Yah I know it sucks. And yes I know I'm mixing Latin and Portugese! <img src="style_emoticons/<#EMO_DIR#>/tounge.gif" style="vertical-align:middle" emoid=":p" border="0" alt="tounge.gif" /><!--QuoteEnd--></div><!--QuoteEEnd-->

    I think those modifications should all be fine.
  • LuaPineappleLuaPineapple Join Date: 2008-10-25 Member: 65296Members, Reinforced - Silver
    Alright, <img src="style_emoticons/<#EMO_DIR#>/smile-fix.gif" style="vertical-align:middle" emoid=":)" border="0" alt="smile-fix.gif" />. What exactly DOES Decoda depend on? Just the Do File/Create State/Close State/Error functions?
  • MaxMax Technical Director, Unknown Worlds Entertainment Join Date: 2002-03-15 Member: 318Super Administrators, Retired Developer, NS1 Playtester, Forum Moderators, NS2 Developer, Constellation, Subnautica Developer, Pistachionauts, Future Perfect Developer
    Decoda uses a lot of Lua API functions to get the information it needs during debugging. The safe answer to your question is that it depends on everything, but here's the actual list for the current version. A few of these are optional (mainly the luaL functions) and just help in the static linking case.

    lua_newstate
    lua_newthread
    lua_close
    lua_error
    lua_sethook
    lua_getinfo
    lua_remove
    lua_settable
    lua_gettable
    lua_rawget
    lua_rawgeti
    lua_rawset
    lua_pushstring
    lua_pushlstring
    lua_type
    lua_typename
    lua_settop
    lua_gettop
    lua_getlocal
    lua_setlocal
    lua_getstack
    lua_insert
    lua_pushnil
    lua_pushvalue
    lua_pushcclosure
    lua_pushnumber
    lua_pushlightuserdata
    lua_pushinteger
    lua_tointeger
    lua_tolstring
    lua_toboolean
    lua_tocfunction
    lua_tonumber
    lua_touserdata
    lua_call
    lua_pcall
    lua_createtable
    lua_load
    lua_next
    lua_rawequal
    lua_getmetatable
    lua_setmetatable
    luaL_ref
    luaL_unref
    luaL_newmetatable
    lua_getupvalue
    lua_setupvalue
    lua_pushthread
    lua_newuserdata
    lua_open
    lua_newstate
    lua_close
    lua_newthread
    lua_pcall
    lua_call
    lua_load
    luaL_newmetatable
    lua_sethook
    luaL_loadbuffer
    luaL_loadfile
    luaL_newstate
  • LuaPineappleLuaPineapple Join Date: 2008-10-25 Member: 65296Members, Reinforced - Silver
    <!--quoteo(post=1706291:date=May 5 2009, 11:17 AM:name=Max)--><div class='quotetop'>QUOTE (Max @ May 5 2009, 11:17 AM) <a href="index.php?act=findpost&pid=1706291"><{POST_SNAPBACK}></a></div><div class='quotemain'><!--quotec-->Decoda uses a lot of Lua API functions to get the information it needs during debugging. The safe answer to your question is that it depends on everything, but here's the actual list for the current version. A few of these are optional (mainly the luaL functions) and just help in the static linking case.

    <Snip: List><!--QuoteEnd--></div><!--QuoteEEnd-->
    Alright, thank you for the list!
  • paperjackpaperjack Join Date: 2009-02-14 Member: 66410Members
    Are you trying to do something for gmod, dear pineappley ?
  • LuaPineappleLuaPineapple Join Date: 2008-10-25 Member: 65296Members, Reinforced - Silver
    edited June 2009
    <!--quoteo(post=1706371:date=May 6 2009, 01:35 PM:name=paperjack)--><div class='quotetop'>QUOTE (paperjack @ May 6 2009, 01:35 PM) <a href="index.php?act=findpost&pid=1706371"><{POST_SNAPBACK}></a></div><div class='quotemain'><!--quotec-->Are you trying to do something for gmod, dear pineappley ?<!--QuoteEnd--></div><!--QuoteEEnd-->
    Sorry for delay (<img src="style_emoticons/<#EMO_DIR#>/tounge.gif" style="vertical-align:middle" emoid=":p" border="0" alt="tounge.gif" />):
    Absolutely not, I'm sick of GMod to be honest and I will NOT be coding anything more in it once this paid job is done (almost is). After this I'm making my own engine as well. Since there are some things Lua doesn't have/doesn't do inherently, I wanted to know how far I could stretch things before Decoda decides to give up.
  • dnmdnm Join Date: 2009-07-09 Member: 68094Members
    <!--quoteo(post=1706032:date=May 1 2009, 07:32 PM:name=LuaPineapple)--><div class='quotetop'>QUOTE (LuaPineapple @ May 1 2009, 07:32 PM) <a href="index.php?act=findpost&pid=1706032"><{POST_SNAPBACK}></a></div><div class='quotemain'><!--quotec-->I'm planning to create a super-set of Lua called Lua Lux (Moonlight)*, and it'll feature close tie-ins with the OpenCL (when ATi/NVidea/Intel/AMD get their act in gear!) portion of the engine.<!--QuoteEnd--></div><!--QuoteEEnd-->
    I'd be very interested in this Lua variant, as I'm doing some non-game GPGPU work, and I think I may have seen you mention this elsewhere (assuming you're the same person, which may not be the case). How far along are you?
Sign In or Register to comment.