Re: [Haskell-cafe] arr considered harmful

2012-12-21 Thread Conal Elliott
Oh, I see Ross's trick. By quantifying over the domain range types, they can later be specialized to analysis-time types (like circuit labels) or to run-time types (like Boolean or Integer). On Thu, Dec 20, 2012 at 4:55 PM, Conal Elliott co...@conal.net wrote: If you require the circuit to be

Re: [Haskell-cafe] arr considered harmful

2012-12-21 Thread Kim-Ee Yeoh
Hey Conal, I have something (another circuits formulation) that's almost an arrow but doesn't support arr. Have you seen Adam Megacz's generalized arrows? http://www.cs.berkeley.edu/~megacz/garrows/ -- Kim-Ee On Fri, Dec 21, 2012 at 7:55 AM, Conal Elliott co...@conal.net wrote: If you

Re: [Haskell-cafe] arr considered harmful

2012-12-21 Thread Conal Elliott
Thanks, Kim-Ee. Adam M's garrows look very useful for what I'm doing. -- Conal On Fri, Dec 21, 2012 at 5:14 AM, Kim-Ee Yeoh k...@atamo.com wrote: Hey Conal, I have something (another circuits formulation) that's almost an arrow but doesn't support arr. Have you seen Adam Megacz's

Re: [Haskell-cafe] arr considered harmful

2012-12-20 Thread Conal Elliott
If you require the circuit to be parametric in the value types, you can limit the types of function you can pass to arr to simple plumbing. See the netlist example at the end of my Fun of Programming slides ( http://www.soi.city.ac.uk/~ross/papers/fop.html). I'm running into this same

Re: [Haskell-cafe] arr considered harmful

2011-11-02 Thread Ertugrul Soeylemez
Ryan Ingram ryani.s...@gmail.com wrote: I know it's a bit of an 'intentionally provocative' title, but with the recent discussions on Arrows I thought it timely to bring this up. Most of the conversion from arrow syntax into arrows uses 'arr' to move components around. However, arr is

Re: [Haskell-cafe] arr considered harmful

2011-11-01 Thread Serguey Zefirov
2011/11/1 Ryan Ingram ryani.s...@gmail.com: For example, I would love to be able to use the arrow syntax to define objects of this type: data Circuit a b where     Const :: Bool - Circuit () Bool     Wire :: Circuit a a     Delay :: Circuit a a     And :: Circuit (Bool,Bool) Bool     Or

Re: [Haskell-cafe] arr considered harmful

2011-11-01 Thread David Barbour
On Mon, Oct 31, 2011 at 5:33 PM, Ryan Ingram ryani.s...@gmail.com wrote: For example, I would love to be able to use the arrow syntax to define objects of this type: data Circuit a b where Const :: Bool - Circuit () Bool Wire :: Circuit a a Delay :: Circuit a a And ::

Re: [Haskell-cafe] arr considered harmful

2011-11-01 Thread Ryan Ingram
On Tue, Nov 1, 2011 at 3:36 AM, Serguey Zefirov sergu...@gmail.com wrote: 2011/11/1 Ryan Ingram ryani.s...@gmail.com: Would you mind give me some examples on how you desribe real circuits with that abstraction and, especially, an Arrow instance (even imaginary one)? Sure, here's a simple SR

Re: [Haskell-cafe] arr considered harmful

2011-11-01 Thread Ryan Ingram
On Mon, Oct 31, 2011 at 6:52 PM, Paterson, Ross r.pater...@city.ac.ukwrote: If you require the circuit to be parametric in the value types, you can limit the types of function you can pass to arr to simple plumbing. See the netlist example at the end of my Fun of Programming slides (

[Haskell-cafe] arr considered harmful

2011-10-31 Thread Ryan Ingram
I know it's a bit of an 'intentionally provocative' title, but with the recent discussions on Arrows I thought it timely to bring this up. Most of the conversion from arrow syntax into arrows uses 'arr' to move components around. However, arr is totally opaque to the arrow itself, and prevents

Re: [Haskell-cafe] arr considered harmful

2011-10-31 Thread Daniel Peebles
Have you seen Adam Megacz's work on generalized arrows? I think he proposes to kill arr and has done a decent amount of work on it. On Mon, Oct 31, 2011 at 8:33 PM, Ryan Ingram ryani.s...@gmail.com wrote: I know it's a bit of an 'intentionally provocative' title, but with the recent

Re: [Haskell-cafe] arr considered harmful

2011-10-31 Thread Felipe Almeida Lessa
On Mon, Oct 31, 2011 at 10:33 PM, Ryan Ingram ryani.s...@gmail.com wrote: The arrow syntax translation uses arr to do plumbing of variables.  I think a promising project would be to figure out exactly what plumbing is needed, and add those functions to a sort of 'PrimitiveArrow' class.  All of

Re: [Haskell-cafe] arr considered harmful

2011-10-31 Thread Ryan Ingram
This seems basically what I'm talking about, except even more hardcore. I think mostly what I'm suggesting is that the GHC arrow preprocessor to compile to something like generalized arrows, by default, with current Arrows as a special case. -- ryan On Mon, Oct 31, 2011 at 5:48 PM, Felipe

Re: [Haskell-cafe] arr considered harmful

2011-10-31 Thread Paterson, Ross
Ryan Ingram writes: Most of the conversion from arrow syntax into arrows uses 'arr' to move components around. However, arr is totally opaque to the arrow itself, and prevents describing some very useful objects as arrows. For example, I would love to be able to use the arrow syntax to