From f1000ca8c3c07f851f1f278fc75fdf7caec9848e Mon Sep 17 00:00:00 2001 From: aarne Date: Tue, 4 Apr 2006 07:41:32 +0000 Subject: [PATCH] version 3 of quick reference --- doc/gf-reference.html | 97 ++++++++++++++++++++++-------------------- doc/gf-reference.pdf | Bin 50694 -> 51578 bytes doc/gf-reference.txt | 68 +++++++++++++++-------------- 3 files changed, 86 insertions(+), 79 deletions(-) diff --git a/doc/gf-reference.html b/doc/gf-reference.html index f019a383d..c5c108760 100644 --- a/doc/gf-reference.html +++ b/doc/gf-reference.html @@ -7,45 +7,48 @@

GF Quick Reference

Aarne Ranta
-Wed Mar 29 13:21:48 2006 +Tue Apr 4 09:41:30 2006


- +


-This is a quick reference on GF grammars. +This is a quick reference on GF grammars. It aims to +cover all forms of expression available when writing +grammars. It assumes basic knowledge of GF, which +can be acquired from the +GF Tutorial. Help on GF commands is obtained on line by the -help command (h). +help command (help), and help on invoking +GF with (gf -help).

-

A Quick Example

+

A complete example

-This is a complete example, dividing a grammar -into three files. +This is a complete example of a GF grammar divided +into three modules in files. The grammar recognizes the +phrases one pizza and two pizzas.

-abstract, concrete, and resource. -

-

-File Order.gf +File Order.gf:

   abstract Order = {
@@ -83,7 +86,7 @@ File Res.gf:
   oper regNoun : Str -> {s : Num => Str} =
     \dog -> {s = table {
       Sg => dog ;
-      Pl => dog + "s"
+      _  => dog + "s"
       }
     } ;
   }
@@ -99,7 +102,7 @@ To use this example, do
 

-

Modules and files

+

Modules and files

One module per file. File named Foo.gf contains module named @@ -163,7 +166,7 @@ Comments have the forms

   -- till the end of line
   {- any number of lines between -}
-  --# reserved for compiler pragmas
+  --# used for compiler pragmas
 

A concrete can be opened like a resource. @@ -181,7 +184,7 @@ An abstract can be opened like an interface. Any concrete of it then works as an instance.

-

Judgements

+

Judgements

   cat C               -- declare category C
   cat C (x:A)(y:B x)  -- dependent category C
@@ -225,7 +228,7 @@ Judgements can also share RHS:
 

-

Types

+

Types

Abstract syntax (in fun):

@@ -259,7 +262,7 @@ Concrete syntax (in lincat): Resource (in oper): all those of concrete, plus

-  Tok              -- tokens (subset of Str)
+  Tok              -- tokens (subtype of Str)
   A -> B           -- functions from A to B
   Int              -- integers
   Strs             -- list of prefixes (for pre)
@@ -268,11 +271,11 @@ Resource (in oper): all those of concrete, plus
 

As parameter types, one can use any finite type: -param constants P, +P defined in param P, Ints n, and record types of parameter types.

-

Expressions

+

Expressions

Syntax trees = full function applications

@@ -286,7 +289,7 @@ Syntax trees = full function applications Higher-Order Abstract syntax (HOAS): functions as arguments:

-  F a (\y -> b)      -- : C if a : A, b : B (x : A), 
+  F a (\x -> c)      -- : C if a : A, c : C (x : B), 
                         fun F : A -> (B -> C) -> C
 

@@ -320,7 +323,7 @@ Tables _ => "mouse" -- wildcard pattern } table { - n => regn n "cat" ;-- variable pattern + n => regn n "cat" -- variable pattern } table Num {...} -- table given with arg. type table ["ox"; "oxen"] -- table as course of values @@ -336,7 +339,6 @@ Records

   {s = "Liz"; g = Fem} -- record in full form
   {s,t = "et"}         -- same as {s = "et";t= "et"}
-  
   {s = "Liz"} **       -- record extension: same as
     {g = Fem}             {s = "Liz" ; g = Fem}
   
@@ -392,14 +394,15 @@ Example:
 

-

Pattern matching

+

Pattern matching

