hallgren 3f57151cc3 Represent identifiers as UTF-8-encoded ByteStrings
This was a fairly simple change thanks to previous work on making the Ident
type abstract and the fact that PGF.CId already uses UTF-8-encoded
ByteStrings.

One potential pitfall is that Data.ByteString.UTF8 uses the same type for
ByteStrings as Data.ByteString. I renamed ident2bs to ident2utf8 and
bsCId to utf8CId, to make it clearer that they work with UTF-8-encoded
ByteStrings.

Since both the compiler input and identifiers are now UTF-8-encoded
ByteStrings, the lexer now creates identifiers without copying any characters.
**END OF DESCRIPTION***

Place the long patch description above the ***END OF DESCRIPTION*** marker.
The first line of this file will be the patch name.


This patch contains the following changes:

M ./src/compiler/GF/Compile/CheckGrammar.hs -3 +3
M ./src/compiler/GF/Compile/GrammarToPGF.hs -2 +2
M ./src/compiler/GF/Grammar/Binary.hs -5 +1
M ./src/compiler/GF/Grammar/Lexer.x -11 +13
M ./src/compiler/GF/Infra/Ident.hs -19 +36
M ./src/runtime/haskell/PGF.hs -1 +1
M ./src/runtime/haskell/PGF/CId.hs -2 +3
2013-11-26 16:12:03 +00:00
2010-12-22 16:57:53 +00:00
2013-09-29 16:25:16 +00:00
2013-02-22 15:33:52 +00:00
2012-10-26 08:47:00 +00:00
2007-09-12 09:42:08 +00:00
2010-12-21 10:57:54 +00:00
2012-08-06 16:14:47 +00:00
2013-09-16 07:17:27 +00:00

DESCRIPTION

The Grammatical Framework (=GF) is a grammar formalism based on type theory. 
It consists of

    * a special-purpose programming language
    * a compiler of the language
    * a generic grammar processor 

The compiler reads GF grammars from user-provided files, and the 
generic grammar processor performs various tasks with the grammars:

    * generation
    * parsing
    * translation
    * type checking
    * computation
    * paraphrasing
    * random generation
    * syntax editing 

GF particularly addresses four aspects of grammars:

    * multilinguality (parallel grammars for different languages)
    * semantics (semantic conditions of well-formedness, semantic 
      properties of expressions) 
    * grammar engineering (modularity, abstractions, libraries)
    * embeddability in programs written in other languages (C,C++,
      Haskell, Java, JavaScript)


COMPILATION and INSTALLATION of source distribution:
See download/index.html for installation instructions.
(More details can be found in doc/gf-developers.html.)
Description
No description provided
Readme Multiple Licenses 140 MiB
Languages
Haskell 45%
C 32.9%
JavaScript 10.1%
HTML 3.3%
Grammatical Framework 2.8%
Other 5.8%