Return Styles: Pseud0ch, Terminal, Valhalla, NES, Geocities, Blue Moon.

Pages: 1-4041-8081-

Haskell rulez!!11

Name: Anonymous 2011-03-28 18:11


instance XmlContent Album where
    fromElem (CElem (Elem "album" [] c0):rest) =
        (\(a,ca)->
           (\(b,cb)->
              (\(c,cc)->
                 (\(d,cd)->
                    (\(e,ce)->
                       (\(f,cf)->
                          (\(g,cg)->
                             (\(h,ch)->
                                (Just (Album a b c d e f g h), rest))
                             (definite fromElem "<notes>" "album" cg))
                          (many fromElem cf))
                       (definite fromElem "<personnel>" "album" ce))
                    (many fromElem cd))
                 (definite fromElem "<coverart>" "album" cc))
              (fromElem cb))
           (definite fromElem "<artist>" "album" ca))
        (definite fromElem "<title>" "album" c0)
    fromElem (CMisc _:rest) = fromElem rest
    fromElem rest = (Nothing, rest)
    toElem (Album a b c d e f g h) =
        [CElem (Elem "album" [] (toElem a ++ toElem b ++ maybe [] toElem c
                                 ++ toElem d ++ concatMap toElem e ++ toElem f ++ concatMap toElem g
                                 ++ toElem h))]
instance XmlContent Title where
    fromElem (CElem (Elem "title" [] c0):rest) =
        (\(a,ca)->
           (Just (Title a), rest))
        (definite fromText "text" "title" c0)
    fromElem (CMisc _:rest) = fromElem rest
    fromElem rest = (Nothing, rest)
    toElem (Title a) =
        [CElem (Elem "title" [] (toText a))]
instance XmlContent Artist where
    fromElem (CElem (Elem "artist" [] c0):rest) =
        (\(a,ca)->
           (Just (Artist a), rest))
        (definite fromText "text" "artist" c0)
    fromElem (CMisc _:rest) = fromElem rest
    fromElem rest = (Nothing, rest)
    toElem (Artist a) =
        [CElem (Elem "artist" [] (toText a))]
instance XmlContent Recording where
    fromElem (CElem (Elem "recording" as []):rest) =
        (Just (fromAttrs as), rest)
    fromElem (CMisc _:rest) = fromElem rest
    fromElem rest = (Nothing, rest)
    toElem as =
        [CElem (Elem "recording" (toAttrs as) [])]
instance XmlAttributes Recording where
    fromAttrs as =
        Recording
          { recordingDate = possibleA fromAttrToStr "date" as
          , recordingPlace = possibleA fromAttrToStr "place" as
          }
    toAttrs v = catMaybes
        [ maybeToAttr toAttrFrStr "date" (recordingDate v)
        , maybeToAttr toAttrFrStr "place" (recordingPlace v)
        ]
instance XmlContent Coverart where
    fromElem (CElem (Elem "coverart" as c0):rest) =
        (\(a,ca)->
           (Just (Coverart (fromAttrs as) a), rest))
        (fromElem c0)
    fromElem (CMisc _:rest) = fromElem rest
    fromElem rest = (Nothing, rest)
    toElem (Coverart as a) =
        [CElem (Elem "coverart" (toAttrs as) (maybe [] toElem a))]

Name: Anonymous 2011-03-28 18:26

holy fuck that sure do look ugly

Name: Anonymous 2011-03-28 18:52

XML AIDS

Name: Anonymous 2011-03-28 19:39

Haskell is a write-only language.

Name: Anonymous 2011-03-28 19:40

>>1
That's not pointless. Make it pointless.

Name: Anonymous 2011-03-28 20:03

Expert nesting.

Name: Anonymous 2011-03-28 20:46

ARROW CODE

Name: Anonymous 2011-03-28 23:14

ARROW GAY

Name: C I R N O 2011-03-29 5:38

BAKA GET

