Programming C, C++, Java, PHP, Ruby, Turing, VB
Computer Science Canada 
Programming C, C++, Java, PHP, Ruby, Turing, VB  

Username:   Password: 
 RegisterRegister   
 Some questions about Scheme
Index -> General Programming
Goto page 1, 2, 3  Next
View previous topic Printable versionDownload TopicSubscribe to this topicPrivate MessagesRefresh page View next topic
Author Message
Banished_Outlaw




PostPosted: Sun Jun 22, 2008 11:36 pm   Post subject: Some questions about Scheme

First of all, waterloo does teach Scheme during first year in Software Engineering right?
Second of all, is scheme a free language like Java or do you have to pay for it?
If it is free where can i donwload it? and does it require a compiler or anything of the sorts?
Furthermore, is scheme better than python or are they similar in any way because the name python pops up a lot when one is talking about the Scheme language.

All answers will be very helpful. Thanks Smile
Sponsor
Sponsor
Sponsor
sponsor
btiffin




PostPosted: Mon Jun 23, 2008 12:31 am   Post subject: Re: Some questions about Scheme

To learn Scheme, I'm a big fan of DrScheme. It has an IDE that you can set an expertise level for. I don't normally suggest IDE's, but in this case, the PLT team has done a wonderful job. http://www.drscheme.org/

Regarding first year Waterloo; sorry, clueless. I haven't been there since 1983. Fortran, COBOL and Pascal ruled the day for frosh back then.

Scheme is free (some versions DFSG free, and some, free beer free), but there are commercial implementations as well. For Debian GNU/Linux, there are like 8 packaged versions to pick from. Guile being one that may not show up in a 'scheme' package title search.

Better than Python? Different. Python has a much lessened LISPy, more OO feel to it for sure. Python could also be termed "batteries included" relative to Scheme. If you become a fan of Python, you can even try pyscheme.

I'm a rebol. The only better development environment I stand behind is REBOL. Completely personal opinion and everyone else is just wrong. Smile

Cheers
Tony




PostPosted: Mon Jun 23, 2008 12:31 am   Post subject: RE:Some questions about Scheme

I don't remember about SE. UW Math is introducing Scheme. I'm tempted to say "no" for Software Engineering, but Prof. Ragde would know better.

Just about all of the common programming languages are "free", as in they have open standards. As a result, just about all of them would have a free compiler/interpreter available. Try DrScheme.

(Turing used to be an exception, but if Holtsoft was not to release the compiler, OpenT project would have made one available instead.)

Scheme and Python are, in fact, very different. Actually Scheme, being a functional language, will likely be very different from anything you've done before. It might take some getting used to, but it will make you a better programmer.
Latest from compsci.ca/blog: Tony's programming blog. DWITE - a programming contest.
wtd




PostPosted: Mon Jun 23, 2008 12:47 am   Post subject: RE:Some questions about Scheme

Indeed. Grab DrScheme and just write some code. Doesn't have to be anything fancy, just dabble for now.
Zeroth




PostPosted: Mon Jun 23, 2008 9:20 am   Post subject: Re: Some questions about Scheme

Like the others said. Scheme is incredibly different. Probably the hardest programming challenge of your learning years would be to build a fully-functional scheme interpreter... in scheme. Trust me, its phenomenally difficult, but immensely fun. When I did it, my brain just clicked four hours in on day three(20th hour spent coding on it), and it suddenly made sense. It all made sense. Its a great feeling. Smile

And no, as the self-proclaimed Python guru, Python is not like scheme. Its "genetic" heritage is more, modula 3+smalltalk. With a bit of lisp from a major offshoot in the family.(In v1.6 a LISP coder added stuff like map, lambda, filter, list comprehensions for a more lispy feel) Unfortunately, in v3.0 they are removing map, lambda, filter from the built-ins. Sad

Heck, Google built a series of functional tools in Python: http://goog-goopy.sourceforge.net/
Cinjection




PostPosted: Wed Jun 25, 2008 12:21 pm   Post subject: Re: Some questions about Scheme

I'm going to Waterloo for Computer Science in September, so I picked up Scheme this summer.

I'm finding it really hard to make the transition, as this is my first functional language. After like four years working with imperative languages, moving to functional languages is a challenge. Does anyone have any good online tutorials to send my way? I'm using this for now, but it's really esoteric. Don't get me wrong, it's a great resource, but I'd like to see what else is out there.
btiffin




PostPosted: Wed Jun 25, 2008 1:46 pm   Post subject: RE:Some questions about Scheme

Get DrScheme and check http://www.plt-scheme.org/software/drscheme/learning.html

Cheers
wtd




PostPosted: Wed Jun 25, 2008 11:13 pm   Post subject: RE:Some questions about Scheme

