![]() |
Ejscript web application framework for Maemo and Mer
This is a raw port of the Ejscript javascript application framework. This is an effort to port a powerful yet resource friendly javascript API to both maemo and mer. Ejscript is designed to function from inside OR outside of the browser. (It can function as a fully capable system-wide language (like python, bash, and perl), as a web language, or both) Ejscript is an extended version of javascript that fully supports and complies with the standardized version of JavaScript known as ECMAScript Edition 3 (ECMA-262-3).
Features: * An environment for high performance web applications * Fully capable of being a stand-alone programing language like python. * Integrated SQLite database * Object Relational Mapper (ORM) * Ajax view controls * Full support for jQuery * A direct-threaded Virtual Machine Core Features: * Web Framework - Provides a large amount of Ajax functions when working on browser based applications * High Performance Virtual Machine - Provides a resource friendly direct-threaded Virtual Machine for running byte compiled javascript code * Compact Byte Code - for fast execution * Enhanced Core Language - Ejscript enhances the ECMAScript core with powerful a set of features including: classes and modules for scalable programming, conditional compilation and an enhanced-language mode to detect common JavaScript language issues. * Extended Language - Provides classes for Events, Timers, Files, Paths, Streams, Sockets and HTTP. There are also significant upgrades for the core system classes: Array, Object and String. * Useful tools - Includes a fast, optimizing compiler, symbolic assembler listing generator and documentation generation tool. More documentation on usage can be found here: http://b-man.psykosis.net/projects/e...documentation/ Source, development, and binary deb packages are available here. NOTICE: if you are going to build this from source you must use this patch, this disables the '-mcpu' flag from getting used in make.gcc since gcc for armv6l doesn't support this option. Examples: Creating a program to use with the interpreter (ejs) Code:
#!/usr/local/bin/ejs Creating and building a program to use with the Virtual Machine (ejsvm) Code:
/* Hello.es */ Code:
/* Hello.es */ And then compile and run the program with the following: Code:
ejsc Hello.es this program would take test.c and compile it using gcc, strip it, and then run the resulting program test: Code:
/* Build.es */ Using Ejscript with a browser: Assuming your app name is going to be web, run the following as root (i'm using my /root directory) Code:
cd ~/ Code:
cd web You should see the following: http://b-man.psykosis.net/projects/e...screenshot.png And you're done :) |
Re: Ejscript web application framework for Maemo and Mer
Great work, I'm the project lead for Ejscript and we'd gladly accept any patches so you can use the software unmodified.
Michael O'Brien mob@embedthis.com |
Re: Ejscript web application framework for Maemo and Mer
Quote:
This looks like a powerful language with rapid development. Does it support graphics (drawing, bitmap manipulation, video)? For user interface stand alone, can you give an example of a window with a combo-box with 3 items and 2 buttons ok and cancel? Does it have a debugger? Thank you for your hard work ! |
Re: Ejscript web application framework for Maemo and Mer
Quote:
2) untill i can find a way to make or port an html rendering canvas (like luna-webkit - what the Palm Pre's WebOS uses to display it's user interface) that can run in hildon, you won't be able to create a user interface outside of the browser directly from the javascript itself :( allthough you can run it from within your system to use d-bus, zenity, or gtkwindow to create an interface: Code:
module Test { 3) yes, i believe that it's built into the interpreter and compiler. ;) |
All times are GMT. The time now is 09:25. |
vBulletin® Version 3.8.8