Name: Anonymous 2011-03-29 6:46


                             (definite fromElem "<notes>" "album" cg))
                          (many fromElem cf))
                       (definite fromElem "<personnel>" "album" ce))
                    (many fromElem cd))
                 (definite fromElem "<coverart>" "album" cc))
              (fromElem cb))
           (definite fromElem "<artist>" "album" ca))
        (definite fromElem "<title>" "album" c0)

This is Lisp, not Haskell.

Name: Anonymous 2011-03-29 8:15

>>10
U MENA LISKELL?

Name: Anonymous 2011-03-29 13:46

>>1
lern2applicative

Name: Anonymous 2013-06-18 19:44

I ARE ANDRU

Name: Anonymous 2013-06-18 19:51

I ARE ANDRU

Name: Anonymous 2013-06-18 19:58

I ARE ANDRU

Name: Anonymous 2013-06-18 20:00

wat

Name: Anonymous 2013-06-18 20:05

I ARE ANDRU

Name: Anonymous 2013-06-18 20:12

I ARE ANDRU

Name: Anonymous 2013-06-18 20:20

I ARE ANDRU

Name: Anonymous 2013-06-18 20:27

I ARE ANDRU

Name: Anonymous 2013-06-18 20:34

I ARE ANDRU

Name: Anonymous 2013-06-18 20:41

I ARE ANDRU

Name: Anonymous 2013-06-18 20:48

I ARE ANDRU

Name: Anonymous 2013-06-18 20:55

I ARE ANDRU

Name: Anonymous 2013-06-18 21:02

I ARE ANDRU

Name: Anonymous 2013-06-18 21:09

I ARE ANDRU

Name: Anonymous 2013-06-18 21:16

I ARE ANDRU

Name: Anonymous 2013-06-18 21:24

I ARE ANDRU

Name: Anonymous 2013-06-18 21:31

I ARE ANDRU

Name: Anonymous 2013-06-18 21:38

I ARE ANDRU

Name: Anonymous 2013-06-18 21:45

I ARE ANDRU

Name: Anonymous 2013-06-18 21:52

I ARE ANDRU

Name: Anonymous 2013-06-18 21:59

I ARE ANDRU

Name: Anonymous 2013-06-18 22:06

I ARE ANDRU

Name: Anonymous 2013-06-18 22:14

I ARE ANDRU

Name: Anonymous 2013-06-18 22:21

I ARE ANDRU

Name: Anonymous 2013-06-18 22:28

I ARE ANDRU

Name: Anonymous 2013-06-18 22:35

I ARE ANDRU

Name: Anonymous 2013-06-18 22:42

I ARE ANDRU

Name: Anonymous 2013-06-18 22:49

I ARE ANDRU

Name: Anonymous 2013-06-18 22:56

I ARE ANDRU

Name: Anonymous 2013-06-18 23:03

I ARE ANDRU

Name: Anonymous 2013-06-18 23:10

I ARE ANDRU

Name: Anonymous 2013-06-18 23:17

I ARE ANDRU

Name: Anonymous 2013-06-18 23:24

I ARE ANDRU

Name: Anonymous 2013-06-18 23:31

I ARE ANDRU

Name: Anonymous 2013-06-18 23:39

I ARE ANDRU

Name: Anonymous 2013-06-18 23:45

I ARE ANDRU

Name: Anonymous 2013-06-18 23:52

I ARE ANDRU

Name: Anonymous 2013-06-18 23:59

I ARE ANDRU

Name: Anonymous 2013-06-19 0:07

I ARE ANDRU

Name: Anonymous 2013-06-19 0:14

I ARE ANDRU

Name: Anonymous 2013-06-19 0:21

I ARE ANDRU

Name: Anonymous 2013-06-19 0:28

I ARE ANDRU

Name: Anonymous 2013-06-19 0:35

I ARE ANDRU

Name: Anonymous 2013-06-19 0:42

I ARE ANDRU

Name: Anonymous 2013-06-19 0:49

I ARE ANDRU

Name: Anonymous 2013-06-19 0:56

I ARE ANDRU

Name: Anonymous 2013-06-19 1:02

I ARE ANDRU

Name: Anonymous 2013-06-19 1:09

I ARE ANDRU

Name: Anonymous 2013-06-19 1:16

I ARE ANDRU

