Announce: Cabal 0.1 (Library Infrastructure Project)
Much thanks to all who've made this possible :) The Haskell Cabal The Common Architecture for Building Applications and Libraries. DOWNLOAD: The Haskell Cabal has reached pre-release stage, with a 0.1 version The community should use this release to evaluate the interfaces and explore the concepts of these tools. Download the Cabal here: http://www.haskell.org/cabal/download.html BUGS: Please report bugs and wish-list items here: http://sourceforge.net/tracker/?func=add&group_id=44807&atid=440922 Or email Isaac Jones: ijones@syntaxpolice.org ABOUT: The Haskell Cabal is meant to be a part of a larger infrastructure for distributing, organizing, and cataloging Haskell Libraries and Tools. It is an effort to provide a framework for developers to more effectively contribute their software to the Haskell community. Specifically, the Cabal describes what a Haskell package is, how these packages interact with the language, and what Haskell implementations must to do to support packages. The Cabal also specifies some infrastructure (code) that makes it easy for tool authors to build and distribute conforming packages. The Cabal is only one contribution to the larger goal. In particular, the Cabal says nothing about more global issues such as how authors decide where in the module name space their library should live; how users can find a package they want; how orphan packages find new owners; and so on. NOTES: This release is meant to provide the community with concrete information about how the interfaces are shaping up. This release does NOT fix the interfaces, we can't promise not to break anything that relies on these interfaces. We hope that Haskell authors will try to package their software using these tools, and let us know where they fall short. MORE INFORMATION: Please see the web site for the source code, interfaces, and especially the proposal, which will serve as documentation for this release: http://www.haskell.org/cabal/
Hello, The CVS version of Happy now includes an extension for GLR parsing. GLR parsing extends LR parsing to ambiguous grammars, producing a directed, acyclic and-or graph ("a packed forest") to compactly represent the multiple possible parses. There are many possible applications, not least natural language, bioinformatics, sequence alignment, code generation... It comprises an additional back-end and drivers for Happy. The code generated is 100% Haskell-98 or can be optimised for GHC. The latter is sufficiently efficient to parse a gene sequence of length 600 to a graph of some 11000 nodes in about 10 seconds. It has two modes of recording semantic information, either calculating the list of all possible results or allowing detailed labelling of the forest's nodes. It is based on undergraduate work by Ben Medlock (Durham), with some use of ideas from Peter Ljungloef (Chalmers), and subsequently extended / improved by myself. Its unique feature is the production of an explicit graph, which is essential for applications involving heavy ambiguity - where simply processing lists of alternatives leads to explosion of possibilities. A new release of Happy containing this code is planned soon, but if anyone is curious and would like to try the code out in advance, I'd be grateful for comments / bugs reports. You can build from CVS, or download a linux distribution from http://www.dur.ac.uk/p.c.callaghan/glr-dist.tgz This package contains brief instructions and some examples. Executing "make in-place" in the distribution's root directory should fix up paths to allow the examples to be compiled. The brief instructions, with an example of a forest, can be viewed at http://www.dur.ac.uk/p.c.callaghan/glr-simple-docs The forest can also be viewed graphically, see http://www.dur.ac.uk/p.c.callaghan/glr-four.eps Enjoy! Paul Callaghan -------------------------------------------------------------------------------- Dr Paul Callaghan (Lecturer) Email: P.C.Callaghan@durham.ac.uk Computer Assisted Reasoning Group, Department of Computer Science, Durham http://www.dur.ac.uk/CARG
Dear all, An update on the GLR extension for Happy: Several improvements in speed and functionality have been made since the August version. The full release as part of Happy will occur soon, but a sneak preview plus useful information can be found on page: http://www.dur.ac.uk/p.c.callaghan/happy-glr This will be a permanent page for distributing information, tips, interesting examples, experimental releases etc. The currently contains a current linux build (as .tgz, compiled on Fedora), and a current windows build (as a zip file) These packages contain full documentation on the GLR extension and some relevant examples. Executing "make in-place" in the distribution's root directory will fix up paths to allow the examples to be compiled. (This works on the linux version or Windows with Cygwin etc - there's no support for other combinations yet.)
From the earlier message:
GLR parsing extends LR parsing to ambiguous grammars, producing a directed, acyclic and-or graph ("a packed forest") to compactly represent the multiple possible parses. There are many possible applications, not least natural language, bioinformatics, sequence alignment, code generation...
It comprises an additional back-end and drivers for Happy. The code generated is 100% Haskell-98 or can be optimised for GHC. The latter is sufficiently efficient to parse a gene sequence of length 1200 to a graph of some 23400 nodes in about 4 seconds. It has two modes of recording semantic information, either calculating the list of all possible results or allowing detailed labelling of the forest's nodes. It is based on undergraduate work by Ben Medlock (Durham), with some use of ideas from Peter Ljungloef (Chalmers), and subsequently extended / improved by myself. Its unique feature is the production of an explicit graph, which is essential for applications involving heavy ambiguity - where simply processing lists of alternatives leads to explosion of possibilities.
Since August, the following change have been made: * much faster * better representation (ideal for local ambiguity packing) * supports monadic semantic values in tree-decode mode (ie, Happy's %monad directive and {%...} facility.) * can parse grammars with hidden left recursion. * full documentation added * wider set of examples Enjoy! Paul Callaghan -------------------------------------------------------------------------------- Dr Paul Callaghan (Lecturer) Email: P.C.Callaghan@durham.ac.uk Computer Assisted Reasoning Group, Department of Computer Science, Durham http://www.dur.ac.uk/CARG
participants (2)
-
Isaac Jones -
P.C.Callaghan