Abstract
This position paper sketches an analysis of the essential features that logic-based programming languages will need to embrace to compete in a quickly evolving field where learnability and expressiveness of language constructs, seen as aspects of a learner’s user experience, have become dominant decision factors for choosing a programming language or paradigm.
Our analysis centers on the main driving force in the evolution of programming languages: automation of coding tasks, a recurring promise of declarative languages, instrumental for developing software artifacts competitively.
In this context we will focus on taking advantage of the close correspondence between logic-based language constructs and their natural language equivalents, the adoption of language constructs enhancing the expressiveness and learnability of logic-based programming languages and their synergistic uses in interacting declaratively with deep learning frameworks.
Access this chapter
Tax calculation will be finalised at checkout
Purchases are for personal use only
Notes
- 1.
at https://github.com/ptarau/natlog, ready to install with “pip3 install natlog”.
- 2.
but not closer, as unnecessary verbosity can hinder expressiveness.
- 3.
- 4.
- 5.
- 6.
- 7.
References
Andersen, C., Swift, T.: The Janus System: a bridge to new prolog applications. In: Warren, D.S., Dahl, V., Eiter, T., Hermenegildo, M., Kowalski, R., Rossi, F. (eds.) Prolog - The Next 50 Years. No. 13900 in LNCS, Springer (July 2023)
Brown, T., et al.: Language models are few-shot learners. In: Larochelle, H., Ranzato, M., Hadsell, R., Balcan, M., Lin, H. (eds.) Advances in Neural Information Processing Systems. vol. 33, pp. 1877–1901. Curran Associates, Inc. (2020). https://proceedings.neurips.cc/paper/2020/file/1457c0d6bfcb4967418bfb8ac142f64a-Paper.pdf
Genesereth, M.: Prolog as a knowledge representation language the nature and importance of prolog. In: Warren, D.S., Dahl, V., Eiter, T., Hermenegildo, M., Kowalski, R., Rossi, F. (eds.) Prolog - The Next 50 Years. No. 13900 in LNCS, Springer (July 2023)
Hermenegildo, M.V.: An abstract machine for restricted AND-parallel execution of logic programs. In: Shapiro, E. (ed.) ICLP 1986. LNCS, vol. 225, pp. 25–39. Springer, Heidelberg (1986). https://doi.org/10.1007/3-540-16492-8_62
Manhaeve, R., Dumancic, S., Kimmig, A., Demeester, T., De Raedt, L.: Deepproblog: neural probabilistic logic programming. In: Bengio, S., Wallach, H., Larochelle, H., Grauman, K., Cesa-Bianchi, N., Garnett, R. (eds.) Advances in Neural Information Processing Systems 31, pp. 3749–3759. Curran Associates, Inc. (2018). http://papers.nips.cc/paper/7632-deepproblog-neural-probabilistic-logic-programming.pdf
Ouyang, L., et al.: Training language models to follow instructions with human feedback (2022). https://doi.org/10.48550/ARXIV.2203.02155, https://arxiv.org/abs/2203.02155
Ramesh, A., et al.: Zero-shot text-to-image generation (2021). https://doi.org/10.48550/ARXIV.2102.12092, https://arxiv.org/abs/2102.12092
Kowalski, R., Fariba Sadri, M.C., Davila, J.: Combining Logic Programming and Imperative Programming in LPS. In: Warren, D.S., Dahl, V., Eiter, T., Hermenegildo, M., Kowalski, R., Rossi, F. (eds.) Prolog - The Next 50 Years. No. 13900 in LNCS, Springer (July 2023)
Tarau, P.: The BinProlog Experience: architecture and implementation choices for continuation passing prolog and first-class logic engines. Theory Pract. Logic Program. 12(1–2), 97–126 (2012). https://doi.org/10.1007/978-3-642-60085-2_2
Tarau, P.: Natlog: a Lightweight logic programming language with a neuro-symbolic touch. In: Formisano, A., et al. (eds.) Proceedings 37th International Conference on Logic Programming (Technical Communications), 20–27th September 2021 (2021)
Vaswani, A., et al.: Attention is all you need. In: Guyon, I., et al. (eds.) Advances in Neural Information Processing Systems, vol. 30. Curran Associates, Inc. (2017). https://proceedings.neurips.cc/paper/2017/file/3f5ee243547dee91fbd053c1c4a845aa-Paper.pdf
Vision, C.M., at LMU Munich, L.R.G.: Stable Diffusion (2018–2022). https://github.com/CompVis/stable-diffusion
Warren, D.S.: Introduction to prolog. In: Warren, D.S., Dahl, V., Eiter, T., Hermenegildo, M., Kowalski, R., Rossi, F. (eds.) Prolog - The Next 50 Years. No. 13900 in LNCS, Springer (July 2023)
Acknowledgments
These reflections have been inspired by the live and deep-probing Prolog’50 discussions lead by Bob Kowalski and Veronica Dahl with focus on logical thinking and logic-based programming as well as on approaches to make logic-based programming accessible to newcomers, including use cases for a first-contact introduction to computing. I am thankful to the participants of these meetings for sharing their thoughts on both the last 50 years and the next 50 years of logic programming. Finally, many thanks go to the reviewers of the paper for their careful reading and constructive suggestions that helped clarify and substantiate key concepts covered in the paper.
Author information
Authors and Affiliations
Corresponding author
Editor information
Editors and Affiliations
Rights and permissions
Copyright information
© 2023 The Author(s), under exclusive license to Springer Nature Switzerland AG
About this chapter
Cite this chapter
Tarau, P. (2023). Reflections on Automation, Learnability and Expressiveness in Logic-Based Programming Languages. In: Warren, D.S., Dahl, V., Eiter, T., Hermenegildo, M.V., Kowalski, R., Rossi, F. (eds) Prolog: The Next 50 Years. Lecture Notes in Computer Science(), vol 13900. Springer, Cham. https://doi.org/10.1007/978-3-031-35254-6_29
Download citation
DOI: https://doi.org/10.1007/978-3-031-35254-6_29
Published:
Publisher Name: Springer, Cham
Print ISBN: 978-3-031-35253-9
Online ISBN: 978-3-031-35254-6
eBook Packages: Computer ScienceComputer Science (R0)