We are pleased to announce the release of Picat version 1.0. Picat (picat-lang.org) is a new programming language thatintegrates logic programming, functional programming,dynamic programming with tabling, constraint programming,and scripting. Picat incorporates many language features forbetter productivity of software development, includingpattern-matching rules, explicit non-determinism, explicitunification, functions, constraints, and tabling. It is notrare to find problems for which Picat requires an order ofmagnitude fewer lines of code than many other languages. Since the first release in Februrary 2014, Picat has beengrowing steadily, and many users have had very positiveexperiences with the language: Hakan Kjellerstrand's Picatpage (www.hakank.org/picat) has about 775 programswritten by Hakan; the page picat-lang.org/projects.html hasa collection of over one hundred programs for a variety ofprojects and competitions; as part of the VK Cup, the sitecodeforces.com featured Picat in a surprise round of acompetition, and more than 500 teams competed. Picat's tabled planner has been shown to be an efficienttool for modeling and solving planning problems. RomanBartak, Agostino Dovier, and Neng-Fa Zhou have hand-codedseveral models in Picat for the IPC competition problems(picat-lang.org/ipc14). These declarative models exploitPicat's features by using structural state representationsand common-sense domain knowledge. These Picat modelssignificantly outperform PDDL encodings run by the best PDDLplanners. Sergii Dymchenko has also demonstrated the promiseof Picat's planner through several AI planning problems,including problems from the Google Code Jam competition(sdymchenko.com/blog/2015/01/31/ai-planning-picat). One of the major additions made since version 0.1 is anoptimizing SAT compiler, which translates high-levelconstraints into efficient CNF codes to be solved by a SATsolver. The SAT compiler is offered as a separate module,which has the same interface as the CP module. The SATmodule is complementary to the CP module, and, for manyproblems, significantly outperforms the CP module. The SATcompiler has been tested by using hundreds of benchmarks andtens of thousands of instances that have been used in CSPand Minizinc competitions. Another major addition in version 1.0 is an externallanguage interface with C, through which Picat programs cancall deterministic predicates that are written as functionsin C. This interface can be used to link Picat with othersystems, such as database, GUI programming, mobilecomputing, game programming, networking, and web programminglibraries. Since the release of version 0.1 about one year ago,hundreds of improvements have been incorporated into thedesign and the implementation. The updates log can be seenat: picat-lang.org/updates.html. Picat will continue togrow, and we look forward to your input and feedback. Sendyour questions, comments, and requests to: https://groups.google.com/forum/#!forum/picat-lang Sincerely,The Picat team
_______________________________________________ logic-programming mailing list [email protected] http://lists.picat-lang.org/mailman/listinfo/logic-programming
_______________________________________________ Om-announce mailing list [email protected] http://openmath.org/mailman/listinfo/om-announce
