Something that really bugs me is the comment that this lemon law could kill "OpenSource and Free Software" alltogether. In the case you guys from the US haven't noticed: There are other countries with other laws.
Of course here in Germany a vendor or producer is liable for what he sells, too. But this liability has limitations! In Germany you CANNOT sue McDonald's because you failed to notice that coffee may be hot and McDonald's hasn't provided you with that information! You CANNOT sue a toy company for selling Superman capes without providing a warning that those capes won't give you the ability to fly! And even if you can sue a company for liability (i.e. because they failed to give notice about poisons or side-effects in their products), you won't be rich!
German jurisdiction mostly follows the customs and the common sense. That means: if you pay 1000 Euro for product A it is NOT regarded in the same way as product B which you got for free.
Besides: do you really think that OpenSource and Free Software are dead the same moment the US leaves the building?
You pay the 60$ for your cable provider, NOT for the broadcasting companies. They get exactly 0.00$ from these 60$. The broadcasting companies are entirely financed by the advertisement.
I saw this a while ago (I think on freshmeat) and thought: "Oh, cool:) Perl programmers found out about non-deterministic programming!" - this whole thing is not at all new and has been around for several years. But put the label "Quantum Computing" on it and - whoosh! - the crowd goes mad about it.
Well, to be fair: of course doing non-deterministic programming in parallel is exactly what quantum computing is all about. The thing is just - modules to simulate non-deterministic programming (albeit mostly in NP, not in P) have been around a while. Only when the different subtrees can be traversed in PARALLEL, like on a quantum computer, it gets new again. Not that non-deterministic programming on single-state computers is uninteresting...
Common Lisp (and Scheme too, although the Schemers usually a) don't like to hear that and b) don't tend to program that way) is a hybrid language. That means, it isn't "just" functional, you can program imperatively as well.
Object systems exists for both Lisp "paths", so object-orientedly as well, and, as in CL you usually program a programming language suiting your task, you can use whatever programming paradigm comes to your mind.
It's different to program in Lisp not because Lisp restricts you to some phony paradigms, it's different because Lisp doesn't restrict you at all. And the (at first glance) strange syntax is a small price to pay for that.
Well, people don't know it or have prejudices against it like you. And there's noone hyping it to the end.
The reason why it's not hyped is because Lisp HAD a hype in its history whose decline happened to the same time (and was mostly induced by) the AI winter.
Most Lisp programmers from that time have still a bad taste in their mouths because of that hype (mind, that the hype was over was not because Lisp is a bad language but because the AI winter) so they won't start another.
Younger Lisp programmers (like myself) are both happy and unhappy about the lack of a hype.
Happy because that means you have a much more undisturbed basis on which you can settle your community. The community efforts and activities are easily overseeable and you always know what's going on.
Unhappy because the community isn't very large and so activities DO happen, but more slowly than in the Java or Perl community because we have fewer people.
As an example: that article is from 1999 and is widely known in the Lisp community... but only today it has been published on Slashdot.
If someone writes an article about Perl, it is released immediately here.
Keep in mind that 2 years are an eternity in computer terms.
Read "Structure and Interpretation of Computer Programs" by Abelson and Sussman.
It is a fabulous book for introduction into functional thinking and shows many enlightening things about what you can do with Lisp in general and in this case Scheme.
Your next step might be "ANSI Common Lisp" by Paul Graham, giving an introduction into the Lisp dialect with which major applications in the industry are done (REALLY done, Franz Inc. and Xanalys, both commercial Lisp implementors and vendors have increasing sales over the years) - also a very clear and easy to follow book with lots of examples and exercises and a very cool reference which I tend to use a lot while Lisp coding.
If you prefer online information, you can find many links and pointers to Lisp on the webpage of the Association of Lisp Users (ALU, http://www.alu.org).
(Yes, I'm paid to code in Lisp)
(Yes, it's a lot of fun)
> Does lisp have web page templating functionality?
Yes.
Two points more:
1. Doubt is not knowledge. Many people THINK they know about the popularity of Lisp because they don't hear as much about it as they hear from the hype languages (which is quite logical).
There are far more Lisp projects going on than people imagine, only people don't scream out "HEY! COOL! I'M DOING IT WITH LISP!" they go "Yepp, I'm using Lisp." the Yahoo Store engine for instance. Microsoft's Bob. Many industrial applications (not only the academia!).
2. The syntax isn't hard to read, it's just hard for people not used to it. This is, of course, true for every language.
Besides: Common Lisp is not strongly typed but you can strongly type a specific function by declaring what types the arguments will have. That makes Lisp a "strong typing on demand"-language in my point of view.
Pal, these are so-called "thermic effects", meaning that it is just heat produced by the microwaves in your ear.
These effects are about the same as if you were wearing a warm cap and as your mommy might have told you, that is basically not a bad thing;-)
Something that really bugs me is the comment that this lemon law could kill "OpenSource and Free Software" alltogether. In the case you guys from the US haven't noticed: There are other countries with other laws.
Of course here in Germany a vendor or producer is liable for what he sells, too. But this liability has limitations! In Germany you CANNOT sue McDonald's because you failed to notice that coffee may be hot and McDonald's hasn't provided you with that information! You CANNOT sue a toy company for selling Superman capes without providing a warning that those capes won't give you the ability to fly! And even if you can sue a company for liability (i.e. because they failed to give notice about poisons or side-effects in their products), you won't be rich!
German jurisdiction mostly follows the customs and the common sense. That means: if you pay 1000 Euro for product A it is NOT regarded in the same way as product B which you got for free.
Besides: do you really think that OpenSource and Free Software are dead the same moment the US leaves the building?
You pay the 60$ for your cable provider, NOT for the broadcasting companies. They get exactly 0.00$ from these 60$. The broadcasting companies are entirely financed by the advertisement.
Well, to be fair: of course doing non-deterministic programming in parallel is exactly what quantum computing is all about. The thing is just - modules to simulate non-deterministic programming (albeit mostly in NP, not in P) have been around a while. Only when the different subtrees can be traversed in PARALLEL, like on a quantum computer, it gets new again. Not that non-deterministic programming on single-state computers is uninteresting...
You're welcome to do so :)
But keep in mind that Lisp is NOT a specific AI language.
It's just so commonly used in the AI scene because it allows powerful abstraction layers while still allowing tweaking of the underlying algorithms.
Besides Brett's mentioning of CLOS and GOOPS...
Common Lisp (and Scheme too, although the Schemers usually a) don't like to hear that and b) don't tend to program that way) is a hybrid language. That means, it isn't "just" functional, you can program imperatively as well.
Object systems exists for both Lisp "paths", so object-orientedly as well, and, as in CL you usually program a programming language suiting your task, you can use whatever programming paradigm comes to your mind.
It's different to program in Lisp not because Lisp restricts you to some phony paradigms, it's different because Lisp doesn't restrict you at all. And the (at first glance) strange syntax is a small price to pay for that.
As you might know, Scheme is a Lisp-1. It is a very proper dialect of Lisp, even if many followers of the Common Lisp path like to ignore that.
(I myself am more a Common Lisper).
The "bad programming styles" you're speaking of are the dominance of recursion over simple iteration, I presume?
Please tend not to speak humble in these posts because people's opinion will be influenced by that.
Have you read "Structure and Interpretation of Computer Programs", btw?
Well, people don't know it or have prejudices against it like you. And there's noone hyping it to the end.
The reason why it's not hyped is because Lisp HAD a hype in its history whose decline happened to the same time (and was mostly induced by) the AI winter.
Most Lisp programmers from that time have still a bad taste in their mouths because of that hype (mind, that the hype was over was not because Lisp is a bad language but because the AI winter) so they won't start another.
Younger Lisp programmers (like myself) are both happy and unhappy about the lack of a hype.
Happy because that means you have a much more undisturbed basis on which you can settle your community. The community efforts and activities are easily overseeable and you always know what's going on.
Unhappy because the community isn't very large and so activities DO happen, but more slowly than in the Java or Perl community because we have fewer people.
As an example: that article is from 1999 and is widely known in the Lisp community... but only today it has been published on Slashdot.
If someone writes an article about Perl, it is released immediately here.
Keep in mind that 2 years are an eternity in computer terms.
Yes.
Read "Structure and Interpretation of Computer Programs" by Abelson and Sussman.
It is a fabulous book for introduction into functional thinking and shows many enlightening things about what you can do with Lisp in general and in this case Scheme.
Your next step might be "ANSI Common Lisp" by Paul Graham, giving an introduction into the Lisp dialect with which major applications in the industry are done (REALLY done, Franz Inc. and Xanalys, both commercial Lisp implementors and vendors have increasing sales over the years) - also a very clear and easy to follow book with lots of examples and exercises and a very cool reference which I tend to use a lot while Lisp coding.
If you prefer online information, you can find many links and pointers to Lisp on the webpage of the Association of Lisp Users (ALU, http://www.alu.org).
(Yes, I'm paid to code in Lisp)
(Yes, it's a lot of fun)
> Does lisp have application servers?
Yes
> Does lisp has db connectivity?
Yes
> Does lisp have CORBA bindings?
Yes
> Does lisp have asynchronous messaging?
Yes
> Does lisp have naming and directory bindings?
Yes
> Does lisp have web page templating functionality?
Yes.
Two points more:
1. Doubt is not knowledge. Many people THINK they know about the popularity of Lisp because they don't hear as much about it as they hear from the hype languages (which is quite logical).
There are far more Lisp projects going on than people imagine, only people don't scream out "HEY! COOL! I'M DOING IT WITH LISP!" they go "Yepp, I'm using Lisp." the Yahoo Store engine for instance. Microsoft's Bob. Many industrial applications (not only the academia!).
2. The syntax isn't hard to read, it's just hard for people not used to it. This is, of course, true for every language.
Besides: Common Lisp is not strongly typed but you can strongly type a specific function by declaring what types the arguments will have. That makes Lisp a "strong typing on demand"-language in my point of view.
Pal, these are so-called "thermic effects", meaning that it is just heat produced by the microwaves in your ear. These effects are about the same as if you were wearing a warm cap and as your mommy might have told you, that is basically not a bad thing ;-)