Paul,

I took a cursory look at your book. Am I correct in saying that the way time
is handled is by a function that gets the current time and functions that
calculate the state of the system at the time given by that call? So in FRP,
time is continuous, but the points of calculation are not controlled by the
Haskell code.

Mike

> -----Original Message-----
> From: Paul Hudak [mailto:[EMAIL PROTECTED]]
> Sent: Friday, May 19, 2000 6:45 AM
> To: [EMAIL PROTECTED]
> Cc: [EMAIL PROTECTED]
> Subject: Re: Block simulation / audio processing
>
>
> > Has anyone built any block simulators (for modeling continuous
> > electronic systems, like OP Amps, RC networks, etc) in Haskell?
>
> There have been several replies to this already, but permit
> me to add my
> 2 cents worth:
>
> FRP ("Functional Reactive Programming") is an abstraction of Fran
> ("Functional Reactive Animation") that is ideally suited to describing
> such things, since it is based on continuous (time-varying) values, as
> opposed to discrete values.  You can find out a lot about Fran from
> Conal Elliott's home page
> (http://www.research.microsoft.com/~conal) and
> from my book (http://haskell.org/soe), and about FRP at
> http://haskell.org/frob.  My student Zhongong Wan and I also
> have a new
> PLDI paper on the formal underpinnings of FRP if anyone is interested
> (it's not on the web yet).
>
> As for Haskore:
>
> > I'm also interested in this. I am thinking of extending
> > Paul Hudak's Haskore system to generate and handle true audio data
> > (instead of, or in addition to) MIDI data.
> >
> > I don't think I'll have enough time to do the programming myself,
> > but since I'll be using Hudak's book in next term's course,
> > I hope I can attract some students, and set them in the right
> > direction.
> >
> > In fact one student who read the course announcement
> > (and the book's web page) already asked me
> > about functional audio signal processing.
>
> The latest release of Haskore (http://haskell.org/haskore) includes an
> interface to Csound.  That is, one can wire up oscillators,
> modulators,
> special effects, etc. in a nice declarative style in Haskell,
> which then
> gets compiled into a Csound instrument file, which in turn
> gets compiled
> by Csound into actual sound files (.wav, .snd, etc.).  The nice thing
> about this is that it's fairly efficient because of the back-end
> processing.  To do this in FRP would be much less efficient.
>
> Hope this helps,
>
>   -Paul
>


Reply via email to