Lately, I have heard too much negative criticism on Java, and too much positive on Lisp. I may be the only, but I hate Lisp, but love Java. I want to hear some good on Java, and some bad things about Lisp. Could someone give me some valid arguments for each ;-).
You may find only a few on here that will do that as most here hate Java too. I don't care either way because every language was designed for a specific purpose and has their uses. I've used Java and Lisp in the past and since they are for different purposes, it seems a little pointless to praise one while bashing the other. Like it or hate it, every language has its use and each have their pros and cons.
If a language forces garbage collection, then I automatically have a certain amount of dislike for it. Thankfully Java is strongly typed so that counter-balances and makes me neutral on Java.
I haven't learnt too much on Lisp because there are so many different dialects that I am not sure which I should learn. I have used Scheme however. I don't like the issue of having to infinitely recurse to make games and interactive applications - people have tried and failed to convince me of the success of kerning old stack.
@LB
Yeah I think Scheme, Common Lisp, and Racket are the common three for Lisp I believe. I've messed with Scheme and Racket myself. Though, this thread, in all honesty is borderline trolling because it is basically on the edge of starting a Java flamewar or Lisp flame war...Well at least a Java war as I can't say I've ever seen a Lisp flamewar.
I also agree that each language has its own domain where it is best suited but do find such discussions as these both informative and interesting.
Bringing up valid points highlighting the deficiencies/differences in one language compared to another helps one realize where and why to use a particular one. I also believe that such discussions eventually lead to enhancements made in the respective languages in subsequent versions.
Personally I have little to no experience with LISP and actual theoretical and practical experience with java. From my standpoint I would have thought that java had a far wider degree to which it could be applied in the various sectors than LISP. Traditionally LISP was created for AI (I may be wrong here due to my very limited knowledge of LISP), so would be quite curious to hear what you've been told regarding these two languages.
The problem with talking about Java is that rapidcoder will always defend Java by saying "It's fixed in Scala". I wish Java 8/9/whichever one will have lambdas would hurry up and be released; lambdas were supposed to make it into Java 7 originally.
The problem with talking about Java is that rapidcoder will always defend Java by saying "It's fixed in Scala".
That sounds very familiar :)
I think when rapidcoder does that again we should all emphasize that the famous version(s) of java is then still broken.
We should iterate that his logic would be similar to someone claiming that a specialized/new version of c++ solves all the current bad things with normal c++ - so this makes c++ flawless compared to other languages ...
We should iterate that his logic would be similar to someone claiming that a specialized/new version of c++ solves all the current bad things with normal c++ - so this makes c++ flawless compared to other languages ...
Actually that's completely different, C++11 solves a lot of issues in C++03 and makes C++ a much better language. Scala is a completely separately-maintained language from Java.
Actually that's completely different, C++11 solves a lot of issues in C++03 and makes C++ a much better language. Scala is a completely separately-maintained language from Java.
I started using C++11 lately and can already tell that it does many things better than its predecessors. The point of the discussion however as I believed it was to compare differences (goods vs bads) between the "normal flavored" versions of these languages.
This could be analogous to comparing two people say x & y each practicing a different style of Martial Arts. Halfway through the fight person y realizes he is losing and claims that he will bring his big brother Y to beat up x and prove that their style is the best.
Big brother Y may very well be able to beat up little x, but what happens if little x brings his big brother big X for big Y. This will most likely be a completely different match.
Given that C++11 and Scala are relatively new, one could deduce that due to limited experience with these languages, users would not be able to produce many valid arguments initially concerning the goods and bads of the two. So in hind sight it doesn't help dragging these into the discussion each time.