563 Hits in 3.4 sec

Adding Concrete Syntax to a Prolog-Based Program Synthesis System [chapter]

Bernd Fischer, Eelco Visser
2004 Lecture Notes in Computer Science  
We show how Prolog can be retrofitted with concrete syntax and describe how a seamless interaction of concrete syntax fragments with an existing "legacy" meta-programming system based on abstract syntax  ...  We apply the approach to gradually migrate 'the schemas of the AUTOBAYES program synthesis system to concrete syntax.  ...  We describe the first experiences with our ongoing work on adding support for user-definable concrete syntax to AUTO-BAYES [9, 7] , a large, schema-based program synthesis system implemented in Prolog  ... 
doi:10.1007/978-3-540-25938-1_5 fatcat:xrkshcatwfhn3g5tbhahe3k2mq

Retrofitting the AutoBayes Program Synthesis System with Concrete Syntax [chapter]

Bernd Fischer, Eelco Visser
2004 Lecture Notes in Computer Science  
AUTOBAYES is a fully automatic, schema-based program synthesis system for statistical data analysis applications.  ...  We show how it is integrated into Prolog and describe how the seamless interaction of concrete syntax fragments with AUTOBAYES's remaining "legacy" meta-programming kernel based on abstract syntax is achieved  ...  Acknowledgements We would like to thank the anonymous referees for their comments on a previous version of this paper.  ... 
doi:10.1007/978-3-540-25935-0_14 fatcat:6ue5j2t5czdc3eakonobwabafi

Logimix: A Self-Applicable Partial Evaluator for Prolog [chapter]

Torben Æ. Mogensen, Anders Bondorf
1993 Logic Program Synthesis and Transformation  
We present a self-applicable partial evaluator for a large subset of full Prolog.  ...  To obtain a clear distinction between the different meta-levels when doing self-application, input programs to the partial evaluator are represented as ground terms (as in e.g. [4] ).  ...  The predicate decode_list/4 uses the name and variable lists to convert a list of terms from abstract syntax to concrete syntax.  ... 
doi:10.1007/978-1-4471-3560-9_15 dblp:conf/lopstr/MogensenB92 fatcat:vr3slzmydjakhgvlk7cnbudc4q

Proof-Theoretic and Higher-Order Extensions of Logic Programming [chapter]

Alberto Momigliano, Mario Ornaghi
2010 Lecture Notes in Computer Science  
We review the Italian contribution to proof-theoretic and higher-order extensions of logic programming; this originated from the realization that Horn clauses lacked standard abstraction mechanisms such  ...  We argue that the emphasis has now moved to the theory and practice of logical frameworks, carrying with it a better understanding of the foundations of proof search.  ...  This survey owes to many of Miller's papers, especially "An Overview of Linear Logic Programming" [50] .  ... 
doi:10.1007/978-3-642-14309-0_12 fatcat:qj4tb5daj5a75npxcpagh6mltm

codeQuest: Scalable Source Code Queries with Datalog [chapter]

Elnar Hajiyev, Mathieu Verbaere, Oege de Moor
2006 Lecture Notes in Computer Science  
Our implementation of Datalog maps queries to a relational database system. We are thus able to capitalise on the query optimiser provided by such a system.  ...  Source code querying tools allow programmers to explore relations between different parts of the code base. This paper describes such a tool, named CodeQuest .  ...  We would also like to thank Microsoft Research (in particular Dr. Fabien Petitcolas) for its support, including a PhD studentship for Mathieu Verbaere.  ... 
doi:10.1007/11785477_2 fatcat:brh6r2kbafg2bjtfosrqfdzxii

Fifty Years of Prolog and Beyond [article]

Philipp Körner, Michael Leuschel, João Barbosa, Vítor Santos Costa, Verónica Dahl, Manuel V. Hermenegildo, Jose F. Morales, Jan Wielemaker, Daniel Diaz, Salvador Abreu, Giovanni Ciatto
2022 arXiv   pre-print
Finally, we perform a SWOT analysis in order to better identify the potential of Prolog, and propose future directions along which Prolog might continue to add useful features, interfaces, libraries, and  ...  Both logic programming in general, and Prolog in particular, have a long and fascinating history, intermingled with that of many disciplines they inherited from or catalyzed.  ...  The authors also endorse Paul McJones' efforts to maintain a historical archive on Prolog, at, and thank all contributors.  ... 
arXiv:2201.10816v3 fatcat:grixngoazrdfjosno4zvnimsnq

Evolution Scenarios for Rule-Based Implementations of Language-Based Functionality

Ralf Lämmel
2005 Electronical Notes in Theoretical Computer Science  
We work through a sequence of evolution scenarios for language-based functionality implemented as rule-based programs.  ...  We opt for Prolog as the rule-based programming language used for the implementation of language-based functionality.  ...  before expression evaluation, where the concrete syntax is mapped to an annotated abstract syntax.  ... 
doi:10.1016/j.entcs.2004.09.039 fatcat:t4we64igdnaafawahartakzwfa

Compiling Control as Offline Partial Deduction [article]

