Reading material recommendations...

Discussion in 'App Development' started by Eight, Oct 1, 2011.

  1. Eight

    Eight

    I was reading up on Clojure, a LISP language, and it piqued my curiosity with regard to general knowledge about programming.. Could we have a list of books to read that would give us an overview of all the languages and why they exist? I'd like to understand what dilemmas the different languages address.. for example, I'm reading the wikipedia article and it mentions "functional programming style" and I'd like to know what that is along with all the concepts that define programming...
     
  2. jprad

    jprad

    Functional programming is just one of many "styles," or more correctly, "paradigms."

    But, none of them are better than another, they each have strengths and weaknesses. We've yet to reach a universal language that's suitable for every problem

    You can start here:
    http://en.wikipedia.org/wiki/Comparison_of_programming_paradigms

    As an FYI though, the object-oriented and procedural languages together represent well over 90% of the market:

    http://www.tiobe.com/index.php/content/paperinfo/tpci/index.html
     
  3. Eight

    Eight

    I recall being intrigued with LISP [i think it was LISP]. I was writing assembly test routines for a mini computer in the '70's and got intrigued with software but never took it up as a profession... I thought it marvelous that a programmer could write a routine and simply make it part of the language.. I'd still like to have a language that would just grow in the direction I am going... I guess they all can but none seem to be set up to really facilitate that...
     
  4. You can read this fine book online:

    http://learnyouahaskell.com/

    Haskell is a great functional language to learn because of its purity and elegance.

    The internet is a better place to read about programming paradigms because you can cross-reference easily.

    One may not agree with me but understanding the basic compiler design for each paradigm will help you a lot in your thinking.

    You may also look into a multi-paradigm language like OCaml and F# (imperative-object-functional).

    http://caml.inria.fr/pub/docs/oreilly-book/html/index.html
     
  5. If you're looking for a programming job learn C#/Java.
    If you want to write code for yourself learn Perl/PHP/Python.
    If you want to scratch your back learn LISP/Haskell.

    http://www.kegel.com/c10k.html
     

  6. It depends on what you want to do.

    If you want a job at a web start up, learn Python/Ruby-on-Rails/Java/Groovy.

    If you want a job at a HFT firm, learn C++.

    LISP and Haskell are really easy to understand. I think learning a functional programming language will change how you think for the better. Too bad reality will set in and you WILL need some imperative/OOP features in your coding.
     
  7. Howcome VB is never listed ?

    I heard with Visual Studio VB.net produces the same code as C#
     
  8. VB is no doubt a good tool for Windows desktop applications. It is really easy to build a simple UI.

    However, its power really comes from .NET and Visual Studio. Besides, VBA is great for Excel-based models.

    BASIC itself is not an interesting language, although it was my first computer language (GW-BASIC).
     
  9. I started learning .NET, used to code in C many years ago from classes i took in high school.

    Looked at little at VB, C++ and C# and felt VB was very clear to understand, less cryptic.

    Am i on the wrong track here ?

    Any info appreciated.
     
  10. Of course not. This is why .NET offers so many choices! :)

    VB is actually pretty good at describing business logic. Again, I would recommend it for Windows desktop development. It is also a great prototyping tool.
     
    #10     Oct 14, 2011