summaryrefslogtreecommitdiff
path: root/download/release-3.7.1.t2t
blob: c31ee0d9372f3ffd5957abc61c524bb41891e4f8 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
GF 3.7.1 Release Notes
October 2015

==Installation==

See the [download page http://www.grammaticalframework.org/download/index.html].

==What's new==

Over 170 changes have been pushed to the source repository since
[the release of GF 3.7 release-3.7.html] in June 2015.

===GF compiler and run-time library===

====New features and notable changes====

- GF shell: ``cc -trace`` (preliminary): you can now do things like

  	``cc -trace mkV "debug"``

  to see a trace of all opers with their arguments and results during the
  computation of ``mkV "debug"``.

- GF shell: you can now parse and linearize with the C run-time system
  from the GF shell by starting GF with ``gf -cshell`` or ``gf -crun``.
  Only limited functionality is available when running the shell in these
  modes (use the ``help`` command in the shell for details):

  - You can only import ``.pgf`` files, not source files.
  - The ``-retain`` flag can not be used and the commands that require it to
    work are not available.

- GF now supports parallel batch compilation of grammars.

    - ``gf -make -j=``//n// uses //n// parallel threads.
    - ``gf -make -j`` adapts to the number of processors in the system.

  (This depends on the function ``Control.Concurrent.setNumCapabilities``,
  which is only available in GHC>=7.6 (base>=4.6).
  GF can still be compiled with GHC<7.6, but then you have
  to use ``+RTS -N -RTS`` to take advantage of multicore processors.)

- GF shell: more commands (``cc``, ``sd``, ``so``, ``ss``, ``dg``, ``ph``)
  can now be used in pipes and
  the ``eh`` (``execute_history``) command now works again.


====Other changes and bug fixes====

- Various improvements and bug fixes in the C run-time system and its
  bindings to other languages.


====Changes of interest to compiler developers====

- The implementation of the GF shell has been refactored, both to accommodate
  the C run-time mode (``gf -cshell``), to allow a more uniform treatment
  of different types of commands, and to fix some commands that have been
  broken for years.


===Resource Grammar Library===

- Various fixes for several languages.
- Numerous fixes in the translation dictionaries.


===GF Cloud services===

- PGF service: by adding ``unlexer=none`` (or ``unlexer=id``)
  in requests that output linearizations
  (e.g. ``command=linearize``, ``command=translate``),
  you can leave ``&+`` uninterpreted instead of gluing the adjacent tokens.
  This means that the output is left in a format that can be parsed in
  a subsequent request.