Commit Graph

23 Commits

Author SHA1 Message Date
hallgren
121afca05a Haskell binding: free memory pool to avoid space leak when readPGF fails 2014-05-13 14:07:36 +00:00
kr.angelov
58d0cdc943 fix memory leak in the Haskell binding 2014-05-08 08:41:58 +00:00
hallgren
70b192594e pgf-shell.hs: fix compilation problem with GHC 7.4 2014-05-07 17:06:34 +00:00
hallgren
04e7bdb6fe Two improvements in the pgf-shell example
1. Like pgf-translate, it now shows one result at a time, press Enter to get
   more results.
2. You can load a new grammar with the command 'i <path-to-pgf>'
2014-05-07 16:37:28 +00:00
kr.angelov
bd892b8a1d fix the haskell binding to handle parse errors 2014-04-04 11:46:40 +00:00
hallgren
f092e7fe5b haskell-bind: comment out superfluous imports 2014-03-12 13:21:47 +00:00
hallgren
c9af5d11c0 Restore compatibility with GHC 7.0 2014-02-10 21:44:34 +00:00
kr.angelov
44a764cd2f proper error checking in the C runtime 2014-02-10 14:07:17 +00:00
hallgren
1bcb2d06e3 haskell-bind: fix broken pgf-shell
The type CId was replaced with String, so can't use show and read anymore.
2014-02-10 12:59:31 +00:00
kr.angelov
5818b0fe1b bugfix in pgf2-bind.cabal 2014-02-10 10:28:19 +00:00
kr.angelov
1746e3ad2a updated haskell-bind/README 2014-02-09 20:56:01 +00:00
kr.angelov
adeeb47e06 cleanup the code for the FFI binding. The API is now more uniform with the Python and the Java bindings. Fixed a lot of memory leaks. 2014-02-09 20:45:11 +00:00
hallgren
680bf64454 pgf-shell: show the names of the concrete syntaxes after loading the grammar 2014-02-07 16:40:13 +00:00
inari
8de56530e0 haskell-bind: add function languages 2014-02-07 15:56:12 +00:00
hallgren
9a422839cc pgf-shell: enable -rtsopts, call performGC between commands
This is to make it easier to find the cause of space leaks.
2014-02-07 13:57:13 +00:00
inari
957dfb83b6 fixed some memory leaks 2014-02-06 10:50:59 +00:00
inari
f0ddf0fe72 changes to pools in haskell bindings 2014-01-29 16:02:07 +00:00
hallgren
9d71ffc831 Optionally include C run-time support
If the C run-time library is compiled and installed on your system, you can now
do 'cabal configure -fc-runtime' to get the following extras:
  + The haskell binding to the C run-time library will be included in the
    PGF library (so you can import it in Haskell applications).
    Documentation on the new modules will be included when you run
    'cabal haddock'.
  + The new command 'pgf-shell', implemented on top of haskell binding to
    the C run-time system.
  + Three new commands in the web API: c-parse, c-linearize and
    c-translate. Their interfaces are similar to the corresponding commands
    without the "c-" prefix, but they should be considered preliminary.
2014-01-20 17:06:11 +00:00
hallgren
801a20d27a haskell-bind: add an export list to hide internal stuff
It also makes the generated haddock documentaiton more structured.
2014-01-20 14:40:38 +00:00
hallgren
d2d57a9210 haskell-bind.cabal: relax overly restrictive version bounds and add cc-options 2014-01-17 14:18:20 +00:00
hallgren
045eeeb280 haskell-bind: add a cabal file and examples/pgf-shell.hs
* The haskell-bind.cabal file makes it easy to build the haskell binding and
  use it in ghci.
* pgf-shell.hs is a simple example of how to use the haskell binding.
2014-01-17 14:02:35 +00:00
hallgren
b0a40d82b9 haskell-bind: change the type of CRuntimeFFI.getConcr
Change the type of getConcr from

    getConcr :: PGF -> Language -> Concr

to

    getConcr :: PGF -> Language -> Maybe Concr

This is to prevent programs from crashing later if you try to select a
concrete syntax that is not present in a grammar.
2014-01-17 13:58:48 +00:00
kr.angelov
0851308099 move src/runtime/haskell/CRuntimeFFI to src/runtime/haskell-bind. Don't mess up with the stable Haskell runtime! 2013-12-10 16:11:47 +00:00