These patterns can be used in branches of table and -case expressions. +case expressions. Patterns are matched in the order in +which they appear in the grammar.

   C                 -- atomic param constructor
-  C p q             -- param constr. appl- to patterns
+  C p q             -- param constr. applied to patterns
   x                 -- variable, matches anything
   _                 -- wildcard, matches anything
   "foo"             -- string
@@ -414,7 +417,7 @@ These patterns can be used in branches of table and
 

-

Sample library functions

+

Sample library functions

   -- lib/prelude/Predef.gf
   drop   : Int -> Tok -> Tok   -- drop prefix of length
@@ -446,7 +449,7 @@ These patterns can be used in branches of table and
 

-

Flags

+

Flags

Flags can appear, with growing priority,

@@ -480,13 +483,13 @@ Some common flags used in grammars: optimize=noexpand for resource, if =all too big

-For the full set of values for flag, -use on-line h -flag. +For the full set of values for FLAG, +use on-line h -FLAG.

-

File paths

+

File paths

-Colon-separated lists of directories tried in the +Colon-separated lists of directories searched in the given order:

@@ -499,12 +502,12 @@ when invoked, or as flag to the i command.
 The prefix --# is used only in files.
 

-If the variabls GF_LIB_PATH is defined, its +If the environment variabls GF_LIB_PATH is defined, its value is automatically prefixed to each directory to extend the original search path.

-

Alternative grammar formats

+

Alternative grammar formats

Old GF (before GF 2.0): all judgements in any kinds of modules, @@ -530,7 +533,7 @@ Rules must be one per line. The RHS can be empty.

where the RHS is a regular expression of categories -and quoted tokens: "foo", T U, T|U, T*, T+, T?, or empty. +and quoted tokens: "foo", CAT, T U, T|U, T*, T+, T?, or empty. Rule labels are generated automatically.

@@ -560,7 +563,7 @@ are preprocessed by using a parser given by the flag and the result is written to foo.gf.

-

References

+

References

GF Homepage

diff --git a/doc/gf-reference.pdf b/doc/gf-reference.pdf index 4a43a863592bacc7672aad996797b728fa75bf04..6eed355b88db14f05670ab44160399ada124c567 100644 GIT binary patch delta 43656 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 {U#j&aG_d701)yZ^A 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 delta 42716 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 diff --git a/doc/gf-reference.txt b/doc/gf-reference.txt index 16e7b2378..d0c11ec34 100644 --- a/doc/gf-reference.txt +++ b/doc/gf-reference.txt @@ -9,19 +9,23 @@ Aarne Ranta %!target:html -This is a quick reference on GF grammars. +This is a quick reference on GF grammars. It aims to +cover all forms of expression available when writing +grammars. It assumes basic knowledge of GF, which +can be acquired from the +[GF Tutorial http://www.cs.chalmers.se/~aarne/GF/doc/tutorial/]. Help on GF commands is obtained on line by the -help command (``h``). +help command (``help``), and help on invoking +GF with (``gf -help``). -==A Quick Example== +===A complete example=== -This is a complete example, dividing a grammar -into three files. +This is a complete example of a GF grammar divided +into three modules in files. The grammar recognizes the +phrases //one pizza// and //two pizzas//. -``abstract``, ``concrete``, and ``resource``. - -File ``Order.gf`` +File ``Order.gf``: ``` abstract Order = { cat @@ -54,7 +58,7 @@ param Num = Sg | Pl ; oper regNoun : Str -> {s : Num => Str} = \dog -> {s = table { Sg => dog ; - Pl => dog + "s" + _ => dog + "s" } } ; } @@ -69,7 +73,7 @@ To use this example, do -==Modules and files== +===Modules and files=== One module per file. File named ``Foo.gf`` contains module named @@ -122,7 +126,7 @@ Comments have the forms ``` -- till the end of line {- any number of lines between -} ---# reserved for compiler pragmas +--# used for compiler pragmas ``` A ``concrete`` can be opened like a ``resource``. It is translated as follows: @@ -138,7 +142,7 @@ Any ``concrete`` of it then works as an ``instance``. -==Judgements== +===Judgements=== ``` cat C -- declare category C @@ -179,7 +183,7 @@ fun f,g : A -- same as fun f : A ; g : A ``` -==Types== +===Types=== Abstract syntax (in ``fun``): ``` @@ -208,7 +212,7 @@ Ints n -- type of n first integers ``` Resource (in ``oper``): all those of concrete, plus ``` -Tok -- tokens (subset of Str) +Tok -- tokens (subtype of Str) A -> B -- functions from A to B Int -- integers Strs -- list of prefixes (for pre) @@ -216,12 +220,12 @@ PType -- parameter type Type -- any type ``` As parameter types, one can use any finite type: -``param`` constants ``P``, +``P`` defined in ``param P``, ``Ints n``, and record types of parameter types. -==Expressions== +===Expressions=== Syntax trees = full function applications ``` @@ -232,7 +236,7 @@ f a b -- : C if fun f : A -> B -> C ``` Higher-Order Abstract syntax (HOAS): functions as arguments: ``` -F a (\y -> b) -- : C if a : A, b : B (x : A), +F a (\x -> c) -- : C if a : A, c : C (x : B), fun F : A -> (B -> C) -> C ``` Tokens and token lists @@ -260,7 +264,7 @@ table { -- by pattern matching _ => "mouse" -- wildcard pattern } table { - n => regn n "cat" ;-- variable pattern + n => regn n "cat" -- variable pattern } table Num {...} -- table given with arg. type table ["ox"; "oxen"] -- table as course of values @@ -274,7 +278,6 @@ Records ``` {s = "Liz"; g = Fem} -- record in full form {s,t = "et"} -- same as {s = "et";t= "et"} - {s = "Liz"} ** -- record extension: same as {g = Fem} {s = "Liz" ; g = Fem} @@ -318,13 +321,14 @@ lin F A B = {s = ["for all"] ++ A.s ++ B.$1 ++ B.s} ``` -==Pattern matching== +===Pattern matching=== These patterns can be used in branches of ``table`` and -``case`` expressions. +``case`` expressions. Patterns are matched in the order in +which they appear in the grammar. ``` C -- atomic param constructor -C p q -- param constr. appl- to patterns +C p q -- param constr. applied to patterns x -- variable, matches anything _ -- wildcard, matches anything "foo" -- string @@ -338,7 +342,7 @@ p + "s" -- sequence of two string patterns p* -- repetition of a string pattern ``` -==Sample library functions== +===Sample library functions=== ``` -- lib/prelude/Predef.gf @@ -371,7 +375,7 @@ oper ``` -==Flags== +===Flags=== Flags can appear, with growing priority, - in files, judgement ``flags`` and without dash (``-``) @@ -400,14 +404,14 @@ optimize=values good for lexicon concrete optimize=all usually good for resource optimize=noexpand for resource, if =all too big ``` -For the full set of values for ``flag``, -use on-line ``h -flag``. +For the full set of values for ``FLAG``, +use on-line ``h -FLAG``. -==File paths== +===File paths=== -Colon-separated lists of directories tried in the +Colon-separated lists of directories searched in the given order: ``` --# -path=.:../abstract:../common:prelude @@ -417,12 +421,12 @@ first line in the top file, as flag to ``gf`` when invoked, or as flag to the ``i`` command. The prefix ``--#`` is used only in files. -If the variabls ``GF_LIB_PATH`` is defined, its +If the environment variabls ``GF_LIB_PATH`` is defined, its value is automatically prefixed to each directory to extend the original search path. -==Alternative grammar formats== +===Alternative grammar formats=== **Old GF** (before GF 2.0): all judgements in any kinds of modules, @@ -442,7 +446,7 @@ Rules must be one per line. The RHS can be empty. S ::= (NP+ ("is" | "was") AP | V NP*) ; ``` where the RHS is a regular expression of categories -and quoted tokens: ``"foo", T U, T|U, T*, T+, T?``, or empty. +and quoted tokens: ``"foo", CAT, T U, T|U, T*, T+, T?``, or empty. Rule labels are generated automatically. @@ -465,7 +469,7 @@ are preprocessed by using a parser given by the flag and the result is written to ``foo.gf``. -==References== +===References=== [GF Homepage http://www.cs.chalmers.se/~aarne/GF/]