Kent M Pitman <pit...@world.std.com> writes on comp.lang.lisp
> Just for example, though, my feelings are not anything at all to do > with junk software. I believe there will always be junk software and > (as long as you don't use it) it's probably healthy that it be there.
Of course there will always be junk software. The question is: will the social framework defend against junk, will it let junk invade it, or (worse) will systematically select junk?
> My feelings are largely based on the issue of incentive.
Good.
> Free software makes no incentive to create things.
Neither does personal freedom make incentive to live morally; neither does political freedom make incentive to behave socially; at least not directly. Incentive must preexist. Incentive does preexist. Law can only filter and select for or defend against; it never creates. Freedom wins not because it creates an incentive, but because it helps evolution select according to sole adequacy. This is why slavery and tyranny fail before liberty and democracy; this is also why proprietary software fails before free software.
To put it in simple software terms, in a world of free software, the overall world-wide incentive for software-making and otherwise creation of information is in its expected ultimate use-value. Any additional "incentive" that does correspond to use-value is a neat loss to society at large (waste of resource for useless ends), and a corruption of the incented human mind. Intellectual property does _not_ increase use-value in _any_ way; it inserts barriers to use, thereby _decreasing_ use-value, and it indeed creates "incentive" for useless redundancy and immoral plunder.
Certainly there is a use/need of some infrastructure to collect the existing overall incentive and transform it into actual funding of creators. The rigid barrier-based structures of intellectual property are a very poor such infrastructure: IP owners collect the incentive that they manage to fence in, collecting a heavy tax on those who enter, exit or live in the fenced territory (again remindful of feudal Europe). The fluid adaptative structure of a free market is a much more interesting structure, where no one is entitled right to destruction, and where any spotted shortcoming that leads to lack of creation becomes an opportunity to render a service by connecting providers and consumers of services: that's the reason why Europe has dropped tax barriers in its internal borders, and why the world constantly negociates free trade agreements.
> I am a creative person. > If you tell me I can't make money creating software, I'll create > something else that can make money.
Of course you can make money creating software! Who says you cannot? Creation is a service, and like all services, is to be remunerated. Since nobody can force you to create software, yet everybody has uses and needs for ever more software, you'll get paid to write software. And that's _completely_ independent from the legal status of the software once written.
Software is not much different from math. Mathematicians don't sell the _right_ to use theorems, and publish theorems that can be freely reused, copied, modified, etc. They sell, by teaching, the _proficiency_ to use theorems; by researching, the _opportunity_ to use theorems; by consulting, the _suitability_ of theorems to use; etc. Certainly, most "mathematical engineers" do petty additions, substractions, divisions, and multiplications, in smaller or bigger financial businesses; they do accounting or trading of some sort; just like most computer engineers. Mathematical|Computer scientists in research labs and universities, and sell research and consultancy on higher topics. And a lot of math|computer scientists teach elementary science and techniques to future technicians. All in all, no need for any kind of intellectual property here. [yes, math books are subject to copyright, but they don't prevent reuse of theorems, that stay valid accross rephrasing; also, copyrights don't seem to provide any gigantic incentive to research, and seem mostly to be mostly an annoyance to mathematicians and a tax levied upon them by publishers].
> My goal in life is FIRST to feed > myself and give myself independent personal autonomy of choice in my > life.
Good.
> Once I'm independently wealthy (and I won't get there with free > software)
Wrong. If by "wealthy" you mean that you earn enough money to cover everyday expenses for a healthy life, with some money left for your family and still some left for your old days, then there's no reason why free software won't get you there. There are already many companies and research centers that live on free software services. Few become rich like that (some do -- RedHat has made one billionaire already); but those who live by free software are not reduced to mendicancy.
If by "wealthy", you mean that you demand above-average incomes, the ability to spend your life in a luxuous setting, or anything such, then I don't see why you're entitled to it, and why the legal and paralegal systems should guarantee you anything about it. Certainly, proprietary software can help some people becoming wealthy in this way; but only to the detriment of many other people who are plundered and racketted. Every single cent that makes wealthier an IP owner as such is two cents lost by people who are not free to compete or to benefit from competition.
> and don't have an employer to tell me what to do, I'll be > happy to do things for the public good as I see it.
Not having an employer is not any easier with proprietary software than with free software; it's much more difficult even, since proprietary software transforms software service providers into the liege-men of "intellectual property" owners, whereas free software makes them members of a liberal profession.
> (But even then, I > probably wouldn't give things away. Because people who receive free > things, whether food or software, don't understand the value of it. > I'd rather contribute to education, for example.
Software is not a thing, it's information. A software-containing _media_ is a thing. Education is a *service*. So are _Installation_, _operation_, _administration_, _maintenance_, _support_, _research_, _creation_, _processing_, _transformation_, _selection_, _guaranteeing_, _availability_, _teaching_ and _training_, _trust_, as applied to software. And no matter the software being free of IP claims, there will be a need for these services, so that you'll be able to sell such services and make a honest living. On the contrary, absence of IP means you'll be free to render services without having to worry about "infringing" anyone's IP; no more _barriers_ to software services, hence an easier life for all service providers.
To repeat myself once again: Because people confuse information and information-related services they are afraid that Free (libre) Information mean free (gratis) information-related services, which would indeed kill the industry of said services. On the contrary, Free Information would create a Free Market in these services, instead of current monopolies, which means they will be available at a fair price, so the result would be a flourishment of that industry!
> And no, I don't > think having a heap of software in your house means you can educate > yourself any more than I think having a gun and a target means you > don't need education in how to shoot.)
Sure. So what? Again, this means that there will be a _market_ for software education even (even more so) with free software! Great! You won't starve, I won't starve; no honest computer scientist will starve. Maybe a few dishonest crooks will starve. So far so good. Free (of IP claims) software, not free (of charge) beer or services.
Again, you may disagree with the position and arguments of free software tenants such as me. But while disagreeing, please do not deform them. And if you do spot some internal inconsistency in them then please do tell us about it so we be enlightened.
Best regards,
[ "Faré" | VN: Уng-Vû Bân | Join the TUNES project! http://www.tunes.org/ ] [ FR: François-René Rideau | TUNES is a Useful, Nevertheless Expedient System ] [ Reflection&Cybernethics | Project for a Free Reflective Computing System ] You don't test the validity of a theory by seeing that it says correct things, but by seeing that it doesn't say incorrect things. What you test by seeing that it does say correct _and previously unpredicted_ things, is the interest of a theory you've tested to be valid.
* William Tanksley | You're wrong. Every word is Lisp, unless it's a special form, is | identifiable as a member of a library. There are other parts of Lisp | which aren't (such as syntax).
it is this distinction that is counter-productive to understand Lisp.
| >Sure - but why is it a pro? Could also be a "Cons". | | Grin. But too many conses slows the processing. | | But that doesn't stop it from being a "pro".
wow! I think we found the reason for Lisp's problems in gaining wider popularity and acceptance. the first people see when they start to learn about Lisp are all the cons! and how to make Lisp more popular? simple! lists should simply be made up of pro cells. problem solved. ;)
| Yes -- nearly the entire book "On Lisp" is about them. Compare Scheme.
Scheme people see problems in Common Lisp macros because they decided against two namespaces, and therefore pollute the function namespace much more readily than Common Lisp people do, which means that a macro could expand into code that makes a function into a variable in Scheme. this is clearly horrible, so _they_ need hygienic macros. CL doesn't, because the core problem has been fixed.
#:Erik -- save the children: just say NO to sex with pro-lifers
In article <3145350277035...@naggum.no>, Erik Naggum <e...@naggum.no> wrote:
> Scheme people see problems in Common Lisp macros because they decided > against two namespaces, and therefore pollute the function namespace much > more readily than Common Lisp people do, which means that a macro could > expand into code that makes a function into a variable in Scheme. this > is clearly horrible, so _they_ need hygienic macros. CL doesn't, because > the core problem has been fixed.
This is not true. Scheme people felt they needed hygienic macros because they wanted to avoid thinking about when to introduce gensyms when writing their macros. The case where a macro expansion introduces a lexical variable with the same name as a global function is not the driving factor. That the introduced lexical may have the same name as any enclosing lexical is. The conflict this raises occurs regardless of whether the language is Scheme or CL.
Now, it is possible to avoid hygiene problems in CL with a little circumspection when defining the macro, but it is possible to do exactly the same in Scheme too. The same, easily learnt defensive techniques that Lispers have always used to maintain hygiene work for Scheme too. There isn't anything CL vs Scheme about this issue. There may be other issues that are indeed definingly divisive, but this isn't one of them.
>* William Tanksley >| You're wrong. Every word is Lisp, unless it's a special form, is >| identifiable as a member of a library. There are other parts of Lisp >| which aren't (such as syntax). > it is this distinction that is counter-productive to understand Lisp.
Perhaps (although I'd welcome a clarification). Fortunately, the purpose of this document wasn't to understand Lisp, but rather to explain and compare it.
I can't bring myself to understand why anyone objects to snapping off the word "library" when referring to a collection of functions. Would you prefer "magazine" or "clip"?
BTW, you probably know this already, but something seems to be messing up your posts -- they're missing uppercase letters in places, and they're indentation is kinda messed up. Add in the occasional run-on sentance and they become very hard to read, which is a pity for posts of this quality.
>| >Sure - but why is it a pro? Could also be a "Cons". >| Grin. But too many conses slows the processing. >| But that doesn't stop it from being a "pro". > wow! I think we found the reason for Lisp's problems in gaining wider > popularity and acceptance. the first people see when they start to learn > about Lisp are all the cons! and how to make Lisp more popular? simple! > lists should simply be made up of pro cells. problem solved. ;)
I think you got it. I certainly wasn't impressed when the first thing I saw in the compiler itself was a list of cons.
>| Yes -- nearly the entire book "On Lisp" is about them. Compare Scheme. > Scheme people see problems in Common Lisp macros because they decided > against two namespaces, and therefore pollute the function namespace much > more readily than Common Lisp people do, which means that a macro could > expand into code that makes a function into a variable in Scheme. this > is clearly horrible, so _they_ need hygienic macros. CL doesn't, because > the core problem has been fixed.
That -- Scheme's problem -- has nothing at all to do with Lisp's problem. Read "On Lisp"; it's a magnificent book.
The core problem is unintentional variable capture.
wtank...@dolphin.openprojects.net (William Tanksley) writes: > On 03 Sep 1999 12:24:37 +0000, Erik Naggum wrote: > >* William Tanksley > >| You're wrong. Every word is Lisp, unless it's a special form, is > >| identifiable as a member of a library. There are other parts of Lisp > >| which aren't (such as syntax).
> > it is this distinction that is counter-productive to understand Lisp.
> Perhaps (although I'd welcome a clarification). Fortunately, the purpose > of this document wasn't to understand Lisp, but rather to explain and > compare it.
> I can't bring myself to understand why anyone objects to snapping off the > word "library" when referring to a collection of functions. Would you > prefer "magazine" or "clip"?
In normal usage (and I don't see anything Lisp specific about this), a library is not just any old collection of functions. Among other things, a library has a clearly delineated boundary between that what is in the library, and that what isn't. The only clearly delineated boundary in the Common Lisp standard is the "COMMON-LISP" package, which includes everything the standard talks about. So in a sense, ANSI CL as a whole is a library.
If we were to just go ahead and call any collection of functions a library, I'd contend that ANSI CL consists of 7 libraries (or any number of libraries for that matter). Now I leave it to you to find out which symbol belongs to which library... Not an easy task.
BTW: If you only put special forms into the core (thereby creating a rather non-functional core), why do you contend that the syntax of Lisp is part of the core? All the nice readtable stuff would be part of the library, so I'd contend that a large part of Lisp's syntax would be part of the library. Doesn't make much sense to me, but hey, why not?
> BTW, you probably know this already, but something seems to be messing up > your posts -- they're missing uppercase letters in places, and they're > indentation is kinda messed up. Add in the occasional run-on sentance and > they become very hard to read, which is a pity for posts of this quality.
While I myself prefer capitalizing sentence beginnings, I don't find Erik's postings lacking in clarity. Quite to the contrary, I find Erik's postings to be very readable, not least of which because of the additional whitespace. But that's just my opinion...
> I think you got it. I certainly wasn't impressed when the first thing I > saw in the compiler itself was a list of cons.
But that would turn "consing up a list" into "proing up a list". Not very satisfactory, though it probably would make the sort of people happy that like such things. It would also turn "I'm a Lisp pro" into a hillariously self-aware statement, and give AI a new meaning...
> That -- Scheme's problem -- has nothing at all to do with Lisp's problem. > Read "On Lisp"; it's a magnificent book.
Scheme's "problem" has something to do with Common Lisp's problem, since it aggrevates the problem of accidental variable capture greatly. But Scheme would have hygienic macros only even if this were not the case, because the people behind Scheme's evolution care more about such issues than the people behind Common Lisp's evolution do.
The problem of unintentional variable capture can be easily circumvented though, and I utterly fail to see how this is a _semantic_ problem. The semantics of unhygienic macros are clear and clearly understood. It just so happens that some people don't like the semantics.
And unhygienic macros give me the power to do intentional variable and function capture, which gives CL's macro system quite a bit of extra power.
> The core problem is unintentional variable capture.
The core problem is unintentional symbol capture.
And the core advantage is intentional symbol capture. Since you mention "On Lisp", you should look up all the anaphoric macros in there, which would be not be possible if CL had only hygienic macros.
Regs, Pierre.
-- Pierre Mai <p...@acm.org> PGP and GPG keys at your nearest Keyserver "One smaller motivation which, in part, stems from altruism is Microsoft- bashing." [Microsoft memo, see http://www.opensource.org/halloween1.html]
> BTW, you probably know this already, but something seems to be messing up > your posts -- they're missing uppercase letters in places, and they're > indentation is kinda messed up. Add in the occasional run-on sentance and > they become very hard to read, which is a pity for posts of this quality.
I've never found Erik's articles hard to read for any reason other than these two: (1) sometimes he discusses subtle issues, which require hard thought, and (2) sometimes his paragraphs are longer than I would like. His capitalisation and quoting conventions are non-standard, but they don't (to my mind) make his articles unreadable.
Oh, and if you're going to be pedantic at people you should refrain from making such elementary errors as writing "they're" when you mean "their". :-)
-- Gareth McCaughan Gareth.McCaug...@pobox.com sig under construction
* William Tanksley | Fortunately, the purpose of this document wasn't to understand Lisp, but | rather to explain and compare it.
huh? if one end tries to explain and compare, what other than understand should the other end try to do? I must have missed something.
| I can't bring myself to understand why anyone objects to snapping off the | word "library" when referring to a collection of functions. Would you | prefer "magazine" or "clip"?
"library" has very specific connotations and annotations in programming language, none of which are applicable to Common Lisp. the whole concept is very, very different from what we do in Lisp. I'd expect "library" to be the equivalent of "package" in Common Lisp. since there is but one standard package, which holds the entire language, there _is_ no library.
| Read "On Lisp"; it's a magnificent book.
I know. I read it when it came out.
| The core problem is unintentional variable capture.
well, the problem with hygienic macros is that you can't have intentional capture. however, the problem is so much more severe in Scheme that many are actually afraid of macros because of it. this is not something I say because I don't like Scheme. I don't like Scheme because it has this and many other problems that Common Lisp doesn't have, mainly because it did retain the two namespaces that Scheme discarded. I've been bothered by the same problem that Scheme has in other languages, too, like C. it's just stupid to have one namespace: a function can be called and variables can't and that's a sufficiently fundamental difference that I think two namespaces fall out naturally, and I have created the distinction when I needed to design my own languages. nobody seems to think it's a problem. except Scheme people. so I'd say the _severity_ of the macro problem is an artifact of the one namespace decision, and that the problem is so easy to curtail otherwise that the problem is not perceived as a problem that needs solving.
#:Erik -- save the children: just say NO to sex with pro-lifers
>> Erik Naggum <e...@naggum.no> writes on comp.lang.lisp: >> > I'm advocating source access to people who express an actual desire and >> > need for it. >> So am I. The question I raise is: "who'll be judge?".
>Traditionally, money.
>Money is simply an interchange medium for "stuff I'm interested in" >and "stuff you're interested in". If you do something in >life--anything--that someone else really wants, they'll give you money >for it. If they won't, you have to question whether they want it.
The context here was access to source. Now, suppose I have written something, and want to give the source code only to people I think are serious about it. I don't think money is a way to distinguish this, except in a very crude way.
Now, if I charge any amount of money, I'm creating a barrier that will keep out the frivolous requests, but I think I could do the same thing by requesting snail mail, or anything moderately inconvenient. This may be worth doing: "Send $20 to this address for the source code."
On the other hand, suppose I want to do some more filtering. I want to exclude people unless they really want it. In this case, going by cash value doesn't work. An amount that will slow down somebody with a good job is going to be essentially impossible for a grad student on his or her own.
Now, if I just want to get paid for what I do, this isn't an issue. (Well, there are issues. It costs very little to mail out a CD-ROM, and a company that charges more than $10 to do so is probably making money on it. The company does want to make as much money as possible, and one ideal form is to charge each person the maximum they'd pay. Many companies sell to students at a lower rate, since most students wouldn't pay commercial prices, and the money they send in is therefore extra profit. Market-driven pricing is difficult, but it's probably more profitable in this field than flat-rate.) It is an issue if I'm trying to filter as Erik suggests.
>So if you're willing to trade the money you have for someone else, all >that says is that it's of value to you. And if you're not, then maybe >it's not as much of value as you think.
But what is "the money you have"? And, if I'm sending out source code, how do I know how much money you have? How do I know whether the amount I'm charging is a lot or a little to you?
>If people are willing to give away what they do, that's fine. That >just means they don't value it or they have enough money that they >don't feel a need to charge for everything they do.
There are other motivations.
One would hope
>that all people could be philanthropic sometimes. But they have to >eat and I don't see giving them a hard time about that.
Again, this is nearly an orthogonal condition.
Suppose I write a software system. I can do pretty much anything with it I like, from declaring it public domain to putting all the sources and binaries under my bed. Suppose I decide to distribute binaries. I can give them away or sell them or whatever. By the time we're considering Erik's proposal, we're beyond that. We're wondering how to distribute the source (presumably, we aren't distributing source to people with no right to the binaries).
Erik's position is, if I understand it correctly, that unlimited distribution of source is a Bad Idea. It is necessary to distribute it under some conditions, but it should in general only go to people who you have some confidence in, for some reason or another. (For commercial products, there's always the necessary NDA; for other purposes, it seems to me that it's just as easy to ignore somebody when they want to make changes or base their implementation on something they shouldn't as to ignore them when they ask for the source.) I'm saying that asking for large quantities of money is not the way to filter *how* serious somebody is.
>> So the question is about the dynamic effects in an imperfect world: >> what attitude has most positive dynamic effects?
>Right. And I claim the one that has the most postiive dynamic effect is the >one that incentivizes content creators.
If what you're saying is that, if you write software, you'll release its use and its source under whatever conditions make you feel rewarded, nobody's disagreeing. This isn't the issue.
>> [...] Yes, we do fear the vendor.
>I find the idea of fearing a content creator offensive. Content creators >have no obligation to make you anything at all. Fearing them is being mad >at them that when they gave you something, they didn't give you twice as >much. That is nothing more than rude in my book. No one makes you buy >from them at all.
From a real-world point of view, wrong. Suppose I'm running a business, and I need to equip a certain set of employees with fnoogle software. I'm not writing my own, because that's not what I can do best. Now, I look around for fnoogle software. I find that, whichever one I pick, I'll be making a commitment that I can't easily back out of (i.e., migration to a competitor's will be difficult). In that case, I can easily find myself in a position where I am dependent on the vendor, and pretty much at the mercy of the vendor's policies. If I need to upgrade the software to work with new computers, or if I need to buy new seats, I pretty much have to pay what the vendor asks for. If I have to upgrade to be more or less compatible with something else, and the vendor makes changes I don't like, tough.
One example would be Microsoft operating systems. Many people buy them because, with all their problems, they look like the best way of getting the job done. Most people cannot create their own operating system that will work even as well as Microsoft's, particularly when they have to run various applications on it. Therefore, they pay Microsoft what Microsoft asks, and put up with whatever Microsoft does.
Or, consider Erik. Erik apparently has a very satisfactory relationship with Franz. In doing this, Erik has become very accustomed to Allegro Common Lisp for Windows, and presumably Erik would be seriously discommoded if, for some reason, he were unable to continue working with ACL. If Erik was half-expecting Franz to completely dump its Lisp development to go into C++, say, he would have reason to be afraid.
There are two dynamics here. One is "shrink-wrapped" software, and one is foreseeable obsolescence. (I have plenty of fifty-year-old books around, and they're still useful. If I had any of the software around that I had fifteen years ago, it would be useless.)
Just looking at this from a laissez-faire attitude is to miss the problem. The traditional attitude is "take it or leave it", and that works very well as long as the buyer has reasonable freedom to leave it. If the buyer is likely to be committed, the system is distorted. The traditional remedy would be to make deals with the providers, but the providers in this case really don't care about dealing with me, other than selling me the stuff.
Nor is this a simple dichotomy between "content creators" and "content consumers". The company I work for sells high-quality software to manage electrical power distribution systems. We certainly create content. In doing so, we consume large amounts of content from various sources. We are dependent on HP, Digital, Sun, and Microsoft for the operating systems we work on. (Right now, we're looking at doing a good bit of work in order to adapt to HP-UX 11.) We are essentially dependent on the same people for C++ compilers. We use various Gnu products. We use Perl. (We do not, unfortunately, use Common Lisp, and I don't have a good chance of changing that real soon.) We use all sorts of stuff.
We aren't immune from all of this dependence just because we're content creators. Certainly we could write most of the stuff we use in-house. (My last job was working for a place like that - and that was nightmarish.) But we wouldn't do as good a job at much of it, and, more importantly, we couldn't sell it as well. (We are in business to make money, and the biggest single reason I work there is because they pay me.)
>> Working with the developers
>[who did not have to develop this for you and you're lucky did]
In the case of commercial developers, they do it because they expect to make money by doing it. There is a certain amount of luck involved, but extending it to gratitude would seem out of place. It is fortunate for us, say, that we can get the tools we need on all the platforms we really want to support. However, HP and Sun and Digital and Microsoft did not develop any of this *for* *us*.
>> is not co-stable with proprietary software, >> all the less as the software spreads and is used by more and more people.
>Then don't use it.
I think this sort of absolute statement is almost completely unhelpful. If my CL system here, that I bought from Digitool, fails to implement what it claims in some areas (I assume it does, somewhere or another), I have the choice of using it or not using it. I don't have the choice of buying another, similarly good, implementation to use on the Mac OS. (The only other native-code Lisp compiler I know of that I can run on this hardware platform is ACL for Linux on the PPC. That's been out a bit more than a month, and doesn't run on MacOS.) Telling me to dump MCL because it doesn't do something I want it to ignores the fact that I don't have a better alternative.
The market economy system works very well where there is a fairly large and somewhat free market (and when there are no hidden or collective costs). This does not mean it works well for all areas of the economy.
In article <gat-0109991228590...@milo.jpl.nasa.gov>,
Erann Gat <g...@jpl.nasa.gov> wrote: >In article <3145027978363...@naggum.no>, Erik Naggum <e...@naggum.no> wrote:
>> ignorance of the MS-DOS success story is beginning to become a problem, >> but I thought it was hard for anyone here to be completely clueless. >> what made MS-DOS a success was its hackability.
It never seemed to me to be more hackable than, say, TRS-DOS (I have no personal experience with the Apple OSes of the day). It was more hacked, because it was more prevalent. You're reversing cause and effect.
>Here's an alternative theory: MS-DOS succeeded because the IBM PC >succeeded, and the IBM PC succeeded because business people, largely >ignorant of technology but with deep pockets, trusted IBM. People >did not buy DOS because it was being hacked, but because they >wanted to buy IBM PC's and Bill Gates shrewdly saw to it that if you >wanted to buy a PC you had no choice but to buy DOS to go along with it.
Not quite at first, IIRC. I believe IBM would sell one of three OSes with the early PCs: PC-DOS, CP/M-86, and the p-system. MS-DOS was shipped as PC-DOS and was the default. Of course, the people who bought the IBM PC because of the magic intials (which vastly outnumbered the people who actually knew what they were doing) went with the default choice, the one more supported by IBM.
>People hacked DOS not because it was easy but because they saw business >opportunities in remedying DOS's deficiencies.
And Because It Was There. When the majority of the computers available run PC-DOS/MS-DOS, is it so surprising that the majority of the hacking is on it? It didn't hurt that PC/MS-DOS was a kludge, and therefore it was easy to hack into and produced useful results.
>> | Microsoft got where it is precisely because Bill Gates is the good >> | businessman you wish other computer scientists would be.
>> *puke* _you_ really must be from a different planet. Bill Gates is the >> single most dishonest and despicable man on the planet,
>I think that's a little extreme, but I basically agree with the >sentiment. He is, nonetheless, a very good businessman -- in no small >measure because he is a very good liar.
To be more specific: Microsoft is a very, very good example of a software company that became successful because it was interested in money. It got its start way back when, when Gates sold software similar to that which everybody else was giving away. He didn't follow the hacker ethic, but he made a lot of money.
If you don't like Microsoft, then you really should think about how much you want software companies to care about the bottom line.
>> | It's predictable because the profit motive is fundamentally at odds with >> | quality.
>> come again? on this planet, this actually translates to "quality is >> fundamentally at odds with what people are willing to well pay for".
>Yes, that's exactly what I meant. Most people are not willing (or not >able) to pay for quality. Most people don't even know how to tell the >difference between high quality and low quality.
Heck, most people don't get a chance to compare. Management orders X many Windows boxes, which come with Microsoft Windows and Microsoft Office. Management knows little about computers, but knows that these will serve, more or less, and feels that there is more risk with going with anything else.
Remember that most software is bought by people who don't know the details, and don't want to know. For very good reasons, they'd much rather spend time and energy figuring out how to sell more office supplies, or make flatware with a less expensive process, or whatever else they are really doing in business.
>C++ is satisfactory. Common Lisp is excellent. Which one are more >people willing to pay for?
>> please reconsider your definitions. it isn't your view of the profit >> motive that is at odds with reality, it's the stupid and arrogant belief >> that all people want to pay for is non-quality products.
>This is not a belief, it is an empirical observation. I wish things >were different.
This isn't really a free market. If there was a free market, which is to say that somebody with a better product could sell it easily, then quality might matter. Suppose I wrote a word processor of higher quality than Microsoft Word. Suppose I got the financial backing to start making and shipping. It gets reviewed in the journals, in which one of the big things is feature checklists, not quality. A large-scale purchaser is going to think that this might possibly be a better solution here and now, but has no faith that it will be maintained so that it will work for Word 9.3 files on Windows 2006. It isn't going to get top billing at CompUSA and Computer City, and even if it gets shelf space people are going to look at the "Thornley Writer" box and the "Microsoft Word" box and go with the more familiar - more importantly, they will buy "Microsoft Office" because it comes with other things that somebody might need sometime, and Microsoft Office is not a plug-and-play component system.
As long as Microsoft keeps the quality high enough so that most people can get their job done most of the time, so people don't actually revolt, they will keep selling lots and lots of software. If they raise the quality beyond that, they don't sell much more software.
>> it must be hard on an alien on a tourist visa, but here on earth, we have >> this concept of _different_ markets, each with its local value of the >> least common denominator, because each market addresses different people >> with different needs.
Yup. Too bad the market doesn't apply to generic software products.
>> the mass market is _not_ the only market. the only thing we can say for >> sure in this business about those who believe that is that Bill Gates >> profits even more by having as many people disregard every other market.
And why do they disregard every other market? Because searching out those markets would take skill and time and energy, and most purchasers it is better, on an individual level, to pay the extra money and put up with the extra crap, secure in the (reliable) guarantee of "mostly good enough".
>The mass market *is* the only market when what you are selling is >infrastructure. Operating systems and programming languages are >infrastructure.
Not exactly, but close enough. There have always been different operating systems and languages available, if you knew what you were doing and what you wanted. For the individual purchaser, gaining the knowledge was generally a bad move. The result is that the market is dominated by people who really don't know what they're doing, and this is a bad thing in general. Unfortunate, but I don't have a fix for it.
In article <habA3.2088$ok4.231...@ptah.visi.com> thorn...@visi.com
(David Thornley) wrote: > Now, if I just want to get paid for what I do, this isn't an issue. > (Well, there are issues. It costs very little to mail out a CD-ROM, > and a company that charges more than $10 to do so is probably making
That depends on the transaction cost and they'd have to have a fairly expensive order fulfillment system to drive the marginal costs low enough.
> From a real-world point of view, wrong. Suppose I'm running a business, > and I need to equip a certain set of employees with fnoogle software. > I'm not writing my own, because that's not what I can do best. Now, > I look around for fnoogle software. I find that, whichever one I pick, > I'll be making a commitment that I can't easily back out of (i.e., > migration to a competitor's will be difficult).
That argument, and all that follows, is not specific to software. Yet, people who have tied themselves to a single source for other things rarely make the sorts of arguments that folks make about software.
Yes, software lends itself to "single-sourceness", but it's not clear whether that's inherent, irrelevant, or merely an accident.
> >Then don't use it.
> I think this sort of absolute statement is almost completely
unhelpful.
Yet, it the way everything else works. If I'm a GM dealer and GM makes me unhappy, "don't use it" is my only alternative. The fact that that alternative is incredibly expensive doesn't matter. (Yes, I can sell other cars, just as you can write other software, but the transition will be painful.)
What is it about software that makes "don't use it" unacceptable?
> that I don't have a better alternative.
That's not enough in any other environment.
-andy
Sent via Deja.com http://www.deja.com/ Share what you know. Learn what you don't.
On Fri, 03 Sep 1999 05:50:36 +0200, Rainer Joswig wrote: >In article <slrn7sucah.r02.wtank...@dolphin.openprojects.net>, wtank...@dolphin.openprojects.net wrote: >> >I just think it is a waste of time and it has been for several years. >> >Though I'm open for a surprise. >> I assume you're talking about Tunes rather than open source software >> (especially since Fare can hardly be blamed for the latter). My suprise >> was your intensely personal and entirely off-topic reaction to an opinion >> post. >How can a reaction to an "opinion post" be off topic?
Easily -- it can appear to attack the person, it can do so on the basis of an entirely different and unstated reason... There's a lot of ways that can happen. Your post just happened to have them all.
Note that I don't claim to disagree with the actual reason you posted that -- I understand. Tunes is really dragging, and Fare would agree with that statement.
>> A couple of factual errors don't remove the usefulness. >Well, I think it's bogus all the way and built on information >which is coming from second or third grade sources. >Why should I trust somebody about the aspects of >Common Lisp when there is not much first hand >experience?
>> >Common Lisp is a huge monolithic ANSI standard language because it >> >"strived toward backward compatibility with existing Lisp systems"? >> >This sentence does not make sense to me.
>> I'm suprised. It makes perfect sense to me.
>You can easily be backwards compatible by defining a layered language >or a language based on modules. Common Lisp isn't such.
>Common Lisp didn't start its life as an ANSI standard. >The ANSI standard just followed what has done earlier. >Common Lisp strived towards backwards compatibility, >but it also shared the same *mindset* of some earlier Lisp systems. >Common Lisp is not *really* compatible with those >dialects - try to execute Zetalisp or Maclisp code in >Common Lisp.
>> >Which is wrong. Common Lisp has nothing identifyable as a "library". Several >> >things one usually needs are not in Common Lisp (GUI, threads, FFI, >> >CLOS streams, ...).
>> You're wrong. Every word is Lisp, unless it's a special form, is >> identifiable as a member of a library. There are other parts of Lisp >> which aren't (such as syntax).
>No, that's wrong.
>A language with a library has something like a "kernel". >There is no such thing in Common Lisp. Identifying "Special Forms" >as a kernel is not sufficient. There is neither a mechanism for libraries >nor is there any mentioning of a library in Common Lisp. >There are no functions, macros, special forms, classes, types, >variables, or whatever designated to be part of a library. >In a Common Lisp system adhering to some "standard" like >CLtL1, CLtL2 or ANSI CL they are all supposed to be there. >Read the ANSI CL specification and tell me where the library >is. Read also about redefining functionality in the >"Common Lisp" package.
>> He's using different nomenclature, but that doesn't make him wrong.
>Why do we have a nomenclature when everybody is free >to use words for every meaning *he* likes - especially >when we are talking about classification/description of programming >languages?
>> > the object system is (quite) well integrated with the type >> > system
>> >This is debatable.
>> Not as stated.
>Come on. The object system and the type system in Common Lisp >are "hacked" together. Hey, it's useful but talking about >"well integrated" is a bit too much.
>> > and the condition system (which is unique on its own).
>> >Yeah, what about the condition system? The Lisp machine had a condition >> >system before - can't be that unique.
>> He already spoke about backwards compatibility.
>Yeah, but how can something be unique when *similar* systems >existed earlier (on the Lisp machine for example) and later >(Dylan for example).
>> > Greenspun's Tenth Rule of Programming states that "any sufficiently >> > complicated C or Fortran program contains an ad hoc >> > informally-specified bug-ridden slow implementation of half of >> > Common Lisp".
>> >Nice anecdote. Doesn't help, though.
>> Help what?
>Describing Common Lisp, which I thought was the exercise we are talking >about.
>> > Mockmma: a Common Lisp package and libraries that >> > implement a symbolic math language compatible with >> > Mathematica(tm)
>> >Ever tried Mockmma?
>> Me? No. Should I, or are you only trying to say that it's not >> comparable?
>I'd not really cite "Mockmma" as a representative application >of Common Lisp. Really not. If we were talking about symbolic >math packages I would mention newer versions of Macsyma, maybe >Axiom or even a Common Lisp version of REDUCE.
>> > 2.many essential features for a modern language are >> > not standardized (notably threads), and how it is >> > implemented (or not) on each implementation varies.
>> >Can you really standardize them across different operating systems?
>> Yes -- I've seen it done. I've yet to see it done well, though, and I >> think Lisp's done the right thing by not approaching it yet.
>;-)
>> > 6.The macro system does not have as clean semantics >> > as it should.
>> >What is he talking about? Are there serious problems with >> >the *semantics* of the Common Lisp macro system?
>> Yes -- nearly the entire book "On Lisp" is about them.
>(Funny, I thought "On Lisp" mostly is about the ***power*** >of the Common Lisp macro system. I'll have to reread >my exemplar.)
>Read careful. The "semantics of the Common Lisp macro system". >The Common Lisp macro system is a procedural macro system >which is non-hygienic. >Which are the semantic problems that the Common Lisp >macro system has?
>> Compare Scheme.
>They are different.
>> > 8.The too many builtin features are not orthogonal >> > enough.
>> >Ask people which one we should delete...
>> I think he would agree with that. He's not talking about how to make a >> better Lisp, but rather a better language.
>Just talking without bringing concrete examples is not really >helping - otherwise I can claim whatever I like. Or is it just >"opinion" from somebody who has neither written >nor used significant amount of Common Lisp code, I'd guess?
>> > 9.There is no standard way by which the system >> > would statically check declared types and infer new >> > ones as a tool for enforcing static invariants and >> > tracking bugs.
>> >There is not even a standard for a Lisp "system"...
>> That's what he's supposed to be working on.
>On a "Lisp system" or on a "standard for a Lisp system"? I won't >hold my breath neither way, since both will be a *lot* >of work.
>Sorry, I don't want to sound too negative. But it always >bothers me when people don't get basic facts right - given >the massive amount of information available and the possibility >to get first hand experience. I mean one can ask somebody >who knows a bit about the history of Lisp (we have some first >grade experts posting to this newsgroup) or one can try to get real >experience with existing systems. A summary of opinions of >unqualified value is just that - of unqualified value.
ARGH, I've got an itchy trigger finger. I didn't mean to send that -- telnet dropped connection on me, and rather than just rescue the saved file, I accidentally sent it.
Quotes edited accordingly.
On Fri, 03 Sep 1999 05:50:36 +0200, Rainer Joswig wrote: >In article <slrn7sucah.r02.wtank...@dolphin.openprojects.net>, wtank...@dolphin.openprojects.net wrote: >> >I just think it is a waste of time and it has been for several years. >> >Though I'm open for a surprise. >> I assume you're talking about Tunes rather than open source software >> (especially since Fare can hardly be blamed for the latter). My suprise >> was your intensely personal and entirely off-topic reaction to an opinion >> post. >How can a reaction to an "opinion post" be off topic?
Easily -- it can appear to attack the person, it can do so on the basis of an entirely different and unstated reason... There's a lot of ways that can happen. Your post just happened to have them all.
Note that I don't claim to disagree with the actual reason you posted that -- I understand. Tunes is really dragging, and Fare would agree with that statement. That doesn't mmake the entire project worthless; in fact, even a single example of an imperfect language review (is that REALLY the worst you could find??) doesn't change that.
>> A couple of factual errors don't remove the usefulness. >Well, I think it's bogus all the way and built on information >which is coming from second or third grade sources. >Why should I trust somebody about the aspects of >Common Lisp when there is not much first hand >experience?
It's not bogus all the way -- it's a highly positive review of common lisp comming from a person who thinks all modern languages suck.
>> >Common Lisp is a huge monolithic ANSI standard language because it >> >"strived toward backward compatibility with existing Lisp systems"? >> >This sentence does not make sense to me. >> I'm suprised. It makes perfect sense to me. >You can easily be backwards compatible by defining a layered language >or a language based on modules. Common Lisp isn't such.
So? That doesn't say anything.
>Common Lisp didn't start its life as an ANSI standard. >The ANSI standard just followed what has done earlier. >Common Lisp strived towards backwards compatibility,
>> >Which is wrong. Common Lisp has nothing identifyable as a "library". Several >> >things one usually needs are not in Common Lisp (GUI, threads, FFI, >> >CLOS streams, ...). >> You're wrong. Every word is Lisp, unless it's a special form, is >> identifiable as a member of a library. There are other parts of Lisp >> which aren't (such as syntax). >No, that's wrong. >A language with a library has something like a "kernel". >There is no such thing in Common Lisp. Identifying "Special Forms" >as a kernel is not sufficient. There is neither a mechanism for libraries >nor is there any mentioning of a library in Common Lisp. >There are no functions, macros, special forms, classes, types, >variables, or whatever designated to be part of a library. >In a Common Lisp system adhering to some "standard" like >CLtL1, CLtL2 or ANSI CL they are all supposed to be there. >Read the ANSI CL specification and tell me where the library >is. Read also about redefining functionality in the >"Common Lisp" package.
This is REALLY nit-picking, you know. I find it very boring to tell a highly intelligent and accomplished person the same thing over and over.
But here it is one more time: Fare is talking about all the available words in Common Lisp.
"Wordset" would be, I believe, an equally useful term. "Library", however, will be immediately understandable to anyone with any other language background, and was probably the first word which popped to his mind.
I don't get _how_ that could cause any confusion at all, let alone offence.
>> > the object system is (quite) well integrated with the type >> > system >> >This is debatable. >> Not as stated. >Come on. The object system and the type system in Common Lisp >are "hacked" together. Hey, it's useful but talking about >"well integrated" is a bit too much.
I think Fare's point is that the job is done better than it was in most other languages. He already complained about the backward compatibility which prevented total unification, and you refused to believe him.
>> > and the condition system (which is unique on its own). >> >Yeah, what about the condition system? The Lisp machine had a condition >> >system before - can't be that unique. >> He already spoke about backwards compatibility. >Yeah, but how can something be unique when *similar* systems >existed earlier (on the Lisp machine for example) and later >(Dylan for example).
Not to mention that "unique on its own" is redundant. Unless, of course, you're reading to learn rather than nit-pick.
>> > Greenspun's Tenth Rule of Programming states that "any sufficiently >> > complicated C or Fortran program contains an ad hoc >> > informally-specified bug-ridden slow implementation of half of >> > Common Lisp". >> >Nice anecdote. Doesn't help, though. >> Help what? >Describing Common Lisp, which I thought was the exercise we are talking >about.
Ah. Not really -- this is a _review_ of Common Lisp. Description is part of the purpose, but it's more important to communicate the reviewer's opinion of the language and the reasons for that opinion.
>> > 2.many essential features for a modern language are >> > not standardized (notably threads), and how it is >> > implemented (or not) on each implementation varies. >> >Can you really standardize them across different operating systems? >> Yes -- I've seen it done. I've yet to see it done well, though, and I >> think Lisp's done the right thing by not approaching it yet. >;-)
Seriously, though, I really like how Lisp's age seems to lend it perspective on issues like this. Other languages seem to imagine that they have to get threads added NOW; Lisp just kinda goes: okay, let it wait one or ten years.
I'm exaggerating, of course. But I sense that attitude, and I like it.
>> > 6.The macro system does not have as clean semantics >> > as it should. >> >What is he talking about? Are there serious problems with >> >the *semantics* of the Common Lisp macro system? >> Yes -- nearly the entire book "On Lisp" is about them. >(Funny, I thought "On Lisp" mostly is about the ***power*** >of the Common Lisp macro system. I'll have to reread >my exemplar.)
That you will. So will I -- it's worth the re-read.
>Read careful. The "semantics of the Common Lisp macro system". >The Common Lisp macro system is a procedural macro system >which is non-hygienic. >Which are the semantic problems that the Common Lisp >macro system has?
Er -- symbol capture by default isn't semantic?
>> Compare Scheme. >They are different.
Hence the word "compare".
>> > 8.The too many builtin features are not orthogonal >> > enough. >> >Ask people which one we should delete... >> I think he would agree with that. He's not talking about how to make a >> better Lisp, but rather a better language. >Just talking without bringing concrete examples is not really >helping - otherwise I can claim whatever I like. Or is it just >"opinion" from somebody who has neither written >nor used significant amount of Common Lisp code, I'd guess?
Okay, you complained about the type system and the object system. How about that?
>> > 9.There is no standard way by which the system >> > would statically check declared types and infer new >> > ones as a tool for enforcing static invariants and >> > tracking bugs. >> >There is not even a standard for a Lisp "system"... >> That's what he's supposed to be working on. >On a "Lisp system" or on a "standard for a Lisp system"? I won't >hold my breath neither way, since both will be a *lot* >of work.
On a *system*. I'm not holding my breath either -- but neither am I holding grudges against him for trying.
>Sorry, I don't want to sound too negative. But it always >bothers me when people don't get basic facts right - given >the massive amount of information available and the possibility >to get first hand experience. I mean one can ask somebody >who knows a bit about the history of Lisp (we have some first >grade experts posting to this newsgroup) or one can try to get real >experience with existing systems. A summary of opinions of >unqualified value is just that - of unqualified value.
IMO, this NG is one of the worst for getting information I've been on. Even the Tunes listserv is better, because even though many of the people there don't know how to communicate, they at least aren't all primadonnas. If I needed a survey of Lisp, this NG is the last place I'd look.
No mistake, I like this NG because of the real weight of what's discussed here. But sifting through the chaff is hard, hard, hard -- and posting anything coherent is asking for an egotistical flame.
Like the one I'm writing now.
I'm not as hypocritical as I seem -- I recognise that I'm less valuble than many of the posters even in this thread. But I'm puzzled -- in other NGs, I _am_ valuble, my postings are light, humorous, and informative, and the whole NG is more pleasant.
A pity we can't bring Tim Peters of Python fame in here.
In article <slrn7t2o59.tj.wtank...@dolphin.openprojects.net>, wtank...@dolphin.openprojects.net wrote: > >How can a reaction to an "opinion post" be off topic?
> Easily -- it can appear to attack the person, it can do so on the basis of > an entirely different and unstated reason... There's a lot of ways that > can happen. Your post just happened to have them all.
I have a different opinion about that. He was arguing about his views concerning developing and evolving software - and I made a comment about his project, which is/should be an example. Which brought the topic from the abstract to the concrete. I then was further trying to argue by providing an example from his review subproject, to show that he is *far* away from producing something useful - especially when the basic description of something like Common Lisp is severely flawed. While I applaud the will to move forward and create something (whatever it will be), I think he was argueing about a **lot** of things and talking about **broad** goals in his postings without having anything to back up his claims. Even the will to use Lisp as an implementation language I'd consider at best an "uninformed guess". I happily will reconsider my views if there is more flesh on the bones.
> Note that I don't claim to disagree with the actual reason you posted that > -- I understand. Tunes is really dragging, and Fare would agree with that > statement.
Not really an example of the superiority of "Open Source", "Free Software" or whatever it may be called.
On 03 Sep 1999 23:40:01 +0100, Gareth McCaughan wrote:
>William Tanksley wrote: >[to Erik:] >> BTW, you probably know this already, but something seems to be messing up >> your posts -- they're missing uppercase letters in places, and they're >> indentation is kinda messed up. Add in the occasional run-on sentance and >> they become very hard to read, which is a pity for posts of this quality. >I've never found Erik's articles hard to read for any reason other >than these two: (1) sometimes he discusses subtle issues, which >require hard thought, and (2) sometimes his paragraphs are longer >than I would like. His capitalisation and quoting conventions are >non-standard, but they don't (to my mind) make his articles >unreadable.
I like his postings, but his combination of subtlety of thought, blatant aggresiveness, and a hard-to-read format makes it harder to give his posts the thorough reading and thought they deserve. None of these except the hard-to-read are truly problems; I particularly relish the subtlety of thought. The combination, however, mixes poorly.
>Oh, and if you're going to be pedantic at people you should refrain >from making such elementary errors as writing "they're" when you >mean "their". :-)
Why should I have used the third person posessive? I meant to use the contraction for "they are", and as far as I can see, I did.
Anyhow, pedanticity[:-)] wasn't my intent -- I just wanted to mention something which was making me uncomfortable. I won't mention it again, of course; he's free to continue doing it, and I'm free to get used to it :).
Keep in mind, though, that in a primarily written communication, failing to meet simple conventions like this sends the same message that going to work unshaven and with uncombed hair would -- "I don't really care about you." Perhaps it's the right message to send; it doesn't fit with the care he puts into his posts, and the contrast is almost painful.
>* William Tanksley >| I can't bring myself to understand why anyone objects to snapping off the >| word "library" when referring to a collection of functions. Would you >| prefer "magazine" or "clip"? > "library" has very specific connotations and annotations in programming > language, none of which are applicable to Common Lisp. the whole concept > is very, very different from what we do in Lisp. I'd expect "library" to > be the equivalent of "package" in Common Lisp. since there is but one > standard package, which holds the entire language, there _is_ no library.
Surely you meant "since there's only one ... package ... there is [only one] library." I have no doubt that this is what Fare meant, and I really find it hard to believe that it isn't 100% obvious.
>| The core problem is unintentional variable capture. > well, the problem with hygienic macros is that you can't have intentional > capture.
Untrue -- you merely can't have unintentional capture. Look at Forth -- in Forth, you use POSTPONE when you don't want capture, and EVALUATE when you do. The problem, of course, is that EVALUATE is so much more powerful than POSTPONE.
In article <slrn7t2pr9.tj.wtank...@dolphin.openprojects.net>, wtank...@dolphin.openprojects.net wrote: > Quotes edited accordingly.
Okay, commenting on the rest in this posting.
> a single example of an imperfect language review (is that REALLY the worst > you could find??)
Don't know, was tempted to look at the others too deply.
> It's not bogus all the way -- it's a highly positive review of common lisp > comming from a person who thinks all modern languages suck.
Isn't this a *primitive* view?
> So? That doesn't say anything.
Where is the causality? Why really is Common Lisp a "monolithic ANSI standard language"?
> >Common Lisp didn't start its life as an ANSI standard. > >The ANSI standard just followed what has done earlier.
Look at CLtL1 and CLtL2.
> >Common Lisp strived towards backwards compatibility,
> Okay, so you agree with Fare. Why attack him?
It just isn't the reason for a "monolithic ANSI standard language".
> This is REALLY nit-picking, you know. I find it very boring to tell a > highly intelligent and accomplished person the same thing over and over.
> But here it is one more time: Fare is talking about all the available > words in Common Lisp.
I know that. How he writes it is misleading and opens the door for multiple interpretations. My usual interpretation of the word "library" is much more specific.
> "Wordset" would be, I believe, an equally useful term. "Library", > however, will be immediately understandable to anyone with any other > language background,
I was exactly fearing that this is not the case.
> and was probably the first word which popped to his > mind.
"library" means something very specific to me - not something abstract (like an ensemble of builtin functionality - rather something that is external, under control of a certain mechanism and identifyable as an entity).
Common Lisp has no library. You would need to define wording a bit *before* writing a comparison. Common Lisp incorporates all the functionality that is defined by the standard - but not by means of a "library".
> I don't get _how_ that could cause any confusion at all, let alone offence.
Because the language is at best unprecise - which is *deadly* for a comparison and leads to all kinds of misunderstandings. Half of the things we are arguing on are misunderstandings based on imprecise wording and the other half is based on plain wrong understanding of the topic.
> >Come on. The object system and the type system in Common Lisp > >are "hacked" together. Hey, it's useful but talking about > >"well integrated" is a bit too much.
> I think Fare's point is that the job is done better than it was in most > other languages.
Which ones? Like Cecil? Dylan?
> Not to mention that "unique on its own" is redundant. Unless, of course, > you're reading to learn rather than nit-pick.
It just fails to acknowledge prior art. I'd consider this to be "revisionism".
> >Describing Common Lisp, which I thought was the exercise we are talking > >about.
> Ah. Not really -- this is a _review_ of Common Lisp. Description is part > of the purpose, but it's more important to communicate the reviewer's > opinion of the language and the reasons for that opinion.
Sure, but by what facts is this anecdote backed up? What is the significance if this anecdote for the review?
> Seriously, though, I really like how Lisp's age seems to lend it > perspective on issues like this. Other languages seem to imagine that > they have to get threads added NOW; Lisp just kinda goes: okay, let it > wait one or ten years.
Actually, I'd like to have it changed this round of the ANSI CL work.
> >Read careful. The "semantics of the Common Lisp macro system". > >The Common Lisp macro system is a procedural macro system > >which is non-hygienic. > >Which are the semantic problems that the Common Lisp > >macro system has?
> Er -- symbol capture by default isn't semantic?
But what is the problem with the semantics of "symbol capture"? Works nicely for me. I'm using it quite often.
> Okay, you complained about the type system and the object system. How > about that?
I complained about the "integration" of both into Common Lisp.
> IMO, this NG is one of the worst for getting information I've been on. > Even the Tunes listserv is better, because even though many of the people > there don't know how to communicate, they at least aren't all primadonnas. > If I needed a survey of Lisp, this NG is the last place I'd look.
Have you tried? There are already a lot of reviews of Lisp and Common Lisp in the literature - why not start there?
In article <slrn7t2pr9.tj.wtank...@dolphin.openprojects.net>, wtank...@dolphin.openprojects.net wrote:
I just want to comment on this seperately.
> IMO, this NG is one of the worst for getting information I've been on.
(it is lightyears ahead of soc.culture.german ;-) )
Well, it varies, some posters are really helpful - some are not.
> Even the Tunes listserv is better, because even though many of the people > there don't know how to communicate,
Sometimes people come from the "outside" and start topics like "Is Lisp dying" or demand "prove Lisp is useful". This is hard to swallow. Remember, some people on this newsgroup have twenty years of Lisp experience. In this time a lot of trends were coming and going, while *some* people are not willing to go in the library and just read or just read the FAQ or go to www.lisp.org .
> they at least aren't all primadonnas.
Hmm, using a killfile might be a solution, although sometimes I find certain remarks from a certain person quite amusing. But partly I agree with you.
> If I needed a survey of Lisp, this NG is the last place I'd look.
I think this shouldn't be necessarily so.
> Like the one I'm writing now.
> I'm not as hypocritical as I seem -- I recognise that I'm less valuble
you mean "valuable"?
Even if I think your (partly) defence of the tunes stuff is wrong - discussing it might be helpful to others. They have to decide on the arguments and get a better impression what Common Lisp is really about.
> than many of the posters even in this thread. But I'm puzzled -- in other > NGs, I _am_ valuble, my postings are light, humorous, and informative, and > the whole NG is more pleasant.
The topics discussed in this thread are controversial - so maybe a certain aggressivity comes in. Also keep in mind that the Lisp community is highly diverse (unlike Python for example, where two (?) implementations exist), so there is more place for conflicts. Even if we'd say all of them are parentheses lovers ;-) - this is not really true - all of Lisp is constantly under debate and under pressure to be defended. This is one reason why Lisp survived the last fourty years based on a really cute design - it evolves. Common Lisp has taken a break for a few years - yet many people are experimenting with new ideas using Common Lisp. The ANSI standard takes care that we are not forced to put old code to the trash.
+--------------- | Now, it is possible to avoid hygiene problems in CL | with a little circumspection when defining the macro, | but it is possible to do exactly the same in Scheme too. | The same, easily learnt defensive techniques that Lispers | have always used to maintain hygiene work for Scheme too. +---------------
Yup. Which is why I go ahead and use only "defmacro", regardless of whether I'm coding in Scheme or Common Lisp. All Schemes I've run into so far (that have macros at all) have some kind of low-level macro facility, which if it isn't "defmacro" already can always be used to define it easily enough...
-Rob
----- Rob Warnock, 8L-846 r...@sgi.com Applied Networking http://reality.sgi.com/rpw3/ Silicon Graphics, Inc. Phone: 650-933-1673 1600 Amphitheatre Pkwy. FAX: 650-933-0511 Mountain View, CA 94043 PP-ASEL-IA
* William Tanksley | Surely you meant "since there's only one ... package ... there is [only | one] library."
no, I meant what I said and said what I meant. if I had meant something else, I would have said that, instead. but now that you don't need what I say to form an opinion about what I have meant, I'll just stop here. you will probably invent the rest of what I had in mind, anyway.
#:Erik -- save the children: just say NO to sex with pro-lifers
William Tanksley wrote... >Gareth McCaughan wrote: >>William Tanksley wrote: >>[to Erik:] >>> BTW, you probably know this already, but something seems to be messing up >>> your posts -- [*]they're[*] missing uppercase letters in places, and [*]they're[*] >>> indentation is kinda messed up. >>Oh, and if you're going to be pedantic at people you should refrain >>from making such elementary errors as writing "they're" when you >>mean "their". :-) >Why should I have used the third person posessive? I meant to use the >contraction for "they are", and as far as I can see, I did.
Yes, 1st time; but I think Gareth means you're (:o) 2nd usage.
William Tanksley wrote: >> Oh, and if you're going to be pedantic at people you should refrain >> from making such elementary errors as writing "they're" when you >> mean "their". :-)
> Why should I have used the third person posessive? I meant to use the > contraction for "they are", and as far as I can see, I did.
"and they are indentation is kinda messed up"? I don't understand.
Oh well, never mind.
-- Gareth McCaughan Gareth.McCaug...@pobox.com sig under construction
* David Thornley | It never seemed to me to be more hackable than, say, TRS-DOS (I have no | personal experience with the Apple OSes of the day). It was more hacked, | because it was more prevalent. You're reversing cause and effect.
I didn't say MORE hackable, I said its hackability. sigh. I'm saying that MS-DOS would not have become a winner in the market if it had been unhackable and people couldn't add fairly basic stuff to it and learn more about it -- it's the same argument people make about free software, for crying out loud! if you don't think it mattered for MS-DOS, you should explain why the exact same thing is _the_ defining property of the success of free software in some people's mind. initial deployment may well have been because of the "IBM" brand, but how many other products have had the "IBM" brand and _not_ become widely popular? the efforts to explain the normal life of an IBM product fail utterly when that product became a NON-IBM product.
I have to wonder, am I the only person left on this planet who remembers the computer magazines of the '80s?
| Not quite at first, IIRC. I believe IBM would sell one of three OSes | with the early PCs: PC-DOS, CP/M-86, and the p-system. MS-DOS was | shipped as PC-DOS and was the default.
there _was_ no MS-DOS at the start. PC-DOS was a relabeling of QD-DOS (Quick and Dirty DOS) made by one of Bill Gates' early victims, and very little else. it was basically a port of CP/M to the 8086 without the stupid incompatibilities that cost Digital Research their market position.
| If you don't like Microsoft, then you really should think about how much | you want software companies to care about the bottom line.
your decision to give Microsoft and Bill Gates your full moral support is not a necessary consequent of caring about the bottom line. I suggest you think about how caring about ethics and legal business practices is not necessarily the detriment to success that it would have been if Microsoft had cared about them.
I also don't think drug czars, pimps, extortionists, and porn makers are good models of how to make money, but there's no doubt that in each of these categories of "business", the bottom line is very well cared for.
in case you haven't noticed, Bill Gates is actually defrauding people. most people who engage in fraud will make big money for a while -- if they had been utter, complete, and immediate failures, there would have been no incentive to make laws against fraud.
| >> the mass market is _not_ the only market. the only thing we can say for | >> sure in this business about those who believe that is that Bill Gates | >> profits even more by having as many people disregard every other market.
| And why do they disregard every other market?
I was talking about people who claim Bill Gates is next to God, not the people who buy his crapware, because they _are_ his market. it's the people who argue _against_ creating software for something _other_ than the mass-market that Bill Gates controls that I'm interested in.
| There have always been different operating systems and languages | available, if you knew what you were doing and what you wanted. For the | individual purchaser, gaining the knowledge was generally a bad move. | The result is that the market is dominated by people who really don't | know what they're doing, and this is a bad thing in general. | Unfortunate, but I don't have a fix for it.
this is a twist on the old "but what can one man do?" argument, and it is just as invalid. each man can do exactly what he wants. conforming to the masses is a _choice_, and any other choice may be made. the fix is therefore very simple: change your own ways, then change that of one more guy. publicize your choice, understand what people base their decisions on, then do something that makes a few people notice. you can't change the minds of millions of people at once, you have to change a few minds at a time, starting with yourself. if you deny that that option exists, there is no fix for any problem at all, from _your_ perspective, that is.
#:Erik -- save the children: just say NO to sex with pro-lifers
* William Tanksley | "Wordset" would be, I believe, an equally useful term. "Library", | however, will be immediately understandable to anyone with any other | language background, and was probably the first word which popped to his | mind. | | I don't get _how_ that could cause any confusion at all, let alone offence.
why don't you _try_ to understand rather than repeat that you don't?
you're facing the same problem faced by people who aren't used to how racial issues work in the United States. if you're used to say "black" in your environment and some people have a serious reaction to that in some other environment because it has a whole truck-load of very wrong connotations, _you_ are the fool for not recognizing this and trying to respect that the connotations are undesirable and use something else without those same connotations, not the person who objects to your usage or "terminology".
viz, "library" has a lot of connotations that are strongly invalid for Common Lisp. listen to that fact. try to understand the history of that fact. try to figure out why people object to the term along with such things as that Common Lisp doesn't "link" with libraries, doesn't produce "object files" and doesn't come with a "library manager", doesn't "resolve" undefined symbols, etc.
on the other hand, how we choose to organize Lisp programs in memory and on disk is a completely separate problem from the language. we might very well organize the system such that (1) some functions are loaded from disk on demand, (2) some functions are in some particular shared libraries, (3) some functions are written in a different language and actually form a static-language type "library" in the boot-up process. none of this, however, has any bearing at all on the way Lisp sees these functions. the concept "library" is therefore _destructive_ in getting to the proper way to view a Lisp system, because you will forever focus on the wrong part of the system and the way it is organized.
| Seriously, though, I really like how Lisp's age seems to lend it | perspective on issues like this. Other languages seem to imagine that | they have to get threads added NOW; Lisp just kinda goes: okay, let it | wait one or ten years.
(what became) Common Lisp has also _had_ threads for about twenty years, without the clamor for standardization that we see today. people have been satisfied with the way things have worked in the various Lisps, and the desire to standardize the obviously immature hasn't been very vocal until fairly recently, _because_ neophytes in language land make a huge point of having a very simple version of what most Lisps already support.
| IMO, this NG is one of the worst for getting information I've been on.
that's because you insist on deciding the form in which you will accept it. other people have been near ecstatic about this newsgroup because they are (gently) forced to think about unusual issues and rethink their position on others. you don't seem to appreciate this interaction at all, so of course you will not find what you're looking for -- as witness your desire to force others to accept that "library" is acceptable here. you will fail, because it is not the right concept. your insistence is creating a lot of unnecessary friction. other people who insist on bringing a lot of friction to the newsgroup for basically the same reason: they don't want to learn things at the level they actually need to learn them, but think they know a lot more than they do because they feel they deserve to, by virtue of knowing something else well. all I can say is that it's strange that it is people with this attitude that call people here "primadonnas" and "all-so superior" and other evidence of inferiority complexes hard at work. the fact is that there is nothing wrong in being a novice at something if you are an expert at something else -- if you really are good, you will not be a novice for long -- but the more you pretend you're an expert, the longer it will take to become one for real.
#:Erik -- save the children: just say NO to sex with pro-lifers
* wtank...@dolphin.openprojects.net (William Tanksley) | Keep in mind, though, that in a primarily written communication, failing | to meet simple conventions like this sends the same message that going to | work unshaven and with uncombed hair would -- "I don't really care about | you." Perhaps it's the right message to send; it doesn't fit with the | care he puts into his posts, and the contrast is almost painful.
you are free to interpret things any way you want, but you should be aware that I don't do _anything_ withing giving it full attention. it's my one basic problem: I care too much, often about issues that other people are _completely_ ignorant about.
I find it somewhat odd that you object so much to my visual layout. most other people who have commented on this tell me that it is very obvious that I spend a lot of effort making them visually pleasing, although my deep respect for the capitalization of the individual word divides people about half and half.
#:Erik -- save the children: just say NO to sex with pro-lifers
wtank...@dolphin.openprojects.net (William Tanksley) writes: > IMO, this NG is one of the worst for getting information I've been on.
I feel I have to comment on that, despite the risk of adding to the noise levels.
I have been lurking on this group for over two years now. The discussions on it have repeatedly taught me new ways of looking at programming and have often made me think.
In an attempt to redress the unfairness due to satisfied people not being vocal, let me just offer a vote of thanks to the people who have helped in this.
I shall attempt to make my next post have more relevance to Lisp than just my signature ;-)
Christophe -- Jesus College, Cambridge, CB5 8BL +44 1223 473 339 (format t "~@(~@{~31r~^ ~}~)." 595756 9556552524 643802 496307950)