# Teaching Prolog as first programming language

**URL:** <https://swi-prolog.discourse.group/t/teaching-prolog-as-first-programming-language/1126>\
**Category:** Split Topic\
**Created:** [August 28, 2019, 11:38am UTC](https://swi-prolog.discourse.group/t/teaching-prolog-as-first-programming-language/1126 "2019-08-28T11:38:58Z")\
**Posts on this page:** 1\
**Showing post:** 4

<div class="post-metadata">

**Author:** ![EricGT](https://avatars.discourse-cdn.com/v4/letter/e/f1d935/32.png) [@EricGT](https://swi-prolog.discourse.group/u/EricGT)\
**Post date:** [August 28, 2019, 12:20pm UTC](https://swi-prolog.discourse.group/t/teaching-prolog-as-first-programming-language/1126/4 "2019-08-28T12:20:36Z")

</div>

> [@Learn Prolog Now: Request for contribution](https://swi-prolog.discourse.group/t/learn-prolog-now-request-for-contribution/1119/14):
>
> I would not be surprised if there is such research from the 80s/early 90s.

Any particular keywords or authors to use when searching for such papers? Or sites that might have the papers? My favorite site for such papers is [CiteSeerX](http://citeseerx.ist.psu.edu/index)

For others reading this, I added other sites that host research papers to [Useful Prolog references](https://swi-prolog.discourse.group/t/useful-prolog-references/1089)

Googling: teaching prolog as first programming language pdf

Found:  
[Prolog as the First Programming Language](http://homepage.cs.uiowa.edu/~fleck/postcsePrologFirst.pdf)

> In the spirit of logic programming, several features of  
> Prolog are not covered. Most notable would be the Prolog  
> ‘cut’ operation. While this can be explained using the goal  
> reduction model of Prolog, it does not have a meaningful  
> description at the logic level, and for our purposes is better  
> omitted. Also omitted are term inspection predicates (e.g.,  
> var(X)), DCG grammars, and character-level input-output.  
> Finally, the emphasis on a higher level of abstraction offers  
> limited circumstances that raise the issue of efficiency  
> considerations.

[APPROACHES FOR TEACHING PROLOG TO BEGINNERS](http://citeseerx.ist.psu.edu/viewdoc/download?doi=10.1.1.210.6238&rep=rep1&type=pdf)

---

_[View the full topic](https://swi-prolog.discourse.group/t/teaching-prolog-as-first-programming-language/1126)._
