Closed Thread
Results 1 to 4 of 4

Thread: Best First Language

  1. #1
    Red_Shadow's Avatar
    Red_Shadow is offline Learning Programmer
    Join Date
    Jan 2009
    Location
    over the rainbow
    Posts
    58
    Rep Power
    0

    Best First Language

    Hey,

    A quick thread (non-flame, preferably) to discuss the best language for a beginner. I will represent the "Scheme" side.

    Apart from the most obvious and awesome benefit of Scheme (It's a Lisp!), there are other specific reasons to choose this particular language, not to do actual work, but to learn how programming works.


    1) The language has a clear, consistent syntax. No exceptions.
    Everything is written like
    (function arg1 arg2 arg3).
    No exceptions.

    2) The language core is small enough to be understood
    Unlike other languages, you won't have to memorize a big standard library to get coding. You can do very much with very little, and the language is small enough to understand bottom-up.

    3) Rapid prototyping
    As with other Lisp's, you only need a few lines to make something work. This is what a beginner want's, who doesn't care about classes and includes just to write code.

    4) Lots of academic, and beginner-oriented material
    You can say this for every language, of course, but Scheme is specifically used as a teaching language, so everything from "Hello world" to very advanced concepts (recursion, functional/logical programming, AI, etc) has been though it Scheme. Most of these materials are available for free online (but this goes for every other language as well).

    5) The REPL
    The REPL allows you to execute functions directly from the code, without having to recompile the entire program. This makes it *much* easier to understand what's happening.

    Fx.

    (defun hello-world ()
    (format t "Hello world"))

    can be compiled and called as (hello-world) from the REPL. It's like a python console, but nicer.

    5) Scheme is very simple
    And because the language is so simple, you can focus on concepts rather than on code. People don't have to actually use Scheme (I wouldn't) but it's great for understanding concepts, thus good for teaching.

    6) You can learn Lisp easy afterwards
    While you could also go out and learn C/C++/Java/Whatever, you'd know how Lisp worked, and learning it in the future wouldn't be as hard.

    Just my 2 cents.

  2. CODECALL Circuit advertisement
    Join Date
    Always
    Location
    Advertising world
    Posts
    Many

     
  3. #2
    murktinez is offline Newbie
    Join Date
    Feb 2010
    Posts
    3
    Rep Power
    0

    Re: Best First Language

    ever since I first started programming I have wanted to learn Lisp. Only problem is, I can't find a good free Lisp compiler.

  4. #3
    Join Date
    Jul 2006
    Posts
    16,491
    Blog Entries
    75
    Rep Power
    143

    Re: Best First Language

    I'm working on lisp right now (using GNU clisp), among other things.

    One issue with lisp/clojure/scheme that I can see is they don't introduce you to the constructs that are most used in "traditional" languages like Java, .NET, C, C++, etc. I can see a student feeling a lot of frustration when they lose the power of scheme, and get straight-jacketed with some of the other languages.
    Programming is a branch of mathematics.
    My CodeCall Blog | My Personal Blog

  5. #4
    Red_Shadow's Avatar
    Red_Shadow is offline Learning Programmer
    Join Date
    Jan 2009
    Location
    over the rainbow
    Posts
    58
    Rep Power
    0

    Re: Best First Language

    Quote Originally Posted by WingedPanther View Post
    I'm working on lisp right now (using GNU clisp), among other things.

    One issue with lisp/clojure/scheme that I can see is they don't introduce you to the constructs that are most used in "traditional" languages like Java, .NET, C, C++, etc. I can see a student feeling a lot of frustration when they lose the power of scheme, and get straight-jacketed with some of the other languages.
    Yes, this is true. You do have to worry about silly things that Lisp's lets you ignore. But fear not! There is always Perl for a weakly-typed C-like language.

    I don't see this as an issue though. Once you understand what programming is all about, converting to differentiating between numbers/strings/longs/chars/whatever C tells you to care about, will only be *mildly* painful. But hey, C is pretty painful.

    Quote Originally Posted by murktinez View Post
    ever since I first started programming I have wanted to learn Lisp. Only problem is, I can't find a good free Lisp compiler.
    try cmucl, clisp or one of the others. Any should be good to start, but I recommend cmucl (clisp gives plenty of new error messages).

Closed Thread

Thread Information

Users Browsing this Thread

There are currently 1 users browsing this thread. (0 members and 1 guests)

Similar Threads

  1. Replies: 1
    Last Post: 10-21-2011, 01:30 PM
  2. Replies: 1
    Last Post: 10-21-2011, 01:30 PM
  3. Best Language to Use that works with IE - Fastest language at runtime
    By j.smith1981 in forum General Programming
    Replies: 10
    Last Post: 09-18-2009, 05:46 AM
  4. Replies: 15
    Last Post: 06-06-2008, 10:43 PM
  5. Which language?
    By hampus.tagerud in forum General Programming
    Replies: 9
    Last Post: 03-30-2008, 06:16 PM

Tags for this Thread

Bookmarks

Posting Permissions

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