Softpedia
 


LINUX CATEGORIES:



GLOBAL PAGES >>
NEWS ARCHIVE >>
SOFTPEDIA REVIEWS >>
MEET THE EDITORS >>
WEEK'S BEST
  • Linux Kernel 3.9.2 / 3....
  • LibreOffice 3.6.6 / 4.0.3
  • MPlayer 1.1.1
  • systemd 204
  • Arch Linux 2013.05.01
  • Blender 2.67
  • KDE Software Compilatio...
  • CrunchBang Linux Stable...
  • Elementary OS 0.1 / 0.2...
  • SystemRescueCd 3.6.0
  • Home > Linux > Programming > Compilers

    The Java Exorcist 0.3.0

    Download button

    No screenshots available
    Downloads: 449  View global page NEW!  Tell us about an update
    User Rating:
    Rated by:
    Good (3.2/5)
    19 user(s)
    Developer:

    License / Price:

    Last Updated:

    Category:
    Robert Brautigam | More programs
    GPL / FREE
    December 12th, 2007, 22:48 GMT
    ROOT / Programming / Compilers

     Read user reviews (0)  Refer to a friend  Subscribe

    The Java Exorcist description

    The Java Exorcist project can be used to extend the Java language syntactically.

    The Java Exorcist project's aim is to create a small and easy to use tool, that can be used to extend the Java language syntactically. Why would you do that? There are basically two reasons:
    First, you just might want to fix your pet-peeve in the language itself. For example, create new keywords like 'unless', 'foreach', new operators, or generate setter getters automatically for a bean property.

    Secondly, you might tune the language itself for a specific project, so the project code may look more clean and thought out. For example: specific logger keyword, which automatically checks (if statement) whether the logger should be invoked or not, or even ommits the whole logging compile-time, when it's disabled! Or create a method modifier 'transaction' to enclose the whole method in a project specific transaction.

    How it works on the outside

    Exorcist is a compiler of extended Java code. The compiler can be used in command-line mode, or through Ant. Basically, with no extensions configured, Exorcist only compiles the standard java code. To extend the language, you can plug in classes, which extend a single interface of the exorcist framework, and implement a single (and simple) method. That's it.

    How it works inside

    Exorcist works like a pre-processor. It translates the extended language into plain Java code, and then compiles it using the standard Java compiler (javac).

    To analyze a language, there are two steps involved. The first is a Lexical analysis, the second is the Parsing of the lexical tokens. Lexical tokens are strings, numbers, operators, dots, semicolons, etc. These are also called terminal symbols, because they can not be analyzed further. During parsing, lexical tokens are read, and non-terminal symbols may be produced.

    These include things like: expression, method body, declaration, if-statement, etc. The Exorcist's tranformation engine works basically with lexical token lists. Each extension first matches itself to the start of the received token list, using terminal and non-terminal symbols freely. If the match is detected, the extension is free to modify the input token list as it pleases, and with it modify the output clean Java source code.

    What's New in This Release:

    · Performance issues with built-in extensions were fixed.
    · The "property" extension was fixed to handle other modifiers too.
    · Annotations syntax was added to the grammar.



    Product's homepage

      


    TAGS:

    Java library | syntactical language | extend Java language | Java | Exorcist | syntactical

    Go to top

    WindowsGamesDriversMacLinuxScriptsMobileHandheldNews

    SUBMIT PROGRAM   |   ADVERTISE   |   GET HELP   |   SEND US FEEDBACK   |   RSS FEEDS   |   UPDATE YOUR SOFTWARE   |   ROMANIAN FORUM