[racket] Python creep

From: Todd O'Bryan (toddobryan at gmail.com)
Date: Fri Jun 27 15:08:47 EDT 2014

I used Scala for our intro course last year, mostly because I wanted types.
I know Matthias thinks types are a horrible thing to make students deal
with first semester, but I found that students made different kinds of
mistakes than they did in Racket. When you're writing containsDoll and the
system tells you you're returning a List instead of a Boolean for an empty
list, before you even try to run the test cases, you don't get yourself
into issues where you get nested type mistakes that give you errors on
functions you don't find out about until you're way down the call stack.
That said, I missed so much of what DrRacket does for making things nice
for beginners. I had hoped to make providing something like that a
long-term project, but it appears I'm going into industry instead.

Since Pyret provides beginner type-checking through contract-like
structures, I probably would have used it if I'd known about it in time.
But I can't deny that being able to integrate with all the stuff I had done
in Java for AP Computer Science was a huge win. Anybody thought about
compiling Racket to the JVM? Clojure, Groovy, Jython, and JRuby seem to be
all the rage. And the name Jacket is just awesome. :-)

Todd


On Fri, Jun 27, 2014 at 12:31 PM, Prabhakar Ragde <plragde at uwaterloo.ca>
wrote:

> On 2014-06-26, 1:29 AM, users-request at racket-lang.org wrote:
>
>> I heard Cornell and Harvard use OCaml, of all things. . . .
>>
>
> Cornell appears to use Python and MATLAB in their first courses; I don't
> see OCaml until third year. Harvard uses OCaml in a second course; C, PHP,
> Javascript in a first.  Even CMU uses OCaml in a second or third course,
> after Python and a safe version of C.
>
> We use Racket by choice in our first courses at Waterloo, and I use
> Haskell as well in my advanced version, but I wouldn't be unhappy if I had
> to use OCaml (though the students might be more unhappy). And if I were
> forced to use an imperative language, I would choose Python, probably
> (though I'd probably just stop teaching the first course). --PR
> ____________________
>  Racket Users list:
>  http://lists.racket-lang.org/users
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.racket-lang.org/users/archive/attachments/20140627/2592b1ba/attachment.html>

Posted on the users mailing list.