Thank you very very much Daryoush ... I had not seen the book ... Looks pretty interesting, I saw it mentioning Midi though ... Thank you Justin for the location of the BASIC module. Regards, Kashyap
________________________________ From: Daryoush Mehrtash <[email protected]> To: CK Kashyap <[email protected]> Cc: Don Stewart <[email protected]>; [email protected] Sent: Mon, November 16, 2009 11:19:07 PM Subject: Re: [Haskell-cafe] DSL in Haskell Have you seen the Haskell School of Expression book by Paul Hudak? The book is available on line, Ch 9 and 10 talks about music. http://plucky.cs.yale.edu/cs431/HaskoreSoeV-0.7.pdf Daryoush On Mon, Nov 16, 2009 at 3:16 AM, CK Kashyap <[email protected]> wrote: Thanks Don, > >I read the PDF. I was not able to figure out how to get the BASIC module. >Wanted to see a reference implementation. > >The DSL I want to start with is a music generation DSL ... It should generate >a wave file >with music data as input -> for example the input could contain >C3 D3 E3 ... -> should output a wave file with those notes ... some kind of >mnemonics for tempo will also be there. >>Later I'd like to incorporate parallel sequence generation -> where I could >>get chord effect etc ... >I had done a rudimentary implementation in C a while back -> >http://kashyap-1978.tripod.com/Escapades/Goodies/Construct_WAV.html > >I'd appreciate > it very much if you could give me some pointers on getting started. > > >Regards, >Kashyap > > ________________________________ From: Don Stewart <[email protected]> >To: CK Kashyap <[email protected]> >Cc: [email protected] >Sent: Mon, November 16, 2009 12:57:54 AM >Subject: Re: [Haskell-cafe] DSL in Haskell > > >>ck_kashyap: >> Hi All, >> I was reading a Ruby book and in that it was mentioned that its capability to >> dynamically query and modify classes makes it suitable for implementing DSL's >> ... I am referring to Ruby's reflection and methods like "method_missing" >> here. >>> It can allow things like not having to define constants for all possible >> unicode code points etc...For example, first use of U0123 could bring such a >> constant definition into existence etc >> >>> I see multiple search hits when I look for Haskell and DSL - can someone >>> please >> point me to a good primer or explain to me how equivalent of above mentioned >> features in Ruby can be done in Haskell ... or the Haskell alternative for >> it. > >The Haskell equivalent would be overloading, primarily via type classes. > >See Lennart Augusston's BASIC for an example of this in the extreme: > > > http://augustss.blogspot.com/2009/02/more-basic-not-that-anybody-should-care.html > >That's BASIC syntax, in Haskell, relying on overloading numbers, strings >etc. And all statically typed. > >For a survey of some of the more recent EDSLs in Haskell, see this brief >overview, > > http://www.galois.com/%7Edons/papers/stewart-2009-edsls.pdf > >-- Don > > >_______________________________________________ >>Haskell-Cafe mailing list >[email protected] >http://www.haskell.org/mailman/listinfo/haskell-cafe > >
_______________________________________________ Haskell-Cafe mailing list [email protected] http://www.haskell.org/mailman/listinfo/haskell-cafe
