summaryrefslogtreecommitdiff
path: root/doc
diff options
context:
space:
mode:
authoraarne <unknown>2005-09-20 08:32:55 +0000
committeraarne <unknown>2005-09-20 08:32:55 +0000
commit6d179267de8f988ab2ee52a5fef99b3b05576222 (patch)
treea543ed396c364bd63987517b8ead00fb9d193213 /doc
parent263beccd56f5a6242ea97e696a9843cd0f597e16 (diff)
CSEE now works fine
Diffstat (limited to 'doc')
-rw-r--r--doc/gf-history.html26
1 files changed, 26 insertions, 0 deletions
diff --git a/doc/gf-history.html b/doc/gf-history.html
index e245b8fc3..2e7f390b5 100644
--- a/doc/gf-history.html
+++ b/doc/gf-history.html
@@ -12,6 +12,32 @@ Changes in functionality since May 17, 2005, release of GF Version 2.2
</center>
+20/9 (AR) Added optimization by <b>common subexpression elimination</b>.
+It works on GFC modules and creates $oper$ definitions for
+subterms that occur more than once in $lin$ definitions. These
+$oper$ definitions are automatically reinlined in functionalities
+that don't support $oper$s in GFC. This conversion is done by
+module and the $oper$s are not inherited. Moreover, the subterms
+can contain free variables which means that the $oper$s are not
+always well typed. However, since all variables in GFC are type-specific
+(and local variables are $lin$-specific), this does not destroy
+subject reduction or cause illegal captures.
+<br>
+The optimization is triggered by the flag <tt>optimize=OPT_subs</tt>,
+where <tt>OPT</tt> is any of the other optimizations (see <tt>h -optimize</tt>).
+The most aggressive value of the flag is <tt>all_subs</tt>. In experiments,
+the size of a GFC module can shrink by 80% compared to plain <tt>all</tt>.
+
+<p>
+
+15/9 (AR) Fixed some bugs in dependent-type type checking of abstract
+modules at compile time. The type checker is more severe now, which means
+that some old grammars may fail to compile - but this is usually the
+right result. However, the type checker of <tt>def</tt> judgements still
+needs work.
+
+<p>
+
14/9 (AR) Added printing of grammars to a format without parameters, in
the spirit of Peanos "Latino sine flexione". The command <tt>pg -unpar</tt>
does the trick, and the result can be saved in a <tt>gfcm</tt> file. The generated