Feel free to post any specific questions you may have in the Functional Programming forum.
Sponsor
Sponsor
Sponsor
sponsor
Reality Check




PostPosted: Thu Jun 26, 2008 10:27 am   Post subject: Re: Some questions about Scheme

Yea I'm going to Waterloo for CS and we're using Scheme. By the sounds of it, it'd be a wise decision for me to go out and at least get used to functional programming. I remember at a sample lecture at UW, one of the profs gave us an example of some scheme code (I think his name was Ian...not Vandenburg the other Ian) and honestly it didn't look too different. But then again I know absolutely nothing about Scheme or functional programming so I'm probably wrong.
wtd




PostPosted: Thu Jun 26, 2008 11:01 am   Post subject: RE:Some questions about Scheme

Make peace with the idea of not having for and while loops at your disposal, and forget about mutating variables.
Prabhakar Ragde




PostPosted: Thu Jun 26, 2008 11:25 am   Post subject: Re: Some questions about Scheme

I don't know why you guys insist on learning on your own (possibly poorly or incorrectly, without any help) what you're going to learn in a couple of months in a classroom. You'll just get bored, start skipping lectures, miss important material, and get lower marks.

But, if you insist, use DrScheme, and use the "How To Design Programs" textbook available at http://www.htdp.org, because we use both at UW. Ignore the stuff about draw.ss, it's obsolete. Learn about image.ss and world.ss instead.

SE students will get a bit of Scheme in second term, but most of their first year is taught in C and C++.

Zeroth: a full Scheme interpreter -- including continuations and macros? Or are you talking about a core subset? --PR
Reality Check




PostPosted: Thu Jun 26, 2008 12:06 pm   Post subject: Re: Some questions about Scheme

Prabhakar Ragde @ Thu Jun 26, 2008 11:25 am wrote:
I don't know why you guys insist on learning on your own (possibly poorly or incorrectly, without any help) what you're going to learn in a couple of months in a classroom. You'll just get bored, start skipping lectures, miss important material, and get lower marks.


I don't agree with this at all. Learning it on your own can greatly help you in the classroom. If you're responsible enough not to skip (which you should be) then staying ahead of class or at least on par is much easier if you have some background in the material.
Aziz




PostPosted: Thu Jun 26, 2008 12:57 pm   Post subject: RE:Some questions about Scheme

I learned Java by myself, and skipped most of my classes. What did that get me - a very high A (they don't give % on transcripts). As long as you keep up with what the class is doing, you're fine. But certainly if you have trouble and don't go to class, don't complain to anyone (I here it all the time).

It's actually quite the opposite, PR. If you stick to what they teach you in school and don't do anything else on your own time or out of your own initiative, you're not going to get far. That's why most of my college class fails in our courses (which are really easy). They don't bother to try to learn this stuff, they just try to do what they're told. It's not the way to go about learning computer science. You have to experiment, and only doing what you're taught doesn't help.
Prabhakar Ragde




PostPosted: Thu Jun 26, 2008 2:19 pm   Post subject: Re: Some questions about Scheme

I never said anything about sticking to school and not doing anything else on your own time. The first-term CS courses at UW spend a lot of time trying to get students to go beyond what is required, which not enough students do.

I was talking, rather, of a specific CS impulse, which is to "get ahead" in an upcoming course. Do you do this in other courses? When you're about to take a shop class, do you look at an Internet tutorial and try to drill some holes in metal? In the summer before English class, do you read the assigned Shakespeare play? (That last one might actually be a good idea, but I bet no one does it. But "getting ahead" on an ESL class by using the Internet could be disastrous.)

So, DIY, absolutely, but from the base of knowledge of the course itself. What I don't need is someone who skips my lectures because they've read the first chapter of SICP (which, by the way, I do not recommend as an introduction to programming in Scheme -- it's a great book, but it has its place, which is a bit later on) and the night before each assignment is due writes out some sloppy R5RS code with no comments. Or, when using C, calls a library function instead of writing the code I want, thinking that the point is to get a working program instead of getting exercise in a particular technique. (I had students do this last winter.) --PR
Reality Check




PostPosted: Thu Jun 26, 2008 2:31 pm   Post subject: Re: Some questions about Scheme

Well, it's not so much "Getting ahead" but more so just ensuring that I do well in a field that I like. Unlike many other fields, CS is something that really must go beyond the classroom and I personally would not want to walk into my first few lectures not understanding anything. That'd mean I'd have to try and catch up which could screw me over.
Display posts from previous:   
   Index -> General Programming
View previous topic Tell A FriendPrintable versionDownload TopicSubscribe to this topicPrivate MessagesRefresh page View next topic

Page 1 of 3  [ 36 Posts ]
Goto page 1, 2, 3  Next
Jump to:   


Style:  
Search: