|
Janino 2.5.15
|
| Janino is a compiler that reads a Java expression, block, or source file, and generates Java bytecode that is loaded and executed directly. It is not intended to be a development tool, but an embedded compiler for run-time compilation purposes. |
|
| Updated |
Jun 19, 2008 19:50:08 |
| Rating |
152 ( -18 -11.84% ) | | Size | 104 kb | | Licence | Freeware | | Status | Minor Update | | Languages | English | | Tags | Java Compiler Embedded Expression evaluation Script Scripting JVM Virtual Machine Bytecode run-time compilation JSP server pages | | OS | Windows 95, Windows 98, Windows ME, Windows NT, Windows 2000, Windows XP, Unix, Mac OS | | Homepage | janino.codehaus.org | | Email | aunkrig@codehaus.org | | Author | Arno Unkrig |
|
|
Description: Janino is a compiler that reads a Java expression, block, or source file, and generates Java bytecode that is loaded and executed directly. It is not intended to be a development tool, but an embedded compiler for run-time compilation purposes, such as expression evaluators or "server pages" engines like JSP.
Properties
The major design goal was to keep the compiler small and simple, while partially sacrificing completeness. I don't like the idea of carrying around huge libraries for simple applications. See Parser for the list of implemented and missing language features.
When do you need an efficient expression evaluator?
Say you build an e-commerce system, which computes the shipping cost for the items that the user put into his/her shopping cart. Because you don't know the merchant's shipping cost model at implementation time, you could implement a set of shipping cost models that come to mind (flat charge, by weight, by number of items, ...) and select one of those at run-time.
In practice, you will most certainly find that the shipping cost models you implemented will rarely match what the merchant wants, so you must add custom models, which are merchant-specific. If the merchant's model changes later, you must change your code, re-compile and re-distribute your software.
Because this is so unflexible, the shipping cost expression should be specified at run-time, not at compile-time. This implies that the expression must be scanned, parsed and evaluated at run-time, which is why you need an expression evaluator.
A simple expression evaluator would parse an expression and create a "syntax tree". The expression "a + b * c", for example, would compile into a "Sum" object who's first operand is parameter "a" and who's second operand is a "Product" object who's operands are parameters "b" and "c". Such a syntax tree can evaluated relatively quickly. However, the run-time performance is about a factor of 100 worse than that of native Java code. | Short tags: Java, Compiler, Embedded, Expression, evaluation, Script, Scripting, JVM, Virtual, Machine, Bytecode, run-time, compilation, JSP, server, pages | System Requirements: JDK 1.3.1 or above | Change Info: Updated the overview page. | |
| Free Download Janino 2.5.15 from janino.net |
| Similar software shotlights: | - Pawn 3.3.4097 An embedded scripting language, specifically designed to extend applications and embedded systems. Features include a small footprint, quick execution of the P-code and a good interface to "native
- Small 2.7.3 A quick and little scripting language, specifically designed to extend applications. Features include a small footprint, quick execution of the P-code and a good interface to "native" functions. Full
| | Find all software similar on Janino 2.5.15 |
| Similar smart reviews: | - Fast EBook Compiler. Book-for-Sale! If you feel like a writer (fiction writer, technical book writer or even cookbook writer) you can not easily turn your writing into money. The fact is the «traditional» publishers are conservative and are stuck to «writing stars». Even if a paper publisher would be interested in your writings, the contract he would offer to a young unknown author would not
- Server Control Tower. PA Server Monitor “Hows my server doing?” “Whats going on with it now?” “Hope, I havent missed anything important.” — These are the most typical things server administrators are concerned with. In order to not miss anything important, some of them never leave their seats. (Or, if there are many servers, they run around them to make sure
- Server Monitor 3.4.0, Know The Problem In Proper Time There are two kinds of system administrators: those who think «my system cant fall» (optimistic kind), and those who thinks «if the system falls, I want to know it as soon as possible» (realistic kind). The second kind of sysadmins are more valuable: they can do wisely even in complex conditions. Server Monitor is a software for those wise
- Virtual TimeClock Pro 5.4, Possessing Time // Snap a Grip On Your Time Virtual TimeClock Pro is one of the rare cases of software that solves complex and important tasks by means of simple and clear user interface (not drawing down its great features). The program addresses the issue of employee time accounting, and it does that gracefully. Signs of this grace are everywhere in Virtual TimeClocks usability, scalability, and performance. The
- ProxyInspector for ISA Server 2.6g Appropriate Control When things get about the corporate Internet usage and traffic control, there always a lot of the loose talks: Either the management needs to control every kilobyte of data transfer and every connection or employees can have certain level of freedom? The answer to this question varies from one organization to another and depends on many factors. However, all agree that the *control is necessary
- Kwok Information Server 2.3, IT Management with Pleasure Every IT business, even the smallest one, needs to manage some, at least the most basic kinds of information related to their business. Of course, when its a company of «two directors and one worker», it can manage all of its operations through sticky notes or Excel worksheets. But, becoming serious, becoming organized, with multiple orders, clients, employees, and
- AA Mail Server, Be Your Own Email Service Provider No matter how hard you try to set up a hosted email service the way you want it to be, chances are that youll end up compromising your demands, for its hardly possible to have someone do things the way you want them be done. If you want to take control over your email communications, fire up your own email server, and yet not spend much time dealing with
- Instant Messaging Server. Safe and secure communication. No one can deny that good communication is a crucial component in the formula of business success. That is why, if you need to be successful and gain extra profit, you need to use the unique Instant Messaging Server and Client software: Bopup Communication Server, Bopup Messenger, Bopup Observer all these programs belong to a single client-server platform. Instant
- 123-Flash-Chat-Server-Software, Exercise Your Fingers! In the Rich-Media era, text chats seem to have to sink into oblivion — so much more communication opportunities offer modern multimedia chat applications. Surprisingly, users dont even think about giving up good old text chats for lost, and they continue to evolve, while chat service providers never quit seeking and deploying even better solutions to promptly meet users endlessly
| | Find all smart reviews similar on Janino 2.5.15 |
|