ckaestne / varex2

Varex (a variational PHP interpreter based on Quercus)

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Varex

This is a reimplementation of the variational PHP interpreter Varex, based on the PHP interpreter Quercus (see VarexJ for a Java version and the original Varex implementation for a previous implementation for PHP). It allows to create variational values in PHP code by calling create_conditional and then compute with them.

A description of the idea ad the potential can be found in the ICSE'14 paper "Exploring Variability-Aware Execution for Testing Plugin-Based Web Applications".

The transition from a traditional to a variational interpreter is only partial. Not all language features and libraries are supported, but supports gets better with newer versions.

The project uses the sbt build system, build with sbt "project quercus" compile. It is written in Java, but many tests are written in Scala. For development, we recommend IntelliJ IDEA, which can directly import sbt projects. When using Eclipse, you might want to consider using the sbt-eclipse plugin.

The issue tracker is used for selecting and assigning implementation tasks. The wiki contains additional technical information about the project.

About

Varex (a variational PHP interpreter based on Quercus)


Languages

Language:Java 46.5%Language:PHP 39.4%Language:JavaScript 7.2%Language:CSS 6.1%Language:Scala 0.7%Language:HTML 0.1%Language:C++ 0.0%