# Is there a tutorial about programming in .pl files?

**URL:** <https://swi-prolog.discourse.group/t/is-there-a-tutorial-about-programming-in-pl-files/3108>\
**Category:** Help!\
**Created:** [October 28, 2020, 2:05pm UTC](https://swi-prolog.discourse.group/t/is-there-a-tutorial-about-programming-in-pl-files/3108 "2020-10-28T14:05:15Z")\
**Posts on this page:** 2\
**Page:** 1

<div class="post-metadata">

**Author:** ![notooth](https://avatars.discourse-cdn.com/v4/letter/n/ce73a5/32.png) [@notooth](https://swi-prolog.discourse.group/u/notooth)\
**Post date:** [October 28, 2020, 2:05pm UTC](https://swi-prolog.discourse.group/t/is-there-a-tutorial-about-programming-in-pl-files/3108/1 "2020-10-28T14:05:15Z")

</div>

Is there a tutorial about programming in .pl files instead of Prolog shell?

---

<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:** [October 28, 2020, 2:57pm UTC](https://swi-prolog.discourse.group/t/is-there-a-tutorial-about-programming-in-pl-files/3108/2 "2020-10-28T14:57:35Z")

</div>

Don’t really know of a dedicated one to just that topic.

In LearnPrologNow! it is noted in sections  
1.4 [Practical Session](http://www.learnprolognow.org/lpnpage.php?pagetype=html&pageid=lpn-htmlse4)  
12.1 [Splitting Programs over Files](http://www.learnprolognow.org/lpnpage.php?pagetype=html&pageid=lpn-htmlse52)

Those are really very basic introductions. I learned by translating my skills from using other programming language IDEs to using SWI-Prolog with [Visual Studio Code](https://code.visualstudio.com/) for editing, and the SWI-Prolog top level ([swipl](https://www.swi-prolog.org/pldoc/man?section=cmdline)) for executing and debugging. Note that SWI-Prolog does come with [Program Development Tools](https://www.swi-prolog.org/IDE.html).

HTH

* * *

We could use a [Wiki](https://swi-prolog.discourse.group/c/wiki/12) page for that. You are welcome to create it. I would need (as admin) to create the empty topic to get you started.
