Files
gf-core/index.html
2005-12-09 14:18:32 +00:00

378 lines
10 KiB
HTML

<!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML//EN">
<html><head><title>GF Version 2.3+</title></head>
<body bgcolor="#ffffff" text="#000000">
<center>
<img src="gf-logo.gif">
<h1>Grammatical Framework</h1>
<h2>Version 2.3</h2>
July 1, 2005.
</center>
<p>
</p><h2>News</h2>
<i>December 9, 2005</i>.
<a href="http://www.cs.chalmers.se/~peb/software.html">
MCFG/GF library for Prolog</a>, by
<a href="http://www.cs.chalmers.se/~peb/">Peter Ljunglöf</a>.
This means that you can use GF grammars as parts of
Prolog programs (in the same way as in Java and Haskell
before).
<p>
<i>December 8, 2005</i>.
A structured <a href="doc/index.html">Documentation page</a> on GF.
<p>
<i>December 1, 2005</i>.
Publicly accessible
<a href="http://www.cs.chalmers.se/Cs/Research/Language-technology/darcs/GF/doc/darcs.html">
Darcs repository</a>
for latest sources and documents. The snapshots are no longer updated.
<p>
<i>September 22, 2005</i>.
<a href="http://www.cs.chalmers.se/~bringert/gf/downloads/snapshots/">
Snapshots</a>: latest source and linux binary packages, for testers
and developers. See
<a href="http://www.cs.chalmers.se/Cs/Research/Language-technology/darcs/GF/doc/gf-history.html">GF history</a> for the latest changes.
<br>
<b>Notice</b> (1/12):
Use the
<a href="http://www.cs.chalmers.se/Cs/Research/Language-technology/darcs/GF/doc/darcs.html">
Darcs repository</a> instead!
<p>
<i>July 1, 2005</i>. GF 2.3 released.
Download from
<a href="http://sourceforge.net/project/showfiles.php?group_id=132285">SourceForge</a>.
The <a href="doc/gf-history.html">GF history</a> lists changes.
The source package on SourceForge also contains a new GUI and some new grammars.
<p>
<font size="2">
<i>June 3, 2005</i>. Started a page on
<a href="doc/gf-history.html">history of changes</a>.
These changes will appear soon in releases.
<p>
<i>May 17, 2005</i>. Version 2.2 released. See
<a href="doc/gf2.2-highlights.html">highlights</a>.
Download from
<a href="http://sourceforge.net/project/showfiles.php?group_id=132285">SourceForge</a>.
<p>
<i>May 12, 2005</i>. GF now has a mailing list, to which you can register
<a href="https://lists.sourceforge.net/lists/listinfo/gf-tools-users">here</a>.
GF also has a project page on SourceForge,
<a
href="https://sourceforge.net/projects/gf-tools">
https://sourceforge.net/projects/gf-tools</a>,
but this page does not yet have much content.
<p>
<i>May 9, 2005</i>.
PhD Thesis by
<a href="http://www.cs.chalmers.se/~krijo">Kristofer Johannisson</a>:
<a href="http://www.cs.chalmers.se/~krijo/thesis/thesisA4.pdf">
Formal and Informal Software Specifications</a>.
<p>
<i>March 15, 2005</i>.
Master's thesis by
<a href="http://www.cs.chalmers.se/~bringert/">Björn Bringert</a> on
<a
href="http://www.dtek.chalmers.se/~d00bring/publ/exjobb/embedded-grammars.pdf">
Embedded grammars</a>:
GF grammars that can be used as parts of Java programs. And a
<a
href="http://www.cs.chalmers.se/~bringert/misc/tramdemo.avi">demo film</a>
of a multimodal dialogue system built with embedded grammars.
<p>
<i>November 9, 2004</i>.
PhD Thesis by
<a href="http://www.cs.chalmers.se/~peb">Peter Ljunglöf</a>:
<a href="http://www.cs.chalmers.se/~peb/pubs/p04-PhD-thesis.pdf">
Expressivity and Complexity of the Grammatical Framework</a>.
<p>
<i>November 8, 2004</i>. GF 2.1 released.
Here are the <a
href="doc/gf2-highlights.html">highlights</a>.
Software available on the <a href="../GF2.0/download/gf-download.html">GF 2.1 Download
Page</a>.
Main novelties in 2.1:
multiple inheritance of grammar modules,
speech recognition grammar generation,
lots of bug fixes.
Version 2.0 still available
on the <a href="../GF2.0/download-2.0/gf-download.html">GF 2.0 Download Page</a>.
If you need something from the previous version of the web page, it is
still available:
<a href="http://www.cs.chalmers.se/~aarne/GF1">
GF 1.2</a>.
</font>
</p><h2>What is GF?</h2>
The Grammatical Framework (=GF) is a grammar formalism based on type
theory. It consists of
<ul>
<li> a special-purpose programming language
</li><li> a compiler of the language
</li><li> a generic grammar processor
</li></ul>
The compiler reads
GF grammars from user-provided files,
and the generic grammar processor performs
various tasks with the grammars:
<ul>
<li> generation
</li><li> parsing
</li><li> translation
</li><li> type checking
</li><li> computation
</li><li> paraphrasing
</li><li> random and exhaustive generation
</li><li> syntax editing
</li></ul>
GF particularly addresses four aspects of grammars:
<ul>
<li> multilinguality (parallel grammars for different languages)
</li><li> semantics (semantic conditions of well-formedness, semantic
properties of expressions)
<li> modularity and grammar engineering
<li> reuse of grammars in different formats and as software components
</ul>
GF provides an easy way to experiment with grammars written in
different formats, including the ubiquitous BNF and EBNF formats.
The <a href="doc/gf-compiler.png">GF compilation chart</a> gives a
summary of the supported input and output formats (the nodes in ellipses).
<p>
For instance, if you want to create a finite-state automaton
in the HTK SLF format (to use for speech recognition), all you have to do
is to write an EBNF grammar in a file <tt>foo.ebnf</tt> and type
<pre>
echo "pg -printer=slf" | gf foo.ebnf
</pre>
<h2>License</h2>
GF is open-source software licensed under
<a href="LICENSE">GNU General Public License (GPL)</a>.
<h2>Examples and demos</h2>
<a href="http://www.cs.chalmers.se/~bringert/gf/translate/">Numeral
translator</a>: recognizes and generates
numbers from 1 to 999,999 in 80 languages.
(The link goes to a live applet, which requires
<a href="http://java.sun.com/j2se/1.5.0/download.jsp">Java 1.5 plugin</a>.
Here is an <a href="doc/2341.html">example</a>, which does
not require the plugin.)
<p>
<a href="http://www.cs.chalmers.se/%7Ekrijo/gramlets/letter-applet.html">Letter
editor</a>:
write simple letters in English, Finnish,
French, Swedish, and Russian with a few mouse clicks.
<p>
<a
href="http://www.cs.chalmers.se/~bringert/misc/tramdemo.avi">Demo film</a>
of a multimodal dialogue system built with embedded grammars.
<p>
<a href="lib/resource/doc/gf-resource.html">Resource grammar library</a>:
basic structures of ten languages
(Danish, English, Finnish, French, German,
Italian, Norwegian, Russian, Spanish, Swedish).
Resource grammars can be used as libraries for writing GF
applications,
but they can also be useful for language training.
<h2>Executable programs</h2>
GF is available for
several platforms: Linux, Mac OS X, Microsoft Windows, and Sun OS.
To get GF, go to the
<a href="http://sourceforge.net/project/showfiles.php?group_id=132285">Download Page</a>
(at SourceForge).
<h2>Quick start</h2>
When you have downloaded and installed GF, you can try one of the
<a href="doc/gf-quickstart.html">quick start examples</a>.
<h2>Source code</h2>
The main part of GF is written in
<a href="http://www.haskell.org/">Haskell</a>.
<p>
The platform-independent graphical user interface is written in
<a href="http://java.sun.com/">Java</a>.
</p><p>
The <a href="http://sourceforge.net/project/showfiles.php?group_id=132285">
Download Page</a> (at SourceForge) gives links to source and binary packages, as well as
information on compiler requirements.
<p>
For Java programmers: GF grammars can be embedded in Java programs by using the
<a href="http://www.cs.chalmers.se/~bringert/gf/gf-java.html">
Embedded GF Interpreter</a>.
</p><h2>Documents</h2>
See the <a href="doc/index.html">Documentation page</a>.
<h2>Projects and events</h2>
<li> <a href="http://www.talk-project.org">TALK</a> = Tools for Ambient Linguistic
Knowledge</a>. GF is used in implementing multimodal and multilingual dialogue systems.
<li> <a href="http://www.key-project.org/">KeY</a> project on Integrated Deductive
Software Design. GF is used for
authoring informal and formal specifications. More details on the GF
application
<a href="http://www.cs.chalmers.se/%7Ekrijo/gfspec">
here</a>.
<li> <a href="http://webalt.math.helsinki.fi/content/index_eng.html">WebALT</a>,
Web Advanced Learning Technologies. GF is used as for generating multilingual
teaching material.
<li>
Project <a href="http://efficient.citi.tudor.lu/index_noframe.html">Efficient</a>
at Tudor Institute, Luxembourg, "atelier de prototypage de transactions d'e-commerce".
GF is used as an authoring tool for business models.
<li>
An introductory course on GF was given at the
<a href="http://www.logic.at/esslli03/">ESSLLI summer school</a>
in Vienna 2003.
<h2>Miscellaneous</h2>
</li><li>
<a href="http://www.cs.chalmers.se/%7Ekrijo/gramlets/index.html">Gramlets</a>:
GF grammars compiled to Java applets.
</li><li>
<a href="doc/gfcc.pdf">
GFCC</a>:
report on a compiler from a fragment of C to JVM, written in GF.
The compiler source code can be found in the directory
<tt>examples/gfcc</tt> in the GF grammar library
(see <a href="http://sourceforge.net/project/showfiles.php?group_id=132285">GF download page</a>).
</li><li>
<a href="http://www.cs.chalmers.se/~aarne/GF1">
An early version of the GF Home Page</a>
last updated for GF, Version 1.2, 2003.
</li><li>
The original <a href="http://www.xrce.xerox.com/">
GF Xerox Home Page</a>
with the oldest releases of and documents on GF, up to Version 0.54, 1999,
does not seem to exist any more.
</li><li>
Earlier application:
<a href="http://www.cs.chalmers.se/%7Ehallgren/Alfa/Tutorial/GFplugin.html">
Natural-Language Interface to the proof editor Alfa</a>.
</li><li>
<a href="http://www.cs.chalmers.se/%7Emarkus/BNFC">The BNF Converter</a>.
A GF spin-off customized for the description of programming
languages.
</li><li>
<a href="http://www.cs.chalmers.se/%7Emarkus/FM">The Functional
Morphology project</a>. Creating infrastructure for GF and other
linguistic applications.
</li></ul>
<h2>Authors</h2>
The <a href="http://www.cs.chalmers.se/Cs/Research/Language-technology/">
Languge Technology Group</a>.
More details on the
<a href="http://www.cs.chalmers.se/%7Eaarne/GF/doc/gf-people.html">
Authors and Acknowledgements</a> page.
<h2>Implementation project</h2>
Want to become a GF developer? Contact
<a href="http://www.cs.chalmers.se/%7Eaarne/">Aarne Ranta</a>.
Or just get the sources and start hacking.
<hr>
Last modified by
<a href="http://www.cs.chalmers.se/%7Eaarne">
Aarne Ranta</a>,
December 1, 2005.
</body></html>