1
0
forked from GitHub/gf-core
Commit Graph

172 Commits

Author SHA1 Message Date
hallgren
41df4e00ff Some pgf-server API documentation 2010-11-09 21:02:07 +00:00
hallgren
b0594eb545 pgf_online.js: if a grammar list is supplied, you don't have to call switch_grammar. 2010-11-09 16:29:04 +00:00
hallgren
91ba2c01bf minibar.js: code simplification 2010-11-09 11:58:38 +00:00
hallgren
e07098e31f support.js: two new functions: commonPrefix & insertFirst 2010-11-05 15:41:06 +00:00
aarne
c5334613c5 trying to find some inefficiencies in Finnish resource 2010-10-25 19:56:47 +00:00
ramona.enache
1f8a0f0876 added giza Alignments with command ga and merged the rendering algorithm for graphviz and giza alignments 2010-10-31 13:39:01 +00:00
hallgren
524fb1a6bc minibar.js: bug fix: when not using group translation, and a particular language is chosen in the To: menu, the translation would not be displayed 2010-10-28 12:39:56 +00:00
hallgren
7fac5dc089 minibar.js: bug fix: the To: menu wasn't updated properly when switching grammars 2010-10-28 11:53:50 +00:00
hallgren
5fc0e059c5 minibar: restructured code and improved user interface
* Keyboard input and completion should now work much more smoothly:
  + When you press space, the current word will be completed (if incomplete)
    and a new magnet will be created. If there is more than one possible
    completion, no magnet is created, but the common prefix of the possible
    completions is added to the text box.
  + Instead of asking the server for possible completions every time a new
    letter is added to the curent word, minibar only ask for completions for
    whole words and then filters the list locally when more letters are entered,
    speeding things up when server responses are slow.

* Code restructuring:
  + The PGF server API has been moved to its own file: pgf_online.js. This
    allows it to be reused in other applicaitons without importing the entire
    minibar. It also allows minibar to be used with different server interfaces.
  + The minibar code has been rewritten to avoid storing state information
    in the document tree and accessing it by referring to named document
    elements. The code now also avoids using string literals contaning
    the names of top-level functions to specify event handlers for buttons
    and menus. (The code is no longer introspective, so alpha conversion will
    not change its meaning.)
2010-10-26 12:42:33 +00:00
hallgren
1e51a2e9e5 support.js: some enhancements and new functions
+ ajax_http_get(url,callback) now checks the HTTP response status and shows an
  error message if the status is not OK (is not 200)
+ New function node(tag,attrs,children) to create document nodes with arbitraty
  attributes and children. The functions node() and text() should now be enough
  to construct arbitrary document trees in an easy, functional way, and many of
  the more specialized functions could be removed.
+ When calling the function button(label,action,key), the action can be a
  function instead of a string, so you can use local/anonymous functions.
+ New function debug(str) adds text to the element with id=debug, if it
  exists.
2010-10-26 11:52:04 +00:00
krasimir
0ba1daf5eb when faced with hard unification problem the type checker should just postpone the decision instead of failing immediately. added test case as well 2010-10-25 15:47:33 +00:00
krasimir
aa6b07afdb when we print the bracketed string it is useful to print the attached metavariables as well 2010-10-25 12:21:12 +00:00
krasimir
822a70cf7a change the TcM monad to continuation passing style. The old monad caused stack overflow for large search spaces 2010-10-21 15:01:52 +00:00
krasimir
82edf7bebb support for proof search with high-order functions 2010-10-21 12:47:26 +00:00
krasimir
2991b7acef bugfix in the term generation 2010-10-20 13:36:39 +00:00
krasimir
d45b4ae426 fixed typo which broke the parsing with -openclass 2010-10-20 09:04:48 +00:00
krasimir
4ac1cf4970 in the type checker monad we should use lazy pattern matching because otherwise we force the exhaustive tree generation to be strict 2010-10-19 13:04:41 +00:00
krasimir
775e59dabe added explicit depth parameter to the parsing API and the corresponding command in the shell 2010-10-18 16:51:25 +00:00
krasimir
205ac48ac3 typo in PGF.TypeCheck which spoiled the previous patch 2010-10-18 16:50:55 +00:00
krasimir
702b4aad3b now we use the GF reasoner to fillin meta variables in the abstract trees generated from the parser 2010-10-18 15:55:14 +00:00
hallgren
57f0124f2a minibar.html: add a <noscript> element with a note that the page doesn't work unless JavaScript is enabled 2010-10-23 14:56:10 +00:00
hallgren
d803d2a925 minibar.js: show the type error messages that can occur for grammars with dependent types 2010-10-18 12:15:30 +00:00
hallgren
26da60d0a9 minibar.js: add an option to enable/disable the Random button 2010-10-17 16:48:21 +00:00
krasimir
05a52d6937 now since the type checking monad TcM is nondeterministic we can use the same monad in PGF.Forest.getAbsTrees 2010-10-14 14:28:40 +00:00
krasimir
7fc638e030 bugfix in PGF.VisualizeTree for handling trees with implicit arguments 2010-10-13 13:32:48 +00:00
krasimir
09ce38742c fix PGF.Generate.restart. The restart should be done only if there are some solutions found 2010-10-13 12:38:51 +00:00
krasimir
de0354f991 the exhaustive/random generator now knows how to handle computable functions in the types 2010-10-11 17:18:28 +00:00
krasimir
f305587a62 now the generation from template with meta-variables respects the dependent types 2010-10-11 09:59:57 +00:00
krasimir
7200244605 backtracking for random generation is not enough. we must restart the search after each solution 2010-10-02 13:34:58 +00:00
krasimir
cb8795c222 refactor the API for random generation again. Now PGF contains probabilities in the abstract syntax 2010-10-02 13:03:57 +00:00
hallgren
8b7d27fe4c minibar: work on adding back support for typing multiple words without pressing enter in between
It mostly works now, but some minor issues still need to be fixed.
2010-09-29 13:03:40 +00:00
hallgren
66672d8af1 minibar: update about.html with description of recent changes 2010-09-28 11:46:32 +00:00
hallgren
1ac7a8bd7c minibar/about.html: fix typos and formatting 2010-09-24 12:57:16 +00:00
hallgren
72fe93a8c4 minibar.html: specify charset, move initialization
Added a meta tag to specify that the file is in UTF-8. This makes the browser
(at least Firefox) assume that the JavaScript files are also in UTF-8, it seems.

