DDC compiler and effects; better than Haskell? (was Re: [Haskell-cafe] unsafeDestructiveAssign?)

John A. De Goes john at n-brain.net
Wed Aug 12 23:50:58 EDT 2009


Fair enough, but keep in mind an effect system does more than just  
eliminate boilerplate: it provides richer information on the precise  
nature of the interaction of a function with the real world. With the  
right insight, you can reorder and parallelize all kinds of effectful  
computations. Something that "dumb" monads can't provide.

I haven't played with DDC, but I do believe some new FPL with a  
powerful effect system is going to take off in the next 5 years.

Regards,

John A. De Goes
N-Brain, Inc.
The Evolution of Collaboration

http://www.n-brain.net    |    877-376-2724 x 101

On Aug 12, 2009, at 8:13 PM, Dan Doel wrote:

> On Wednesday 12 August 2009 9:27:30 pm John A. De Goes wrote:
>> So what, because effect systems might not eliminate *all*  
>> boilerplate,
>> you'd rather use boilerplate 100% of the time? :-)
>
> For most of my Haskell programs, the majority of the program is not  
> made up of
> straight IO or ST functions, so how much boilerplate is it really  
> eliminating?
> And since all the fooM functions have to exist for all the other  
> monads, how
> much more boilerplate is it really to use them for IO and ST as well?
>
> Off hand, I'd say I don't write foo and fooM versions of functions  
> much in
> actual programs, either. Such duplication goes into libraries, and  
> that would
> be the case for Disciple as well (until there's a way to extend the  
> effect
> system outside the compiler).
>
> So it's more of "effect systems eliminate 2% of my boilerplate; who
> (currently) cares? And is it worth having situations like 'you use  
> monads for
> these effects, and the effect system for these other effects' in the  
> language
> to do so?"
>
> But, as I said, it's not that I don't think it's a fruitful area of  
> research,
> I just don't think it's going to yield significantly nicer code than  
> Haskell
> _yet_.
>
> -- Dan



More information about the Haskell-Cafe mailing list