summaryrefslogtreecommitdiff
AgeCommit message (Collapse)Author
2015-08-11Mark random and random_between as safe goalsTimotej Lazar
Required for exercise 25 (genlist).
2015-08-11Keep token positions when lexingTimotej Lazar
This will allow us to match line edits to original source locations.
2015-08-11Simplify prolog.util.map_varsTimotej Lazar
Return a single mapping instead of generating all possible permutations. Only the first solution was used anyway, with little effect on found solutions.
2015-08-11Add some ad-hoc test code to prolog/util.pyTimotej Lazar
2015-08-11Rework prolog query engineTimotej Lazar
Use exceptions to report errors. Used in the server branch.
2015-08-11Clean up prolog.engineTimotej Lazar
Use findnsols/4 to allow limiting the number of solutions found by prolog.engine.query. Add a basic test case to prolog.engine.
2015-08-11Add PL_clear_exception to prolog/core.pyTimotej Lazar
2015-08-11mv prolog/sandbox.pl prolog/lib.plTimotej Lazar
2015-08-11Cleanups in monkey.pyTimotej Lazar
2015-08-11Lexer: increase priority for t_commentTimotej Lazar
Multiline comments were not lexed correctly because /* was interpreted as an operator.
2015-08-11Move PQueue and utility functions into util.pyTimotej Lazar
2015-08-11Use immutable values in queueTimotej Lazar
2015-08-11Remove unnecessary check from prolog.util.composeTimotej Lazar
2015-08-11Fix two bugs in prolog.util.decomposeTimotej Lazar
2015-08-11Add call(predicate, arguments) to PrologEngineTimotej Lazar
Also disable error messages printed by swipl library.
2015-08-11Optimize prolog.util.stringify (~15% faster)Timotej Lazar
2015-08-11Improve testing procedureTimotej Lazar
- only run queries with correct code once - use msort/2 to implement quicksort/3, used for some tests - correctly split programs in the presence of =.. operator
2015-08-11CleanupsTimotej Lazar
2015-08-11Some cleanups in main programTimotej Lazar
2015-08-11Initial commit for pymonkeyTimotej Lazar