Compilers: principles, techniques, and tools
Compilers: principles, techniques, and tools
Garbarge collection for Prolog based on WAM
Communications of the ACM
The Aurora or-parallel Prolog system
New Generation Computing - Selected papers on parallel logic programming from the International Conference on Fifth Generation Computer Systems, 1988
The muse approach to Or-parallel Prolog
International Journal of Parallel Programming
The Muse Or-parallel Prolog model and its performance
Proceedings of the 1990 North American conference on Logic programming
Native code compilation in SICStus Prolog
Proceedings of the eleventh international conference on Logic programming
Reducing sweep time for a nearly empty heap
Proceedings of the 27th ACM SIGPLAN-SIGACT symposium on Principles of programming languages
A nonrecursive list compacting algorithm
Communications of the ACM
Parallel execution of prolog programs: a survey
ACM Transactions on Programming Languages and Systems (TOPLAS)
Metastructures versus Attributed Variables in the Context of Extensible Unification
PLILP '92 Proceedings of the 4th International Symposium on Programming Language Implementation and Logic Programming
A Simple and Efficient Copying Garbage Collector for Prolog
PLILP '94 Proceedings of the 6th International Symposium on Programming Language Implementation and Logic Programming
A Novel Term Compression Scheme and Data Representation in the BinWAM
PLILP '94 Proceedings of the 6th International Symposium on Programming Language Implementation and Logic Programming
An Open-Ended Finite Domain Constraint Solver
PLILP '97 Proceedings of the9th International Symposium on Programming Languages: Implementations, Logics, and Programs: Including a Special Trach on Declarative Programming Languages in Education
SICStus MT - A Multithreaded Execution Environment for SICStus Prolog
PLILP '98/ALP '98 Proceedings of the 10th International Symposium on Principles of Declarative Programming
ICLP '02 Proceedings of the 18th International Conference on Logic Programming
Instruction merging and specialization in the SICStus Prolog virtual machine
Proceedings of the 3rd ACM SIGPLAN international conference on Principles and practice of declarative programming
High Integrity Software: The SPARK Approach to Safety and Security
High Integrity Software: The SPARK Approach to Safety and Security
Variable Shunting for the WAM
Dispensation order generation for pyrosequencing
APBC '04 Proceedings of the second conference on Asia-Pacific bioinformatics - Volume 29
Putting Linguistics into Speech Recognition: The Regulus Grammar Compiler (Studies in Computational Linguistics (Stanford, Calif.).)
Validity of the single processor approach to achieving large scale computing capabilities
AFIPS '67 (Spring) Proceedings of the April 18-20, 1967, spring joint computer conference
Design, implementation, and evaluation of a dynamic compilation framework for the YAP system
ICLP'07 Proceedings of the 23rd international conference on Logic programming
Use of logic programming for complex business rules
ICLP'05 Proceedings of the 21st international conference on Logic Programming
Tor: extensible search with hookable disjunction
Proceedings of the 14th symposium on Principles and practice of declarative programming
The CHR-based Implementation of the SCIFF Abductive System
Fundamenta Informaticae - Special Issue on the Italian Conference on Computational Logic: CILC 2011
Hi-index | 0.00 |
SICStus Prolog has evolved for nearly 25 years. This is an appropriate point in time for revisiting the main language and design decisions, and try to distill some lessons. SICStus Prolog was conceived in a context of multiple, conflicting Prolog dialect camps and a fledgling standardization effort. We reflect on the impact of this effort and role model implementations on our development. After summarizing the development history, we give a guided tour of the system anatomy, exposing some designs that were not published before. We give an overview of our new interactive development environment, and describe a sample of key applications. Finally, we try to identify key good and not so good design decisions.