arien wrote: > wow, you are weird. What an insulting reply.
You should listen to mr. Naggum. Once you dig past the insults you will not only realize that he is worth listening to but also that insults are only in your head.
In my frst encounter with Erik I made the same mistakes as you do now. When I got that episode in perspective I learned quite a lot about quite a few things. Erik was certainly not the only reason for this, but he was an important catalyst.
arien <spammers_s...@getlost.invalid> writes: > In article <3244416742443...@naggum.no>, e...@naggum.no says... > > * arien <spammers_s...@getlost.invalid> > > | yep, you are still weird.
> > You keep claiming that you have problems learning Common Lisp. Your real > > problem, however, is that you appear to have to force-fit things to fit > > your preconceived notions. This is not a Common Lisp problem. This is a > > personal problem on your end. Your lack of ability to understand that > > other people have a point of view that you may benefit from understanding > > is downright annoying. This is all about you, you, you. Nothing you do > > here is about understanding others. The whole fucking world has to adapt > > to /your/ way of looking at things. People here have tried to help you, > > in their spare time. Goddamn ungrateful egoist.
> > | Perhaps you should re-read all the posts, right from the start.
> > Other people are not like yourself. Other people read fast and have a > > very high comprehension and retention of what they have read.
> > | I never came here winging about Lisp. I came here trying to seek > > | understanding.
> > But only on your own terms. That is not understanding.
> > | All I got is weird idiotic cyber freeks like you flaming me, trying to > > | tell me I dumb.
> > Have I said you are dumb? No. I have implied very strongly that unless > > you have better ways of expressing yourself, your very stupid actions may > > well reflect on your person. You have a choice here. You can either > > confirm people's suspicions by not doing any better, or you can exercise > > the freedom that I and many others (who are not like you) grant other > > people at every interaction. You are obviously not used to being given > > second chances, but insist on dwelling on the past instead of looking to > > the future. Your whole obsession with how hard Common Lisp is compared > > to Java just confirms this unhealthy dwelling on the past. Get over the > > past. You can do nothing about you. You can do just about everything > > about the future.
> > | I'm not, and all I could do is defend myself.
> > No, all you could do is do something better. Nobody is interested in > > your how defend your past mistakes. Everyone is interested in how you > > learn from them, improve yourself, and do not repeat them. Only you are > > interested in defending yourself. It is indecent of you to force people > > to sit through your egoistic self-defense. The purpose of criticizing > > something you said was that you learn from it, think, and improve. If > > you all you can do is defend yourself, you were a waste of time to > > respond to.
> > | Now I'm getting flamed for defending myself - wow!
> > Defending yourself when /you/ are not attacked is incredibly stupid. It > > means that whatever criticism was directed at your actions may have been > > the best you can do and there is no hope to see you improve. For most > > people, this is not how they should present themselves.
> > | No, it's called defending myself following a barage of critism.
> > Nobody is interested in your self-defense, only in your doing better.
> > | Others in the same thread have already admitted that the parentheses in > > | lisp can be difficult
> > Some feel-good jerk does that in order to make you feel good. See how > > much that really helped you understand anything. I know that people who > > make whining noises like you do would seize upon any such feel-good crap > > and use it as a reason not to exercise yourself. Ignore the feel-good > > guys and just /do better next time/. I will applaud you if you do well > > and reprimand you if you do not get the point but insist on defending > > yourself. Unlike the feel-good guys, I have zero interest in you as a > > person, only in what you came here to do: Learn Common Lisp.
> > | But you need to stop denying that the problem doesn't exist - it does.
> > The problem you perceive to exist does not exist. There is a problem, > > but it is not what you think it is. You refuse to listen to people who > > have seen literally hundreds of people before you whining just like you > > do. This ignorant arrogance is not to your credit.
> > | I never came here whining. You need to learn how to read. Why don't you > > | start at the top.
> > And just /when/ did your arrogance reach such heights that you think you > > are here to give people advice? Geez, the snotty attitude of some people.
> > | hmmm.......did I blame my tools did I. Your starting to state things that > > | are not true. Learn how to read.
> > Perhaps you should try to understand /why/ somebody reads you this way > > instead of getting your stupid high horse to defend yourself? Nobody is > > interested in your self-defense -- only you. Here we care about getting > > the point and learning to program in Lisp. That is why you claim you > > came here, but is not actually true, is it? You came here to ask people > > to validate your pain. Some people are into this kind of touchy-feely > > crap, and others are not. If you attack those who are not into these > > psyche games, you run the risk of losing the sympathy even of the former.
> > | Ah, an analogy. Wow, very impressive. Actually, I hate McDonalds, and I > > | enjoy fine wine. In fact, I used to live in the Barossa Valley. What your > > | talking is just trash.
> > Your inability to get the point of the analogy does suggest a deficient > > mind.
> > | Be careful using 'we' on usenet. TINW, haven't you ever heard of that.
> > Look who forgot their chill pill this morning! Did you want to learn > > Lisp or did you come here to defend yourself when you /have/ been an > > idiot and /continue/ to act like an idiot? Make a choice. If you have > > been stupid, nobody will hold that against you, especially not I. If you > > continue to be stupid when you have been asked to stop, that /will/ be > > held against you. Get with the program! Focus on your stated goal.
> Look, there are others who *are* actually helping me here. Your wasting > usenet space with your abuse, and frankly, I'm tired of reading it. I'm > going to stick with those that are helping me.
> If you can't post something helpful, well, I guess killfile will work. > Consider this only a warning. Any more abusive posts, and you'll be > kill-filed.
Look, you will not alter Erik. Others have tried and he remains Erik. You must learn to deal with his presence in this newsgroup.
* If you do not want Erik to respond to your posts, do not respond to him. Erik *never* as far as i've seen follows up his own posts to heap more invective. Just let it die. You man say, "but then Erik wins!" So what. We *all* win by letting this stuff just end.
If you can't help but answer, just killfile him already. Don't talk about it. Not to be harsh, but no one else cares.
* Erik has a lot of insight into complex problems. Ask a technical question which you have done some research on (at a minimum look to the common lisp hyperspec) and Erik may respond with a very useful answer.
* It is also useful just to lurk and read what is going on here. There are a lot of very good programmers with years of experience. You can learn from them.
* Think about how you ask a question. Try to find out a bit on your own. Ask humbly, but there's no need to grovel -- i.e., say "I saw this but it doens't make sense to me, is this how it should work?" instead of "This lanugage is pants because X does it some other way." Lisp does a lot of things differently than other languages. Many times there is a very good reason for that.
arien <spammers_s...@getlost.invalid> writes: > I have NOT been lisp bashing. Here is a quote of my first mention of > parentheses (which is in fact a reply to someone else):
> ---------------------------------------------------------------------- > Hey, I agree with them on the silly parentheses! I haven't had a single > error yet that wasn't caused by parentheses being in the wrong spot!
> Damn things ((((((((((((((((()))))))))))))))))))))) > -----------------------------------------------------------------------
> I don't see this can be considered lisp bashing, but yet I was still > flamed for this. I was told I was 'dumb', I'm not thinking, it's my own > problem if I can't learn etc etc.
> My natural response to being told that I'm 'dumb', was to defend myself. > Also, to some helpful people I clarified *why* I was having problems > with parentheses. This is NOT lispbashing.
Doesn't sound like lisp bashing to me either. Just the expected frustations of someone hitting some new irritant. And the mere fact that every language has them doesn't make lisp's less irritating.
Seems to me you've got a reasonable awareness of the learning curve, so I think you'll do fine. You said this class was more using lisp than teaching it? If so, you're doing the right thing seeking out some extra info sources. With some perserverence, you'll progess from "why is this 100 line program so HARD???" to "I can't believe how much I can do with 100 lines" to "woo hoo!" to "Please don't make me write this in C++!" in no time.
(I'd much rather email this, but you don't provide an email address.)
It's best just to ignore Erik Naggum. You'll be sucked into a mire of hostility if you argue with him.
If you feel you need to prove your good intentions, the best way is to continue constructive discussion, not to argue the (mis)interpretation of your earlier posts with people who don't respect you. -- Pekka P. Pirinen If you don't succeed at first, try again. Then quit. No use of being a damn fool about it. - W. C. Fields
Tim Bradshaw <t...@cley.com> wrote: +--------------- | <name attributes>body</name> | | Well, let's ignore the attributes bit for now (it's clear that you | could do this, by requiring attributes to be specified as some initial | element in the body, and you can also actually add the attributes to a | Lisp syntax if you want). +---------------
That's one way to think of Lisp documentation strings and declarations, actually, as attributes of the expression they're attached to!!
----- Rob Warnock, PP-ASEL-IA <r...@rpw3.org> 627 26th Avenue <URL:http://www.rpw3.org/> San Mateo, CA 94403 (650)572-2607
arien <spammers_s...@getlost.invalid> writes: > In article <ey3k7kgviqk....@cley.com>, t...@cley.com says... > > * Christopher Browne wrote:
> > > No, the point was that it reported "bad constructs." That's exactly > > > what this thread has been talking about.
> > But the specific thing I followed up to was saying:
> > I have always detested compilers that report things like: > > ``Expected a ; found a }''
> > If it is smart enough to know what ought to go there, why doesn't it > > just fix it?
> Because the solution may not be missing a ; at all. Although the > compiler reports this, it may actually be something missing eariler in > the code. Look at this Java code for example:
> System.out.print ("Print this statement);
> now this is just an example. When you try to compile this, it reports > that a ) and ; is missing. Now, they're not missing at all. The " is > missing, so the compiler leaves this up to you to intepret the problem > and fix it.
> But like I said, at *least* Java takes you to the line that the error > has occured. The quote mark is also pretty easy to identity in any > editor.
This is true. I was baffled by how to find the error line. Learning lisp for me is as much about unlearning habits and techniques of other languages as it is in learning lisp.
Here is my way of dealing with this.
Make smallish functions and use the link between your editor and the running lisp environment. In emacs with ilisp, I go to the end of a defun and hit C-c C-e. This executes the defun and when the compiler complains there are only a few lines which are in play. It is then *much* easier to find the error.
Johan Kullstam wrote: > Make smallish functions and use the link between your editor and the > running lisp environment. In emacs with ilisp, I go to the end of a > defun and hit C-c C-e. This executes the defun and when the compiler > complains there are only a few lines which are in play. It is then > *much* easier to find the error.
FWIW I use xemacs. However, I tend to put stuff in a xemacs buffer, compile the blessed thing and then M-x goto-char <nnn> at the whinge point.
* Pekka P. Pirinen | It's best just to ignore Erik Naggum. You'll be sucked into a mire of | hostility if you argue with him.
People who make this argument say something about themselves that smarter people than them know well how to interpret.
The arrogance of people who confuse their opinions with facts is one of the things I attack. You demonstrate quite clearly that there is useful distinction between your conclusions and observable reality. Therefore, you are never wrong in your own view, and anyone who counters your claims is wrong at best, irrational at worst. For people who have acquired the insight that their conclusions are not identical to reality, but based on their limited understanding of a limited part of it at the time, the ability to learn from their mistakes follow naturally, as well as their ability to deal with people who have observed more or different parts of reality than they have. You clearly lack the prerequisite insight. This has been obvious for years from the snotty remarks you make when you think you know the only possible answer and your silence when it becomes clear that it was far from the only possible answer.
People who have learned how to think discover others who share this joy and tend to be annoyed with people who have never acquired that skill and especially those who consider themselves superior /because/ they believe they do not "have to" think, which they consider a dirty practice of people who do not automatically know the Truth, like they do. Pekka P. Pirinen has come across as that kind of arrogant ignorant asshole far too long to have gone unnoticed as such by those who are /not/ so incredibly happy to have found the first answer that they never look any further.
If you know what you talk about, I listen. If you do not, and you do not listen, either, I may be scathing of your stupidity, because you should know better. Some people never understand what they have done wrong, however, because they believe that listening to other people is a waste of their valuable time, especially when they prefer their prejudices to learning something that may cause them to feel as ignorant as they are.
Pekka P. Pirinen is one of those lucky men who cannot be taught anything. Sadly, he only finds it worth his time to share of his infinite wisdom when he can hurt someone with it. This is the main reason he gets into a mire of hostility, like the defectiveness of "Mel" got her into trouble.
The most tragic part of all is that people like Pekka and "Mel" actually believe they are perfect and models for all the rest of mankind and then it could not possibly matter to them how evil they are towards others.
-- Erik Naggum, Oslo, Norway
Act from reason, and failure makes you rethink and study harder. Act from faith, and failure makes you blame someone and push harder.
arien <spammers_s...@getlost.invalid> wrote: > In article <87fzuwecaq....@darkstar.cartan>, n...@cartan.de says... > > arien <spammers_s...@getlost.invalid> writes: > > > I detest people who categorise people on the internet. > > Hm -- why? And why specifically on the internet? Ah, never > > mind... > your not female, so I guess you'd never understand.
I never realized irony meters could explode in technical newsgroups until I met comp.lang.lisp. I've long since stopped exposing them in soc and talk...
Michael, learn something new every day.
-- Michael Sullivan Business Card Express of CT Thermographers to the Trade Cheshire, CT mich...@bcect.com
> I don't think so. Checking on the IMDb, I found 158 male Mel actors as > opposed to 13 female. Sure seems like a reasonably safe assumption that > a random Mel is male.
Ooops, forgot to compensate for uneven gender distribution. There are 415,361 actors on IMDb, and only 251,821 actresses. Assuming that this population is representative, about one Mel in 8 should be female.
;; * spammers suck wrote: ;; ;; > You gotta admit, there's not many Mel's around that are male. ;; ;; I don't know. Mel Brooks, Mel Gibson, Mel ;; who-was-in-not-the-nine-o-clock-news-but-I-can't-remember-his-name. ;; ;; It's a fairly ambigous nickname, I think.
I imagine that Mel can be short for Melvin, for a male, and Melanie for a female.
> If you can't post something helpful, well, I guess killfile will work. > Consider this only a warning. Any more abusive posts, and you'll be > kill-filed.
Wow, here we see a wonderful example of the Usenet-equivalent of not liking someone else in the sandbox and covering your ears and shouting "La la la la... I can't hear you... la la la la". You may be a mature student (according to New Zealand standards, if such a thing exists), but your actions are anything but mature.
On a bright note, I found a definition of "arien" which wholly applies to you:
"The word 'humility' will not be found in their lexicon. In their climb to power, some will ruthlessly liquidate anyone who stands in their way. Such undeveloped Ariens put 'self' first and foremost and not a few become megalomaniacs."
Putting "self" first... well, that just about explains everything now doesn't it? Very apt choice of monikers, I must say.
> I'm using LispWorks. Yes, the editor helps, but it's still can be > confusing. Initially I kept putting the last bracket for 'cond' in the > wrong spot, for example:
> (defun myFunction (myList) > (cond ((listp myList) > (myfunction (cdr (myList)))) > (t nil))) ;I would put the closing bracket for cond here
> instead of:
> (defun myFunction (myList) > (cond ((listp myList) > (myfunction (cdr (myList)))));instead of here > (t nil))
> I've learnt this one now. But as you can see, an editor doesn't help you > find this problem, since all the parentheses are there, but one is in > the wrong spot.
Two observations. The first one is that your first function above is the correct one. The second function has the incorrect location. It seems that they are labeled the other way around in your example.
The second observation is that you are not letting your editor do the indentation for you. You have to let the tools help. If you were to use an editor with proper indenting of code (I'm not familiar with the LispWorks editor), you would have seen:
In example , all of the test clauses of the COND are aligned underneath each other. That is the correct version, since you want the LISTP test and the T test to be at the same level. In example , you can easily see the error, since the T is at the same level as the COND.
You get the same effect with other languages, such as Java. It is not always immediately obvious where things are missing in Java unless you follow the normal line breaking and indentation conventions either:
a = 3*b+1001 c = 5*a;
a = 3*b+1001 c = 5*a;
In the latter case, Notepad won't help you find the missing semi-colon because it is missing from the middle of the line. Now you probably wouldn't write your Java or C code like this. Nor should you write Lisp code without respecting the structure of the program. The IDEs for Java, etc. also indent your code, which is invaluable for finding the misplaced } characters in complicated code, particularly if you have a lot of conditionals and error handlers. This may not be so apparent when doing school assignments, but in real code it gets to be an issue.
By the way, I just took the code from your message and indented it using Emacs. There was an observation made in a related parenthesis-bashing thread a couple months ago that with experience, you end up not focusing so much on the parentheses, but rather on the indentation structure. That is why tools help so much.
> I kept getting an error saying that glist couldn't append with an atom. > We were puzzled since we had explicitly defined (car pattern2) as a > list.
> As it turn out, the global variable 'glist' had been set as an atom in > an earlier test of the program. It took a long time for us to find this > error, since there was nothing wrong with that piece of code. We just > had to include at the start of the program: (setf glist nil)
Well, I think you drew the wrong conclusion here. The correct conclusion would have been perhaps not to use global variables. That is why the language has the nice construct LET. Now, many other languages (such as Java, etc.) will not let you use variables that you haven't declared. Lisp doesn't always provide the same degree of hand-holding, but the same general principles apply.
The second conclusion is to not use variables that you haven't initialized, but again this is a universal programming truth.
You shouldn't use global variables unless you have very carefully thought it out, since they open the way for bizarre interactions between code that is not textually close together. In some cases it is expedient to use special variables, but you really shouldn't make them truly global. At the top-level of the program section that wishes to use these variables, they should be bound to a value that you like (again using LET). An example:
Note also that because of the non-local interaction, most Lisp programmers have adopted the convention of surrounding their special variable names with "*" characters. It signals that one has a variable with dynamic rather than lexical scope, and makes it easier to understand the code.
To preempt the question about the lack of hand-holding, one benefit of it is that it can be quite handy not to have those restrictions during the early, exploratory phase of program design. Lisp makes exploratory programming and debugging much easier by having a lot of flexibility and access to the code. The down side is that this flexibility can end up biting you.
> So there ya go. It's all fixed now, but this is an example of the grief > I went through.
OK. But as long as you learn the correct lesssons, the grief is at least not wasted.
-- Thomas A. Russ, USC/Information Sciences Institute t...@isi.edu
In an attempt to throw the authorities off his trail, Vassil Nikolov <vniko...@poboxes.com> transmitted:
> On 24 Oct 2002 20:01:35 -0400, Petr Swedock > <p...@blade-runner.mit.edu> said:
> PS> I imagine that Mel can be short for Melvin, for a male, and > PS> Melanie for a female.
> Also, mel means honey.
???? Isn't that "miel"? It's certainly not something that the typical "unilingual English (USian or perhaps British) bigot" would think of...
I'd expect "Mel" to be far more widely used as a male name than as a female name because "Melvin" is a name that tends to attract sophomoric ridicule, whereas "Melanie" doesn't.
Kids have been using the insult "He's a Total Melvin" for at least 30 years. (I've been a recipient of something of the sort a few times.) That's a good excuse for seeking a name change, in much the way that a guy called "Gaylord" might well consider suicide...
I've never heard "Melanie" used as an insult... -- (reverse (concatenate 'string "ac.notelrac.teneerf@" "454aa")) http://www.ntlug.org/~cbbrowne/rdbms.html Why do you need a driver's license to buy liquor when you can't drink and drive?