Advertisement

Is scheme a useful language

Started by March 13, 2003 12:06 PM
24 comments, last by themind 21 years, 8 months ago
One of my prereq classes for computer science uses only scheme. I was wondering how important this language is. Is it good to know?
The Mind!!
From what I''ve heard (I never took the class, only people who did) Scheme is one of the worst, and most useless, languages they ever used. Apparently it has some use in programming language theory or something, but everyone I''ve talked to hated the language.

-- Exitus Acta Probat --
Advertisement
scheme forces you to look at problems from a different angle. I didn''t particularly like my scheme course, but i did learn a lot of different ways to solve the same problem. I suggest people don''t get too involved in their language of choice that they are incapable of doing anything other than writing code in that language. The life span of the average programming language is about 7 years, so if you graduate and know nothing other than how to write an applet in JAVA, you''ll be out of work in 5 years when JAVA is obsolete. Actually, there is an OO form of scheme that has some features absent in C++ and JAVA that could be extremely useful in expanding existing code. But then you''d have to write the original program in scheme, and i wouldn''t recommend that. In closing, it''s a pretty useless language at the time, but it''s very good to know in my opinion.
You''re unlikely to ever get a job doing commercial software development in Scheme. That being said, learning Scheme will help you become a better programmer. How? It forces you to think about problems in a new way. It expands your repertoire of programming techniques. It broadens your exposure to the ways in which programs can be represented and designed.

If you do take a course that uses Scheme, my advice is to avoid thinking of the language as just another syntax for doing the same old thing you already do with Java or C++. Try thinking of programming in a new way...

Damn I sound old.
AFAIK Scheme is a Lisp-based language. As such, you do have to program differently than if you used C/C++/Java/basic. Also, AFAIK, Scheme is pretty good for scripting. So in your C/C++ or whatever game, you could implement a script engine using Scheme as the script language.

So whether or not it is a useful language? Well, does it do what you want it to do? Can you do better?

ML is not a useful language for general programming. However, it gets taught and developed because it is a completely different paradigm from procedural or object oriented programming. So in the sense of education, it is useful.

Scheme is probably more useful than ML. You still have to determine what it would be useful for.
-------------------------GBGames' Blog: An Indie Game Developer's Somewhat Interesting ThoughtsStaff Reviewer for Game Tunnel
quote: Original post by jperalta
From what I''ve heard (I never took the class, only people who did) Scheme is one of the worst, and most useless, languages they ever used. Apparently it has some use in programming language theory or something, but everyone I''ve talked to hated the language.

-- Exitus Acta Probat --


I heard C was crap. Must be true.
Scheme is a subest of Lisp, an impure functional language. Read the Lisp threads in the Lounge and General Programming to understand why functional languages are important. Simpy writing off a whole family of languages because someone who has taken one programming class says it is useless is beyond stupid.




"And that whole philosophy has crept into everything we do now. Music''s the last thing where people can go and pay the same amount of money for a piece of shit or a diamond. And that''s why we''ve got to care about it."
- Ashcroft
Advertisement
I haven''t had any class about Scheme, but I had a class about programming paradigms. For the procedural paradigma we had a look into ML.
I wouldn''t code using it in my spare time, but the concept it uses are very intersting from a theoretical point of view and makes you see problems from a very different angle. A problem which you''ve solved a thousand times using C/Java looks like it is a whole new problem when using procedural programming.

I don''t know about Scheme, but with ML you also get to know a very interesting computational model: Lambda Calculus. I can imagine that this could be useful to know with Scheme too.
So it is certainly very good to know it.
quote: Original post by kdogg
The life span of the average programming language is about 7 years

Please name one programming language that has had a lifespan of seven years.
Howdy All,

I believe that professors use it, as did mine, to help students become comfortable with figuring out recursive solutions. At the very least, I became a lot more used to recursion.

Rizman it''s called functional programming, not procedural programming.


I took a class in which all the work was done in Standard ML, a distant cousin of Scheme, and I''m currently learning Lisp, the language that spawned Scheme, on my own. My experience says that while knowledge of a functional programming language might not get you a job, it''s definitely valuable.

There''s also no real reason you can''t develop in Scheme on your own, if you find you like the language. It''s a common misconception (or maybe a common willful ignorance) that any non-mainstream language can''t be compiled, can''t be used with Win32, can''t do OpenGL, or whatever it is someone wants to do. Not true at all. You can use just about any language to do any of those things.

This topic is closed to new replies.

Advertisement