Skip to content

For Contributors

dim-s edited this page Dec 23, 2014 · 8 revisions

To contributing our project, you need to known how it works!

Build System

To build our project, you need to install the Gradle system (http://www.gradle.org/) and be able to use it.

Architecture

The JPHP project contains the next modules:

  • jphp-runtime - only runtime libraries for JPHP.
  • jphp-core - compiler + runtime.
  • jphp-***-ext - an extension for jphp, e.g.: jphp-net-ext, jphp-json-ext.
  • jphp-android - extension for support Android API.

jphp-core

The compiler has a few parts:

  • Tokenizer (lexer) - org.develnext.jphp.core.tokenizer package
  • Syntax analizer - org.develnext.jphp.core.syntax package
  • Compiler to JVM - org.develnext.jphp.core.compiler package

(!) JPHP doesn't translate your code to Java source code. The project is a fully compiler to the Java VM bytecode.

Our project uses the ASM java library to generate Java VM bytecode.

Clone this wiki locally