Potential commercial user.

89 views
Skip to first unread message

Robert Wolf

unread,
Dec 22, 2015, 5:08:49 PM12/22/15
to swi-p...@googlegroups.com
Dear All,

This is Robert Wolf from Haese Mathematics from Adelaide in South Australia.
I am planning to use SWI Prolog for our next project.

I would very much like to introduce myself and the company, but, where
to start?
I guess this would be the best: http://www.haesemathematics.com.au
Many people say this: "nobody has ever been fired for buying IBM".
So, in corporate terms, I am going for a risky decision.
However, I have been using Prolog for a long time, so I am not too scared.

Was SWI successfully used before in a commercial scenario?
Were there any problems?
How did this happen?
Is there anything I need to know in regards to using SWI for commercial
applications?

Kind regards,

--
Dr Robert Wolf
Haese Mathematics
Email: rob...@haesemathematics.com.au
Web: www.haesemathematics.com.au
Phone: +61 8 8210 4600
Fax: +61 8 8354 1238

Anne Ogborn

unread,
Dec 22, 2015, 5:56:15 PM12/22/15
to Robert Wolf, swi-p...@googlegroups.com
Howdy Robert

At EModelWorks we're using SWI-Prolog for most of our code. We're a manufacturing-as-a-service startup.

We're not far from release.

We've had surprisingly few problems. Up to now it's been one of the most pleasant, productive dev efforts I've been on.

We used RDF for the back end, and rapidly discovered we needed additional training for most of us. Fortunately Wouter was on the team, so we scheduled a few classes and since then things have been pretty sane. On a similar tack, we used a bit of code from Wouter's PhD work that wasn't quite ready for prime time, so we backed that out. But overall, things have gone swimmingly.

We've run into a few glitches in the system along the way, but all of them have been pretty easy to cope with. And the expressive power of Prolog has saved us many, many times.

Keeping most of the system 'in the family' in SWI-Prolog really made life easier. If you have a normal, recent install of SWI-Prolog and git you can set up a new developer machine with very little fuss. The only exceptions are the two times we did go outside the SWI-Prolog world - we use casperjs/phantomjs for automated test, and we use docker to deploy the continuous integration server.
My mantra on the project is "keep the tech stack short". If I had it to do over, I'd have been even more insistent on this.

We're actually ahead of schedule, in terms of money spent. I learned the hard way just how much time fundraising consumes, (and we lost our bizdev/marketing person to a personal crisis halfway through), so that pushed back our actual wall time schedule, yet the ease of developing in SWI-Prolog brought that schedule back in, so we're about where we expected to be, wall time.

My recommendation - go for it!

Mike Elston

unread,
Dec 22, 2015, 7:42:04 PM12/22/15
to SWI-Prolog, rob...@haesemathematics.com.au
Hi Robert

It may give you some comfort to know that there is a commercial user of SWI Prolog in your part of the world (New Zealand). Our core product SecuritEase is a back office stock broking system written mostly in SWI Prolog.  It processes the majority of stock market trades in NZ and is used by some big players in Australia.  We've used SWI intensively since 2002.  There is a slide show about SecuritEase and Prolog here: https://dtai.cs.kuleuven.be/CHR/files/Elston_SecuritEase.pdf

I fully endorse Anne's comments about keeping the tech stack short.  Out first cut of the user interface used Java/Swing directly.  Big mistake.  Things got much easier when we built a form builder in Prolog and used the Swing components as dumb front end objects.

One thing I did not expect is the extent to which non-programmers can read and understand Prolog. When domain experts, in our case those who understand finance and stock broking can understand the code, development cycles tighten up ... a lot.

Mike

Derek G Jones

unread,
Dec 22, 2015, 7:55:30 PM12/22/15
to Mike Elston, SWI-Prolog, rob...@haesemathematics.com.au

I've used SWI-Prolog inside a large (blue ;-) ) company to handle missing data in a logistics application with a custom-built expert system approach. Handling a lot of inference from partially completed entries in time-based data. At the moment though, I'm the only one speaking Prolog and maintaining and using it in our group. ;-)

Kind regards

Derek Jones.



