factor for functional programming wankery.
perl for quick hacks and small or medium-sized web apps.
javascript for browser scripting.
c# for object-oriented scalable xml enterprise solutions.
iso c99 for everything else.
did someone actually fuckin say c#. shoot them now.
Name:
Anonymous2007-06-18 16:30 ID:0ufbbQ6l
C is the best because it is simple and very powerful (in terms of the programs it can generate, not how easy it is to write them). It is too low level for a lot of things though. C++ is unfortunately the best for some performance-intensive code if you can use it well and need the speed, because it is well supported, there actually are some useful features, and you have C. Unless it's numeric, then FORTRAN is the best because it's the fastest.
LISP is the best high level language if you don't care about ease of learning or available libraries or windows support (yeah, CLISP, but it has licensing issues and it is an interpreter. Also you could pay $1000 for a commercial version). And you want to use emacs. It was evolved over a long period of time (before it was standardized) and it's a big language so it probably has what you need and does it reasonably quick.
Lua is the best scripting language for a C/C++ app because it's clean, simple, portable, and fast.
Perl is the best language to use CPAN, and for text processing.
Haskell is the best language to use if you just want to play with clever ideas and don't want to write a real program (at least one that deals heavily with changing state or external libraries, which is most of them). Probably the best for writing a compiler or theorem prover or something.
Name:
Anonymous2007-06-18 16:34 ID:zWxSEouR
one thing is the language, another thing is the implementation or libraries.
I love lisp, although I think it could be better. Then again lisp is so flexible that if you aren't happy enough with it, you can change it to fit your style. This extra flexibility is pretty good for project with few programmers. For big companies, lisp is probably not a good choice of a language, that's why they don't choose it.
best language/language I like the most? lisp. best language that is practical enough to use due to good implementation/libraries/ides? I don't know
lol YEAH WELL I GUESS IT HELPS THAT CPAN IS THE Comprehensive Perl Archive Network
Name:
Anonymous2007-06-18 17:14 ID:V22+eA74
Lisp is the "essence" of high-level programming, nearly the simplest language possible.
But for more practical stuff, C.
Name:
Anonymous2007-06-18 17:26 ID:O4jAL2uY
Haskell is the best language to use if you just want to play with clever ideas and don't want to write a real program (at least one that deals heavily with changing state or external libraries, which is most of them). Probably the best for writing a compiler or theorem prover or something.
Common misconception. People think that just because monads are derived from some funky mathematics they must be complex. In reality it's simplicity itself to use the IO monad to communicate with the outside world. Syntactically imperative code in Haskell really is no different than other languages except that your results are tagged with the IO type, which is a Good Thing.
People who say Haskell can't do state/IO/FFI/whatever have never looked at Haskell beyond the one line quicksort implementation that periodically gets posted by some smug Haskell weenie.
I realize that Haskell can do IO/FFI. I'm just under the impression that the main advantages of its advanced static type system (over, say, Lisp) are:
1. Safety
2. Performance
3. Laziness
While what I really want in a language is expressivity and programmer convenience. I guess if you like bondage and discipline the safety aspect would be very appealling. Laziness is convenient, but it makes it harder to reason about when things are actually computed, and delaying the evaluation of some computations is not difficult in a dynamic language. And for 90% of the code in most programs, performance is not that important, and the rest is likely to be written in C++ anyway.
Also, it seems like although state is possible it is more awkward. For example, say you want to introduce some caching behavior to an otherwise pure function. Do you add the IO type everywhere that it is called? Use unsafePerformIO? This question does not come up in other languages.
Also, what do you do for algorithms that would ordinarily use mutable storage? Say I want to cache images by their name. Usually I would just put them in a hash table. What would I do in Haskell? (I know this is possible, this is a serious question!)
One more thing: when writing FFIs to C, the interfaces are usually pretty procedural. So if I wrote the FFI straightforwardly would I be forced to program in a more procedural style anyway (and lose some of Haskell's benefits)?
I'm sure Haskell is a great language for some things, but the lack of real world projects leaves me skeptical.
>>18
CPAN has interfaces to a lot of obscure junk though. So maybe "Perl is the best glue language" instead.
Name:
Anonymous2007-06-18 20:50 ID:AHCvnhQG
C++ is awesome if you are able to distinguish your ass from a hole in the ground.
But this is a Troll question, for there is no single best language. It depends on what you want to do. If you ask me what's the best language to develop a web application, I will never ever say C++ for instance.
Name:
Anonymous2007-06-19 3:57 ID:6SX2B8R1
>>21 Also, what do you do for algorithms that would ordinarily use mutable storage? Say I want to cache images by their name. Usually I would just put them in a hash table. What would I do in Haskell? (I know this is possible, this is a serious question!)
You’d ... use a hash table. (Data.HashTable to be precise)
As to the rest of your post, you don’t really know what you’re talking about. Caching can more easily be implemented with pure functions than impure ones, amongst other errors in your post.
Name:
Anonymous2007-06-19 6:05 ID:KHvXSCat
>>21
I agree, I'll comment on these three advantages of Haskell too:
1. Safety
Not really; not beyond elemental issues or beginner programmers. If you are an EXPERT PROGRAMMER, this safety gets in your way more than it helps you. In fact, with just a bit of experience with dynamic typing, you hardly ever fuck up with types.
2. Performance
Not much; have a look at SBCL, Psyco, etc. And even if there's an advantage in execution speed, you're usually faster with dynamic typing, which is what matters and costs the most money (although statically typed languages with type inference do help a lot).
3. Laziness
A real advantage, although it comes at a great cost. On the other hand, you can implement several means of laziness with dynamic languages.
Name:
Anonymous2007-06-19 6:17 ID:HB3Y3i7g
C++.
Name:
Anonymous2007-06-19 6:38 ID:eSjjdxFG
Suddenly, dynamic typing weenies! Several of them!
Name:
Anonymous2007-06-19 6:57 ID:OOeqkkBA
QUACK MOTHERFUCKERS, QUACK!
Name:
Anonymous2007-06-19 7:27 ID:Q1IFdAz5
Static typing = pain in the ass.
Mixed typing = ftw...
Name:
Anonymous2007-06-19 9:41 ID:obbYP9ae
I wonder about the safety of static type systems. I personally find it interesting, but I have never seen a real need for it. Dynamic type systems work just fine. If you have experience on big project about dynamic vs static, I'll want to listen to it.
Name:
Anonymous2007-06-19 9:52 ID:mBeFWR+L
1.2
The Tao gave birth to machine language. Machine language gave birth to the assembler.
The assembler gave birth to the compiler. Now there are ten thousand languages.
Each language has its purpose, however humble. Each language expresses the Yin and Yang of software. Each language has its place within the Tao.