Adobe Releases C/C++ To Flash Compiler 216
SnT2k writes "Adobe recently released the beta version of Alchemy which compiles C/C++ code into AS3 bytecode (which runs on AVM2) that can run on the Flash or Flex platform and boasts increased performance for computationally-intensive tasks (but still slower than native C/C++). It was demonstrated last year during the Chicago MAX 2007 to run Quake. A few months later it has been demonstrated to run a Python interpreter and Nintendo Emulator. One interesting tidbit is that the thing is built upon the open source LLVM Compiler Infrastructure."
Re:Virtualize Everything (Score:3, Insightful)
> java Virtual Machine written in java.
Link? This sounds completely useless, but it would be interesting to look at the source if available.
Re:It has been said (Score:3, Insightful)
Huh? You think this method is going to give anything remotely resembling the efficiency of native code? Unless the flash script language is really badly written, the performance will be even worse than programs that were manually written in flash.
Re:Quake. Quake for fucks sake! (Score:1, Insightful)
I'd love to see what this will lead to. Flash games are all good but when you see freakin' QUAKE running in your browser window, all the possibilities suddenly hit home.
JOGL has allowed hardware-accelerated 3D in your browser for years. Jake2 is the port of Quake2--arguably much more intensive than Quake--and that already runs in an applet. The technology has been there, but no one is using it.
Re:Still no contact info, so I'll post here... (Score:3, Insightful)
Well... There's always porn.
Re:Virtualize Everything (Score:5, Insightful)
There's nothing inherently bad about the concept. It's in fact quite interesting to have the JVM optimise itself along with the programs running inside it. And while the JikesRVM, being a research VM, does not run as fast as Sun's VM or IBM's commercial VMs, it's not that slow either (definitely not as slow as you'd first think of a JVM implemented in Java).
Re:This is not where Adobes priorities should be! (Score:4, Insightful)
Re:Virtualize Everything (Score:5, Insightful)
If you have a complete C++ application that runs fine on native code, then obviously this would be silly. But if you bothered to RTFA, you know that this serves a simple and obvious purpose: reuse. If you need rendering code for your Flash game, and the best code available is in C or C++, it's a lot easier to just recompile the code than it is to hand-translate the code into ActionScript.
Re:This is not where Adobes priorities should be! (Score:5, Insightful)
I think I see your problem right there... there is nothing like using the right tools for the job, and this is nothing like using the right tools for the job. ;-)
Re:It has been said (Score:2, Insightful)
It won't be fast but Good Enough is good enough.
Re:Virtualize Everything (Score:2, Insightful)
Speaking of, where did the computer-science demographic on slashdot make off to? You know, the guys who are aware of historical minutiae like the time-honored milestone of a programming language becoming self-hosting? Just asking.
Re:This is not where Adobes priorities should be! (Score:2, Insightful)
Well, Flash is the only tool for the job when you need an application that runs the same in all (relevant) browsers on all (major) platforms with no installation by the end user. Flash solves a lot of problems, and Flex has a really nice UI toolkit. Flash 10 still hasn't fixed a lot of the performance issues, so the door is open for Unity or Silverlight, but I'm not holding my breath.
Re:This is not where Adobes priorities should be! (Score:3, Insightful)
Really though they are not that big. One is a graphing and reporting application, and another is a web interface for a CMS that we developed in house as a product.
The first could have been done in Java, or a cross-platform C++ framework like Qt (though that would remove the selling point that it runs on the desktop and the browser), and the second could be done purely in JS, so there were alternatives, maybe more appropriate ones, but they were not taken.
why... (Score:3, Insightful)
Let's say... SDL gets a flash port, then you basically can turn your simple C++ game into a game that people can run in flash computers without downloading... At least it sounds interesting.
Re:It has been said (Score:5, Insightful)
I'd be willing to wager that you've used responsibly designed Flash applets before and simply assumed them to be cleverly implemented Javascript because they didn't explode all over the screen in a cavalcade of light and sound.
Nothing about Flash compels the developer or designer to author something "garish and obnoxious" any more than Javascript or CSS do. Its versatility merely allows for greater abuse.
Horse Meat babyfood (Score:2, Insightful)
In Italy, there is horse-meat (cavallo) babyfood [fbcdn.net]. The first real culture-shock experience I had while grocery shopping.