marmolubio + haskell 1302
Pipes 2.0 vs pipes-core : haskell
yesterday by marmolubio
The underlying issue is that statically safe finalization is inherently not a monad and requires a parametrized monad, but I want to be able to decompose the problem so that users can decide for themselves whether they want a monad or static guarantees. However, the decomposition still eludes me.
haskell
yesterday by marmolubio
[Haskell-cafe] Re: An interesting monad: "Prompt"
yesterday by marmolubio
> Wait, are you saying that if you apply ContT to any monad that has the
> "left recursion on >>= takes quadratic time" problem, and represent
> all primitive operations via lift (never using >>= within "lift"),
> that you will get a new monad that doesn't have that problem?
monads
cs
haskell
> "left recursion on >>= takes quadratic time" problem, and represent
> all primitive operations via lift (never using >>= within "lift"),
> that you will get a new monad that doesn't have that problem?
yesterday by marmolubio
Pipes 2.0 vs pipes-core - Paolo Capriotti's blog
yesterday by marmolubio
Since all the finalization primitives in Control.Exception are implemented on top of exception handling primitives like catch and mask, I initially believed that finalization would follow automatically from exception handling capabilities in pipes.
Unfortunately, there is a fundamental operational difference between IO and Pipe, which makes exception handling alone insufficient to guarantee finalization of resources.
haskell
iteratee
Unfortunately, there is a fundamental operational difference between IO and Pipe, which makes exception handling alone insufficient to guarantee finalization of resources.
yesterday by marmolubio
Haskell for all: Conduit bugs
3 days ago by marmolubio
I will discuss rewrite rules later in a post about optimizing pipes and frames, but one of my big motivations for strictly enforcing all the class laws as strong as possible is that it then permits rewrites so powerful that all the pipe code completely disappears, leaving behind the hand-written loop code (think: stream fusion on steroids).
haskell
iteratee
3 days ago by marmolubio
ThirdPartyAddOns - protobuf - Links to third-party add-ons. - Protocol Buffers - Google's data interchange format - Google Project Hosting
4 days ago by marmolubio
These are RPC implementations that work with Protocol Buffers. Some of these actually work with Protocol Buffers service definitions (defined using the service keyword in .proto files) while others just use Protocol Buffers message objects.
haskell
rpc
4 days ago by marmolubio
haskell - Computation Constructs (Monads, Arrows, etc.) - Stack Overflow
5 days ago by marmolubio
Categories (in the haskell sense) generalize functions (you can compose them but not apply them)
haskell
monads
5 days ago by marmolubio
[Haskell-cafe] Un-memoization
6 days ago by marmolubio
Yes. I had faced essentially the same problem. It is indeed tricky to
prevent memoization: GHC is very good at it. The following article
explains the solution:
``Preventing memoization in (AI) search problems''
http://okmij.org/ftp/Haskell/index.html#memo-off
haskell
prevent memoization: GHC is very good at it. The following article
explains the solution:
``Preventing memoization in (AI) search problems''
http://okmij.org/ftp/Haskell/index.html#memo-off
6 days ago by marmolubio
Data.Conduit
8 days ago by marmolubio
The connect-and-resume operator. Does not close the Source, but instead returns it to be used again. This allows a Source to be used incrementally in a large program, without forcing the entire program to live in the Sink monad.
haskell
libraries
iteratee
8 days ago by marmolubio
Monad Reification in Haskell and the Sunroof Javascript compiler « CSDL Blog
10 days ago by marmolubio
Reification is the observation of underlying structure. One reason for reification is to cross-compile a Haskell expression to execute on a different platform. This has been done many times, and a great reference for this is Conal Elliott, Sigbjorn Finne and Oege de Moor’s Compiling Embedded Languages
haskell
10 days ago by marmolubio
[Haskell-cafe] zipper for rose trees? (Data.Tree)
15 days ago by marmolubio
Hi Graham,
There is one implementation here:
http://code.haskell.org/yi/Data/Tree/
I wrote it for Yi but it is quite general. It is a pity that we don't
have it in the standard libraries. It is not completely tested but it
seems to work for me.
haskell
datastructure
There is one implementation here:
http://code.haskell.org/yi/Data/Tree/
I wrote it for Yi but it is quite general. It is a pity that we don't
have it in the standard libraries. It is not completely tested but it
seems to work for me.
15 days ago by marmolubio
[Haskell-cafe] Converting list comprehensions to combinatory style
18 days ago by marmolubio
> I gather that by combinatory style, he means the use of concat, map, and
> filter. While Bird provides the following conversion rules, he doesn't
> prove them, justify them, or even provide an example using them:
>
> R1. [ f x | x <- xs ] = map f xs
> R2. [ x | x <- xs, p x ] = filter p xs
> R3. [ e | Q, P ] = concat [[e | P] | Q]
> R4. [ e | x <- [d | P] ] = [e [x := d] | Q, P]
haskell
> filter. While Bird provides the following conversion rules, he doesn't
> prove them, justify them, or even provide an example using them:
>
> R1. [ f x | x <- xs ] = map f xs
> R2. [ x | x <- xs, p x ] = filter p xs
> R3. [ e | Q, P ] = concat [[e | P] | Q]
> R4. [ e | x <- [d | P] ] = [e [x := d] | Q, P]
18 days ago by marmolubio
Haskell Communities and Activities Report
19 days ago by marmolubio
A central feature of Agda is inductive families, i.e. GADTs which can be indexed by values and not just types.
haskell
19 days ago by marmolubio
typeclass - What is Haskell's Data.Typeable? - Stack Overflow
19 days ago by marmolubio
Data.Typeable is an encoding of an well known approach (see e.g. Harper) to implementing delayed (dynamic) type checking in a statically typed language -- using a universal type.
Such a type wraps code for which type checking would not succeed until a later phase. Rather than reject the program as ill-typed, the compiler passes it on for runtime checking.
haskell
types
Such a type wraps code for which type checking would not succeed until a later phase. Rather than reject the program as ill-typed, the compiler passes it on for runtime checking.
19 days ago by marmolubio
8.3. Syntactic extensions
19 days ago by marmolubio
Record punning permits the variable name to be elided, so one can simply write
f (C {a}) = a
haskell
f (C {a}) = a
19 days ago by marmolubio
Martin O. comments on Scala collections (Lang.NEXT 2012) : haskell
22 days ago by marmolubio
Note that Martin didn't answer the question of Erik: He asserted that you don't need a PhD to use Scala's collections. What Erik asked was whether you needed a PhD to understand them.
Personally, I don't think you quite need a PhD, but you need to spend a lot more time than you'd necessarily want learning about types, subtyping, and co and contravariance. You also have to deal with Scala's sort of nutty type level syntax.
haskell
libraries
Personally, I don't think you quite need a PhD, but you need to spend a lot more time than you'd necessarily want learning about types, subtyping, and co and contravariance. You also have to deal with Scala's sort of nutty type level syntax.
22 days ago by marmolubio
Ruminations of a Programmer: Domain Modeling in Haskell - Follow the Types
22 days ago by marmolubio
And we get an EDSL for free without any additional effort and just by sticking to idiomatic Haskell. The type system guides you in every respect - Haskellers call it "Follow the types".
haskell
22 days ago by marmolubio
Clojure Impressions
23 days ago by marmolubio
I couldn’t find it in the beginning. Later on I discovered that Clojure’s map function actually maps over multiple collections. So there it was, my zipWith function in disguise.
clojure
haskell
23 days ago by marmolubio
Haskell Understanding Monads - Stack Overflow
24 days ago by marmolubio
In practice, I don't recommend using fail since it's so unclear what it will do. Instead, use the appropriate failure mechanism of the monad you're in, whether that's mzero, throwError or something else.
haskell
monads
24 days ago by marmolubio
#AltDevBlogADay » Sudoku Solver in Haskell
26 days ago by marmolubio
The good thing was that the infamously recondite concept of monad(5) has become a little bit clearer. Without it, in the functional world, I noticed that too-deeply-nested case statements naturally occur.
haskell
programming
26 days ago by marmolubio
View Patterns as Pattern Matching for Records « Sententia cdsmithus
4 weeks ago by marmolubio
Right now, I can write this for a record type in Haskell.
foo :: MyRecord -> Int
foo (MyRecord { field1 = Just k, field2 = 4, field3 = (x:_) }) = 4*k - x
haskell
syntax
foo :: MyRecord -> Int
foo (MyRecord { field1 = Just k, field2 = 4, field3 = (x:_) }) = 4*k - x
4 weeks ago by marmolubio
related tags
academic ⊕ accounting ⊕ advanced ⊕ algebra ⊕ algorithm ⊕ algorithms ⊕ analysis ⊕ api ⊕ arch ⊕ articles ⊕ bibliography ⊕ blog ⊕ blogging ⊕ book ⊕ books ⊕ bot ⊕ brainteaser ⊕ bug ⊕ business ⊕ c ⊕ calculus ⊕ clarification ⊕ clojure ⊕ code ⊕ comics ⊕ comparison ⊕ compilers ⊕ concurrent ⊕ coq ⊕ course ⊕ cs ⊕ data ⊕ databases ⊕ datastructure ⊕ design ⊕ discussion ⊕ documentation ⊕ dsl ⊕ economics ⊕ education ⊕ explanation ⊕ finance ⊕ forums ⊕ french ⊕ frp ⊕ functional ⊕ game ⊕ gamedesign ⊕ games ⊕ ghc ⊕ ghci ⊕ github ⊕ gotcha ⊕ gotchas ⊕ graph ⊕ haskell ⊖ history ⊕ hosting ⊕ hosting.linode ⊕ howto ⊕ http ⊕ i18n ⊕ if ⊕ infoq ⊕ insight ⊕ interview ⊕ iteratee ⊕ java ⊕ javascript ⊕ jobs ⊕ json ⊕ language ⊕ languages ⊕ lazy ⊕ learning ⊕ lectures ⊕ libraries ⊕ linux ⊕ lisp ⊕ list ⊕ lists ⊕ logic ⊕ mail ⊕ management ⊕ manual ⊕ math ⊕ mathematics ⊕ mathematics.groupth ⊕ mathoverflow ⊕ monads ⊕ music ⊕ mysql ⊕ networking ⊕ news ⊕ nlp ⊕ nosql ⊕ notation ⊕ notes ⊕ numeric ⊕ odd ⊕ opengl ⊕ optimization ⊕ papers ⊕ parser ⊕ parsing ⊕ patterns ⊕ pdf ⊕ pearls ⊕ people ⊕ productivity ⊕ programming ⊕ project ⊕ python ⊕ quotes ⊕ reference ⊕ resource ⊕ resources ⊕ roguelike ⊕ rpc ⊕ ruby ⊕ scraping ⊕ search ⊕ slides ⊕ snap ⊕ social ⊕ software ⊕ sql ⊕ stackoverflow ⊕ statistics ⊕ style ⊕ survey ⊕ swing ⊕ syntax ⊕ testing ⊕ text ⊕ theory ⊕ tips ⊕ tools ⊕ tricky ⊕ tutorial ⊕ types ⊕ typing ⊕ ui ⊕ unicode ⊕ uniplate ⊕ video ⊕ vim ⊕ web ⊕ webapps ⊕ weird ⊕ windows ⊕ yesod ⊕Copy this bookmark: