Re: Production Web Applications in Prolog
Jeff Rosenwald <[email protected]>
| Newsgroups | gmane.comp.ai.prolog.swi |
|---|---|
| Message-ID | <[email protected]> |
Hi Annie: For several years now, I have been using SWIPL to control machinery that moves packages around 1 million sq. ft. warehouses. It has the following features, most of which are freely available with the Linux distro of SWIPL: 1) An agent-oriented design provides a collection of small programs. Each has a separate sphere of influence and a protocol. Agents communicate with one another by message passing using a publish and subscribe regime (TIPC broadcast). This architecture fits today's multi-core and clustered processor environment quite well. 2) The system is deployed across a TIPC cluster of several CPUs, which provides for hot-standby redundancy and automatic fail-over. 3) Some agents in the system interact with Siemens S7 Programmable Logic Controllers (PLCs) via TCP/IP using several (proprietary) protocols (none are Web based). One agent interacts with the machinery for dealing with where something goes when it's seen (by a bar code scanner) at a particular place on the sortation system. Another agent interacts with the machinery using Siemens Fetch-Write over RFC-1006/ISO8073, to provide system control, alarm, and diagnostic surveillance. 4) The present UI is XPCE based and still quite serviceable. Replacing the UI with a Web based UI would be a straightforward task since they're agents too. In fact, you could have both, if you wanted. 5) Ephemeral data is maintained in the Prolog database. Persistent data is written to SQLITE3 tables via ODBC. It's fast (enough), small, flexible, resilient, and darn-near bullet-proof. The amount of source code (about 20K lines of Prolog) is more than *ausingn order of magnitude* smaller than it's equivalent Java based counterpart. "Does anybody actually use this stuff?" Seriously? Seriously. Wanna see? Here's an example of what it does: http://www.youtube.com/watch?v=0BzGS7wED6g Regards, Jeff R. -----Original Message----- From: Anne Ogborn <[email protected]> To: swi-prolog <[email protected]> Sent: Sun, Aug 18, 2013 12:19 pm Subject: [SWIPL] Production Web Applications in Prolog I'm prepping my talk for strangeloop. I'm forever being challenged by programmers with 'does anybody actually use this stuff?' I *know*, from the interest on this list when web 'stuff' comes up, that many of you are writing web applications in SWI-Prolog. But the list of applications I actually know about is fairly short. Here's the list I know about: * SecuritEase - Australian stock settlement site. Uses YAP and the SWI http libs, I believe * swi-prolog.org * cliopatria's dashboard * RLa's blog * Pengine * The installer for Cogbot * UH HHP quiz system * UH HHP Virtual administrative website * http://videogames.pricecharting.com/ apparently is on some version of Prolog * http://www.pathwayslms.com:19049/index.htm geohashing application Of these 10, 2 are by the VNU crew, 4 are by me, and a couple are dodgy (in that I'm not totally sure what they're in, I'm inferring). I'm sure some of you out there must be actually writing something! SURELY this list isn't exhaustive. So I'm pleading for help to find more examples. _______________________________________________ SWI-Prolog mailing list [email protected] https://lists.iai.uni-bonn.de/mailman/listinfo.cgi/swi-prolog -------------- next part -------------- HTML attachment scrubbed and removed