From: Mike Elston <mike....@gmail.com>
To: SWI-Prolog <swi-p...@googlegroups.com>
Cc: rob...@haesemathematics.com.au
Sent: Tuesday, December 22, 2015 7:42 PM
Subject: [SWIPL] Re: Potential commercial user.

--
You received this message because you are subscribed to the Google Groups "SWI-Prolog" group.
To unsubscribe from this group and stop receiving emails from it, send an email to swi-prolog+...@googlegroups.com.
Visit this group at https://groups.google.com/group/swi-prolog.
For more options, visit https://groups.google.com/d/optout.


Anne Ogborn

unread,
Dec 23, 2015, 1:06:01 AM12/23/15
to SWI-Prolog
Michael Hendricks' talk is also excellent on SWI-Prolog in production.


https://www.youtube.com/watch?v=G_eYTctGZw8

Jose F. Morales

unread,
Dec 23, 2015, 1:20:08 AM12/23/15
to Anne Ogborn, SWI-Prolog
Gerrit uses Prolog (not SWI but it can be configured to use it) at its core. Not only it uses it internally but it also exposes the language to users (see https://gerrit-review.googlesource.com/Documentation/prolog-cookbook.html). Gerrit is a code review system used in large projects like Android. I would say that Prolog is not a language constrained to academic uses anymore. Despite there are many interesting Prolog implementations focusing on different features, SWI is a safe bet for many users.

On Wed, Dec 23, 2015 at 7:05 AM, 'Anne Ogborn' via SWI-Prolog <swi-p...@googlegroups.com> wrote:
Michael Hendricks' talk is also excellent on SWI-Prolog in production.


https://www.youtube.com/watch?v=G_eYTctGZw8
--
You received this message because you are subscribed to the Google Groups "SWI-Prolog" group.
To unsubscribe from this group and stop receiving emails from it, send an email to swi-prolog+...@googlegroups.com.
Visit this group at https://groups.google.com/group/swi-prolog.
For more options, visit https://groups.google.com/d/optout.



--
Jose

Jan Wielemaker

unread,
Dec 23, 2015, 4:04:56 AM12/23/15
to Robert Wolf, swi-p...@googlegroups.com
Dear Robert,

You've seen a couple of reactions from happy commercial users. I know
some more, some of which want to remain stealth :( If you go for
SWI-Prolog, there are two things to keep in mind. You go for Prolog,
which is indeed not mainstream. I'm sure it is the best tool for many
more applications than what it is used for though. Second, you go for a
medium-size open source project. This isn't Linux. It is also not the
average open source available from GitHub/... See
https://www.openhub.net/p/swi-prolog to get an overview of size and
activity.

Medium-sized open source projects have advantages and disadvantages.
Among the disadvantages are the fact that the system has more bugs than
one would like. For example, as a gcc user for 20 years I found three
bugs. Some daily SWI-Prolog users manage to find multiple issues a week.
Funny, others find none though. Another disadvantage is that the answer
to just about any question you can ask is often not immediately
available on stackoverflow.

There are also big advantages. The community is very responsive, both to
get things fixed and to help you with tips how to get things done. It is
easy to steer the project and get stuff in their to make it support your
project better, either by submitting patches or by paying me or others
to implement them for you. If you want most of it, consider how Mike
Elston uses SWI-Prolog. He has two engineers (Keri Harris and Matt
Lilley) involved in SWI-Prolog's development. I now frequently contact
them to confirm my investigation of a problem or ask them to help
solving some issue. In addition, he sponsors new development to make the
system stronger in areas he needs, for example unbounded integer
support, the SSL interface and many enhancements to memory management.
This is quite an investment. The benefits however are full control over
and in-depth knowledge about the base of his technology stack.

Cheers --- Jan

Raymond Richardson

unread,
Dec 23, 2015, 9:50:37 AM12/23/15
to Robert Wolf, swi-p...@googlegroups.com
Hi Robert,

My company, Simularity (www.simularity.com), has been using SWI Prolog for our core products since 2010. In 2015, we instituted a survey of other programming languages, including some exotic ones, to see if there was a better fit for our upcoming project. We again decided on SWI Prolog.
The only real downside to (any) prolog is finding competent programmers - prolog is rarely taught at university to any real extent, and can be difficult to learn if one is already skilled in an imperative language.

Ray

Sent from my iPad
Reply all
Reply to author
Forward
0 new messages