Programming This forum is for all programming questions.
The question does not have to be directly related to Linux and any language is fair game. |
Notices |
Welcome to LinuxQuestions.org, a friendly and active Linux Community.
You are currently viewing LQ as a guest. By joining our community you will have the ability to post topics, receive our newsletter, use the advanced search, subscribe to threads and access many other special features. Registration is quick, simple and absolutely free. Join our community today!
Note that registered members see fewer ads, and ContentLink is completely disabled once you log in.
Are you new to LinuxQuestions.org? Visit the following links:
Site Howto |
Site FAQ |
Sitemap |
Register Now
If you have any problems with the registration process or your account login, please contact us. If you need to reset your password, click here.
Having a problem logging in? Please visit this page to clear all LQ-related cookies.
Get a virtual cloud desktop with the Linux distro that you want in less than five minutes with Shells! With over 10 pre-installed distros to choose from, the worry-free installation life is here! Whether you are a digital nomad or just looking for flexibility, Shells can put your Linux machine on the device that you want to use.
Exclusive for LQ members, get up to 45% off per month. Click here for more info.
|
|
08-05-2007, 03:03 PM
|
#1
|
Member
Registered: Nov 2006
Distribution: xubuntu
Posts: 464
Rep:
|
Haskell, OCaml, Scheme, Erlang, Perl, Python, Ruby
Hi there
Does anybody know what the following languages can do better than Java or what generally are useful for?
Quote:
Haskell, OCaml, Scheme, Erlang, Perl, Python, Ruby
|
Thanks
|
|
|
08-05-2007, 03:08 PM
|
#2
|
Moderator
Registered: Jun 2001
Location: UK
Distribution: Gentoo, RHEL, Fedora, Centos
Posts: 43,417
|
please forgive me if i'm reading this out of context, but this really sounds like homework or such like. if you need to know a bit about each of these languages, then a google search really is one of the bests ways to get that overview. in actual fact you'd probably need to back up to different types of language, declarative, functional etc... as they work in such different ways a compare and contrast between languages of types can become very hard.
|
|
|
08-05-2007, 11:46 PM
|
#3
|
Senior Member
Registered: Dec 2005
Location: London, ON, Canada
Distribution: Arch, Ubuntu, Slackware, OpenBSD, FreeBSD
Posts: 1,853
Rep:
|
This is nothing a moderately quick Wikipedia search can help you with.
Perl is used mostly for parsing data (well, that's what its original purpose was).
Python - I see it as a "BASIC for UNIX" type of language, but much more sophisticated.
Scheme is a Lisp derivative (like Common Lisp), symbolic computation and AI programming with a heavy mathematical inclination.
Ruby, I see, aims to be an "everything is an object" type interpreted language.
I don't know what Haskell, OCaml and Erlang are reserved for, though.
|
|
|
08-06-2007, 02:25 AM
|
#4
|
Moderator
Registered: Jun 2001
Location: UK
Distribution: Gentoo, RHEL, Fedora, Centos
Posts: 43,417
|
Quote:
Python - I see it as a "BASIC for UNIX" type of language, but much more sophisticated.
|
wtf? what planet are you from?? i can't see any reason to ever compare the two languages, they are about as different as modern languages get from each other.
|
|
|
08-06-2007, 05:45 AM
|
#5
|
Senior Member
Registered: Mar 2004
Location: england
Distribution: Mint, Armbian, NetBSD, Puppy, Raspbian
Posts: 3,515
|
agreed,
apart from implying BASIC is a modern language
|
|
|
08-06-2007, 06:06 AM
|
#6
|
Member
Registered: Aug 2006
Location: Saint Paul, MN, USA
Distribution: {Free,Open}BSD, CentOS, Debian, Fedora, Solaris, SuSE
Posts: 735
Rep:
|
Hi.
I have found this general article to be useful http://en.wikipedia.org/wiki/Compari...ming_languages
It contains links to more specific articles, and has a number of additional references ... cheers, makyo
|
|
|
08-06-2007, 11:31 AM
|
#7
|
LQ Newbie
Registered: Jul 2007
Location: Oregon
Distribution: Kubuntu but searching for something permanent
Posts: 7
Rep:
|
I know that both Haskell and OCaml are functional programming languages.
Both Scheme and Ruby are multi paradigm, with Scheme tending more towards functional programming.
The "series of tubes" is a good way to find this stuff out and is faster than asking on a forum.
|
|
|
08-06-2007, 09:56 PM
|
#8
|
Senior Member
Registered: Dec 2005
Location: London, ON, Canada
Distribution: Arch, Ubuntu, Slackware, OpenBSD, FreeBSD
Posts: 1,853
Rep:
|
Quote:
Originally Posted by acid_kewpie
wtf? what planet are you from?? i can't see any reason to ever compare the two languages, they are about as different as modern languages get from each other.
|
Yikes - sorry. I just likened it to BASIC due to the syntax, and variable declaration method (dynamic typecasting, instead of static type declaration). That's how I saw Python as acting when I first used it.
I'm sorry if I offended you to any great degree.
I take it back.
Last edited by indienick; 08-06-2007 at 09:58 PM.
|
|
|
08-06-2007, 10:10 PM
|
#9
|
Member
Registered: Jun 2005
Location: Indiana, USA
Distribution: OpenBSD, Ubuntu
Posts: 892
Rep:
|
It's my sig!
Anyway, let me sum it up briefly, but there's really much more to it than this. These are among my favorite languages.
Haskell is purely functional, but with the power of monads becomes useful for real programming tasks. A lot of mathematical programs are very easy with Haskell, that's why I use it for work on Project Euler.
Objective Caml brings easier capability to functional programming, like the use of references and (kind-of) objects. And it's super fast, even faster than C++ in some cases. Also, the debugger can step forward AND backward through execution.
Scheme is a nice, smallish language. Very simple, and as such it makes learning some of the core concepts of computing science simplistic. Also, it has a very bare implementation of continuations and guarantees tail recursion.
Erlang combines awesome functional features with awesome concurrency features. Start several Erlang processes (they're like threads) on several CPUs or on several machines, then have them talk to each other transparently over the network. Messages are composed of Erlang objects, so there's no encoding / decoding.
Perl is just great for any kind of quick text processing. Truly flexible to the last.
Python is nice and flexible in an object-oriented way. Good for programming in the extremely large, as far as object organization goes, but a tad on the slow side. It's like an extremely liberating Java.
Ruby is very intuitive and easy to write. Plus, it's awesome for metaprogramming, even moreso than Python. Almost the best of both Perl and Python, except Python has a more transparent object model.
Click on the links to get more information about any of these languages. They might not all appeal to you, but I myself am somewhat of a computer linguist. Learning multiple languages can never hurt, and often discovering something about a new language will reveal a new truth about your favorite and most commonly used one.
Happy hacking!
|
|
|
All times are GMT -5. The time now is 03:12 PM.
|
LinuxQuestions.org is looking for people interested in writing
Editorials, Articles, Reviews, and more. If you'd like to contribute
content, let us know.
|
Latest Threads
LQ News
|
|