lua-users home
lua-l archive

[Date Prev][Date Next][Thread Prev][Thread Next] [Date Index] [Thread Index]


On 1/2/2013 8:58 AM, Javier Guerra Giraldez wrote:
> is it worth it? recently i've seen some projects that boast about their "desktop binary" part, and it turns to be a 20-line C file that just opens a non-network webkit frame and loads an included JS file. most of the multi-phone-OS frameworks work similarly. Lua in NaCl with an easy enough DOM interface would be a good way to package GUI apps written in Lua. Not so capable as using Qt, but easier to write for some. -- Javier

There's a product called MoSync [1] that seems to include some Lua support [2]. The core concept seems to be that you create your UI in HTML5, but you can easily hook up to C/C++ (and, by extension, Lua). If you don't want GPL2, the only drawback is that the licensing is weird: There's a free one year license you can "subscribe" to, but no guarantee that after a year it will still be free (or even available to you to use).

It looks like they started with PhoneGap and added a bunch of development tools and a C++ API. I personally think this approach is The Future: In my opinion, HTML5 is the only cross-platform GUI API that is even halfway decent on all platforms. Qt is the next contender [3], of course, but there are probably 10000x as many artists who can develop UI directly in HTML5/CSS3 using one of the dozens of popular tools for that job as there are who could develop UI in Qt.

Tim

[1] http://www.mosync.com/

[2] http://www.mosync.com/mobile-development-forums/technologies/lua

[3] Flash doesn't count in my opinion. Aside from being a technology obviously on the way out, it's not available on iOS or recent versions of Android, and though you CAN jump through hoops to make it run there using Alchemy/Air, you don't get easy access to native (C/C++ and ObjectiveC or Java) code from that approach, which severely limits what you can do with it. In particular, 99% of third-party libraries available of iOS or Android are only available as binaries (or JAR files) you can link in to your native app, which (I believe) would be unusable by Flash, so no ad support or analytics for your Alchemy-based project.