coli-saar / alto

Alto, the Algebraic Language Toolkit
Other
16 stars 2 forks source link

The Alto parser

Build Status

Welcome to Alto, the Algebraic Language Toolkit.

Alto is a parser and decoder for Interpreted Regular Tree Grammars (IRTGs). It is being developed at Saarland University in the Computational Linguistics group, led by Alexander Koller. Its main features are:

Alto is published under a Apache 2.0 license. More license information can be found in the file license-info.md.

The basic theory of IRTGs is explained in Koller & Kuhlmann, IWPT 2011. You can find more details on the Literature page.

Running and using Alto

Alto requires at least Java 8 and can be downloaded here. To build Alto from source, clone this repository and run ./gradlew build (or ./gradlew.bat build if you use Windows).

To use Alto as a library in your project, include it via jitpack:

repositories {
    [...]
    mavenCentral()
    maven {url 'http://akci.coli.uni-saarland.de/artifactory/external'}
    maven {url 'https://jitpack.io'}
}
dependencies {
    [...]
    compile group: "com.github.coli-saar", name:"alto", version:"2.3.0"
}

Replace "2.3.0" with the release you want to use; see the releases page for details. If you want to build against the latest version, use master-SNAPSHOT or a specific git commit hash as version.

See the Wiki for more details on how to use Alto. The tutorials are a good way to get started. For advanced usage, you can check out the JavaDoc (see below).

If you run into trouble, please feel free to submit an issue.

JavaDoc

You can read the JavaDoc API documentation for the current stable version or the JavaDoc API documentation for the master branch.

Screenshots

Here are some screenshots of the Alto GUI. Here's an IRTG with one string and one graph interpretation (equivalent to a synchronous HRG):

Screenshot of GUI showing an IRTG grammar

Here's the result of parsing "the boy wants to go" with this grammar:

Screenshot of GUI showing parse trees

Version History

See the releases page for versions after 2.3.0.

Version 2.3.0, April 2019

Version 2.1, April 2017

Version 2.0, July 2015

Contributors