Jekejeke Prolog 1.1.2 (Prolog co-routines and Java arrays)

Jan Burse, created Mar 05. 2016 Dear All, We have just uploaded the new release of Jekejeke Prolog. Some issues of slower startup and loading time because of the new use_package/1 directive still persist. But we do not want to prolong the following exciting new features: - Suspended Goals aka Prolog Co-Routines: By some rework of port handling of the runtime and a new module "experiment/cont" in the Minlog extension, we were able to add suspended goals to the interpreter. The end-user can now profit from predefined predicates sto/1, neq/2, freeze/2 and when/2 found in the new modules "term/herbrand" respectively "term/suspend". - Reference Type Evaluable: The is/2 predicate now also allows evaluable functions to return the Prolog reference data type. Further we modified the associativity of the (::)/2 operator and the corresponding evaluable function resp. predicate now evaluates its first argument. This facilitates navigating data structures. - Java Array Classes: The Prolog syntax now supports [] and {} as functors and operators. We predefine [] as a post fix operator and use it to represent Java array classes. The foreign function interface now accepts Java array classes as parameter and return types. The new module "basic/array" allows naming array accessors. The Java auto loader is able to load Java Array classes with default array accessor names. To run the suspension predicates one has to combine the Jekejeke Minlog extension with either the Jekejeke Runtime or the Jekejeke Development. Happy coding! Android Appstores: Google Play Download: Minlog Extension