Vincent Nys, Danny De Schreye
2018 arXiv   pre-print
We present a new approach to a technique known as compiling control, whose aim is to compile away special mechanisms for non-standard atom selection in logic programs.  ...  We also show that the result of the specialization is equivalent to the program obtained using the traditional approach to compiling control. In this way, we simplify the synthesis step.  ...  An extended meta-interpreter The key modification to the meta-interpreter is the addition of the following clauses: The first two of these clauses extract atoms from a concrete counterpart to a multi abstraction  ... 
arXiv:1808.05360v2 fatcat:b7mti2omrvae5cddsffemqszyi

The programming system PRIZ

G. Mints, E. Tyugu
1988 Journal of symbolic computation  
PRIZ is not bound to any particular problem domain, but applicable for synthesis of programs solving problems of a wide class called computational problems.  ...  The programming system PRIZ combines conventional programming technique with automatic synthesis of programs from specifications.  ...  An abstract object is a carrier of information about the properties of concrete objects and in this sense it is analogical to a class in an object oriented language.  ... 
doi:10.1016/s0747-7171(88)80035-x fatcat:6bfubwco3bcfhkndzbnu747u4y

Concrete syntax for objects

Martin Bravenboer, Eelco Visser
2004 Proceedings of the 19th annual ACM SIGPLAN Conference on Object-oriented programming, systems, languages, and applications - OOPSLA '04  
In this paper we describe MetaBorg, a method for providing concrete syntax for domain abstractions to application programmers.  ...  Indeed, Meta-Borg can be considered a method for promoting APIs to the language level.  ...  Acknowledgments Many people have contributed to the development of Stratego/XT. Merijn de Jonge developed the pretty-printing tools of Stratego/XT.  ... 
doi:10.1145/1028976.1029007 dblp:conf/oopsla/BravenboerV04 fatcat:47yl6x4vkndvtnfsve5lxkhgvm

Towards Domain-specific Model Editors with Automatic Model Completion

Sagar Sen, Benoit Baudry, Hans Vangheluwe
2009 Simulation (San Diego, Calif.)  
Integrated development environments such as Eclipse allow users to write programs quickly by presenting a set of recommendations for code completion.  ...  We present a methodology to synthesize model editors equipped with automatic completion from a modelling language's declarative specification consisting of a metamodel with a visual syntax.  ...  The Prolog program is solved using a backtracking based solver to return results to the domain-specific environment which was originally synthesized by AToM 3 using the meta-model.  ... 
doi:10.1177/0037549709340530 fatcat:fvyf6rkywbdb5j7bhprijgykh4

Refinement Type Directed Search for Meta-Interpretive-Learning of Higher-Order Logic Programs [article]

Rolf Morel
2021 arXiv   pre-print
The introduction of polymorphic type checking to the MIL approach to logic program synthesis is validated by strong theoretical and experimental results, showing a cubic reduction in the size of the search  ...  The program synthesis problem within the Inductive Logic Programming (ILP) community has typically been seen as untyped. We consider the benefits of user provided types on background knowledge.  ...  Existing type system-based approaches could be extended, thereby introducing the (almost) unique feature of invention of helper clauses/functions to the field of functional program synthesis. user supplies  ... 
arXiv:2102.12553v1 fatcat:2kzu7fb7efg4no4cqyngzmpvvq

Concrete syntax for objects

Martin Bravenboer, Eelco Visser
2004 SIGPLAN notices  
In this paper we describe MetaBorg, a method for providing concrete syntax for domain abstractions to application programmers.  ...  Indeed, Meta-Borg can be considered a method for promoting APIs to the language level.  ...  Acknowledgments Many people have contributed to the development of Stratego/XT. Merijn de Jonge developed the pretty-printing tools of Stratego/XT.  ... 
doi:10.1145/1035292.1029007 fatcat:fj2u3de6afgclh3ngyenwtjbz4

An application of abstract interpretation in source level program transformation [chapter]

Daniel Schreye, Maurice Bruynooghe
1989 Lecture Notes in Computer Science  
Using a very concrete setting, we aim to provide a comprehensible introduction to the technique of abstract interpretation, particularly suited for the novice in the fxeld.  ...  First, there is the desire to obtain a better runtime efficiency for declarative programming languages such as Prolog.  ...  Next, there are the methods based on the synthesis of programs from traces of example computations. Research in this field has been initiated by A. Biermann in [2] .  ... 
doi:10.1007/3-540-50820-1_39 fatcat:v3bwjopefzgmnggf6mtax3owuu

An Implementation of the Language Lambda Prolog Organized around Higher-Order Pattern Unification [article]

Xiaochu Qi
2009 arXiv   pre-print
This thesis concerns the implementation of Lambda Prolog, a higher-order logic programming language that supports the lambda-tree syntax approach to representing and manipulating formal syntactic objects  ...  Lambda Prolog achieves its functionality by extending a Prolog-like language by using typed lambda terms as data structures that it then manipulates via higher-order unification and some new program-level  ...  Prolog-like syntax in presenting program clauses that are meant to constitute λProlog programs.  ... 
arXiv:0911.5203v1 fatcat:6d2kzgj6b5d5th6dhiijcv4mqe
« Previous Showing results 1 — 15 out of 563 results