> back to my point...what free environments (unice doesn't count), and > especially, what good books. Of the 8 books I've read...they're all > crap. C++ has many more gurus capable of writing (as far as I can > tell). Are they any books on par with C++ Primer Plus (Mitchel Waite > Signature Series)? That is agreed by MANY c++ programmers to be the > BEST introductory manual on the language.
You can download trial version from any Common Lisp vendor. And if you use Linux you even can get free versions. Of course if you want to buy them you can, just they are really expensive even in contrast to Eiffel Compilers which used to be quite expensive.
Others have pointed out that even high prices form tools are far outwaged by payment for programmers. So for learning I guess a free triela version is quite ok and if you think that suits your needs you can look further.
* Friedrich Dominicus | So this is a conclusion from your mail. Do programming on you own with | Common Lisp but if you want to work with other uses C++.
you aren't this stupid, are you? nobody wants to hire more people than necessary, but they have to if they hire C++ programmers, because one guy can't cut it. one guy often can get it done in Common Lisp. this is supposed to be an advantage. I didn't say anything at all about what the programmer wants, but I see that you don't need to base your conclusions about what other people say on anything they have actually _said_, so you won't understand that I have contradicted you _before_ you concluded what you did, and you won't understand that I do now. end of discussion.
| Interesing enought the crap buils stuff which is used for many and the | all-so supierour Lispers ...
only people with serious inferiorioty complexes think others are "all so superior" just because they are better than them at something and aren't afraid to say so (but neither do they do so without cause). good people enjoy the competence of others. you obviously don't.
| Grining | Friedrich
it's "grinning", you moron, and it fits you very well to misspell it, too.
#:Erik -- save the children: just say NO to sex with pro-lifers
> * Friedrich Dominicus > | So this is a conclusion from your mail. Do programming on you own with > | Common Lisp but if you want to work with other uses C++.
> you aren't this stupid, are you? nobody wants to hire more people than > necessary, but they have to if they hire C++ programmers, because one guy > can't cut it. one guy often can get it done in Common Lisp.
This is what you we're talking about and you drop just some anecdotes here I try to persiflage but you didn't get it. So I won't try that again.
>this is > supposed to be an advantage. I didn't say anything at all about what the > programmer wants, but I see that you don't need to base your conclusions > about what other people say on anything they have actually _said_, so you > won't understand that I have contradicted you _before_ you concluded what > you did, and you won't understand that I do now. end of discussion.
> | Interesing enought the crap buils stuff which is used for many and the > | all-so supierour Lispers ...
> only people with serious inferiorioty complexes think others are "all so > superior" just because they are better than them at something and aren't > afraid to say so (but neither do they do so without cause). good people > enjoy the competence of others. you obviously don't.
I do, if you would read some messages from me you should be able to recognize that. I just can't stand the attitude that all others are idiots and my impression is that that is your opinion toward anyone who uses C++. But I won't start flaming just because others have other opinions and that's what I wrote you just drop in your opinion and it seems to me that you have problems with anyone who's not using CL. But you just tell stories. I just asked for reports on comparisons between different languages. That's all.
> | Grining > | Friedrich
> it's "grinning", you moron, and it fits you very well to misspell it, too.
What is a moron and what does misspelling have to do with a discussion. I was just smiling at myself about that arrogance towards C++ programmers. But I guess I really do not want to know what a moron is. You mail is very unpleasant to read and you just drop in opinions and claims that they are true because you know. I do think that is poor style.
So either you calm down and really answer questions or flag your comments as anecdotal but not as a fact which they aren't.
> it's "grinning", you moron, and it fits you very well to misspell it, too.
I now know what moron means, better I hadn't asked. Interesingly enought you intelligence seems not brigh enough to recognice irony is. And is shows how arrogant you are.
So I would suggest you read some mails from me than you might get such things right.
> In article <lwzoz43xqb....@copernico.parades.rm.cnr.it>, > Marco Antoniotti <marc...@copernico.parades.rm.cnr.it> wrote: > > Lesstif "expensive"?
> Lesstif is not a full implementation of Motif, and it is NOT > "supported".
> > > > I would be really interested to see how you managed to do this in > a > > > > general and systematic way in C++. Really interested.
> > > If it wouldn't violate my NDA, I would happily explain it to you.
> > I have the hunch that you cannot really explain it because.... you > > can't do it in C++ :)
> *sigh* > I'll give you a hint. It uses RTTI, template classes, function > overloading and inheritance.
Exactly my point. You cannot do it in C++ without (a) a considerable programming investment (i.e. you must shell out a lot of money) and (b) not in a general enough way (where "general enough way" is defined to be the CLOS way).
> > > I happen to be very comfortable with pointers, and > > > know extremely useful things you can do with them.
> > Yeah! You can write Common Lisp environments :)
> if I had to I suppose, but you can do alot more than that. > especially high end optimizations like poking the system > memory and things like that.
Whenever I hear the words "poking the system memory" I reach for my garbage collector. :)
> > > They happen to be a tool, and if you know how to use > > > your tools to their full potential, they are useful > > > tools.
> > Good point. Learn CL using one of the free environments and good > > books around and then appreciate the "full potential".
> back to my point...what free environments (unice doesn't count), and > especially, what good books. Of the 8 books I've read...they're all > crap. C++ has many more gurus capable of writing (as far as I can > tell). Are they any books on par with C++ Primer Plus (Mitchel Waite > Signature Series)? That is agreed by MANY c++ programmers to be the > BEST introductory manual on the language.
You are sorely right on this point. Apart from Graham's books and Abelson and Sussman's SICP (which uses Scheme) I believe there are not very many good and useful books around about CL.
Isn't KMP coming up with one? :)
> > > conjecture. > > > I'm already mildly familiar with Lisp, I had two classes on it > > > in College, I just want to learn it better so that I can learn > > > Lisp based AI.
> > Why not CL based numerical computations. You get almost the same > > speed as C with CL (and with C you almost get the same speed as > > FORTRAN).
> If I were using pure numerical computations I would use Miranda or > ML.
What a strange twist of events!
> But I don't do pure numerical computations. I am interested in AI, both > game based and data mining. Lisp happens to be the most prolific AI > language, and therefore the easiest to get examples in. If I had my > way, there would be an equal sampling of AI solutions in C/C++, Pascal, > Fortran, and other imperative languages as there are in Lisp.
Which BTW, is also "The Ultimate Imperative" language. :)
Raymond Toy <t...@rtp.ericsson.se> writes: > >>>>> "Marco" == Marco Antoniotti <marc...@copernico.parades.rm.cnr.it> writes:
> Marco> Why not CL based numerical computations. You get almost the same > Marco> speed as C with CL (and with C you almost get the same speed as > Marco> FORTRAN).
> This is not always true (same speed as C with CL), as was demonstrated > here a few weeks ago. The DCT code was significantly slower (50% or > more? I don't remember) in Lisp than C, even when both versions had > the same algorithm.
I said *almost*. As per the DCT example, I believe that pointed out two things, w.r.t. the implementations used. (1) transforming the computations into 1-dimension for CMUCL did not help as much as you would have expected, and (2) CMUCL does not seem to do as much peep-hole optimization on the produced assembly code as GCC does.
All in all this are not "language inherent" problems. I suppose you could expect an improvement for CL if many more programmers were working at it. I.e. it is a matter of "scale" and invesment. I would venture out to say that it is reasonable to think that CL compilers have fallen behind C/C++ compiler technology in recent years, w.r.t. the situation of, let's say, 10 years ago. Of course I have no real data to support my case. It is just a hunch.
Cheers
-- Marco Antoniotti =========================================== PARADES, Via San Pantaleo 66, I-00186 Rome, ITALY tel. +39 - 06 68 10 03 17, fax. +39 - 06 68 80 79 26 http://www.parades.rm.cnr.it/~marcoxa
In article <lw3dwv9drl....@copernico.parades.rm.cnr.it>, Marco Antoniotti <marc...@copernico.parades.rm.cnr.it> wrote:
> You are sorely right on this point. Apart from Graham's books and > Abelson and Sussman's SICP (which uses Scheme) I believe there are not > very many good and useful books around about CL.
On Fri, 03 Sep 1999 12:40:52 GMT, Bagheera, the jungle scout
<baghe...@my-deja.com> wrote: > If it wouldn't violate my NDA, I would happily explain it to you.
If C++ shops consider multiple dispatch such a competitive advantage that employees are required to sign NDAs, why are you surprised that Common Lisp systems, which provide multiple dispatch and many other standard features, cost so much? :-)
* Friedrich Dominicus <Friedrich.Domini...@inka.de> | I just can't stand the attitude that all others are idiots
none such exists. your willingness to go from "some" to "all" is your very own logical flaw. I suggest you take responsibility for it.
| and my impression is that that is your opinion toward anyone who uses C++.
your impression is precisely that -- your impression. it is not my responsibility to correct people who aren't even able to _read_ stuff they don't agree with.
| But I won't start flaming just because others have other opinions and | that's what I wrote you just drop in your opinion and it seems to me that | you have problems with anyone who's not using CL.
it seems that way to you because you don't think, but rather want to fit things into predetermined prejudices. again, your very own problem.
| Grinning even move brightly
and you speak about _other_ people's attitude problems? geez. but, hey, I understand why you think in terms of attitude. you're the pro, here.
now, find a mirror and enjoy your grinning, but spare us more of it.
#:Erik -- save the children: just say NO to sex with pro-lifers
> * Friedrich Dominicus <Friedrich.Domini...@inka.de> > | I just can't stand the attitude that all others are idiots
> none such exists. your willingness to go from "some" to "all" is your > very own logical flaw. I suggest you take responsibility for it.
Ok I do that.
After this side-step towards flaming could we forget the last mails and you just give me an answer on the question which was asked. I said you don't have numbers and that you put in you opinion. You opinion might be right or wrong, I believe you are possibly more on the right side. And yes I do think that Common Lisp is a better choice as C++ ever will and can be, just for the record: we don't have comparisons and because we doN't have we just are guessing. That's quite ok but I personally think that it would be a good idea having some comparisons.
1) Ease of learning (on different levels) 2) Development Effort 3) Maintenance costs 4) Tool support
...
a lot more. You can fill in you favourites.
Now my wild guesses: I think that Common Lisp is a better choice in point 2 and three I'm not sure about 1. I do think that 4) is found for C++ other points can be addes and that really would be helpful to see for different languages. But I see this does not fit the subject of this thread.
So I suggest you calm down and think about the real question Regards Friedrich
>Marco Antoniotti <marc...@copernico.parades.rm.cnr.it> wrote: >> You are sorely right on this point. Apart from Graham's books and >> Abelson and Sussman's SICP (which uses Scheme) I believe there are not >> very many good and useful books around about CL.
Rainer Joswig contered:
>PAIP >Lisp, 3rd Edition >Genera manuals ;-)
Also strong a NO NO. The typical new lisp books are very good IMHO.
I tried to learn C++ and CL at the same time. Compared to the various books I read then as beginner I'd say 80% are very good in the lisp domain and 20% are very good in C++. (very optimistic) I actually only found Coplien interesting. Reading Stroustrup was a mess, compared to Kernigan/Ritchie then.
There are even better perl books than C++ books around! :) ~50% good-ness rate but there's less hype and less books. AutoLISP has 5%, Java 10%. -- Reini
> >Marco Antoniotti <marc...@copernico.parades.rm.cnr.it> wrote: > >> You are sorely right on this point. Apart from Graham's books and > >> Abelson and Sussman's SICP (which uses Scheme) I believe there are not > >> very many good and useful books around about CL.
> Rainer Joswig contered: > >PAIP
^^^^^^^ what's that?
> >Lisp, 3rd Edition > I tried to learn C++ and CL at the same time. Compared to the various > books I read then as beginner I'd say 80% are very good in the lisp > domain and 20% are very good in C++. (very optimistic)
Now what books are you talking about?
Guess it would be helpful. And I guess this might be something for the FAQ
In article <37d13d42.10247645@judy>, rur...@sbox.tu-graz.ac.at wrote: > >Marco Antoniotti <marc...@copernico.parades.rm.cnr.it> wrote: > >> You are sorely right on this point. Apart from Graham's books and > >> Abelson and Sussman's SICP (which uses Scheme) I believe there are not > >> very many good and useful books around about CL.
> Also strong a NO NO. The typical new lisp books are very good IMHO.
For me books like "Paradigms of Artificial Intelligence Programming" (from Peter Norvig. Go buy one if you don't have it.) and "Lisp, 3rd Edition" (Winston/Horn) are among the alltime classics.
But guys, you don't just need to buy them - you need to read them and work your way through them with one hand to the keyboard of your favorite Lisp system - and, yes, you don't have to type the source code - but if you want - go ahead. Get the Lisp experience of an interactive software design environment - try out your ideas - don't let the system constrain you.
If your books are looking worn out, the pages are starting to fade away, you have traces of chinese food on the pages, your disk is full of edited versions of the code and you have rewritten your graphical interfaces to "blocks world" and "Othello" ten times - than you are on the right track.
The Lisp books are full of ideas - more than you would get from a meter of other "modern" books, which you can read in a few hours (huge print, lot's of white space, reiteration of the last 20 years everywhere, thick paper, assembled from other sources, ...) and you can throw in the garbage can can after you read them. There is a reason these other systems they describe don't have a real garbage collection - it would trash them immediately.
In article <4nvh9rk5qm....@rtp.ericsson.se>, Raymond Toy <t...@rtp.ericsson.se> wrote:
>>>>>> "Marco" == Marco Antoniotti <marc...@copernico.parades.rm.cnr.it> writes:
> Marco> Why not CL based numerical computations. You get almost the same > Marco> speed as C with CL (and with C you almost get the same speed as > Marco> FORTRAN).
>This is not always true (same speed as C with CL), as was demonstrated >here a few weeks ago. The DCT code was significantly slower (50% or >more? I don't remember) in Lisp than C, even when both versions had >the same algorithm.
Unfortunately, these are meaningless statements. Languages don't have performance (even the STL has only O() performance requirements), implementations do. The case I remember of CL beating Fortran was CMUCL. I really, really doubt Macintosh Common Lisp will; it doesn't handle floats quite as well.
>Also, has C finally caught up with Fortran? I thought the aliasing >issues in C prevents C compilers from making the same optimizations >Fortran compilers could do because the language specifies that >aliasing doesn't happen.
This is being addressed in the C9X standard, which will also introduce numerous other things that will probably make C9X code slower again (unless you're careful). I think the C community would be better off if the C9X process was violently aborted, but to be honest there are some C experts (including people on the Committee) who disagree.
In article <37D13FA0.5EF83...@inka.de>, Friedrich.Domini...@inka.de wrote: > 1) Ease of learning (on different levels)
With the right approach CL is much easier to learn.
> 2) Development Effort
Easy win for the Lisp side.
> 3) Maintenance costs
***Big*** win for the Lisp side.
> 4) Tool support
Depends. Lisp has tool building as one of its fundamental paradigms. Many tools you can write on your own in little time. Real Lisp users are not afraid to do this. Others are different to get - for example interfaces to certain (proprietary) protoc
In article <37D13FA0.5EF83...@inka.de>, Friedrich.Domini...@inka.de wrote: > After this side-step towards flaming could we forget the last mails and > you just give me an answer on the question which was asked. I said you > don't have numbers and that you put in you opinion. You opinion might be > right or wrong, I believe you are possibly more on the right side. And > yes I do think that Common Lisp is a better choice as C++ ever will and > can be, just for the record:
It's difficult to get numbers for that. Smalltalk and Lisp are roughly comparable for a lot of projects - while Lisp is more expressive and used for a lot more experimental stuff. Smalltalk projects are sometimes more conventional OO-projects - just read the various job ads for Smalltalk.
AT&T/Lucent is/was doing ATM switch projects. They have systems with software written in C and C++. Usually these products have a staff of, say, 1000 people. At any one time only a part of the source code is understood (people moving in and out). As a a research project they were developing a system in Lisp and a production version in C++. The Lisp project had all in all around, say, (can't remember the exact numbers) hundred people.
The claim was that after years of development the Lisp-based project was more functional (on-the-fly updating of software with zero-downtime was a goal), had comparable performance and needed much less resources (time, developers, money, ...). Still it was hard to convince management to make products based on it (which finally happened). I hear numbers like *seven* times productivity increase in such large projects. If you get these results - would you tell your competition?
Also anecdotical evidence shows that single developers (the mythical "Lisp hacker") or small teams can get extremely productive creating complex applications. I know a few people who are on this wizard level and it is a worthwile goal to have those girls and boys in a company and let them be productive and have fun. They often are choosing Lisp as their tool, because Lisp works like an *amplifier* for them.
In article <37D14613.4A449...@inka.de>, Friedrich.Domini...@inka.de wrote: > Reini Urban wrote:
> > >Marco Antoniotti <marc...@copernico.parades.rm.cnr.it> wrote: > > >> You are sorely right on this point. Apart from Graham's books and > > >> Abelson and Sussman's SICP (which uses Scheme) I believe there are not > > >> very many good and useful books around about CL.
On Sat, 04 Sep 1999 18:37:45 +0200, Rainer Joswig wrote: >In article <37D13FA0.5EF83...@inka.de>, Friedrich.Domini...@inka.de wrote: >> 1) Ease of learning (on different levels) >With the right approach CL is much easier to learn.
As a person who JUST learned Lisp and had just previously learned C++ after having used it for a while, I have to agree with you. Lisp has the fundamental advantage of being simple as a language, and its library is no harder to learn than C's.
jos...@lavielle.com (Rainer Joswig) writes: > > 2) Development Effort
> Easy win for the Lisp side.
Totally true, but newcomers may not experience this unless they allow themselves to work in a diffrent way than they may be used too. First, you might need to change your editor, to one which supports lisp indenting and paren matching, and hopefully a Lisp listener. Emacs is the obvious choice. I luv emacs and ILISP, the tab completion, the form evaluation and compiling, the debugging, all come together to make develoment much easier.
Humor me for a second with my rough distinction between programming and coding. I see programming as the act of abstracting, designing, pondering, trying things, and "writing" things. I see coding as the work of putting this into machine understandable form, syntax checks, remembering variable and function names, typing the stuff in, editing source code. The split is an inuitive one, not a strong, factual one. I hate coding, it's mind-numbing and is the number one force of friction for me when developing. Lisp systems, with real interfaces like emacs and ILISP (and the others that vendors provide) make coding a much easier task, and greatly reduce the amount of friction I need to overcome in order to encode an idea into a system.
I see several things contributing to the Lisp systems ability to reduce coding friction. Interactive development is the biggest one, and it really pays off if you take a functional approach to your design. At any point you can test a fragment code, no recompile, no big testing harness needed, no test proggies. This alone prolly gives me a two-fold performance increase, and that's a modest estimate.
The simple syntax and editor support for it is another one. Fewer syntax errors and less complex editing (once you learn sexpr-based movement and editing in emacs) result in more productivity for me.
Symbol completion, integrated documentation and help mean that I don't have to switch to another application to read the help, and don't have to navigate some hypertext document with the accursed mouse. Looking up a functions documentation or arglist is trivial and almost a reflex. Less errors from guessing and less time wasted hunting for docs. The result is even more increased productivity.
There are a dozen other advatnages to Lisp itself, but I wanted to just focus on the advatanges of the developm3ent environments that come with it. We can talk about the power of macros, the fullness of the language and other things later, a newcomer is not going to be able to experience those too deeply at first.
> > 4) Tool support
> Depends. Lisp has tool building as one of > its fundamental paradigms. Many tools you > can write on your own in little time. > Real Lisp users are not afraid to do this. > Others are different to get - for example > interfaces to certain (proprietary) protoc
I've been experiencing this first hand over the last few days. The friction one must overcome to put a new tool into play is greatly reduced when working with Lisp.
-- Craig Brozefsky <cr...@red-bean.com> Free Scheme/Lisp Software http://www.red-bean.com/~craig "riot shields. voodoo economics. its just business. cattle prods and the IMF." - Radiohead, OK Computer, Electioneering
> >With the right approach CL is much easier to learn.
> As a person who JUST learned Lisp and had just previously learned C++ > after having used it for a while, I have to agree with you. Lisp has the > fundamental advantage of being simple as a language, and its library is no > harder to learn than C's.
Often Lisp is being learned in an University context (often using Scheme). Unfortunately quality varies and many courses are not teaching Scheme, but Computer Science - so students get some wrong impressions (primitive tools, esoteric concepts, difficult to learn, not usable for practical concepts, etc.).
But in reality learning Lisp can (and should) be very easy to learn (powerful interactive environments, good documentation, elegant concepts, designed by people who really understood their field, ...). Everybody who then wants to move on from simple Lisp introductions should read a book like PAIP from Peter Norvig.
It also helps to talk to some knowledgeable people to get some guideance (or even take a Lisp course, like Franz is offering them). Make sure that those teachers really adapt to the learning pace of the students. Big Lisp systems can be a overwhelming - I remember when I first sat in front of a Lisp machine - it didn't understand anything I was doing - yet we were supposed to help porting a natural language system to ZetaLisp (from UCI Lisp or InterLisp) using a semi-automatic porting tool. Well, the debugger was not my friend at that time.
In article <87u2pazoqj....@piracy.red-bean.com>, Craig Brozefsky <cr...@red-bean.com> wrote: > Totally true, but newcomers may not experience this unless they allow > themselves to work in a diffrent way than they may be used too. > First, you might need to change your editor,
You mean they were not already using "Emacs"? ;-)
> to one which supports > lisp indenting and paren matching, and hopefully a Lisp listener. > Emacs is the obvious choice. I luv emacs and ILISP, the tab > completion, the form evaluation and compiling, the debugging, all come > together to make develoment much easier.
Emacs and Ilisp is not that bad. Actually I think some of the integrated environments are *much* more productive when you start developing complex software (I know that some wizards just stay with Emacs). I always tell people that they need to develop tools to handle the complexity - having visual tools is a way to go for a lot of people. A program should be developed in parallel with the tools necessary to develop it (browsers, algorithm animation, inspectors, regression testers, logging tools, ...).
> Humor me for a second with my rough distinction between programming > and coding.
Well, what *I* look for are executable specifications of the problem domain. Lisp then provides a notation for writing down specifications. So the gap between "programming" and "coding" will approach zero.
To give an example from CL-HTTP's web walker: What the author did was to create a language to declare ACTIONS, ACTIVITIES and CONSTRAINTS in the domain of walking over graphs of web pages.
Here is an example for an action that generates a sorted list of inferior pages from an URL:
W4:DEFINE-ACTION-TYPE name (type &key (class 'action-type) documentation) lambda-list &body body [macro]
Defines a new type of action named NAME whose type is TYPE. TYPE can be any of: STANDARD, OPEN-HTTP-STREAM, ENCAPSULATING, GENERATOR LAMBDA-LIST is the set of arguments passed to the action function. The lexical variables ACTION ACTIVITY URL are available within BODY. When CLASS is a subtype of encapsulating-action-type, the continuation that executes the encapsulated actions is invoked within the action function with (call-next-action &optional action url activity). Additionally, the first argument after the standard action arguments must be the inferior actions during the allocation process.
(define-action-type generate-sorted-inferiors (:generator :documentation "Primary action for walking the inferiors of a URL." :class generator-type) (action activity url predicate) (declare (ignore action)) (values (stable-sort (url-inferiors-satisfying-activity url activity) predicate) t))
If you are developing at this level of sophistication, send in your resume. ;-)
jos...@lavielle.com (Rainer Joswig) writes: > > Totally true, but newcomers may not experience this unless they allow > > themselves to work in a diffrent way than they may be used too. > > First, you might need to change your editor,
> You mean they were not already using "Emacs"? ;-)
It's hard to believe sometimes, but yah.
> Emacs and Ilisp is not that bad. Actually I think > some of the integrated environments are *much* > more productive when you start developing complex > software (I know that some wizards just stay with > Emacs). I always tell people that they need to develop > tools to handle the complexity - having visual tools is > a way to go for a lot of people. A program should be developed > in parallel with the tools necessary to develop it > (browsers, algorithm animation, inspectors, regression > testers, logging tools, ...).
I've never been one for visual stuff. The only good experience I have had with Visual development is the MSVC++ debbugger, and that was not an altogether great experience, just the best visual debugger I've come across so far. I have not had a chance to look at Digitool's or Symbolic's work, so I'm aware that my assesment of "visual" development environment has not yet been exposed to the cream of the crop.
> > Humor me for a second with my rough distinction between programming > > and coding.
> Well, what *I* look for are executable specifications > of the problem domain. Lisp then provides a notation > for writing down specifications. So the gap > between "programming" and "coding" will approach zero.
That is a more subtle explanation of my notion of the friction of coding being drastically reduced by Lisp. By providing the domain language, you reduce the code required until it reaches almost nothing. Since you build the domain language up, layer upon layer, you have less coding at each layer. This, in combination with the speed at which one can rattle off a form in nice lisp environment is really powerful. And an added bonus for me is that each layer is interesting to me as a design challenge, so my mind is engaged and active and not bored with "coding" details. This, to me at least, is a VERY important bonus, because it gives me a very satisfying feeling while working.
Having just come off a 6 month project in a non-lisp language, the things that is most immediate in my mind is the grunt work required to code in this other language because I could not do the neccesarry programming to reduce the code required in a significant manner. Because there was not a real macro system (and for other reasons inherent in the language we were using) I had to do things like maintain 3 seperate files describing the same componnent. Had this been done in Lisp, a domain language for describing these components would have made me only have to describe them once, in one location, and that would have saved me many many hours synchronizing and tracking down inconsistencies between the different views of the component. This was in a language and environment which is quite possibly the best that "conventional" environments have to offer for that task, WebObjects.
The last few days of work with CL-HTTP have been refreshing indeed.
-- Craig Brozefsky <cr...@red-bean.com> Free Scheme/Lisp Software http://www.red-bean.com/~craig "riot shields. voodoo economics. its just business. cattle prods and the IMF." - Radiohead, OK Computer, Electioneering
In article <87ogfizj5g....@piracy.red-bean.com>, Craig Brozefsky <cr...@red-bean.com> wrote: > I've never been one for visual stuff.
Which is atleast surprising. People have a very strong visual input channel. Using the visual clues like color, animation, shape, etc. should be highly desirable to help people designing software.
> come across so far. I have not had a chance to look at Digitool's or > Symbolic's work, so I'm aware that my assesment of "visual" > development environment has not yet been exposed to the cream of the > crop.
LispWorks also has an integrated environment. The new ACL on Windows has it, too (although it looks "ugly" to me - I'm a Mac user, though).
> component. This was in a language and environment which is quite > possibly the best that "conventional" environments have to offer for > that task, WebObjects.
>>>>> "David" == David Thornley <thorn...@visi.com> writes:
David> In article <4nvh9rk5qm....@rtp.ericsson.se>, Raymond Toy David> <t...@rtp.ericsson.se> wrote: >>>>>>> "Marco" == Marco Antoniotti >>>>>>> <marc...@copernico.parades.rm.cnr.it> writes: >> Marco> Why not CL based numerical computations. You get almost Marco> the same speed as C with CL (and with C you almost get the Marco> same speed as FORTRAN). >> >> This is not always true (same speed as C with CL), as was >> demonstrated here a few weeks ago. The DCT code was >> significantly slower (50% or more? I don't remember) in Lisp >> than C, even when both versions had the same algorithm. >> David> Unfortunately, these are meaningless statements. Languages David> don't have performance (even the STL has only O() David> performance requirements), implementations do. The case I
Of course. For these comparisons to make sense, I always assume we're talking about various implementations of various languages.
David> remember of CL beating Fortran was CMUCL. I really, really David> doubt Macintosh Common Lisp will; it doesn't handle floats David> quite as well.
I thought it was Maclisp (not MCL) that beat Fortran on a PDP-11(?)
>>>>> "Marco" == Marco Antoniotti <marc...@copernico.parades.rm.cnr.it> writes:
Marco> All in all this are not "language inherent" problems. I Marco> suppose you could expect an improvement for CL if many more Marco> programmers were working at it. I.e. it is a matter of Marco> "scale" and invesment. I would venture out to say that it Marco> is reasonable to think that CL compilers have fallen behind Marco> C/C++ compiler technology in recent years, w.r.t. the Marco> situation of, let's say, 10 years ago. Of course I have no Marco> real data to support my case. It is just a hunch.
Sounds about right to me. I also guess that CL compilers haven't stressed numerical efficiency as other languages, so these deficiencies show up in these types of tests.