* ma...@cs.uu.nl (Mario Frasca) | as I told you, I'm working on code which has been developed by someone | else. I am trying to have it automatically compiled, but there were | some circular dependencies in the sources, so I had to move some | functions from one file to an other and I have 'announced' the | dependencies in a set of require clauses at the beginning of each | file, so that I can be satisfied of working with these sources.
The way the system was compiled should be dug up. My hunch is it was all loaded in as source, and then compiled. You can very easily do that yourself, and it's much, much easier than what you've been doing so far.
| for some reasons, I don't manage to understand all this apparent | nonsense about the current package, since which is the current | package at a certain point in my sources is not defined statically | but dynamically and I'm not -yet- used to it.
Well, first you dispense with the opiniated bullshit that it's "apparent nonsense". To see why, judge how likely it is that you listen to what I said after I branded your opinion that way first. If you're really smart, it didn't affect you at all, figuring that I had my reasons to this very specific incident and that you could understand them -- the converse is not quite true for your reaction since it is not specific to anything anyone but you can determine. You continue to display irrational elements in your behavior towards the code you're working on. Just what does it take to make you snap into a more rational approach?
The current package is a read-time concept. When Common Lisp loads a file, it reads one expression at a time, then evaluates it. If that expression changes something in the global environment, it is available for the next expression to use. The in-package macro sets *package* to the package named by its argument for the duration of the file as load creates a binding of *package* that is unwound when the file terminates.
The current package is naturally _also_ a run-time concept, but it affects only functions that intern symbols in the current package, among them load and read, in addition to the actual function intern. If you don't use these functions in your own code, you don't have to worry about the current package at run-time, as all the symbols you need were interned at read-time.
Compilation of the files loaded does not alter these facts, as the file compiler's responsibility is to ensure that the semantics of loading the file is retained.
| references to a language I understand are a means to understand a | language I don't yet know well enough to express the things I want | to express.
How did you learn your first language? Why was that such a lousy experience that everything must now be done relative to what you first learned? _If_ it was such a lousy experience, I'm loathe to believe that you know your first language all that well. If you had no problems at all learning your first language, why not repeat the success? Either way, to base learning a new language on old stuff seems like a plan to lose. Part of learning that first language was to learn to _think_ in that language. If you don't learn to _think_ in the next language you set out to "learn", you won't ever manage to get your head around its concepts. That means what is called a "suspension of disbelief" in reading normal literature, i.e., the willingness to enter the universe of the book on its own premises. If you can't do _that_ successfully, you won't ever make a good programmer in any language.
And how come you had the patience to wait until you did know the first language well enough before you attempted something, but now you don't have that patience? Or _didn't_ you have that patience to begin with? A lot of people don't really possess the tinest shred of the personal quality of real patience that is required to be good at _anything_, least of all precision crafts such as programming or, say, target shooting (which I recently picked up because I run out of patience with computer programming at times :).
| If I was developing from scratch, I would use those parts of the | language I know, and study the ones I come across as I need them.
Why is this a bad approach if you are not developing from scratch?
| having to modify a complex interaction of poorly written sources is | as if you had to modify a bad Albanian text into a good Albanian | piece of poetry, you allow me to think in Italian while studing the | subtelties of that language? thanks.
I don't believe you really understand what it means to think in a programming language, nor have the patience to acquire that skill, so I'll just give up now.
| please, don't speak M$ to me. if you know it, you avoid it.
I "speak M$" to you? Geez. How the hell is it possible _not_ to do something wrong to you, Mario Frasca? I don't have the time to pander to someone whose sensibilities are so erratically tuned and who displays such a staggering lack of _reqiured_ patience. I would really suggest you do something other than programming computers.
#:Erik -- I agree with everything you say, but I would attack to death your right to say it. -- Tom Stoppard
On 19 Oct 2000 16:17:11 +0000, Erik Naggum <e...@naggum.net> wrote:
>* ma...@cs.uu.nl (Mario Frasca) > The way the system was compiled should be dug up. My hunch is it > was all loaded in as source, and then compiled. You can very easily > do that yourself, and it's much, much easier than what you've been > doing so far.
I'm not sure I understand what you mean here. I now have a function which on evaluation builds up all fasl's from modified sources. it is working, it did cost some time to have it work, but this is working so I'm not going to dismantle it.
> Well, first you dispense with the opiniated bullshit that it's > "apparent nonsense".
Erik, please read what I write before attacking me. I wrote 'apparent nonsense', not 'pure nonsense', as I don't think it is pure nonsense. I'm sure there is a sense behind it, but I fail to see it, that is: it appears as nonsense to me. I can't be more explicit and anyhow, you did provide me with a (apparently ;) precise description of the mechanism.
> The current package is a read-time concept. [...] > The current package is naturally _also_ a run-time concept, [...]
thanks.
> You continue to display irrational elements in your behavior towards > the code you're working on. Just what does it take to make you snap > into a more rational approach?
can you display rational thoughts in front of such 'challenging' code:
(defun input-diag-name () (setf *i-diag-name* (input-file-name "~%Enter name of diagram: " ideal:*default-diag-path-name*)) (initialize-diagram *i-diag-name* *i-evidence*) (evaluate-diagram) (format t "~%~A" ideal:*diagram*))
You may think that it is extremely clear what this is doing: outputting some text, get a string, initialize some data and perform an action on a diagram. but: is this what would you have expected of a function named 'input-diag-name? so who tells me that 'initialize-diagram is not *printing* some output, or that 'evaluate-diagram is not requiring any user intervention? unfortunately, I didn't need too much code-digging to find this pearl. there's as many as you need.
probably the only rational action is to do exactly what you said: print it and trash it. I don't really understand why I should print it before trashing it, but I guess it is a better personal satisfaction, possibly similar to what you could experience when burning a self-made flag of your enemy.
>| If I was developing from scratch, I would use those parts of the >| language I know, and study the ones I come across as I need them.
> Why is this a bad approach if you are not developing from scratch?
who said this is a bad approach? it is just not feasible. excuse me for being obvious: when I'm not developing from scratch, I have some sources I have to adjust. these sources contain code. this code uses parts of a language. that is: 'the decision on which parts of the language to use was already taken'. in other words, I cannot use those parts of the language I know and learn others which allow me to express more complex thoughts, but I have to learn those parts of the language which were used in the sources. I see a difference here, but maybe I'm just being pedantic.
you know something, this discussion did produce a good effect: I'm throwing away the sources I inherited and I'm writing this piece of software from scratch again. not a big deal: just 72kb of lisp sources.
* Paolo Amoroso <amor...@mclink.it> | I understand (A) and (C), but I fail to get the difference--if any--between | (B) and its implicit definition as a sort of "set complement" of (A) and | (C). Could you elaborate on this?
The purpose of a scope (B) is to make it easier on those of us who don't think productively in terms of "the whole entire universe of all possible positions, actions, plans, desires, and desiderata, except what I said in (A)". Usually, it is important to point out some of the most important issues that you do not want to address in order that you can practically and productively exclude discussions without having to enter another discussion to determine whether they are part of the negated universe of possibilities. Why did this need elaboration? Never been to a standards committee? :)
#:Erik -- I agree with everything you say, but I would attack to death your right to say it. -- Tom Stoppard
* Erik Naggum | Well, first you dispense with the opiniated bullshit that it's | "apparent nonsense".
* ma...@cs.uu.nl (Mario Frasca) | Erik, please read what I write before attacking me.
It's so ironic that you tell me this, because if _you_ can't even read more than one sentence at a time, you deserve to be attacked. The next sentence I wrote went:
To see why, judge how likely it is that you listen to what I said after I branded your opinion that way first.
Because I anticipated some morose response, I wrote this next:
If you're really smart, it didn't affect you at all, figuring that I had my reasons to this very specific incident and that you could understand them -- the converse is not quite true for your reaction since it is not specific to anything anyone but you can determine.
Can you please upgrade from "not really smart" to something like "at least not really dumb"? Then _maybe_ I'll listen to you. So far, this has been a waste of my time.
As you decided to label the problems you have "apparent nonsense" and have continued to display an astonishingly irrational approach to this whole task, with irritation all over the place, _and_ you make the _incredibly_ moronic response to an _obvious_ joke at your expense, there is very little hope for you to pull yourself together and crank your cranium contents into operation. But surprise me!
| can you display rational thoughts in front of such 'challenging' code:
I have been a "software project firefighter" for 20 years because I tend to calm down in the face of disaster, danger, and problems that refuse to submit to any solution. I get really pissed at "small" things like laziness and incompetence and unfounded assumptions, but that's because they aren't disasters, they're just sloppiness that could be prevented if the dickhead perpetrators had paid attention. I flat out _demand_ that other programmers have some similar traits: Get all worked up over some minutiae like LOOP or indentation rules for IF, but calm down, concentrate, focus, and think clearly and very rationally in the face of actual problems worth solving. If you can't do that, you have failed my lithmus test for programmers, but _should_ be smart enough to realize that that means something.
| probably the only rational action is to do exactly what you said: | print it and trash it.
I actually said "use it for target practice". Which is both much more violent than trashing it and at the same time much more calming since you don't want to destroy anything else in the process. It is obvious that one has to print something out before using it for target practice, but your stupid rewrite of the joke into "trashing it" means that the printing out makes absolutely no sense.
| I see a difference here, but maybe I'm just being pedantic.
Yes, and you missed the large print while getting upset over the small print. Getting upset over the small print means attention to detail, and that's good. Missing the large print means that your observational skills and rational approach to prioritizing your mental processes is sorely lacking, and that's not so good.
To recap (the large print): The technique where you employ more and more of a language as you grow used to them must _naturally_ be a good approach even to understanding legacy code, with the _obvious_ advantage that you have a guide to which features to look at next.
| you know something, this discussion did produce a good effect: I'm | throwing away the sources I inherited and I'm writing this piece of | software from scratch again. not a big deal: just 72kb of lisp | sources.
Glad I could help. That is just how I have made most of my money. I talked to an old friend the other day. He had been unhappy with the realization that as he got better in his previous job, he was asked to do more and more "dirty work" and that it thus didn't pay off to become better. The company he worked for lived off of the value produced by a 2 million line strong Fortran 77 system that needed continuous development. And you consider 72K much? It probably benefits greatly from rewriting in the first place, and the risk of doing so should be minimal.
Please don't believe that 72K is a lot of code. (72K _lines_ is getting there, of course.) GNU Emacs 20.7 has 749K lines of C and Lisp code, some 25M total. The 2.2.17 Linux kernel consists of more than 2.1 million lines of C code, 64.5M total. A system I wrote single-handedly (with excellent code review along the way) in four months consists of 5200 lines (198K) of "infrastructure and support" code and 2700 lines (104K) of "application" code. This is a _small_ system in my view. I'm _so_ not impressed or sympathetic to your 72K and your plight. Quit whining and go do some real work, now.
#:Erik, who wonders why he bothers with these whining kids -- I agree with everything you say, but I would attack to death your right to say it. -- Tom Stoppard
When you engage in Followup-To wars like this, you show everybody that you are a useless pest in _any_ forum. How could you think you could possibly benefit from such moronic behavior? Did you intend to show me that you really had a working brain? Well, _that_ failed.
| a few days ago I wrote you something like 'now I know how to read your | posts'. maybe it is interesting for you to know what I meant by that.
No, it is not. People who decide that they have _found_ the answers they need are braindead and not worth spending any effort on at all. If your (stupid and even silly) conclusion about "how to read [my] posts" is now decided and no longer open to evidence, it has itself become prima facie evidence that you are no longer worth talking to, because you prove with that methodology and approach that you cease to listen when what people tell you goes against some property of your personality. This is what I want people to show me and a small number of people do not understand that they can do something other than prove that they are prejudiced, braindead wastes of space despite very clear signals that the simple act of making up their mind to discard future evidence is what shows that my commentary on their lack of thinking skills is _precisely_ to the point.
If they were _not_ complete morons, they would figure out that the way to change somebody else's mind is to provide them with some evidence contrary to their current beliefs, but since they do not themselves change their mind in the face of contrary evidence, this fantastically simple idea never enters their dysfunctional brain, thus proving me right. One would have thought that the slightest bit of intelligence at work would be able to predict the result, but for some bizarre reason, the idiots who feel the urge to go postal never acquire the ability to predict behavior that even _dogs_ have. Let's make a wild guess and assume that you thought something along these lines: "If I post this phenomenally uninteresting drivel and direct followups to misc.misc, _then_ I will surely avoid being attacked for behaving like a moron, because that's the smartest thing I can possibly do." Am I getting close?
Do you think computer programs can predict what is likely to happen in that scenario? Just how un-advanced artificial intelligence does it take to out-predict Mario Frasca? Not a helluva lot, buddy.
| unfortunately, the isTechnical still needs some work at, so I do | need to perform it by hand.
Amazingly, you managed to post something _intentionally_ devoid of technical contents while complaining about others. That is pretty darn funny when you want to prove that you have _nothing_ worthwhile to say to a forum. Congratulations are in order.
| I think the rest of the newsgroup will appreciate if we switch to | private e-mail for our off topic rants.
I think everyone would appreciate if you could just try and stop your off-topic bullshit and get back on track, whatever the hell that might have been.
#:Erik -- I agree with everything you say, but I would attack to death your right to say it. -- Tom Stoppard
On 24 Oct 2000 14:17:11 +0000, Erik Naggum <e...@naggum.net> wrote:
>* Mario Frasca >| Followup-To: misc.misc
actually, my first choice was alt.rants, but our newsserver doesn't provide such a group.
> Did you intend > to show me that you really had a working brain?
no, I intended to stop this useless sequence of --- undefinable crap.
> Well, _that_ failed.
evidently.
> If your (stupid and even silly) conclusion about "how to read [my] > posts" is now decided and no longer open to evidence,
I'm always oper to new evidence.
Erik, I was just trying to avoid all of us your useless sequel of personal insults. I really wonder why you need to do so. I was asking for some specific help while working on this badly setup software, and you did manage to give some useful technical help, for which I still thank you. but you also called me braindead and moron, and you called the person who developed the software I inherited 'a neanderthal'. apart from the fact that you don't know either of us, what is the use of the insult in first place? It doesn't help me doing my job better, but if it helps you, well, I'm sorry for you.
>| unfortunately, the isTechnical still needs some work at, so I do >| need to perform it by hand.
> Amazingly, you managed to post something _intentionally_ devoid of > technical contents while complaining about others. That is pretty > darn funny when you want to prove that you have _nothing_ worthwhile > to say to a forum. Congratulations are in order.
that was in fact not a good thing. the reason for doing so was: I don't like being called an idiot in public and not even have the right to answer before the same public.
by the way, do you mean that most of your posts are not intentionally devoid of technical contents?
to close this discussion, I hope you allow me to use your words... they sounded offensive to me, but I'm sure it was just an impression.
"I think everyone would appreciate if you could just try and stop your off-topic bullshit and get back on track, whatever the hell that might have been."
* Mario Frasca | > Did you intend to show me that you really had a working brain? | | no, I intended to stop this useless sequence of --- undefinable crap.
What do _you_ call people who do something that even a smidgeon of applied intelligence would be able to predict would not cause what they "intended", but rather quite the opposite?
And what's worse of some idiot who _lies_ about his intentions in order to cast himself as a good guy and some _real_ moron who fails to predict the obvious results of his actions?
The sad but funny part is that you _would_ have stopped my "useless sequence of undefinable crap" by showing me that you had a working brain, but you are quite right: You did _not_ intend to show me that you have. Hence your _escalating_ idiocy, showing me that you are about as intelligent as a boxer (take your pick in dogs or brutes).
The only thing that could cause me _not_ to regard you as an idiot is _counter-evidence_, not some retarded displays of anger on your part. The question is not whether you like to have your behavior described as idiotic, but what you do once it happens. If you go on behaving like an idiot, well, duh. If you get smart and put the label to shame, I'm to blame, instead. You _choose_ the former.
And _really_, if you don't like insults, stop using them yourself! It is _really_ idiotic to think you can blame me for your behavior.
| Erik, I was just trying to avoid all of us your useless sequel of | personal insults.
_Really?_ And now you are arguing that you have not yet figured out exactly what causes them? What am I supposed to think about you?
| I really wonder why you need to do so.
No need to wonder. You already know everything you need to know. Just start to _think_. Just start to behave rationally in the face of something you do not like, such as being called an idiot because you behave like one or the legacy code you also fail to understand.
The more you choose to "fight back", the worse you're going to lose. The more you choose to think and respond rationally, the more you're going to win. If you _want_ to be branded a moron and you _want_ that to stick to your name for a _long_ time, do fight back! If you resent being called a moron, do something that will cause that label _not_ to apply to you. This is what applied intelligence is about.
| I was asking for some specific help while working on this badly | setup software, and you did manage to give some useful technical | help, for which I still thank you.
Funny way of thanking me, or is _your_ behavior acceptable in your world when you suddenly have moralistic urgings? You see, it is obvious from your behavior that you think you can blame me for it. That is really what ticks me off when it comes to blathering idiots, and it is, incidentally and interestingly, the same moronic attitude problem that keeps the peace in the Middle East from having a chance.
| but you also called me braindead and moron, and you called the | person who developed the software I inherited 'a neanderthal'.
And now that you have been called these things, you do your very best to prove them right. Why do you do that? Are you unable to get _yourself_ out of thinking you are an idiot because some random stranger on the Net called attention to your idiotic behavior?
| apart from the fact that you don't know either of us, what is the | use of the insult in first place?
You know the answer to this one. You engage in insults yourself, towards someone you don't know, but you make the idiotic pretense of thinking you know them and have figured people out. All I want you to do is to stop playing the sedated moron and crank up whatever is left in that brain cavity of yours. You probably aren't quite the moron you enjoy playing so much here, but unless you quit playing that role, who will ever find out? That you're an enraged little shit who doesn't know how to pull himself together is certainly a very important piece of your personality, but there's more to it, I'm sure, even though your initial reactions to things you don't understand is to be irritated by them. People who react like that to their working conditions should _not_ be programmers.
| It doesn't help me doing my job better, but if it helps you, well, | I'm sorry for you.
Oh, I'm _so_ glad you feel warm and cozy enough with me to come up this close and try to hug me and all that wonderful emotional crap, but _could_ you try to keep some personal distance, please?
It has been obvious for a while that you cannot listen to anyone who does not rub you the right way, and I'm here to ensure that you grow up and manage to listen to any available information, especially that which rubs you the wrong way. I don't like little fucks like you who whine and get irrationally irritated at things you ought to take a rational, calm approach to, but I still helped you out, did I not? What is the response I get but _more_ irrational whining from the little fuck? Cut the crap and get the point, you dimwit!
| that was in fact not a good thing. the reason for doing so was: I | don't like being called an idiot in public and not even have the | right to answer before the same public.
You have another option: Don't behave like an idiot when others have had good _reason_ to call you an idiot because of your behavior.
You don't have to play the macho little fuck who "answers before the same public". That's so cave man, neanderthal-like behavior, and it is quite astonishingly unnecessary. You just behave like an adult human being, fix whatever you think caused the criticism (you _do_ have pretty solid clues, already), and decide that your ego is not so easily bruised that you have to go ape and want revenge and such.
| by the way, do you mean that most of your posts are not | intentionally devoid of technical contents?
Funny guy. Try again, be a smart-ass a better way than this.
| to close this discussion, I hope you allow me to use your words... | they sounded offensive to me, but I'm sure it was just an impression.
To use my words, you need to understand what they were intended to communicate. You don't. You're just using the words to play a sickeningly moronic "mirror game" where you think you can just use words without meaning back at someone. That's such a disgustingly _non-thinking_ behavior you out to be reprimanded for it.
What did you come here to discuss, Mario Frasca? Your personal inability to deal with criticism of your behavior? Or did you come here to get help with your attitude problem and get over that urge to express your irritation when you could be a rational human being? Or did you in fact seek help from people whom it would be a _very_ good idea not to insult _while_ you're asking for it?
#:Erik -- I agree with everything you say, but I would attack to death your right to say it. -- Tom Stoppard
Erik Naggum <e...@naggum.net> writes: > It has been obvious for a while that you cannot listen to anyone who > does not rub you the right way, and I'm here to ensure that you grow
The irony here is absolutely astounding...
-- vsync http://quadium.net/ - last updated Sat Oct 7 18:53:10 PDT 2000 (cons (cons (car (cons 'c 'r)) (cdr (cons 'a 'o))) ; Orjner (cons (cons (car (cons 'n 'c)) (cdr (cons nil 's))) nil))
* vsync <vs...@quadium.net> | The irony here is absolutely astounding...
_Again_ you commit the mistake of believing that what you think is the only possibility is also _actually_ the only possibility just because that would be convenient for you. Think again. Or think.
You have to pay a lot more attention to detail than you seem able to do without great effort, "vsync" dude. It's quite annoying to have some idiot who is clearly unable to deal with more than his own set of beliefs parade them with so astounding an arrogance. But it is not for rational men to explain what it would take someone like that to figure out the difference between "cannot listen to anyone who does not rub you the right way" to "listens to, then castigates those who rub you [me] the wrong way"?
A fool who thinks everything he does not understand must be irony, remains a fool for life.
#:Erik -- I agree with everything you say, but I would attack to death your right to say it. -- Tom Stoppard
In this message I am trying to collect my recent experiences on this problem so that other persons will be able to avoid my mistakes.
On 12 Oct 2000 09:37:13 GMT, Mario Frasca <ma...@cs.uu.nl> wrote:
>I was playing around with the idea of having my programs checked for >compilation anytime I start them, and I managed to achieve this by >using the [Allegro] defsystem utility
as others suggested, this was not a good solution. the Allegro DEFSYSTEM does work, but the MK:DEFSYSTEM works much better and its documentation is more than decent. using the latter, you can forget about REQUIRE and PROVIDE, and consequently also about EVAL-WHEN. when using the Allegro version, I needed those three more functions. above all, when I compiled a system, I also had to load it afterwards. this happens automatically with MK:COMPILE-SYSTEM.
one extra point I missed and which was causing me problems was about failing to be consistent on the use of "" and :, in particular when exporting symbols from a DEFPACKAGE. when enclosed in "", the name is taken verbatim, with its literal case. when prefixed with ':', I am actually naming a symbol, and causing its generation in my lisp session. unless I also use ||, the symbol is in UPPER case. what I was doing was defining the function MENU (the transition to upper case was done by lisp) and exporting "menu", where no transition to upper case happens.
I'm sure others on this newsgroup can be more precise than me.