C. Belleannée,
P. Brisset,
and O. Ridoux.
Une reconstruction pragmatique de $\lambda$Prolog.
Technique et science informatiques,
14:1131-1164,
1995.
[WWW]
Keyword(s): Programmation logique,
LambdaProlog,
lambda-calcul,
quantifications,
types. logic programming,
LambdaProlog,
lambda-calculus,
quantifications,
types..
Abstract:
LambdaProlog est un langage de programmation logique dont les clauses et les termes généralisent ceux de Prolog. On peut se demander si toutes ces extensions sont nécessaires simultanément et si des langages intermédiaires intéressants ne pourraient pas être définis, au moins dans un but pédagogique. Nous répondons à cette question en montrant que des liens de nécessité conduisent à adopter toutes les extensions à partir de l'introduction du nouveau domaine de termes. De cette reconstruction découle une heuristique de programmation par induction sur les types qui est un guide commode pour utiliser LambdaProlog. LambdaProlog is a logic programming language in which clauses and terms are more general than in Prolog. One may wonder whether these extensions are simultaneously needed, and what are the useful subsets of LambdaProlog, at least for pedagogical purposes. We answer this question by exhibiting necessity links from the addition of the new term domain to the extension of the formula language. A handy heuristic for programming by induction on types can be derived from these links. |
@Article{belleannee:reconstruction:tsi:95,
author = {C. Belleannée and P. Brisset and O. Ridoux},
title = {Une reconstruction pragmatique de $\lambda${Prolog}},
journal = {Technique et science informatiques},
year = 1995,
volume = 14,
numero = 9,
pages = {1131--1164},
abstract = {LambdaProlog est un langage de programmation logique dont les clauses et les termes généralisent ceux de Prolog. On peut se demander si toutes ces extensions sont nécessaires simultanément et si des langages intermédiaires intéressants ne pourraient pas être définis, au moins dans un but pédagogique. Nous répondons à cette question en montrant que des liens de nécessité conduisent à adopter toutes les extensions à partir de l'introduction du nouveau domaine de termes. De cette reconstruction découle une heuristique de programmation par induction sur les types qui est un guide commode pour utiliser LambdaProlog. LambdaProlog is a logic programming language in which clauses and terms are more general than in Prolog. One may wonder whether these extensions are simultaneously needed, and what are the useful subsets of LambdaProlog, at least for pedagogical purposes. We answer this question by exhibiting necessity links from the addition of the new term domain to the extension of the formula language. A handy heuristic for programming by induction on types can be derived from these links.},
keywords = {Programmation logique, LambdaProlog, lambda-calcul, quantifications, types. logic programming, LambdaProlog, lambda-calculus, quantifications, types.},
url = {ftp://ftp.irisa.fr/local/lande/cbpbor-tsi95.ps.Z}
}
S. Coupet-Grimal and O. Ridoux.
On the use of Advanced Logic Programming Languages in Computational Linguistics.
J. Logic Programming,
24(1&2):121-159,
1995.
[WWW]
Keyword(s): Logic programming,
computational linguistics,
LambdaProlog,
Prolog II,
lambda-terms,
rational terms..
Abstract:
Computational Linguistics and Logic Programming have strong connections, but the former uses concepts that are absent from the most familiar implementations of the latter. We advocate that a Logic Programming language need not feature the Computational Linguistics concepts exactly, it must only provide a logical way of dealing with them. We focus on the manipulation of higher-order terms and the logical handling of context, and we show that the advanced features of Prolog~II and LambdaProlog are useful for dealing with these concepts. Higher-order terms are native in LambdaProlog, and Prolog~II's infinite trees provide a handy data-structure for manipulating them. The formula language of LambdaProlog can be transposed in the Logic Grammar realm to allow for a logical handling of context. |
@Article{coupet:use:jlp:95,
author = {S. Coupet-Grimal and O. Ridoux},
title = {On the use of Advanced Logic Programming Languages in Computational Linguistics},
journal = {J.~Logic Programming},
volume = 24,
number = {1\&2},
pages = {121--159},
year = 1995,
abstract = {Computational Linguistics and Logic Programming have strong connections, but the former uses concepts that are absent from the most familiar implementations of the latter. We advocate that a Logic Programming language need not feature the Computational Linguistics concepts exactly, it must only provide a logical way of dealing with them. We focus on the manipulation of higher-order terms and the logical handling of context, and we show that the advanced features of Prolog~II and LambdaProlog are useful for dealing with these concepts. Higher-order terms are native in LambdaProlog, and Prolog~II's infinite trees provide a handy data-structure for manipulating them. The formula language of LambdaProlog can be transposed in the Logic Grammar realm to allow for a logical handling of context.},
keywords = {Logic programming, computational linguistics, LambdaProlog, Prolog~II, lambda-terms, rational terms.},
url = {ftp://ftp.irisa.fr/local/lande/scor-jlp95.ps.Z}
}