Name: Anonymous 2013-06-19 1:23

I ARE ANDRU

Name: Anonymous 2013-06-19 1:30

I ARE ANDRU

Name: Anonymous 2013-06-19 1:37

I ARE ANDRU

Name: Anonymous 2013-06-19 1:44

I ARE ANDRU

Name: Anonymous 2013-06-19 1:51

I ARE ANDRU

Name: Anonymous 2013-06-19 1:58

I ARE ANDRU

Name: Anonymous 2013-06-19 2:05

I ARE ANDRU

Name: Anonymous 2013-06-19 2:12

I ARE ANDRU

Name: Anonymous 2013-06-19 2:19

I ARE ANDRU

Name: Anonymous 2013-06-19 2:26

I ARE ANDRU

Name: Anonymous 2013-06-19 2:33

I ARE ANDRU

Name: Anonymous 2013-06-19 2:40

I ARE ANDRU

Name: Anonymous 2013-06-19 2:47

I ARE ANDRU

Name: Anonymous 2013-06-19 2:54

I ARE ANDRU

Name: Anonymous 2013-06-19 3:01

I ARE ANDRU

Name: Anonymous 2013-06-19 3:08

I ARE ANDRU

Name: Anonymous 2013-06-19 3:15

I ARE ANDRU

Name: Anonymous 2013-06-19 3:21

I ARE ANDRU

Name: Anonymous 2013-06-19 3:28

I ARE ANDRU

Name: Anonymous 2013-06-19 3:36

I ARE ANDRU

Name: Anonymous 2013-06-19 3:43

I ARE ANDRU

Name: Anonymous 2013-06-19 3:50

I ARE ANDRU

Name: Anonymous 2013-06-19 3:57

I ARE ANDRU

Name: Anonymous 2013-06-19 4:04

I ARE ANDRU

Name: Anonymous 2013-06-19 4:10

I ARE ANDRU

Name: Anonymous 2013-06-19 4:17

I ARE ANDRU

Name: Anonymous 2013-06-19 4:24

I ARE ANDRU

Name: Anonymous 2013-06-19 4:31

I ARE ANDRU

Name: Anonymous 2013-06-19 4:38

I ARE ANDRU

Name: Anonymous 2013-06-19 4:45

I ARE ANDRU

Name: Anonymous 2013-06-19 4:52

I ARE ANDRU

Name: Anonymous 2013-06-19 4:59

I ARE ANDRU

Name: Anonymous 2013-06-19 5:06

I ARE ANDRU

Name: Anonymous 2013-06-19 5:13

I ARE ANDRU

Name: Anonymous 2013-06-19 5:20

I ARE ANDRU

Name: Anonymous 2013-06-19 5:27

I ARE ANDRU

Name: Anonymous 2013-06-19 5:34

I ARE ANDRU

Name: Anonymous 2013-06-19 5:41

I ARE ANDRU

Name: Anonymous 2013-06-19 5:48

I ARE ANDRU

Name: Anonymous 2013-06-19 5:55

I ARE ANDRU

Name: Anonymous 2013-06-19 6:02

I ARE ANDRU

Name: Anonymous 2013-06-19 6:09

I ARE ANDRU

Name: Anonymous 2013-06-19 6:16

I ARE ANDRU

Name: Anonymous 2013-06-19 6:23

I ARE ANDRU

Name: Anonymous 2013-06-19 6:30

I ARE ANDRU

Name: Anonymous 2013-06-19 6:37

I ARE ANDRU

Name: Anonymous 2013-06-19 6:44

I ARE ANDRU

Name: Anonymous 2013-06-19 6:51

I ARE ANDRU

Name: Anonymous 2013-06-19 6:58

I ARE ANDRU

Name: Anonymous 2013-06-19 7:05

I ARE ANDRU

Name: Anonymous 2013-06-19 7:12

I ARE ANDRU

Name: Anonymous 2013-06-19 7:19

I ARE ANDRU

Name: Anonymous 2013-06-19 9:08

>>1
LESS TUPLE MORE MONAD

Don't change these.
Name: Email:
Entire Thread Thread List