Moved the call to start_minibar() from the <body onload="..."> to the end of
the file. The onload action is not executed until all images in the document
has been loaded, while javascipt at the end of the file is executed as soon
as the HTML file has been loaded. (Calling start_minibar() from the head of
the document would be too soon, since it refers to elements in the body,
which hasn't been loaded yet.)
2010-09-24 12:47:18 +00:00
krasimir
617ce3cce6 the first revision of exhaustive and random generation with dependent types. Still not quite stable. 2010-09-22 15:49:16 +00:00
krasimir
1c9305e7a3 cleanup and export the Probabilistic API from PGF 2010-09-22 09:06:19 +00:00
krasimir
d09f62b0b1 bugfix in PGF.Type.pType: Agda style types like {x : A} -> B should not be supported in GF 2010-09-12 12:26:38 +00:00
hallgren
1b6d9ee29d minibar.js: server API code cleanup 2010-09-14 17:15:37 +00:00
hallgren
1f06415774 minibar.js: bug fix: the current word should be accepted when you press enter if it matches one of the possible completions exactly
The current word is also accepted if there is only one remaining possible
completion.
2010-09-14 16:48:20 +00:00
hallgren
7581451852 minibar.js: add access keys to some of the buttons 2010-09-14 16:45:48 +00:00
hallgren
17cf4e1276 support.js: create buttons with access keys 2010-09-10 12:20:07 +00:00
hallgren
e13e47be8a minibar: default input language is now the user's preferred language, if possible
This is implemented using the userLanguage field in the grammar info output by
pgf-server.
2010-09-10 11:03:46 +00:00
hallgren
46da64cc72 minibar: use AJAX instead of JSONP when possible
Using AJAX instead of JSONP can give better caching in the browser, since the
URL doesn't need to contain a (dynamically generated) callback function name.
But because of the same origin policy in JavaScript, AJAX can only be used when
the HTML file is served from the same server as the PGF. The new function
http_get_json in support.js uses AJAX if this is the case, and falls back to
JSONP otherwise.
2010-09-10 08:38:11 +00:00
hallgren
5290659c2c Minibar: PGF server API: pass callback functions directly instead of passing function names as strings. 2010-09-05 18:06:45 +00:00
hallgren
c85c1e1c11 minibar: fix broken link to brushed-metal background
Solution: include a local copy of brushed-metal.png
2010-09-05 18:01:44 +00:00
krasimir
ab9d27f995 PGF.Expr.normalForm does variable renaming 2010-08-30 07:37:12 +00:00
hallgren
509ccb0db0 Adapt minibar.js to the current GF web service API
Quick fix. More work needed for correct behaviour when multiple words are
entered at once.
2010-08-27 16:46:14 +00:00
krasimir
b0e110cf4f native representation for HOAS in PMCFG and incremental type checking of the parse forest 2010-08-09 10:10:08 +00:00
krasimir
d3a6866277 more advanced complete function in the PGFService 2010-08-24 15:58:22 +00:00
krasimir
94bd76df72 two new functions in the PGF API: mkAbs, unAbs 2010-07-31 16:40:16 +00:00