Find the answer to your Linux question:
Page 1 of 2 1 2 LastLast
Results 1 to 10 of 19
Programming gurus keep talking about the importance of learning as much different programming language ideas as possible. When you make a Google search similar to this thread's title, you usually ...
  1. #1
    Just Joined!
    Join Date
    Sep 2009
    Posts
    26

    Languages Worth Learning

    Programming gurus keep talking about the importance of learning as much different programming language ideas as possible.

    When you make a Google search similar to this thread's title, you usually end up either getting a list of tens if not hundreds (heard of 2'500 actually) of programming languages, or catchy ``10 languages every programmers should learn'' articles that include stuff like VB and C#, if you get what i mean.

    I managed to find some interesting lists, like this one, but that simply doesn't cut it.

    So i was going to ask, what programming languages do you think are worth learning purely for the `enlightenment' you will gain out of being able to think inside their boundaries?

    Maybe i'll actually be able to make a nice list in the end, eh?

  2. #2
    Linux Engineer RobinVossen's Avatar
    Join Date
    Aug 2007
    Location
    The Netherlands
    Posts
    1,422
    What do you want to make?
    Cross-Platform, HighPreformance, Windows Only that kind of things.

    My Languages:
    - Perl Quick Things/Webpages
    - Assembler Security Related/Debugging
    - C Big Apps.

    Big Languages:
    - Python
    - Java
    - Ruby
    - PHP
    - C++

    Big NoNO
    - C#
    - VB
    New Users, please read this..
    Google first, then ask..

  3. #3
    Just Joined!
    Join Date
    Sep 2009
    Posts
    26
    That's a pretty nice `template' if you ask me. Those are the fairly obvious ones, and for that reason i was more in the search of those less-known languages that will challenge your mind in a different way.

    They say, for example, that Lisp is `a true hacking language'.
    Or FORTRAN could be pretty interesting... Similarly Pascal; they used it for scientific stuff back then, not?
    And look at Prolog for example: It ``is a logic programming general purpose fifth generation language associated with artificial intelligence and computational linguistics.'' says Wikipedia.
    Then there's those weird `purely functional' ones, namely Haskell from what i hear...

    Get what i mean? Something you'll look into in your spare time, simply to blow off your mind a bit. =P

  4. #4
    Linux Engineer Thrillhouse's Avatar
    Join Date
    Jun 2006
    Location
    Arlington, VA, USA
    Posts
    1,377
    If you're just looking for languages that might blow your mind and maybe make you think differently about programming, Lisp and Prolog are my recommendations. Of course, learning a new language and learning how to think in a new language are two separate things. If you're just looking to add to your repertoire, I would go with one of the more popular ones already mentioned.

  5. #5
    Just Joined!
    Join Date
    Feb 2009
    Location
    location, location
    Posts
    18
    IIRC Pascal was originally a language designed to teach people programming skills. FORTRAN is historically a mathematical number-crunching language, although other languages are probably just as good at it nowadays.

    Perl is excellent for text parsing, helped by its regular expression engine. If you want something unusual, try SmallTalk: I'm not sure it's still supported so don't expect it to be useful beyond a bit of hobby programming, but I believe it takes OO to a new level (from what I've heard 2nd hand, I haven't touched it myself).

  6. #6
    Linux Enthusiast gerard4143's Avatar
    Join Date
    Dec 2007
    Location
    Canada, Prince Edward Island
    Posts
    714
    Myself I find learning a low level, a mid level and a high level language really helps in becoming a complete developer and for me that is assembly, C, and python, The great thing about this combination of languages is the that C accepts inline-assem or assembly object files and Python has a great interface to accept C code(plus the python interpreter can be embedded into c applications). So I can import the lower level code into the higher level apps without too much difficulty...Gerard4143
    Make mine Arch Linux

  7. #7
    Linux User
    Join Date
    Mar 2008
    Posts
    287
    U left out bash script! Found the others only meant something to management but bash saves souls.

  8. #8
    Linux Engineer RobinVossen's Avatar
    Join Date
    Aug 2007
    Location
    The Netherlands
    Posts
    1,422
    If you want to Blow your mind while coding try:
    Brainfck
    and
    Malborge

    have fun ^^
    I coded Brainfck a lot and also FunctionalBrainfck when I had that Itch you got right now

    Edit: Changed all the **** to fck to avoid Censoring
    New Users, please read this..
    Google first, then ask..

  9. #9
    Linux Newbie tetsujin's Avatar
    Join Date
    Oct 2008
    Posts
    115
    Quote Originally Posted by RobinVossen View Post
    If you want to Blow your mind while coding try:
    Brainfck
    and
    Malborge

    have fun ^^
    I coded Brainfck a lot and also FunctionalBrainfck when I had that Itch you got right now
    Meh... "Esoteric" programming languages seem like such a waste of time for everyone involved... Malborge is just an obfuscated kind of assembly language... BF is like a Turing machine - as such the scope of problems they're able to take on is more-or-less unlimited - but the scope of problems for which they're well suited is extremely small.

    I think there's lots of other languages out there that have genuinely interesting and useful concepts - as such there's no need to learn a language whose only distinguishing characteristic is that the language designer wanted to make a useless toy language that was willfully difficult to understand.

    I'd suggest Haskell for its lazy evaluation, Erlang for its emphasis on parallelism, maybe some form of Lisp for its emphasis on code structure corresponding to data structure, etc... Or one could always learn some assembly, do some microcontroller projects and such...

  10. #10
    Just Joined!
    Join Date
    Sep 2009
    Posts
    26
    Quote Originally Posted by gerard4143 View Post
    Myself I find learning a low level, a mid level and a high level language really helps in becoming a complete developer [...]
    But what about all the different programming paradigms (aka `ideas')?

    You know, for example even if LISP and C are `equal-level' languages, they are VERY different.
    (Not like i've learned them, but not like i need to either to say this; those are just well-known differences...)

    Quote Originally Posted by RobinVossen View Post
    If you want to Blow your mind while coding try:
    Brainfck
    and
    Malborge

    have fun ^^
    I coded Brainfck a lot and also FunctionalBrainfck when I had that Itch you got right now

    Edit: Changed all the **** to fck to avoid Censoring
    And LOLcode?

    Correct me if i'm wrong but aren't those languages created with the pure goal of being original? (Don't know about Malborge but brainfcuk obviously is, judging from the name.)

    Quote Originally Posted by tetsujin View Post
    Meh... "Esoteric" programming languages seem like such a waste of time for everyone involved... Malborge is just an obfuscated kind of assembly language... BF is like a Turing machine - as such the scope of problems they're able to take on is more-or-less unlimited - but the scope of problems for which they're well suited is extremely small.

    I think there's lots of other languages out there that have genuinely interesting and useful concepts - as such there's no need to learn a language whose only distinguishing characteristic is that the language designer wanted to make a useless toy language that was willfully difficult to understand.

    I'd suggest Haskell for its lazy evaluation, Erlang for its emphasis on parallelism, maybe some form of Lisp for its emphasis on code structure corresponding to data structure, etc... Or one could always learn some assembly, do some microcontroller projects and such...
    *Adds a plus for Haskell, Erlang and machine code.*

    Two LISP dialects and normal Assembly are under the learning list already.
    (The second LISP dialect, Scheme, is more for learning and a bit of personal interest actually... Dunno if there's normally any sense of learning two dialect of the same language, except for practical reasons.)

Page 1 of 2 1 2 LastLast

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •  
...