> Try to replace the definition of a special form in your favorite lisp.
What _are_ you talking about?
> If I had exported code which required people to redefine a special form > in their Lisp to run it, I would have been criticized and correctly.
Why? What is this "replace" and "redefine" about?
> As it is I just used a macro which can be added to any Common Lisp and > thus makes my code a valid Common Lisp program.
And shadow-importing the symbol if from a different package than the common-lisp package into your application package, with a new macro definition would _not_ have made it a valid Common Lisp program?
I have often gotten the impression that you are still programming in some ancient pre-Common Lisp langauge and do not really know what is in Common Lisp these days, or at least do not use it, but I wonder if you have ever studied the standard to see what is there. Sometimes, "experience" can get a little stale.
Bob Bane <b...@removeme.gst.com> writes: > Before I launch into this, I want to say that I have a lot of respect > for Franz, Inc. Allegro CL is first-rate, and no tool vendor I've ever > dealt with does customer support better, period.
Thanks for the kind words.
> That said, reader case issues have had a long history of being > low-priority at Franz. Just to be sure of the following, I went and > checked the heap of Allegro manuals in my office. > As of Allegro 4.2 (my copy is dated January, 1994), readtable-case was > still listed as unimplemented in the ANSI conformance section. It > finally showed up in Allegro 4.3 (dated March, 1996 - it may have > appeared first in a 4.2.x release, I don't have those documents to > hand).
A little history on this:
Franz Inc's tradition regarding case mode came from the very popular verion of lisp on unix called Franz Lisp. When CLtL (first edition) was written, long before the Ansi Common Lisp spec was even conceived, for the sake of continuity and an upgrade path, we provided our customers with a choice, to either decide on the case-sensitive style that they were used to, or to go with the CLtL style of a case-insensitive reader. Many customers chose one mode or the other, and there tended not to be too much mixing of the modes.
You may recall being one of those customers. Our first encounter with you regarding case-sensitivity was in October of 1989, in spr506. In that spr you complained about *print-case* not doing nice things with defstruct accessors. We took the bug, and noted that a workaround was to use the :case-sensitive-lower mode that was available. It turned out that you had also come up with a suitable workaround (some advice around defstruct), and had presented both options as viable. Now it is possible that you were unhappy with the outcome of that spr, but there was no indication of that. It is also possible that you were unhappy with case sensitivity issues, but we did not hear from you again about case until 1996, when you requested readtable-case in spr14689 (by that time, 4.3 was out and we informed you of that).
Meanwhile, we got two inquiries into readtable-case before the Ansi standard was ratified in 1994, and in each situation there was no objection to the workaround we offered, nor to waiting for the implementation of readtable-case until we could get to it. At the time, we were also trying to track other ANSI compliance issues. We always gave highest priority to the compliance issues which had no workaround, or to the issues which had been requested most from customers. Unfortunately, one or two inquiries for readtable-case was far outnumbered by the many inquiries into other conformance issues like logical-pathnames, which we had also not implemented until 4.2.
In March of 1994, we started getting more requests to implement readtable case. These were among the first to ask specifically for the implementation as a part of the standard, and these queries were more urgent in nature. So, sometime that same year, the implementation was started, bounded in time by the first CVS recordings of the implementation in September orf 1994. It was first made avaialable in May of 1995 in 4.3.alpha, and then it was finally made available officially in version 4.3 in May of 1996.
If this seems like quite a long time to implement a feature, I agree. However, at that time, _all_ features took a long time for us to implement, and it took us a long time to get from release to release; in fact, it took one year to get each of 4.2.beta and 4.3.beta to their final stages. Some of the reasons for this were:
- Our development team was split into two groups; the one not working on our standard unix product was working on the Procyon-based Windows product, which was to be a stopgap solution while we ported our unix version to x86 and then to windows. And since the Procyon lisp was essentially a CLTL lisp with CLOS, it took a lot of resources to even get it close to the level of ANSI compatibility that we had achieved so far on the unix product.
- It was arguably the dead of the AI winter, and customers were scrambling to reassure themselves that they were making the right decision by chosing (and continuing to use) Lisp. Lisp was still thought by some to be big, and slow, and dead. A good portion of our time in those years was spent optimizing our code, helping customers optimize their code, and optimizing our code (some more). This also caused a drain on resources to do other important things.
- We had a huge influx of feature requests, for connectivity, for a better foreign-functions interface, for ports to other architectures, and so on. We placed a high priority on conforming to the standard, but we had to also respond to customer requests and to ensure that they were able to succeed with their own programming needs and products. There were so many of these at that time that we had to pick and choose which pieces we would do then, and which we would later.
> ANSI voted readtable-case into the language in June, 1989; the whole > standard passed in December 1994. Franz had plenty of warning that this > needed to be done, but apparently chose to put it off as long as > possible - Allegro was tracking other ANSI conformance issues closely at > the time (the char-bit functions were deprecated in at least 4.1 - March > 1992), but not this one. I'd love to hear there was a reason for this > other than developer dislike for that part of the standard.
The reason is not easy to state succinctly - call it priority; call it triage; call it resource allocation and management, but it is definitely not due to dislike of the standard in any way. I hope that my lengthy timeline above has given you a sense of what really went on at that time, and hopefully it has reassured you that our motivations have been good, even as our execution may not have been perfect.
> I remembered this, because around that time I needed a case-sensitive > reader for compatibility with a vile little lex/YACC-based S-expression > reader in use by other implementors in my team. I had extolled Lisp's > virtues to the rest of them, and it was embarrassing for me to have to > say that I couldn't do a case-sensitive read in Allegro (actually I > could, if I was willing to set a global flag, break all my existing > code, and abandon CLX).
If you had legacy code which you didn't want to change to make compatible between both modes, I can understand that (although at such time, it would have helped us to have told us this, so that we might have been set the priorities differently).
However, almost from the beginning of its lifetime, CLX has been compatible with the case-sensitive mode, and so you would not have had to abandon that.
-- Duane Rettig Franz Inc. http://www.franz.com/ (www) 1995 University Ave Suite 275 Berkeley, CA 94704 Phone: (510) 548-3600; FAX: (510) 548-8253 du...@Franz.COM (internet)
> I would reommend an appointment with a shrink and extended homeopathic > treatment. Erik, you should read you own (non-technical) posts > sometimes to see how irrelevant _they_ are. You may sure be a smart > guy with Lisp, but otherwise you fail to understand people or what > they seem to be saying or the context _completely_ and _utterly_.
How did you see into my mind and discover what I did not _understand_ just because I point out that it is completely irrelevant? Does this somehow trigger your defense mechanisms such that you need to post your personal comments about someone else, which is certainly completely and utterly irrelevant here?
Please accept a hint: Understanding and agreement are orthogonal.
Discussion subject changed to "I like WHEN/UNLESS Was: Promoting CL Was: What I want from my Common Lisp vendor and the Common Lisp community" by Thomas F. Burdick
Daniel Barlow <d...@telent.net> writes: > ObPersonalPreference: I'd still rather be using COND anyway. AIF (and > a smattering of other anaphoric macros) is about my only normal use of > "syntax" macros.
Do you use the variation that unconditionally binds the result of the predicate to THIS (or something similar)? That drives me nuts, personally, so I use IF-LET:
> > ObPersonalPreference: I'd still rather be using COND anyway. AIF (and > > a smattering of other anaphoric macros) is about my only normal use of > > "syntax" macros.
> Do you use the variation that unconditionally binds the result of the > predicate to THIS (or something similar)? That drives me nuts, > personally, so I use IF-LET:
> just doesn't seem as nice. That's what I use, but I'm kind of > uncomfortable with it...
I'll risk grevious personal injury and mention that Scheme has a bit syntax for this. If the first element after the condition is the symbol '=>', then the second element after the condition is applied to the result of the condition. Here's an example:
> > > ObPersonalPreference: I'd still rather be using COND anyway. AIF (and > > > a smattering of other anaphoric macros) is about my only normal use of > > > "syntax" macros.
> > Do you use the variation that unconditionally binds the result of the > > predicate to THIS (or something similar)? That drives me nuts, > > personally, so I use IF-LET:
> > just doesn't seem as nice. That's what I use, but I'm kind of > > uncomfortable with it...
> I'll risk grevious personal injury and mention that Scheme has a bit > syntax for this. If the first element after the condition is the > symbol '=>', then the second element after the condition is applied to > the result of the condition. Here's an example:
Yeah, I know about that, but I find it less satisfying than my BINDING-COND, because that whole => thing is, well, weird. It's using magical symbols for something that seems like it should be do-able in a lispy way
Aside from that, the first clause seems okay. The second, though, yuck. I don't like using anonymous functions/closures like that, unless I have to; I use with-FOO instead of call-with-FOO.
Your explanation makes sense to me. As a former commercial Lisp implementor (if you can call Xerox Common Lisp "commercial"), I know you have to put your effort where your customers ask for it if you intend to stay in business.
Other than the following explanantions and quibbles, I'm satisfied. And impressed with the depth of your spr database. :-)
> You may recall being one of those customers. Our first encounter with > you regarding case-sensitivity was in October of 1989, in spr506. In > that spr you complained about *print-case* not doing nice things > with defstruct accessors. We took the bug, and noted that a workaround > was to use the :case-sensitive-lower mode that was available. It > turned out that you had also come up with a suitable workaround (some > advice around defstruct), and had presented both options as viable. > Now it is possible that you were unhappy with the outcome of that spr, > but there was no indication of that. It is also possible that you > were unhappy with case sensitivity issues, but we did not hear from > you again about case until 1996, when you requested readtable-case > in spr14689 (by that time, 4.3 was out and we informed you of that).
I was working on a project using Allegro in 1989-1990, as the last gasp of Xerox AI Systems/en-vos. I didn't have a chance to use Allegro on-the-job again until 1996, for a different employer (my personal AI Winter), so for me seeing that readtable-case was still unimplemented in 4.2 was a bit of a timewarp - I didn't know the history.
> > I remembered this, because around that time I needed a case-sensitive > > reader for compatibility with a vile little lex/YACC-based S-expression > > reader in use by other implementors in my team. I had extolled Lisp's > > virtues to the rest of them, and it was embarrassing for me to have to > > say that I couldn't do a case-sensitive read in Allegro (actually I > > could, if I was willing to set a global flag, break all my existing > > code, and abandon CLX).
> If you had legacy code which you didn't want to change to make > compatible between both modes, I can understand that (although at such > time, it would have helped us to have told us this, so that we > might have been set the priorities differently).
> However, almost from the beginning of its lifetime, CLX has been > compatible with the case-sensitive mode, and so you would not have > had to abandon that.
Sort of. The 4.{1,2,3} manuals all say in bold print that excl:set-case-mode may not be called after loading CLX, so using it in the pre-built Composer image was right out. I suppose I could have tried building a case-sensitive image, loading CLX and Composer into it, making my sources (including other people's open-source code) case-sensitive and loading them, but that sounded like more effort and uncertainty than changing the non-Lisp S-expression reading code to be case insensitive.
Discussion subject changed to "I like WHEN/UNLESS Was: Promoting CL Was: What I want from my Common Lisp vendor and the Common Lisp community" by Dorai Sitaram
In article <ey38zftoat2....@cley.com>, Tim Bradshaw <t...@cley.com> wrote:
>* Dorai Sitaram wrote: >> 3. Since IF* is now completely backward-compatible with >> syntactically correct uses of IF (see 1 and 2 >> above), simply call the new construct IF.
>I don't think it's compatible.
> (let ((then 3)) > (if t then 4))
Didn't I sufficiently caution (as "minor caveat") against such uses of THEN and ELSE? If I did not, I hereby do.
> Do you use the variation that unconditionally binds the result of the > predicate to THIS (or something similar)? That drives me nuts, > personally, so I use IF-LET:
or using more advanced control-flow mechanisms, more suitable when there is no else branch and much more going on, such as an already established block surrounding the forms at the appropriate level
On Mon, 03 Sep 2001 08:33:30 GMT, Erik Naggum <e...@naggum.net> wrote: >* g...@google.com (Erann Gat) >> I'd just like to point out one thing before I go. For about the last >> five or so articles in this thread I didn't write the text you attribute >> to me. I copied it from old postings of yours. It's been amusing >> watching you argue with yourself.
> Huh? I argued against myself because you copied my words? Geez. Just > how stupid are you? Just who _do_ you think you are fooling with this?
> But this is just the kind deception and evil we have come to expect from > you. You only surprise in its magnitude, not at all in its character. > You are such an idiot, Erann Gat. Get some professional help to get over > your personal problems. And please take the prescribed medication before > you post again, whether you cut and paste from newspapers or whatever > else you need to copy from to pretend that you are not really speaking, > yourself. I feel so much pity for you and your problems that I cannot > even be angry at such a pathetic excuse for a person.
>///
I thought civilized people would not put up with the kind of invective that has become common on this newsgroup lately. I tend to filter to the trash any message threads being sent between Erik and anybody else, because I don't need the negative stimulus. We all know Erik posts useful messages at times (often, even) but the level of discourse he inspires probably drives many people away.
I am trying to open my mind up to new things, and to try to see things in a fresh light. Perhaps we should bask in the colorful language and insults. I have discovered recently that the messages on this newsgroup are a veritable treasure trove of colorful phrases, and ways of attacking the very essence of another person. In this spirit, I am collecting them and making a customized Eliza program. This program dares you to talk to it, and when you do it responds using some of the language typically coming from this type of discussion on c.l.l. This way, I can enjoy the experience of Erik's flame wars without actually having a usenet connection. It becomes positively apoplectic if you even mention certain names, like Erann Gat, or John Foderaro. I am still looking for more colorful phrases and insults, and I know you guys won't disappoint me.
By the way, I am serious about this--I will make the program available when done.
But even more seriously... I just want to say that some of the smartest people, and best programmers, in the world are regulars in this group. This includes Erann, John, Kent, Duane, Erik and all the rest of you who regularly contribute. I am proud to know all of you. Yes, I love Common Lisp (oh god, I was trying to avoid saying it, but I can't help myself) but I also love the community of intellects that form around it. I believe that the lisp compilers I create are used by some of the most imaginative, brilliant programmers around. This is what keeps me going. This newsgroup is not the whole lisp community--far from it. But it does include many long time lisp experts, and creative, passionate programmers. I feel so lucky to be able to be a part of this. We all know we are different from the programming masses. Maybe more akin to artists (or at least aspire to that). When I see people in this group calling each other such nasty things, I can barely believe it. There aren't that many of us--and we all will play an important role in lisp's future.
Please, let's act like grown-ups. I don't believe technical expertise absolves one from polite discourse, particularly in a public form like this. We all have something in common, and that is our feeling that lisp offers some things that more often-used languages do not and cannot offer. I believe that lisp is poised to solve many of the programming problems that are coming down the road. Such as truly intelligent web agents (where you don't know if that poster, or that e-mail respondant, is a person or not). I just can't imagine another language could do this better than lisp. The explosion of server-side programming opportunities is great for lisp--it just shines. And I say lisp, because I believe that Common Lisp is not the only language definition nor the final one. I like it fine as it is, but I admit to the possibility that others, perhaps more original thinkers then me, could come up with improvements that would make lisp that much more exciting and powerful.
John Foderaro, AllegroServe is great. Thanks for all of your work you have done with Franz. Erann, thanks for helping to get lisp sent to Mars. Erik, I know you have done some tremendous things with Lisp, and helped many to better understand it's intricacies.
Discussion subject changed to "I like WHEN/UNLESS Was: Promoting CL Was: What I want from my Common Lisp vendor and the Common Lisp community" by Tim Bradshaw
* Dorai Sitaram wrote: > Didn't I sufficiently caution (as "minor caveat") > against such uses of THEN and ELSE? If I did not, I > hereby do.
I guess. However I suspect that this case is enough that this new IF really is not compatible with the standard CL one, and will cause significant and obscure lossage, since the case I gave partly reverses the sense of the conditional - (if never-false then (explode-the-world)). So I definitely do not think that IF could be safely extended to IF* in a backward-compatible way - the caveats are not minor!
Roger Corman wrote: > [...] This program dares you to talk to it, and when you do > it responds using some of the language typically coming from this > type of discussion on c.l.l. This way, I can enjoy the experience of > Erik's flame wars without actually having a usenet connection. [...] > By the way, I am serious about this--I will make the program > available when done.
> I thought civilized people would not put up with the kind of invective > that has become common on this newsgroup lately.
I thought civilized people would be above your behavior, too.
> I tend to filter to the trash any message threads being sent between Erik > and anybody else, because I don't need the negative stimulus.
Somehow, you think it is acceptable to post this. Why?
> We all know Erik posts useful messages at times (often, even) but the > level of discourse he inspires probably drives many people away.
Yeah, of course it is my fault! That attitude is the core problem here. It is somehow appropriate for this forum to discuss me and blame me for it at the same time, as if you are all mindless morons who cannot help themselves and I am the person responsible for everybody else's actions.
You do the exact same thing, Roger Corman, and you, too, think it is somehow appropriate to discuss this as if it were a matter of fact.
If people, you included, could stop discussing _me_, there would be nothing for me to be angry about, because the core problem I see is that people have this bizarre personal need to attack _me_ every damn time I say something about someone's _behavior_, and they certainly do not confine themselves to _my_ behavior. _Are_ people so defensive and do they really have so low self-esteem and self-confidence that they cannot distinguish between their behavior and their person? That is, why do they behave as if their behavior is always correct and should remain unchallenged and preferably be lauded no matter how counter-productive it is? There are people here who have an obvious and serious personality disorder that they cannot back down from their position if it has been criticized, and who start to attack the _person_ of those who criticizes them. Why are such people posting to a newsgroup? They are clearly not able to deal with normal human discourse and certainly not able to deal with people who _will_ shoot down stupid suggestions or arguments.
In the case of Erann Gat, please do make the effort to see how he has behaved towards me from the start in this thread. His behavior is not at all my fault. That he cannot keep his personal needs away from the Net is not my problem. That he attacks me so insanely as he does, does make it my business to stop him. I have no other gripes about Erann Gat, but a lot of people have personal gripes about me as a person far beyond anything I have ever actually done to anyone. This puzzles me. I find it very odd that semi-intelligent people need to be so obsessive about a person that they cannot discuss whatever they (say they) want to discuss but have to blame someone else for their very own despicable behavior.
> I am trying to open my mind up to new things, and to try to see things in > a fresh light. Perhaps we should bask in the colorful language and > insults.
Perhaps you should realize that by discussing me, you contribut to the problem.
> I am still looking for more colorful phrases and insults, and I know you > guys won't disappoint me.
I find your behavior more delibarate and thus much more dispicable than those who post in obvios anger. Have you no self-respect?
> By the way, I am serious about this--I will make the program available > when done.
Reconsider.
> When I see people in this group calling each other such nasty things, I can > barely believe it.
I cannot believe how you found the personal need to post what you have.
> Please, let's act like grown-ups.
Do grown-ups discuss others as if they were things and casually place the blame for many other people's behavior on a single person? Real grown-ups are a tad more mature than that.
> I don't believe technical expertise absolves one from polite discourse, > particularly in a public form like this.
So it is OK to be gravely insulting and grossly unfair if you are "polite"?
> And I say lisp, because I believe that Common Lisp is not the only > language definition nor the final one. I like it fine as it is, but I > admit to the possibility that others, perhaps more original thinkers then > me, could come up with improvements that would make lisp that much more > exciting and powerful.
Until we have it, it makes very little sense to discuss Common Lisp in terms of what could have been or could be. No other language community I know, have a higher regularity of people who argue just this way, and it simply means that people will wait for the next great thing instead of using this great thing while they can. It is if people refuse to use the greatest language in the world simply because something better could be made. To me, this simply says that people have too little need to use these powerful tools, but around masturbating to it, instead, like people do with Scheme or other "academic" languages.
Discussion subject changed to "I like WHEN/UNLESS Was: Promoting CL Was: What I want from my Common Lisp vendor and the Common Lisp community" by Dorai Sitaram
In article <ey3vgiwn4bw....@cley.com>, Tim Bradshaw <t...@cley.com> wrote:
>* Dorai Sitaram wrote: >> Didn't I sufficiently caution (as "minor caveat") >> against such uses of THEN and ELSE? If I did not, I >> hereby do.
>I guess. However I suspect that this case is enough that this new IF >really is not compatible with the standard CL one, and will cause >significant and obscure lossage, since the case I gave partly reverses >the sense of the conditional - (if never-false then >(explode-the-world)). So I definitely do not think that IF could be >safely extended to IF* in a backward-compatible way - the caveats are >not minor!
A silent error would be deadly I agree. I was taking as understood that THEN and ELSE would no longer be available for use as variables. Of course to put teeth into this proscription you would have to enforce it -- OTTOMH, I can think of defining THEN and ELSE as macros and/or symbol-macros that will cause them to error loudly. Perhaps you can think of something else.
I am less persuaded that removing these symbols from the pool of available variables is by itself unacceptable. All macros (and even global function definitions to a lesser extent) bring with them the price that some variables become henceforth unavailable for unencumbered use. The best we can hope for is that unintended use of these symbols as variables will make itself known as program error instead of creating mischief in a running program.
Thank you for your message. I've always strived to keep things technical in my postings (although I've failed sometimes). We're adults here and we should be able to talk about the issues for this family of programming languages. There is plenty to talk about without getting in the personal details of the other readers of this forum (e.g their heritage, their hairstyle, their behavior, their height, etc). I sure that I'm not the only person who doesn't feel completely as ease posting to this group due to the likelihood of personal attacks in return. It's just so juvenile. Thank you again for speaking out about it.
> I sure that I'm not the only person who doesn't feel completely > as ease posting to this group due to the likelihood of > personal attacks in return. It's just so juvenile.
Rest assured that you are not attacked unless you attack someone first. Since you do that, the likelihood of you receiving criticism for it rises dramatically. Quit it, and you will find that everybody responds maturely. It is your own fault that you get the responses you get. Your first response to my _technical_ issues with your IF* stunt was personal. You set the tone, and have stayed by it since. That you now gripe about losing the game you want to play and pretend that you are better than you are is simply pathetic.
There is no need to talk about behaving better. Just behave better. If you talk about it and fail, it makes you look so much _more_ juvenile, but also hypocritical and pretentious. Guess again if you think this makes you look better in anyone else's eyes.
> Your first response to my _technical_ issues with your IF* stunt was > personal.
* John Foderaro
> sigh..
> Please show me (and the rest of the readers) where I did that,
In your first response to my article in the loop thread about your disgusting, demeaning, denigratory, and insulting "lisp coding standards" document, your response reads as follows:
* John Foderaro in <MPG.15f588c27e60a2ce989...@news.dnai.com> | The sad thing is that the religious zealots seem to have taken over this | newsgroup (or at least they are the loudest). I laugh at them and I hope | you do too. I hope that I can get a message through to the scientists | out there who understand that CL is just a language with good points and | bad points and that we must figure out how to make CL better and | continually relevant to the current computing world.
You really do not need "misrepresentation" to look like a hypocritical idiot. In fact, misrepresentation could only _improve_ your image the way you have been going on about it here. You have only yourself to thank.
Here is a hint for you, John Foderaro: If you want to climb that high ethical horse of yours, the way to avoid looking like a hypocritical idiot is to _do_, not _tell_. But since you choose to present yourself as someone who likes to talk about how mature you are and how juvenlie others are when they behave smarter than you do, please accept this advice: just answer the technical stuff and refrain from answering whatever you want to respond to with your stupid personal crap. That would _be_ mature. Talking about how mature you are is really juvenile.
> It is your own fault that you get the responses you get. Your > first response to my _technical_ issues with your IF* stunt was personal. > You set the tone, and have stayed by it since.
The response you quoted was not a response to you but to Coby Beck.
If we go up the tree to find the first ancestor message from you we get to: Message-ID: <3208003338948541@naggum.net>
Is this what you consider to be a message that simply discusses the _technical_ issues of the if* macro without getting into any personal attacks? [If that's the case I'd sure not want to see what you consider a personal attack message].
Everyone can read the whole message from the link but here are a few quotes so you can get the 'tone'
Do you want to deal with a person who goes out of his way to insult something _great_ and who thinks marring it is necessary?
But it gets worse, much worse. The exact same kind of religious fervor and irrationality applies to several other areas.
I could deal with the IF* abomination and the exaggerated hatred for LOOP for a long time,
that you are willing to share the arrogance of a person who is pretending that Common Lisp is not a defined standard,
.. John Foderaro's _professional_ conduct and it makes him look like a crackpot unaware that he is a crackpot in his profession, as well.
So I echo what Roger Corman said. Let's keep things friendly here and we'll get real information across and look a lot more professional to people just checking in to see what Lisp is all about.
> The response you quoted was not a response to you but to Coby Beck.
Riiiight!
> So I echo what Roger Corman said.
Of course you. You are just the kind of person to _support_ that kind of disrespectful behavior.
> Let's keep things friendly here and we'll get real information across and > look a lot more professional to people just checking in to see what Lisp > is all about.
Just start, John! Just start. Do not pretend that you have to wait for anyone. Just _show_ us what it is like when you behave reasonably mature and stick to technical issues. No more insulting, arrogant bullshit about others, OK? Why do you keep doing it when you lambast me for doing it? I find that part of your behavior _really_ disgusting, and yes, it says something about your _person_ when you choose to pretend that you above your own criticism. If you cannot start here, start by cleaning up your insulting language in the "lisp coding standards" page. Show us that this is not a religious nutcase at work and clean up your code, too, to show that you have actually _listened_ to those who have expressed similar views to mine. This all requires you to _back_down_, and I have a hunch that your refusal to do what people tell you to do and instead prefer to tell people what to do over just doing what you (say you) want yourself is that you _cannot_ back down: You would not be you if you could back down. That is why you keep telling people to be friendly when very clearly, you are actually criticizing people and trying to leave them defenseless. You have done that so many times that your sincerity is in serious jeopardy because of it. So just _do_, no more _talk_, OK?
Discussion subject changed to "I like WHEN/UNLESS Was: Promoting CL Was: What I want from my Common Lisp vendor and the Common Lisp community" by Thomas F. Burdick
d...@goldshoe.gte.com (Dorai Sitaram) writes: > I am less persuaded that removing these symbols from > the pool of available variables is by itself > unacceptable. All macros (and even global function > definitions to a lesser extent) bring with them the > price that some variables become henceforth unavailable > for unencumbered use. The best we can hope for is that > unintended use of these symbols as variables will make > itself known as program error instead of creating > mischief in a running program.
But you pitched it as a way of combining IF and IF*, which it is not. It's just a "better" IF*. Personally, I occasionally use THEN and ELSE as variable names, because they communicate that I'm computing what is going to be an then or else clause. Any of my code that does this would be a pain in the butt to port to your IF -- the advantage of not reusing a normal name from CL is that it's obvious that there may be problems porting code to IF* (or AIF or ...).
I seriously propose a comp.lang.lisp.moderated, (or comp.lang.lisp.civilized if no one has the time to moderate.) Or we could change the policy of comp.lang.lisp.
Anyone who indulges in a flame be banned for 5 days, 10 days for next offense and 20 days.. and so on..
I love lisp, and am so terribly disappointed at what has become of comp.lang.lisp, and how unfriendly it is.. and am all the more disappointed at how many users it turns off lisp. And it is all of us lispers who lose, because the smaller the userbase, the lesser the development of language and friendly packages therein.
Wish we all took a clue from how good emacs and elisp is doing.
Deepak <URL:http://www.glue.umd.edu/~deego> -- You know you've spent too much time on emacs when you spill milk and the first thing you think is "C-_"
> so I finaly go and read the coding standard in hopes of finding a url > or pointer to fix my problems. Mow the first sentence of the first > rule, on a document on franz's website starts like this:
> Use if* instead of the bogus-three-conditionals: if, when and unless
> This is an odd way for franz to show that they support common lisp and > would at the very least make me look for someone else to give my money
It is indeed sad...
> I would like to thank franz for writting smtp.cl and imap.cl I have a > project that I would use it on after I get all the if* stuff out of > it.
I too gladly used Franz to implement these (as we were too busy to do them ourselves). But please note: to be fair realize that we _paid_ Franz to write these. This is also true of the original XML parser from which they learned enough to create the much better current version. As well as enhancements to ORBlink. Please note further that I believe this was well spent money and have always thought that Franz has tried to do a great job.
> And I think that everyone has the right to use whatever macros they > want. But with that said from looking at it I think cond is much > better to look at then your stuff. I always thought a case, > switch. cond statement was MUCH clearer then a long series of nested > if statements to read.
Absolutely. Frankly it's the IF* macro that is completely bogus - but I'm not going to go apoplectic over JF's use of the damn thing to get the job done.
/Jon
-- Jon Anthony Synquiry Technologies, Ltd. Belmont, MA 02478, 617.484.3383 "Nightmares - Ha! The way my life's been going lately, Who'd notice?" -- Londo Mollari
> Tim Moore <mo...@herschel.bricoworks.com> writes:
> > On 2 Sep 2001, Erann Gat wrote:
> > > I preached the gospel of Lisp for many years on pretty much those > > > terms. The wall I always ran up against was the question: "Who uses > > > it?" The answer to that question for C++, Java and Perl is: everyone. > > > What's the answer for Lisp? A recent query to this newsgroup asking > > > people what they used Lisp for garnered only a *single* response. > > > Why? It's certainly not for lack of participation in the newsgroup as > > > a whole.
> > Maybe we're too busy writing Lisp programs to take silly polls?
Exactly. And more: busy promoting and selling great ones that exist.
/Jon
-- Jon Anthony Synquiry Technologies, Ltd. Belmont, MA 02478, 617.484.3383 "Nightmares - Ha! The way my life's been going lately, Who'd notice?" -- Londo Mollari
> Anyone who indulges in a flame be banned for 5 days, 10 days for next > offense and 20 days.. and so on..
And just how do you propose to enforce this? Who will be the accusers, the judge and the jury? People who are unconcerned about such issues, prove that revengefulness and hatred is a poor basis for suggestions about other people's behavior.
Just improve your own behavior. It is the only behavior you control. Trying to control anyone else's is just plain evil.
However, it would be tremendously helpful if you could try grow a clue _why_ these things develop. Let me give you a hint: First, people who are unable to accept criticism and who will never back down from any of their positions regardless of any criticism, but attack the person who criticizes them directly if they are at least decent people, indirectly in the sort of polite ways that you strongly favor when they are not. Second, people who keep doing this have to defend their actions somehow, and the more they can blame somebody else, the worse they get, because they are freed of personal responsibility for their actions. Now, I tolerate neither of these and want people to be responsible for their very own actions and blaming nobody. Several people are unable to cope with such a requirement and go ballistic when they cannot blame someone else for their own behavior, and that someone is me, because it has become acceptable in this forum to blame me for the behavior of nutcases.
If you help make sure people accept responsibility for their own actions and cannot blame me or anyone else, there will be no more flaming. If you are so interested in less flaming, you _will_ help in this regard. Thank you for your cooperation.