This seems like madness to me. It's "PHP", so it inherits everything that's bad about that language. But it's also incompatible with PHP, so you don't even get the power of being able to reuse the world's existing PHP code and expertise.<p><pre><code> * PH7 is case-sensitive unlike the standard PHP engine
* Unlike the zend engine which passes arrays by copy, PH7 pass arrays by reference exactly like PHP5 does with objects (class instances).
</code></pre>
I'm not saying the extensions and changes they've made aren't for the better, but they mean this language is effectively <i>not</i> PHP. And, if you're going to use a language that's not PHP, why not use one that's significantly cleaner and simpler?
> gcc -W -Wall -O6 -o ph7_test ph7_intro.c ph7.c<p>Nice! I wish creating Lua executables were this easy. With Lua you have to create a wrapper C file, use squishy to combine multiple lua files into one, and finally a script to turn the lua script into a C byte array. I have a boilerplate project that I use so that I just have to run `make`, that avoids the need to ever touch C for the most part. But it would be nicer if luac and luajit did this automatically.
That is one big C file. Curious if you've ran against any of the Zend tests in the original implementation [1][2]. I do not see anything on <a href="http://ph7.symisc.net/" rel="nofollow">http://ph7.symisc.net/</a>.<p>1 - <a href="https://github.com/php/php-src/tree/master/tests" rel="nofollow">https://github.com/php/php-src/tree/master/tests</a>
2 - <a href="https://github.com/php/php-src/tree/master/Zend/tests" rel="nofollow">https://github.com/php/php-src/tree/master/Zend/tests</a>
The developer have also two other interesting projects on their website:<p>* jx9 - programming language based on JSON (like Lua with a JS syntax): <a href="http://jx9.symisc.net/" rel="nofollow">http://jx9.symisc.net/</a><p>* unQLite - NoSQL database engine (like SQLite but NoSQL): <a href="http://unqlite.org/" rel="nofollow">http://unqlite.org/</a>
I've been looking for something like this. Originally I had planned to do it with Python, but Python only seems to allow one interpreter at a time.<p>Does anybody know if it's easy to make new functions available to PHP that would call into the C main program?<p>It says "Built with more 470 function" how does that compare with standard PHP? If I take some PHP I've previously written or a library, is it going to run with minor modifications? Or is this a subset of PHP?
This is pretty cool. First I was wondering what for, but its great for their use case (embedded devices). Why not use a language for the web interface the developer is familiar with.<p>Unfortunately, they're a bit late. Nowadays it would probably be cooler to use JS, if language popularity is the focus. Or maybe python.<p>(Aside: I learned web development in the good old LAMP times. My silly gut feeling is still that PHP is pretty fast and flexible compared to Python which seems slow (on the server), and JS which is way too slow and fragile. I know it's completely backwards nowadays, but funny how what you've learned sticks. When I hear "JS on a Arduino" I always think "yeah sure....", but it's actually a clever idea, just like this.)
Normally I wouldn't touch PHP due to the long history of security issues. Would this do anything to improve it? Love the idea of an embeddable interpreter.
Curious, what do people who work with embedded systems usually use to get a web interface for their device? Routers, for as long as I can remember have had a web UI though I'm not really sure what sort of a back end runs it.