TechHui

Hawaiʻi's Technology Community

I love scheme and have used it for many projects on the more educational side of things, but I've never really found any materials discussing it's use in more "real world" scenarios. Does anyone know of any resources for using scheme in say... web programming, or in graphics rendering outside of Mr. Ed?

Views: 330

Replies to This Discussion

I think the real problem is the historical lack of standard libraries for Scheme. Various Schemes have had decent (but never really great) libraries, I think. Now, evidently there's a standard library in R6RS, but it's probably too little, too late. The lack of high speed runtime environments doesn't help matters, either.

I know that Christian Queinnec wrote some papers about the use of continuations to allow programmers to do web programming with what looked like normal function calls -- I'm not sure if a commonly-accepted library came out of this. Oddly enough, I've seen the same idea in at least Java and a few other languages, too :)

There was a computer vision/image processing library called Envision that I think must have died.

I think Common Lisp is just too feature-rich for anybody to be interested in doing anything big/serious in Scheme. The only thing that's really missing is continuations (I think) and people probably just don't use those enough for it to matter.

Clojure is refreshing, though -- it's already gained some serious traction, but it certainly has a long way to go. If you haven't watched some of Rich Hickey's videos and/or read some of his writings for his reasoning behind Clojure, I really recommend it. He's very convincing and this is coming from a pretty serious skeptic.

I'm right with you about the renewed exposure being exciting. I think Clojure has picked the PERFECT time/reason to revive the Lisp community: the rise of multi-core. I think the Python community, despite the amazing momentum they've had up until now, has to worry about their multi-core problems. I was basically ready to make Python my new scripting language, but then learned about the Global Interpreter Lock and it bothers me. Anyway...I'm starting to digress, so I'll wrap this up.

I haven't taken a look at Factor. I did look at J years ago, but I think at the time there may have been no free implementation, but I'm not sure. I'll re-look at those two.

-- Nate
My problems with Clojure stem only from the environment in which it runs. Somehow in my career I've managed to completely avoid the whole Java/JVM mess and I've taken that for granted. Now whenever I try to use tools like... Clojure or Scala or any of the many interesting languages being developed on it, I find myself swamped in a see and meaningless information, and a ton of learning materials for people who know Java which I don't. One could probably argue that it would be best if I just learned Java, but there are so many other more interesting languages to learn :)

Factor is an interesting stack based language (like forth with some extra bits attached). Mostly I wrote some factor when reading through Thinking Forth. If you haven't ever written in a stack based language it's probably worth your time as much like the APL lineage they're pretty weird and a bit of a mind bender to get your head around.

As for the topic at hand, amazingly enough there have been some articles that popped up on HN and Reddit this weekend that started to offer some insight.

http://planet.plt-scheme.org/

was easy enough to find and the documentation for using it

http://docs.plt-scheme.org/reference/require.html#%28form._%28%28li...

and then a cookbook

http://schemecookbook.org/
I'm in the same boat regarding Java. I have done some small contracts in Java before, but I've never gotten way into it. The JVM is really attractive, though. There are a ton of good libraries/the API is huge and the threads are "real" (i.e. you can actually use those extra cores you have).

I'd give the JVM a serious look even if you're not interested in Java.

Good finds on the Scheme front.

-- Nate

Anders Conbere said:
My problems with Clojure stem only from the environment in which it runs. Somehow in my career I've managed to completely avoid the whole Java/JVM mess and I've taken that for granted. Now whenever I try to use tools like... Clojure or Scala or any of the many interesting languages being developed on it, I find myself swamped in a see and meaningless information, and a ton of learning materials for people who know Java which I don't. One could probably argue that it would be best if I just learned Java, but there are so many other more interesting languages to learn :)

Factor is an interesting stack based language (like forth with some extra bits attached). Mostly I wrote some factor when reading through Thinking Forth. If you haven't ever written in a stack based language it's probably worth your time as much like the APL lineage they're pretty weird and a bit of a mind bender to get your head around.

As for the topic at hand, amazingly enough there have been some articles that popped up on HN and Reddit this weekend that started to offer some insight.

http://planet.plt-scheme.org/

was easy enough to find and the documentation for using it

http://docs.plt-scheme.org/reference/require.html#%28form._%28%28li...

and then a cookbook

http://schemecookbook.org/
I have used the LFE scheme syntax to program Erlang. :)

I have used scsh, gambit, guile & plt on emacs for fun but not "real world". I wish there was a Slime/Swank environment for Scheme. There is Quack and Geiser for Emacs. I haven't gotten either one working yet. PLT has a popular following and you might find more there. I can't stand Mr. Ed (when I am used to Emacs). http://blog.plt-scheme.org/2008/10/web-application-development-in-p...

I use Clojure all day long at work these days on a team and all we do is Emacs/Lisp. I just play with scheme on the side once in a while because I love it's pure no-nonsense lisp roots and simplicity. Scheme (and within that, R5R6 Sheme) is def my pref of the "classic" lisps.
1/2 of my team had never programmed on the jvm before and half did (including myself). I chose them all for different reasons/skills. None of them are having any trouble with the jvm part because of those of us on the team with jvm experience. It's working out great.

Anders Conbere said:
My problems with Clojure stem only from the environment in which it runs. Somehow in my career I've managed to completely avoid the whole Java/JVM mess and I've taken that for granted. Now whenever I try to use tools like... Clojure or Scala or any of the many interesting languages being developed on it, I find myself swamped in a see and meaningless information, and a ton of learning materials for people who know Java which I don't. One could probably argue that it would be best if I just learned Java, but there are so many other more interesting languages to learn :)

Factor is an interesting stack based language (like forth with some extra bits attached). Mostly I wrote some factor when reading through Thinking Forth. If you haven't ever written in a stack based language it's probably worth your time as much like the APL lineage they're pretty weird and a bit of a mind bender to get your head around.

As for the topic at hand, amazingly enough there have been some articles that popped up on HN and Reddit this weekend that started to offer some insight.

http://planet.plt-scheme.org/

was easy enough to find and the documentation for using it

http://docs.plt-scheme.org/reference/require.html#%28form._%28%28li...

and then a cookbook

http://schemecookbook.org/
wow, using Clojure all day long at work....are you based here in Hawaii? run your own consulting firm or something? I'm very curious

Thanks for the input.

-- Nate

Tim Dysinger said:
I have used the LFE scheme syntax to program Erlang. :)

I have used scsh, gambit, guile & plt on emacs for fun but not "real world". I wish there was a Slime/Swank environment for Scheme. There is Quack and Geiser for Emacs. I haven't gotten either one working yet. PLT has a popular following and you might find more there. I can't stand Mr. Ed (when I am used to Emacs). http://blog.plt-scheme.org/2008/10/web-application-development-in-p...

I use Clojure all day long at work these days on a team and all we do is Emacs/Lisp. I just play with scheme on the side once in a while because I love it's pure no-nonsense lisp roots and simplicity. Scheme (and within that, R5R6 Sheme) is def my pref of the "classic" lisps.
I too love scheme and work up early to hack on some gambit termite utility to update all my source projects in parallel :)

RSS

Sponsors

web design, web development, localization

© 2024   Created by Daniel Leuck.   Powered by

Badges  |  Report an Issue  |  Terms of Service