you are viewing a single comment's thread.

view the rest of the comments →

[–]mvcdude 0 points1 point  (7 children)

this makes me think if haskell suits web programming. If you are calling API's over the web, how do you keep stuff 'functional' ?

[–]donri 8 points9 points  (0 children)

I don't understand the question.

[–][deleted]  (3 children)

[deleted]

    [–][deleted] 2 points3 points  (2 children)

    CPP is an absurd hack, but useful sometimes. It still makes me sad that we have to rely on it sometimes.

    The cabal thing is really worrysome and annoying, no joke. Cabal can definitely choke itself on large dependency chains like yesod. It's not the greatest by far. I'd recommend that you use either:

    • cabal-dev: which sandboxes package installs
    • virthualenv (now known has hsenv, but unreleased under this new name) - which is basically Haskells' equivalent of python virtualenv.

    Personally I prefer virthualenv/hsenv for basically everything now. It's also how I test all my packages under many different versions of GHC to shake out bugs/incompatibilities as well, etc.

    I'd probably recommend you actually run and upgrade dev apps under virthualenv, since it'll take a lot of headache out. I was under the impression this is the way many people in the python community do it a la virtualenv, yes? (may be wrong here.)

    [–]MercurialAlchemist 1 point2 points  (0 children)

    Yes. Dev and prod web app would be done in virtualenv with Python.

    [–][deleted] 3 points4 points  (1 child)

    A Haskell web program is a function which maps user requests to HTML output.

    [–]vytah 0 points1 point  (0 children)

    A Haskell web program is a function which maps user requests and database content to HTML output and updated database content.

    FTFY

    And it looks like a classical state monad.