In article <9n3cnc$c9...@216.39.145.192>, Tim Moore wrote: > On Tue, 4 Sep 2001, Marc Spitzer wrote: >> >> This get back to the "I donated allegroserv" line I >> >> asked you were you paid to do this work and have received no answere >> >> so I guess that is a yes.
>> > It's definitely the case that Franz paid for my time (and the time >> > of others) to develop the open source modules that we distribute. >> > I'm happy you've given me an opportunity to give Franz credit for >> > spending money on something and donating it to the community.
>> Ah so no only did you not donate your time you also took credit for >> work you did not even preform so you stole from your employer and your >> coworkers the credit they were due. That is just a fucked up and very >> very very VERY STUPID thing to do in a fourm that some of the people >> at franz read. "Do not shit where you eat" is GOOD advice try >> following it sometime.
> Dude, you are seriously confused about how open source works and also > about who John Foderaro is in relation to Franz. Maybe you should chill > out a bit and investigate how the major contributors to your favorite open > source project get funded and how they refer to their contributions in > casual conversation.
> Tim
Why? He did lie about what his contributions were to the project in 2 key instances: 1: my turned to our for allegroserv 2: donated turned into franz paid/ordered me to do it, he is an employee after all.
In any projects one of the forms of compensation for work well done is bragging rights. He stole from his coworkers who did the work by claiming he did it and he stole from franz by claiming he bore the monatery hardship of funding this project with his time when franz paid him to do the work. Theft is theft and durring the course of this discussion the only time I can remember him even attempting to be civil is tuesday morning his time, after he probably got to work or work calle him and had a little chat about what the fuck he was doing this weekend, He did make some emotional appeals after editing posts for content to try to gain support but I do not considder that civil but self serving nothing more or less.
It seems your message was a blow if I may judge this from his response.
Janos Blazi
-----= Posted via Newsfeeds.Com, Uncensored Usenet News =----- http://www.newsfeeds.com - The #1 Newsgroup Service in the World! Check out our new Unlimited Server. No Download or Time Limits! -----== Over 80,000 Newsgroups - 19 Different Servers! ==-----
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 Marc Spitzer
In article <MPG.15fed67dd6cc8ace989...@news.dnai.com>, John Foderaro wrote: > I think that you're getting the idea. The problem with > adding comments for then and else is that your editor > may not indent them correctly. Also that only works up > to a point with 'if' since you can only have a 'then' > and 'else' clause.
what is wrong with cond that a long string of if* then elseif ... else fixes and you can do the exact same logic with a standard ansi if: (if a b (if c d (if e f g ))) so again why do I need yours?
marc
ps I am just learning lisp so there may be a stupid syntax error in the above.
On Tue, 4 Sep 2001, Marc Spitzer wrote: > In article <9n3cnc$c9...@216.39.145.192>, Tim Moore wrote: > > On Tue, 4 Sep 2001, Marc Spitzer wrote: > > Dude, you are seriously confused about how open source works and also > > about who John Foderaro is in relation to Franz. Maybe you should chill > > out a bit and investigate how the major contributors to your favorite open > > source project get funded and how they refer to their contributions in > > casual conversation.
> > Tim
> Why? He did lie about what his contributions were to the project in 2 > key instances: > 1: my turned to our for allegroserv
It is my understanding that Foderaro is the primary author of Allegroserve. I suspect that "our" is him being generous.
> 2: donated turned
into franz paid/ordered me to do it, he is an
> employee after all.
> In any projects one of the forms of compensation for work well done is > bragging rights. He stole from his coworkers who did the work by > claiming he did it and he stole from franz by claiming he bore the > monatery hardship of funding this project with his time when franz > paid him to do the work. Theft is theft and durring the course of
Maybe on your planet. You are demanding a standard of attribution that I have never seen applied in the open source "movement." To use a personal example, I feel perfectly comfortable referring to "my" port of gcc to HP PA-RISC, even though Hitachi funded the work. After all, we are among programmers here, not sponsors and lawyers. Going beyond my small contribution of years ago, you don't see RMS and Torvalds thanking their sponsors and employers every time they mention some part of GNU/Linux. Torvalds works for TransMeta; duh. Foderaro works for Franz; I can't imagine any reasonable person thinking that someone else paid him to write AllegroServe, that he did it in his free time, or that he ought to properly attribute credit to them every time it comes up in conversation.
That being said...
> this discussion the only time I can remember him even attempting to be > civil is tuesday morning his time, after he probably got to work or
> work calle him and had a little chat about what the fuck he was doing > this weekend, He did make some emotional appeals after editing posts > for content to try to gain support but I do not considder that civil > but self serving nothing more or less.
Foderaro is one of the founders of Franz. Franz is not a public company so the details of ownership are none of our business, but I imagine that he is entitled to use "Franz" and "my" somewhat interchangably. That right does assign a responsibility that he seems somewhat reluctant to own up to, but claims of him ripping off co-workers and stealing credit from Franz are just plain silly.
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 Daniel Barlow
John Foderaro <j...@xspammerx.franz.com> writes: > I think that you're getting the idea. The problem with > adding comments for then and else is that your editor > may not indent them correctly. Also that only works up > to a point with 'if' since you can only have a 'then' > and 'else' clause.
A bigger problem with adding comments is that they're not actually part of the syntax, and when they get out of step with the code they will serve more to confuse than to elucidate. Why would I want to fake syntax with comments when I could write real syntax?
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.
>> As someone learning Lisp and having invested 5 digits into purchasing >> ACL, > You cut off all the fingers on one hand? Talk about serious > commitment. :)
No, there are three digits to the finger (or toe). Still eerily reminiscent of a Roald Dahl story.
Philip -- Real programs don't eat cache (Malay) --------------------------------------------------------------------------- -- Philip Lijnzaad, lijnz...@ebi.ac.uk \ European Bioinformatics Institute,rm A2-08 +44 (0)1223 49 4639 / Wellcome Trust Genome Campus, Hinxton +44 (0)1223 49 4468 (fax) \ Cambridgeshire CB10 1SD, GREAT BRITAIN
> Going beyond my small contribution of years ago, you don't see RMS and > Torvalds thanking their sponsors and employers every time they mention > some part of GNU/Linux. Torvalds works for TransMeta; duh.
Neither do they claim that they _donated_ their work to anyone. In fact, funding being what it is, they refer to it as their work, but both RMS and Linus have always been careful not to speak about "donating" it.
_I_ would consider saying that I donated something only if I had funded it myself, and since I have in fact funded and donated a lot of stuff over the years, to university computer clubs, to the SGML community, etc, but I did not use "donate" when in fact somebody else donated money to fund my work. I expect the same standard of honesty from others when referring to what one gives away. If it is not yours to donate, it is a bad idea to say that you did. This applies to the funding, not the work.
In article <9n3ib9$ok...@216.39.145.192>, Tim Moore wrote: > On Tue, 4 Sep 2001, Marc Spitzer wrote:
>> In article <9n3cnc$c9...@216.39.145.192>, Tim Moore wrote: >> > On Tue, 4 Sep 2001, Marc Spitzer wrote: >> > Dude, you are seriously confused about how open source works and also >> > about who John Foderaro is in relation to Franz. Maybe you should chill >> > out a bit and investigate how the major contributors to your favorite open >> > source project get funded and how they refer to their contributions in >> > casual conversation.
>> > Tim
>> Why? He did lie about what his contributions were to the project in 2 >> key instances: >> 1: my turned to our for allegroserv > It is my understanding that Foderaro is the primary author of > Allegroserve. I suspect that "our" is him being generous.
>> 2: donated turned > into franz paid/ordered me to do > it, he is an >> employee after all.
>> In any projects one of the forms of compensation for work well done is >> bragging rights. He stole from his coworkers who did the work by >> claiming he did it and he stole from franz by claiming he bore the >> monatery hardship of funding this project with his time when franz >> paid him to do the work. Theft is theft and durring the course of
> Maybe on your planet. You are demanding a standard of attribution that I > have never seen applied in the open source "movement." To use a personal > example, I feel perfectly comfortable referring to "my" port of gcc to HP > PA-RISC, even though Hitachi funded the work. After all, we are among > programmers here, not sponsors and lawyers. Going beyond my small > contribution of years ago, you don't see RMS and Torvalds thanking their > sponsors and employers every time they mention some part of GNU/Linux. > Torvalds works for TransMeta; duh. Foderaro works for Franz; I can't > imagine any reasonable person thinking that someone else paid him to write > AllegroServe, that he did it in his free time, or that he ought to > properly attribute credit to them every time it comes up in conversation.
If I remember correctly allegrostor was announced as a working finished, version 1.0, product that only ran on ACL at the time. And that franz had no intention of porting it to anything else. It was treated like any other product and just happened to cost nothing. I would not call this an opensource movement type of operation. It was pure commerical development so I do not see how any of the opensource stuff applys.
> > this discussion the only time I can remember him even > attempting to > be > civil is tuesday morning his time, after he probably got to work or >> work calle him and had a little chat about what the fuck he was doing >> this weekend, He did make some emotional appeals after editing posts >> for content to try to gain support but I do not considder that civil >> but self serving nothing more or less.
> Foderaro is one of the founders of Franz. Franz is not a public company > so the details of ownership are none of our business, but I imagine that > he is entitled to use "Franz" and "my" somewhat interchangably. That > right does assign a responsibility that he seems somewhat reluctant to own > up to, but claims of him ripping off co-workers and stealing credit from > Franz are just plain silly.
> Tim
I did not claim I commented on what he wrote, he went from my to our and donated to I was paid for it. both of the claims poved false by his own admission. Add to this the other questionable tactics he has used in this discussion, why should I give him the benafit of the doubt when I have seen no evadence that he merrits such considderation? I do not know him personaly and I could be completely wrong but I do not think I am.
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 John Foderaro
In article <9n3ehb$73...@news.gte.com>, d...@goldshoe.gte.com says...
> Perhaps you could then make the THEN optional, so that > then some of the snappier IF*s, where the THEN is just > clutter and not an aid to readability, can be > then written and read easily.
This is a good question. The reasons that I feel it shouldn't be optional are 1. The 'then' is there to separate the predicate from the consequent. I believe that readability is enhanced if you highlight those places in your code where control flow is unusual. Since control may flow from the predicate right over the consequent this is one of those places. And no, if* doesn't highlight all the cases where that can occur, but it's a start. 2. by nearly always having a 'then' there, you don't have to read the word to see what it says (what if it says 'them' rather than 'then'. Thus in practice while there are more 'keywords' in the code due to the 'if*' form you don't really have to read them to see the structure of the code, the indenting itself predicts what the keywords are.
> I didn't get that from the excerpt. All I read in it was that John > thought that this particular feature (case insensitive upper) was a > blotch in the language.
I thought we were still talking about if/when/unless, but it also applies to case sensitivity. Teaching people to abhor upper-case and tell them to use lower-case also destroys the common knowledge. Making standard functions return non-standard values is _really_ bogus.
If they worry so much about upper-case versus lower-case, there are two easy steps: set *print-case* to :downcase and make the keyword argument :case-insensitive to apropos default to t. They do neither, but seem to want people use their very incompatible version instead. I have been working on a solution that does not destroy conformance at all -- and it turns out to be really easy to support in the framework that Franz Inc. has already built to support their special set-case-mode. This is about the willingness to remain conforming while making serious changes, or lack thereof, to be more precise.
But as long as we talk about this issue, it is in fact possible to let (common-lisp:symbol-name 'foo) return "FOO" and have something like a (common-lisp-lower:symbol-name 'foo) return "foo". This is the kind of thing the package system should have been able to deal with, shadowing some of the important functions. The reader needs to be able to deal with a parameterization of which functions to call, however, and the specification for this will have to be extra-standard. This means that it should probably go in the readtable. Since the readtable already supports everything we need for a lower-case Common Lisp to work, all we would really need is the ability to retain the standard functionality in addition to the lower-case versions. This should be doable without having to break anything, if only you are willin to look for it. That would make it possible to intermix standard and lower-case code, too, which is currently impossible with the separated schemes used today.
> Intelligent people can disagree with majority opinion and/or hold silly > opinions of their own without being pilloried as the enemy of the state. > If not, it's the state and its defenders that I'd question, not the > individual.
Grandiose speech. Competely irrelevant to this case, however.
Tim Moore <mo...@herschel.bricoworks.com> writes: > On Tue, 4 Sep 2001, Marc Spitzer wrote:
> > In article <9n3cnc$c9...@216.39.145.192>, Tim Moore wrote:
> > > Dude, you are seriously confused about how open source works and > > > also about who John Foderaro is in relation to Franz. Maybe you > > > should chill out a bit and investigate how the major > > > contributors to your favorite open source project get funded and > > > how they refer to their contributions in casual conversation.
* Marc Spitzer wrote: > If I remember correctly allegrostor was announced as a working > finished, version 1.0, product that only ran on ACL at the time. And > that franz had no intention of porting it to anything else. It was > treated like any other product and just happened to cost nothing. I > would not call this an opensource movement type of operation. It was > pure commerical development so I do not see how any of the opensource > stuff applys.
[You mean allegroserve, not allegrostore I think]
I think making the source available under an open-source license which allows, for instance, people to port it (as they have done) to other implementations freely is rather different than `just happening to cost nothing' and more than adequate to classify it as open source.
I don't want to take any sides in this whole battle, but it's kind of annoying that some people seem to be so entranced by the jkf-bashing that they're making all sorts of misleading statements like the one I quote above. I guess I should expect this on usenet by now though...
> > However, there is something _very_ seriously wrong with the Common Lisp > > community. People _in_ the community feel that it is perfectly OK to > > debase, denigrate, ridicule, denounce, disrespect, insult, defame, and > > smear Common Lisp. Instead of telling people how great a language we > > have, some certifiable nutcases spend their time propagandizing and > > agitating against the language, creating stupid deviant versions and > > breaking with the language as defined, doing something other than what > > was agreed upon, and introducing "features" that cause the knowledge > base > > for the language to be polluted and the skill of knowing Common Lisp to > > be nigh worthless when faced with individual Common Lisp systems.
> While I hope this is an exageration of the reality I agree there is this > tendency and it is a negative one though it need not be. I think it stems > from two things, one a good thing one not.
> The bad: people are letting the pressure of mainstream opinion beat them > down. Even if they like lisp, they get so much flack from others who know > nothing about it, they feel they have to put it down themselves. A "herd > mentality"takes over, even though they want to be different, they are afraid > of what it really requires.
I had an experience with this recently and as someone approaching LISP for the first time it almost completely threw me off. I come from a web application development background, and have reached a point where I am getting into developing fairly heavy duty programs, and need to start making server objects to handle most of the algorithmic aspects of the application. So I thought I would see what is out there in the way of good languages. My main concern was fast development, readability for maintenance and the ability to add functionality easily as I was looking at a project where these were crucial aspects and I wanted to add several layers of configurability form clicking boxes to having a simple language which power-users could use to increase their level of control, as well as operating on a windows platform. I was rebelling at having to learn VB and I was not impressed with it when I had to use it, so I looked at Java as I had experience with it before and I had been using a lot of Javascript, but found that although it was an improved C++ although slower it still was just that an improved C++ and things became unnecessarily complex quickly. So I thought I would take the time and look at studies and reports from developers about using particular languages. In the process I came accross Lisp and Python, and an article by Paul Graham about his experiences with his starup ViaWeb that is now the base of Yahoo Store.
The more I looked into the two languages, I started asking friends who are developers with more experience than me who are using Delphi (pascal - which I have used before) and VB (because of where they are working now), about Python and Lisp. They admitted to knowing little about Python except that it was a scripting language which seemed to imply saying it all (something about limited access to interfaces which was greek to me). Lisp on the other hand was considered a really cool language but useless for anything except manipulating strings. I have to admit that this threw me off, and I was determined to learn lisp if for no other reasons than for the way it was improving my approach to development, and then move onto Python for practical purposes.
I am glad that I have stuck it out as I have been finding that although so far I haven't managed to start digging into the system part of the implementations I have been looking at, the way in which it allows me to code robust algorithms, and build in steps means that I am going to be moving hell and high water to keep it as the core of my applications, and the power is amazing...
Finally my point: That offhand comment I took seriously because of its source, this was an experienced developer, and if I had not been of a sufficiently impractical bent to have spent a lot of money and years pursuing the study of philosophy, I would have dropped looking farther into Lisp. It is an amazing language and facility but suffers from some seriously bad press as an impractical language that all these eggheads are using to try and create artificial intelligence with, and take over the world or get us all killed in the process(;-)). Who would have thought it was a powerful and practical language that could do things other languages only dream about. Even now I have been secretly studying it on my own time, and when I run across a cool way of doing or thinking about a problem I have a huge translation problem to recreate the solution at work in the languages I have to use there.
Lisp needs a good press core:-) At the moment as I found out there are people who have gone in different directions who studied Lisp at uni but never really used it being the bottom-line on Lisp's practicality, and this is not right. At the moment I have not managed to be good enough to create anything practical with it, and am working hard at doing this and then I will be busy debunking the myths I run into with cold hard code, and hopefully moving to a job where I can use it all the time.
So I am a recent convert and I hope there are more of me out there and as I am opinionated I will have no problem telling employers that I will be able to get that project for them in something they have heard of, or in 1/3 the time using Lisp.......
God I do go on..
> The good: lisp people tend to be the kind of people who question things and > think hard about elegance and the Right Thing (certainly compared to most of > the other large programming communities) People who question find fault. > But I agree with Erik that this can be done in a constructive and positive > way without "throwing out the baby with the bathwater"
> > Can we do this? Can people who are still enthusiastic about Common Lisp > > the language, even after reading a 20K long news article, please raise a > > hand and express their feelings? Can you stand up and say "I _love_ > > Common Lisp!" in a crowd and feel proud of yourself?
> I _Love_ Common Lisp!
ME TOOOO!!!!
> (I am also blessed to have worked with it in my last two jobs as well as my > current position!)
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
* Tim Moore wrote: > Here's an example. I'm not attempting to prove that "early out" has a > huge advantage with these toy fragments, but merely to illustrate what I'm > talking about:
That is exactly what I was trying to say in an earlier article, but didn't put so clearly. I have plenty of code which has big hairy functions which have to find and validate a lot of state information before doing some operation where there are many possible was to fail. They end up looking like this:
(defun do-one-conversion (....) ;; Returns successp, new state, optional comment. ;; signals CONVERSION-ERROR if something really bad happens (state ;; may be bad) (flet ((succeed (new-state &optional comment) (return-from do-one-conversion t new-state comment)) (fail (&optional comment) (return-from do-one-conversion nil nil comment)) (bad (...) (error 'conversion-error ...))) .... (unless thing-is-ok-p (fail "Thing is not OK...")) .... (when donep (succeed 'fishy "OK, new state slightly smelly"))))
Of course some would argue that I shouldn't write such hairy functions that I need this kind of internal protocol, but for the system concerned it was rather hard to see how to do it otherwise (you'd need to see the code to see why).
> I don't use these comments unless I am really confused, but maybe > %10 of the time or if I am trying to be too clever for my own good > I end up needing to stick "; else bla" or "; implicit else" if I abuse > when with return etc. I don't see a big difference here, but I also > think my server missed the beginning of the thread.
One difference is that if* gives you implicit PROGN's.
-- Lieven Marchand <m...@wyrd.be> She says, "Honey, you're a Bastard of great proportion." He says, "Darling, I plead guilty to that sin." Cowboy Junkies -- A few simple words
> Being blind to bad sides of your kid is a good start to raise a > homicidal maniac. Look what happened to C++ or perl ;).
Nobody advocates turning a blind eye to bad sides of CL. The point is that incompatible improvements should be an *option*, and/or should be made to work alongside the standard way of doing things, until the standard is updated to include said improvements. An update of a standard is done through an orderly process, not through SNIPING and COUP D'ETAT. That way you can have a diverse community without the members stabbing each others backs. -- Håkon Alstadheim, Montreal, Quebec, Canada
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 Erik Naggum
>> I don't use these comments unless I am really confused, but maybe >> %10 of the time or if I am trying to be too clever for my own good >> I end up needing to stick "; else bla" or "; implicit else" if I abuse >> when with return etc. I don't see a big difference here, but I also >> think my server missed the beginning of the thread.
>One difference is that if* gives you implicit PROGN's.
A curious thing is that Foderaro could have easily _extended_ IF to his IF* in a backward-compatible way if he'd wanted.
0. Have IF* do everything that it's currently spec'ed to do, with the following mods:
1. Make THEN always optional -- which, among other things, makes (IF* a b) equivalent to (IF a b).
2. If there are no THENs or ELSEs among the IF*-form's subforms, assume an ELSE after the second subform. Thus, (IF* a b c) is equivalent to (IF a b c). Also, (IF* a b c d ...) is eqv to (IF a b (PROGN c d ...)), as in Emacs.
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.
4. People who use the new IF as the old IF won't have a complaint. They can only run into problems if their use of the IF would have been an error in the old IF. (Minor caveat: THEN and ELSE must be known to be macro keywords.)
5. Add several minutes to your life from having avoided flamage for introducing a new conditional, while retaining all the features you want to keep you in a happy condition (!).
6. Re-lose those minutes when users run your code in a CL that doesn't have the new IF.
In article <ey3u1yingat....@cley.com>, Tim Bradshaw wrote: > * Marc Spitzer wrote:
>> If I remember correctly allegrostor was announced as a working >> finished, version 1.0, product that only ran on ACL at the time. And >> that franz had no intention of porting it to anything else. It was >> treated like any other product and just happened to cost nothing. I >> would not call this an opensource movement type of operation. It was >> pure commerical development so I do not see how any of the opensource >> stuff applys.
> [You mean allegroserve, not allegrostore I think]
Yes.
> I think making the source available under an open-source license which > allows, for instance, people to port it (as they have done) to other > implementations freely is rather different than `just happening to > cost nothing' and more than adequate to classify it as open source.
correct, I was realy tring to comment on the development model which was not a opensource until ver 1 when it was announced and opensourced. That the development model used commerical before that was the point I was trying to make.
> I don't want to take any sides in this whole battle, but it's kind of > annoying that some people seem to be so entranced by the jkf-bashing > that they're making all sorts of misleading statements like the one I > quote above. I guess I should expect this on usenet by now though...
> --tim
I do not know jkf and am not interested in 'bashing' him. But he set the tone for the discussion when I looked at his coding standard and he said in it essentialy that if you do not do it my way you are a stupid person and I did not agree with him. Now that is insulting to me. And through out the disscussion that we engaged in he did nothing to improve the tone. Now perhaps I was a bit too adverserial but I do not think I was.
Håkon Alstadheim <hakonm...@enitel.no> wrote: > > Being blind to bad sides of your kid is a good start to raise a > > homicidal maniac. Look what happened to C++ or perl ;).
> Nobody advocates turning a blind eye to bad sides of CL.
Neither do I, but you trim that part of the quote.
You seem to miss the context in which my reply was written. My message was among the very first replies, but I guess most of the thread contents is now "above" my message in the thread.
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 John Foderaro
* Erik Naggum wrote: > (defmacro then (&body body) > `(progn ,@body)) > (defmacro else (&body body) > `(progn ,@body))
I've recently had to deal with some code which did exactly this. So it had a very nice syntax (well, if you like that kind of thing)
(if x (then ...) (else ...))
The problem was that the macros were defined just exactly as you have them above, so there was no enforcement of the syntax at all. So things got completely mixed up, and you'd find things like:
(if x y (else ...))
and even worse, there was no mechanism to prevent THEN and ELSE just finding their way into code outside an IF, which they did on occasion due to editing errors.
All this was apparently because the people who wrote this framework either didn't understand or didn't want to use the package system. They wanted you to *have* to write THEN and ELSE (they had a kind of sub-CL dialect in which you were meant to write), but rather than defining a SUB-CL package in which they would have their own IF which would check for the syntax they wanted, they'd just defined macros like this.
Well, I don't work on that system any more, and this is one of the things I don't miss. There were other horrors.
* 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've recently had to deal with some code which did exactly this.
Geez, somebody _did_ that? For real? That is just sickening.
I guess I should have "commented" the code and explained why I thought it would be an obvious "bad joke", on par with #define BEGIN { in C, but which would illustrate that having implicit progns is not such a big deal.
This might also be a good time to state that I really want to use progn in multi-form consequents and alternatives, to increase the readability of complex if forms. That is, we already have all the mechanisms we need to identify more complex forms. And wrapping a single form in a progn is real easy with a real editor. Just like loop forms are hard to navigate, so are keyword-based "separators". But I guess some people want progn to go away so hard they just have to reinvent it badly.
On Wed, 05 Sep 2001 00:05:23 GMT, Erik Naggum <e...@naggum.net> wrote: >> Intelligent people can disagree with majority opinion and/or hold silly >> opinions of their own without being pilloried as the enemy of the state. >> If not, it's the state and its defenders that I'd question, not the >> individual.
> Grandiose speech. Competely irrelevant to this case, however.
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_.