I have just finished the port of my Delphi project under Corona. Here are my conclusions :
-
- This was fun. Very fun. Lua is a terrific language. And it’s a real pleasure to work with Corona tools
-
- The easyness to build for iOS and Android devices is astonishing for someone who had fight with Delphi during months.
-
- The Corona Simulator is really great. The speed to develop an UI is greatly improved by this amazing tool
-
- OpenGL is very good for building a user interface running on multi devices (I used the config : scale = "zoomStretch”)
But:
-
- The components/widgets are really too basics. I did not found any way to :
- Call a modal dialog box to ask the user a confirmation before doing something irreversible
- Have an event when the user hit a Label (text)
- Allow the user to edit a field
- Resize a button on the flight (maybe because of my inexperience)
- Build a Check Button with a label
- Wrap words on several lines
-
-
- and many others things that was necessary for my application
-
-
- An IDE for building the UI is desperately missing. The unit responsible of creating my main form is xxx lines of horrible code. I spent more than a week to build this form. And the result is totally indigest. (Probably a Corona developer more accustomed would have done better, but still, this coding process can be improved).
Perhaps the free community could work, at least on the first point.
The problem I see integrating another modern framework on Corona is that Corona is built from top to bottom on OpenGL. Chosing a framework running on OpenGL is very limitating.
My actual thinking is to try to link the Corona engine with the Flutter library. Flutter is probably promised to a great future.
As a Corona user I would love to build an application with some Forms/Screens/Scenes/Pages (many names for the same concept) running on OpenGL, and some others built with the very powerfull Flutter library. All the user application being coded with Lua, and not Dart. Dart seems to be a very good language but certainly not as “fun” as Lua. And not good for a developer to work with two differents tools/languages/debugger/etc…
I do not know if this is even feasible. Flutter is architectured from top to bottom with Dart, and use the Skia graphic engine, not OpenGL. Also, if this project is feasible, I am affraid to get in the final a two-headed monster.
I am also looking to two others free projects who implemented Lua on Flutter as Flutter plugins. The problem is that those two projects consider Lua as a script facility usable from a Flutter application. My idea is not to call scripts from Dart but is exactly the opposite : call the Flutter library from a Lua application. I do not know if it is easy or even possible to reverse those plugins so that the user application will run on the Lua side. If it is possible (and not too difficult) maybe the result will be cleaner than building a framework side to side with the actual Corona stack. All those ideas need more investigation.
I am also doubtful verifying that Corona is really GPL3 complient.
When I studied the “Build” function of the Corona Simulator I found a call to a Corona Server to create the app.
If Corona is GPL3 complient, this operation must be accessible and need to be modified. But now I have no idea where are the sources of this procedure and how to modify it.
Right now I was not able to create a demo App without using the Corona Simulator and so, calling this obscure procedure on the Corona server.
I am wondering if there is already free communities who are working (or worked) on the apps building process of Corona ?
Thank you. All this, is only my actual delirium and need much more investigation.