# Building a port scanner

**URL:** <https://swi-prolog.discourse.group/t/building-a-port-scanner/2580>\
**Category:** Help!\
**Created:** [June 30, 2020, 12:40pm UTC](https://swi-prolog.discourse.group/t/building-a-port-scanner/2580 "2020-06-30T12:40:46Z")\
**Posts on this page:** 1\
**Showing post:** 26

<div class="post-metadata">

**Author:** ![jan](https://yyz2.discourse-cdn.com/free1/user_avatar/swi-prolog.discourse.group/jan/32/4_2.png) [@jan](https://swi-prolog.discourse.group/u/jan)\
**Post date:** [July 1, 2020, 4:07pm UTC](https://swi-prolog.discourse.group/t/building-a-port-scanner/2580/26 "2020-07-01T16:07:50Z")

</div>

Just wondering what it would mean to write this in SWI-Prolog, I got to these two files.

[test\_balance.pl](https://swi-prolog.discourse.group/uploads/short-url/sryV8i5kAeMAwHmQqlCFt31YEMu.pl) (1.1 KB) [balance.pl](https://swi-prolog.discourse.group/uploads/short-url/v3j67MTuVYNtCG97q1EdUT9jeII.pl) (4.2 KB)

The implementation is rather tricky. I did decide for an arity 2 version for now to make clean what the generator and tester are. Not yet sure what to do with it. When matured and with a proper name, add it to the `library(thread)`, I guess.

---

_[View the full topic](https://swi-prolog.discourse.group/t/building-a-port-scanner/2580)._
