Path: utzoo!utgpu!news-server.csri.toronto.edu!rutgers!usc!samsung!munnari.oz.au!goanna!ok From: ok@goanna.cs.rmit.oz.au (Richard A. O'Keefe) Newsgroups: comp.lang.prolog Subject: Re: Can I talk about Parlog here? Message-ID: <4360@goanna.cs.rmit.oz.au> Date: 23 Nov 90 07:37:16 GMT References: <2540@gould.doc.ic.ac.uk> <1990Nov22.174222.8614@ida.liu.se> Organization: Comp Sci, RMIT, Melbourne, Australia Lines: 43 In article <1990Nov22.174222.8614@ida.liu.se>, felkl@aste16.Berkeley.EDU (Feliks Kluzniak) writes: > Personally, I find the > distinction between commercial software and research software (i.e. > software that just does not have to work, as long as it works > sometimes!) rather strange. As a practising programmer, I am shocked by > the apparently widespread acceptance of this distinction. There is an important difference between research software and commercial software, and I think it's this difference Jim Crammond had in mind. Money. Commercial software has money behind it. There is someone paying the programmers to produce a product. Research software is developed by people are being paid to produce interesting ideas. I think that it is ok to include experimental features that don't work yet in research software. But as soon as you *sell* the program to someone it stops being research software. There can be any number of mistakes in SB Prolog and I have no grounds for complaint: the source code is free, and my having a copy of it does _nothing_ to contribute to its development or repair. As a practical matter, let's agree to consider programs distributed in source form for a reasonable handling charge as being in the non-commercial category. If you paid more than postage and handling for it, it's a commercial product, and the vendor has a moral obligation to try to make it work. (Legal obligations are a different matter.) Even for a commercial product, I think it's ok to provide new experimental features as long as they are not part of what the customer was led to expect in return for his money. If, for example, ALS were to offer an experimental coroutining facility in ALS Prolog, and it sometimes crashed, that would be ok, as long as it _didn't_ crash when you _didn't_ use that feature and as long as you hadn't been talked into buying on the strength of _having_ coroutining. (I use this example because to the best of my knowledge ALS do _not_ yet offer a coroutining feature.) As a (former) practising programmer, I fully agree that products should work as advertised. Writing programs that work is _hard_, but that's what professionalism is all about. -- I am not now and never have been a member of Mensa. -- Ariadne.