haskell

Can anyone explain Monads?

I think I understand what 'Maybe Monads' are, but I'm not sure about the other types....

Haskell's algebraic data types

I'm trying to fully understand all of Haskell's concepts. In what ways are algebraic data types similar to generic types, e.g., in C# and Java? And how are they different? What's so algebraic about them anyway? I'm familiar with universal algebra and its rings and fields, but I only have a vague idea of how Haskell's types work. ...

Beginners Guide to Haskell?

I've been looking for a decent guide to Haskell for some time, but haven't been able to find one that seems interesting enough to read through and/or makes sense. I've had prior exposure to Haskell a few years back, but I can't remember much about it. I remember the "Aha!"-feeling was incredible when I finally got it, and it was actuall...

Book recommendation for Haskell?

I would like to start Haskell, just out of curiosity. What books do you recommend? ...

Is there an elegant zip to interleave two lists in Perl 5?

I recently "needed" a zip function in Perl 5 (while I was thinking about How do I calculate relative time?), i.e. a function that takes two lists and "zips" them together to one list, interleaving the elements. (Pseudo)example: @a=(1, 2, 3); @b=('apple', 'orange', 'grape'); zip @a, @b; # (1, 'apple', 2, 'orange', 3, 'grape'); Haskel...

What are the primary differences between Haskell and F#?

I've searched on the Internet for comparisons between F# and Haskell but haven't found anything really definitive. What are the primary differences and why would I want to choose one over the other? ...

Fundeps and GADTs: When is type checking decidable?

I was reading a research paper about Haskell and how HList is implemented and wondering when the techniques described are and are not decidable for the type checker. Also, because you can do similar things with GADTs, I was wondering if GADT type checking is always decidable. I would prefer citations if you have them so I can read/unde...

What is the simplest way to write web apps in Haskell?

I would like to use Haskell more for my projects, and I think if I can get started using it for web apps, it would really help that cause. I have tried happs once or twice but had trouble getting off the ground. Are there simpler/more conventional (more like lamp) frameworks out there that I can use or should I just give happs another tr...

Is there a simple way in Haskell to call a shell command in Windows without the command window popping up?

I wrote a Haskell program that runs backup processes periodically on a Windows machine use rsync. But everytime I run the rsync command, a command window opens up to the top of all the windows. I would like to get rid of this window. What is the simplest way to do this? ...

Haskell list difference operator in F#

Is there an equivalent operator to Haskell's list difference operator \\ in F#? ...

How do I create an in-memory Handle in haskell?

I want something that looks like a file Handle but is really backed by an in-memory buffer to use for IO redirects. How can I do this? ...

Make Test.QuickCheck.Batch use a default type for testing list functions

I am testing a function called extractions that operates over any list. extractions :: [a] -> [(a,[a])] extractions [] = [] extractions l = extract l [] where extract [] _ = [] extract (x:xs) prev = (x, prev++xs) : extract xs (x : prev) I want to test it, for example, with import Test.QuickCheck.Batch prop_len l = l...

Simple haskell string manage

Theres is a little problem I want to solve with Haskell: let substitute a function that change all of the wildcards in a string for one concrete parameter. The function has de signature of: subs :: String -> String -> String -> String -- example: -- subs 'x' "x^3 + x + sin(x)" "6.2" will generate -- "6.2^3 + 6.2 + sin(6.2)" ...

exposition on arrows in haskell

What would be a good place to go to understand arrows? Ideally, I am just looking for some place with a concise definition with motivation from some good examples, something similar to Wadler's exposition on monads. ...

What are my IDE/Editor choices for Haskell?

I typically use Emacs with hasktags for editing Haskell but I would like to enumerate all the choices and hopefully get feedback on each. Emacs VIM Visual Haskell EclipseFP leksah SHIM (wasn't this for emacs originially? did the project die?) HIDE yi If you've used one of the above, please tell me what you liked and didn't like abou...

What languages implement features from functional programming?

Lisp developed a set of interesting language features quite early on in the academic world, but most of them never caught on in production environments. Some languages, like JavaScript, adapted basic features like garbage collection and lexical closures, but all the stuff that might actually change how you write programs on a large scal...

Are there any ORM tools for Haskell?

What is the best way to interact with a database using Haskell? I'm accustomed to using some sort of ORM (Django's ORM, hibernate, etc.) and something similar would be nice when creating apps with HAppS. Edit: I'd like to be free to choose from Postgresql MySql and SQLite as far as the actual databases go. ...

Best non-C++ language for generative programming?

C++ is probably the most popular language for static metaprogramming and Java doesn't support it. Are there any other languages besides C++ that support generative programming (programs that create programs)? Which ones are the best (for learning, for efficiency, for maintenance, for embedded systems, whatever)? ...

Good Haskell coding style of if/else control block?

I'm learning Haskell hope it could let me getting closer to functional programming, before learing it, I mostly use C-sytanx like languages, like C, Java or D Programming Language. I followed the tutorial on Wikibook, it goes well so far, I could understand most of them before the chapter "Simple input and output" But I do have a littl...

What are monads?

everyone keeps talking about monads and monadic style and Haskell. i can't find much information or tutorial on haskell monads. ...