Why not embed a Lua interpreter? Or maybe a Wren [1] interpreter for something different? I don't understand why they developed a language and VM from scratch. And I thought I over-engineered my projects. The time spent developing and maintaining that could be directed to something more directly related to your product.
Wren: "Wren is small. The VM implementation is under 4,000 semicolons." MIT Licensed.
Creo: "Gravity has no dependencies and the VM implementation is under 4000 lines of C99 code." Closed source, but: "We <3 Open Source and we'll soon release Gravity as source code into our GitHub account." They'd be allowed to take Wren closed source and then modify it.
Of course, this is pure speculation, the VMs could be completely different for all I know.
Quote: "I generally don’t like to reinvent the wheel so I tried to look at the currently available open source languages in search for a valid candidate. Some languages had a very nice virtual machine implementation but on top of a crappy syntax, some other languages had a good syntax but without an efficient virtual machine… some others were so huge and intricate that I refused to be involved in such a mess.
Requirements were clear… a thin and very efficient virtual machine with no more that 5000/6000 lines of code. I wasn’t able to find anything that could completely satisfy our needs so this time I decided to reinvent the wheel and project Gravity started."
One of the problems with how we develop software today is the long path from idea to a working prototype.
There are many layers in between, each with its own set of abstractions and assumptions. Factor in the number of different platforms you need to develop for, and you've got yourself a very complex world you need to navigate.
Writing software in 2016 is to some extent similar to operating a 18th century ship through the dangerous waters. We have a good enough machine to take us places, but we still need to visit the engine room, to keep things running. It's getting better nonetheless, but you still need a specialized crew to steer a big ship in the right direction. I would much rather prefer a yacht, where I could just press a button and enjoy a more experimental, higher level experience, in which my job would be to map ideas to real world working systems.
With that given said, this definitely looks interesting. I'll surely give it a try.
I am going to use this to teach the basis of mobile programming to my wife and some friend s- I promised them that the day I had access to a simple IDE for developing apps I would spend a weekend telling them about the concepts of development.
I already managed to teach my wife about the thinking behind UI and wireframing design thanks to Sketch.
Can't wait for this upcoming weekend to get them started, food & code is awaiting!
I downloaded the beta and tried it out. The concept is interesting, but the execution is still uneven (understandably so, considering that this is a beta). The way that the mobile app UI is rendered on the desktop is pretty bad, especially the lack of antialiasing on the fonts.
It has that uncanny valley feel that you'd expect when somebody reimplements a UI toolkit and tries to mimic the look and feel. I'd really like to know if it looks better and more native on a device.
There are also bits and pieces that don't seem to work as expected. Like, I'm having trouble getting the built in HTTP client to actually successfully complete a request.
The design tool is slick though, so I'm looking forward to seeing where they take it. It could be pretty compelling for rapid prototyping.
I feel like the "run any iOS code on Mac" part of this is being overlooked. Doesn't that mean you guys (@creolabs) re-implemented UIKit on top of AppKit, a la Chameleon? If so... that's HUGE in and of itself.
This reminds me a lot of Visual Studio during the ASP.NET webforms era. The tool looks really cool and as a non-iOS dev this would really help me get a prototype up quickly. Kudos to the team for a great product.
Older thread about Creo's tryst with YC Application [1] - shows a lot of struggle and the fruits of their labor in todays beta release. Great Job guys!
from the article[2]
- new multiplatform programming language with a blazing fast virtual machine
- rewritten UIKit compatible mobile operating system
Reminds of an early version of Visual Basic. Not saying that in a bad way either. For the original release VB enabled a huge number of GUI applications to be built quickly.
I like the idea of building apps in a drag-and-drop ui-builders for prototyping. But I can't imaging using this for real products other than maybe a static app. How do you even connect to an existing backend? The 'demo' video suggests connecting directly to a database... So much for security.
This seems pretty cool. It gave me a Android App inventor vibe. My question is how much flexibility do get. Because drag and drop UI/App builders constrain you into a design philosophy that's hard to change.
Creo is not just a drag and drop UI/App builder. You can easily create UI with drag and drop but you are always allowed to write more complex interaction or code using a programming language.
Looks promising. I am a Swift fan so I guess I am not going to change, but I love that people are creating other options that can appeal to more people. It looks like these guys have a number of good ideas.
[1]: http://munificent.github.io/wren/