Computer Science Canada

Updates

Author:  wtd [ Wed Dec 22, 2010 12:58 am ]
Post subject:  Updates

So, who's doing what with functional programming here these days?

Author:  Tony [ Wed Dec 22, 2010 1:12 am ]
Post subject:  RE:Updates

Will be taking CS 442 Principles of Programming Languages -- it has some functional programming covered...

Author:  wtd [ Wed Dec 22, 2010 2:35 am ]
Post subject:  RE:Updates

Excellent!

Author:  Brightguy [ Fri Jan 28, 2011 4:46 pm ]
Post subject:  Re: RE:Updates

Tony @ Wed Dec 22, 2010 1:12 am wrote:
Will be taking CS 442 Principles of Programming Languages -- it has some functional programming covered...

Huh. No kidding? I'm actually taking CS 642 this term. 3D Smile

Author:  [Gandalf] [ Thu Feb 03, 2011 4:33 pm ]
Post subject:  RE:Updates

Heya wtd! I'm taking a similar course right now, venturing into the functional side with Scheme and SML. Smile

Author:  wtd [ Wed Feb 16, 2011 12:04 am ]
Post subject:  Re: RE:Updates

[quote="[Gandalf] @ Fri Feb 04, 2011 5:33 am"]Heya wtd! I'm taking a similar course right now, venturing into the functional side with Scheme and SML. Smile[/quote]

Excellent!

O'Caml's tools blow away those available for SML, but the syntax of SML is much nicer.Y

Author:  Shanethe13 [ Wed Mar 09, 2011 10:04 pm ]
Post subject:  RE:Updates

In preparation of learning Scheme next year at Waterloo, I am currently writing a scheme interpreter in Haskell! Unfortunately, a Haskell interpreter is slightly more advanced, so I doubt I'll be able to write a Haskell interpreter in Scheme to be run inside my Haskell-Scheme Interpreter Sad

Author:  rdrake [ Wed Mar 09, 2011 11:02 pm ]
Post subject:  Re: RE:Updates

Shanethe13 @ Wed Mar 09, 2011 10:04 pm wrote:
In preparation of learning Scheme next year at Waterloo, I am currently writing a scheme interpreter in Haskell! Unfortunately, a Haskell interpreter is slightly more advanced, so I doubt I'll be able to write a Haskell interpreter in Scheme to be run inside my Haskell-Scheme Interpreter Sad
You, sir, are insane.

Feel free to share with us once completed!

Author:  Shanethe13 [ Wed Mar 09, 2011 11:19 pm ]
Post subject:  Re: RE:Updates

rdrake @ Wed Mar 09, 2011 11:02 pm wrote:
Shanethe13 @ Wed Mar 09, 2011 10:04 pm wrote:
In preparation of learning Scheme next year at Waterloo, I am currently writing a scheme interpreter in Haskell! Unfortunately, a Haskell interpreter is slightly more advanced, so I doubt I'll be able to write a Haskell interpreter in Scheme to be run inside my Haskell-Scheme Interpreter Sad
You, sir, are insane.

Feel free to share with us once completed!


Actually, it's a lot less difficult than you would imagine. There are two main routes you can go, and given how simplistic Scheme's syntax is, neither works out to be too complex. You can either use Happy (or something similar) to define a grammar, which it then uses to generate a parser for you, or you can use Parsec to code the parser up yourself. Once parsed you just end up with a bunch of S-expressions which are extremely easy to evaluate. There is also a ton of references on the subject, let me see if I can dredge up a few...

This one gives a nice overview of the process - http://www.defmacro.org/ramblings/lisp-in-haskell.htmlB

Incredible guide to using Parsec - http://book.realworldhaskell.org/read/using-parsec.html

This goes into slightly more detail, nearly spelling out the entire process for you if you simply wanted to copy - http://jonathan.tang.name/files/scheme_in_48/tutorial/overview.html

Really, I'm not doing anything new: with a bit of dedication, this project could easily be someone's Hello World to the language. With how powerful Haskell is, and how nicely laid out some of the libraries are, its just a matter of learning enough of the language to understand some of the papers.

Unfortunately, in about ten minutes I will be leaving the country, so I won't be able to continue working on it for a week or so.

Author:  SNIPERDUDE [ Sat Mar 12, 2011 9:25 pm ]
Post subject:  RE:Updates

Not doing much. Thinking of looking at Java again to do some modding in Minecraft.

Author:  Tyr_God_Of_War [ Sun Apr 24, 2011 8:22 am ]
Post subject:  RE:Updates

I'm back! I have no programming classes this year (I finished all of them already), so I have been away.

I have been on a language learning spree, but once I found Haskell, I stopped. Haskell is my language of choice now.

Author:  Brightguy [ Thu Apr 28, 2011 2:51 pm ]
Post subject:  Re: RE:Updates

SNIPERDUDE @ Sat Mar 12, 2011 9:25 pm wrote:
Not doing much. Thinking of looking at Java again to do some modding in Minecraft.

This is a topic about functional programming...

Tony @ Wed Dec 22, 2010 1:12 am wrote:
Will be taking CS 442 Principles of Programming Languages -- it has some functional programming covered...

Anyway, this class is over now, but I loved how during lectures the prof would randomly make fun of language developers. Quotes off the top of my head:

  • "This is a really important concept in language design. The amount of time actual language developers spend thinking about this is zero."
  • "Part of the reason languages don't fix their mistakes is because language developers are arrogant. You have to be arrogant in order to think you can design a language better all the ones available now."
  • "We'll be careful in thinking though this. If you're not careful, you end up with C++."
  • "In the 70s it wasn't clear if imperative or functional programming would prevail. It turns out that the imperative side won, but to this day the functional programming side think they won. They're like communists."


: