Subject: Re: builtin lists and Intel SSE support? From: Erik Naggum <erik@naggum.no> Date: 24 Jan 2004 14:17:28 +0000 Newsgroups: comp.ai.games,comp.lang.functional,comp.lang.lisp Message-ID: <3283942648842947KL2065E@naggum.no> * Tim Bradshaw | I'm sure that any of the commercial Lisp vendors would be quite happy | to discuss doing this kind of extension for you for a fee. Like you | I'm fed up with the stupid `oh you can just implement it yourself | because you have *source*, which solves everything' mantra that the | open source cultists repeat endlessly when they're not burning each | other or stealing music from people. Like I want to spend hundreds of | hours wading through megabytes of crappily-written code to try and | implement some feature. At issue here is whether the Open Source community effective prevents the commercial Common Lisp vendors from offering to implement this kind of extension for a fee. We witness a change in the response to a request for a feature from either «NO» or «YES, for $$$» to «NO, build it yourself», but it appears to me that the «YES, for $$$» option may have drowned in the noise because some believe the response was really «YES, build it yourself» and thereby killed off the commercial option. Ideally, the availability of an option you do not want to invoke would not have affected any other options and the likelihood that would want to invoke any of them, but a curious artifact of human psychology is that we /are/ influenced by what we do not want, in that the things we want to do must have a sufficient /distance/ to the things we do not want to do. If someone argues that you could do it yourself, but you do not want that, someone else who asks for money to do it, will of necessity ask for money for something that you could do yourself, and most people's willingness to pay for something is proportional to how much they are saved from doing. It is therefore a major disservice to the commercial developers to tell requestors of features that they are within reach, however hypothetical this really is. Those who would be willing to rush to the aid of requestors with $$$ to pay for a feature are also quite reserved when the difficulty of implementing the feature is implicitly reduced to only having source code access. The cost of actually doing it is further reduced by the hypothetical willingness of other people to do it for free, so the most pronounced consequence of saying «you have the source, enjoy!», is to remove the commercial viability of the undertaking from both sides: The customer's willingness to pay for it, and the vendors' willingness to risk anything to do it in return for future profits. This sort of pre-emptive competition is extremely unhealthy. Those of us who have worked on Open Source and Free Software projects, and who have had source access to large systems, know that the worst and most expensive downside of obtaining access to source code that has evolved under the pressure and competition of a different group of people, is not that it takes a lot of time to understand the source, but that it takes a lot more time to be satisfied with understanding the evolutionary pressures that formed it. Having source code access is more often than not a strong disincentive to working on it, because the choices other people have made will always include a number that are /objectively/ braindamaged and/or literally insane. The absence of understanding of the evolutionary pressure of anything that has evolved over a long time, tends to make people want to invent all sorts of idiotic explanations for how things became what they are, and Common Lisp itself is no exception to this rule: Many people come to Common Lisp with barely understood evolutionary pressures of their own and refuse to do the mental work that understanding how Common Lisp grew into what it is requires, and are doomed to a life of stupid objections to decisions that cannot be undone, and some of them run off to create their own pet languages, decrying the «braindamage» of Common Lisp and virtually shouting that they are /not/ going to make the same kind of mistakes that other people did. (I know just how this feels, by the way -- I could never learn to use C++, because of the completely overwhelming desire to redesign the language every time I tried to use it, but this is the normal, healthy reaction to C++.) -- Erik Naggum | Oslo, Norway Act from reason, and failure makes you rethink and study harder. Act from faith, and failure makes you blame someone and push harder.