01:51:03 <donri> heh, the mongodb default is basically like scheduleUpdate
01:51:20 <donri> we should follow suite for competitive benchmarks!
04:16:39 <stepcut> :)
17:57:46 <Qtr> Anyone here deployed a haskell app at heroku?
18:00:14 <donri> Qtr: did you see http://www.yesodweb.com/blog/2011/07/haskell-on-heroku
18:03:41 <donri> Qtr: the gist of it seems to be that you need to compile with -static on 64 bit linux
18:12:36 <Qtr> im on windows
18:12:47 <Qtr> can i compile to 64bit linux?
18:14:12 <stepcut> not without linux
18:14:47 <Qtr> i was gonna get myself a vm and runlinux on anyway, then i can do this as well
18:15:11 <stepcut> yeah
18:24:17 <Qtr> does it matter if you use happstack or yesud?
18:24:33 <stepcut> does what matter?
18:24:47 <Qtr> for deploying on heroku
18:25:59 <stepcut> no
19:27:30 <donri> might matter if you use acid-state, but you're probably not
19:30:23 <donri> hey http://chrisdone.com/fay/
19:35:53 <luite> yeah i found that a few minutes ago, was mainly interested in what functionality from haskell is missing in fay
19:36:00 <luite> but that doesn't seem to be there?
19:38:27 <stepcut> I wonder if the 'strict subset' is still lazy..
19:38:38 <stepcut> :p
19:38:44 <stepcut> (the answer appears to be yes)
19:39:16 <luite> yes but i think it doesn't have tail call optimization at this point
19:41:25 <stepcut> yeah.. macromedia/adobe tried to get that into the ECMA 4 spec at one point in time… but that was a big failure in the end
19:42:42 <luite> i'm not sure if a javascript tco would cover all cases where haskell would require it
19:49:01 <donri> luite: anything interesting happening with ghcjs lately?
19:50:16 <luite> haven't had time to work on it unfortunately
19:50:32 <luite> same for hamishmack i think
20:01:12 <donri> what's that
20:02:34 <luite> he's the one who did most of the recent ghcjs work
20:02:42 <luite> improving the rts
21:05:47 <Qtr> Your file is not found
21:05:47 <Qtr> To try again is useless
21:05:47 <Qtr> It is just not here
21:06:11 <donri> Qtr: that's the default 404 page
21:06:11 <Qtr> i get that when using this form example: http://www.happstack.com/docs/crashcourse/RqData.html#rqdata
21:08:34 <Qtr> the next example works though so nevermind
21:08:44 <donri> which example, specifically?
21:12:20 <Qtr> hello rqdata
21:12:24 <Qtr> but the next works
21:13:08 <donri> Qtr: did you visit http://localhost:8000/?greeting=hello&noun=rqdata
21:13:25 <donri> "look" will end up failing with a 404 page if the query parameter is missing
21:13:41 <donri> so e.g. http://localhost:8000/?greeting=hello should show that "to try again is useless" page
21:14:00 <Qtr> oh i see
21:14:11 <Qtr> i jsut went to 8000
21:14:36 <donri> it could be clarified what to expect
21:14:38 <donri> "If the key is not found, then look will fail. In ServerPart that means it will call mzero."
21:15:05 <donri> ... and in turn, mzero means that "next handler" is tried until one that doesn't call mzero is found, otherwise we return a 404 page
21:15:19 <donri> and in that example there's only one handler anyway :)
21:17:18 <donri> personally i'm not sure i think that's the right behavior for missing keys, should probably be bad request or something instead
21:17:22 <donri> stepcut: ^
21:19:07 <donri> (further down it describes how to get better control over "look" behavior)
21:22:22 <stepkut> donri: I think bad request is supposed to be for when the client sends data that violates the http spec, http://www.checkupdown.com/status/E400.html
21:22:52 <donri> stepkut: makes sense, though it would be useful to have a code for the other casde
21:22:54 <donri> case
21:23:47 <donri> 412 Precondition Failed ? :)
21:28:36 <Qtr> why does compiling with threaded do so i cant Ctrl-C interrupt the rogram?
21:30:44 <donri> probably not 412 either
21:31:59 <donri> Qtr: that's a known issue on windows i think, but don't know if there's a known fix
21:33:12 <Qtr> value can be instead of upload? i want to submit text via a form¨
21:33:31 <Qtr> why are things that could be types strings?
21:33:39 <Qtr> then it cant be checked compiletime
21:34:26 <donri> Qtr: what string could be a type?
21:44:00 <Qtr> noine maybe
21:44:02 <Qtr> anyway
21:44:22 <Qtr> lookFile is for files but how do i get text of a submitform? looktext?
21:44:42 <donri> noine?
21:45:17 <Qtr> none
21:45:29 <Qtr> input ! type_ "text" ! name "text_submission" ! size "10"
21:45:29 <Qtr>              input ! type_ "submit" ! value "submit"
21:45:32 <Qtr> some of those?
21:45:35 <Qtr> not value but
21:45:40 <Qtr> the others
21:47:16 <stepkut> look
21:47:36 <stepkut> or lookText
21:47:38 <donri> you can simply use "look" and friends
21:47:45 <stepkut> depending if you want an String or Text value
21:47:48 <donri> or perhaps optimally something like, body $ lookText
21:48:24 <donri> or lookBS if Text is decoded incorrectly
21:48:31 <Qtr> lookText apparently doesnt exist
21:48:43 <donri> http://www.happstack.com/docs/happstack-server-7.0.2/doc/html/happstack-server/Happstack-Server-RqData.html
21:49:21 <Qtr> h wasnt importewd
21:50:24 <donri> might not be re-exported from Happstack.Server
21:50:49 <stepkut> donri: it is
21:52:28 <donri> Qtr: you can refactor that input into a helper function
21:52:42 <Qtr> Data.Text.Lazy.Internal.Text
21:52:48 <Qtr> i have thta but want String
21:52:55 <donri> then use look instead of lookText
21:56:32 <donri> inputSubmit val = input ! type_ "submit" ! value val -- etc
21:56:54 <Qtr> i have Internal.MarkupM () but want a String
21:57:15 <Qtr> other way around
21:57:25 <donri> toHtml
21:59:13 <Qtr> ah success! i can post a move!
21:59:37 <donri> \o/
21:59:55 <Qtr> if the body is sevral things, first a table then a form, how do i do?
22:02:09 <donri> you can put things next to each other with do notation
22:02:15 <donri> do p "hi"; p "hi"
22:19:34 <Qtr> why does compiling with threaded do so i cant Ctrl-C interrupt the rogram?
22:22:01 <Qtr> so lets say i have a tictactoeboiard and on each post i want to update it. then i have to use some MVar ? read Board on each post? or can i pass the board around so i dont nuse state?
22:23:26 <donri> Qtr: maybe happstack-clientsession could be useful
22:23:57 <donri> or maybe just store it in a plain cookie
22:24:04 <donri> might not need the security for this
22:25:06 <donri> or yea just send it with each post ...
22:25:22 <donri> ACTION not thinking straight at the moment
22:30:47 <Qtr> my table is too small when there is nothing in it
22:30:59 <Qtr> how do i make it a fixed size?
22:33:27 <donri> Qtr: http://reference.sitepoint.com/css/tableproperties is a good place to start
22:40:27 <Qtr> how would I send the board with each post? dont i need an MVar here?
22:51:22 <Qtr> how can I access the individual parts of a table? like i have 3*3 table and i want to set the center to X, how do I do that?
23:00:36 <donri> give each an id
23:00:43 <donri> td ! id_ "bla"
23:01:06 <donri> then you can do it with JS
23:02:16 <Qtr> but i dont want to use javascript
23:02:23 <Qtr> or is it easy?
23:02:35 <luite> $('table > tr:nth-child(2) > dr:nth-child(1)').text('x');
23:02:44 <luite> td instead of dr
23:03:18 <donri> Qtr: or is this after a POST?
23:03:23 <Qtr> after
23:03:54 <Qtr> im not sure how to organize it all, i need to pass around the state somehow
23:04:13 <donri> well then just render the table like you want it? :)
23:04:50 <donri> you could put a radio button in every empty cell
23:04:54 <luite> or wait a bit until yesod-live is released and you'll get awesome realtime updates over websockets ;p
23:08:14 <Qtr> why isnt there show for html?
23:09:00 <luite> because strings are slow
23:09:30 <Qtr> hmm
23:10:14 <Qtr> im trying to use B.tr and B.td to create a able , i use replicateM_ now to do equal ones but now i want to map each cell to a value
23:10:22 <Qtr> so create the table from a list of values
23:10:46 <Qtr> so how do i have several td in a tr?
23:13:01 <donri> a Show for renderPretty Html would still be nice to have for ghci though
23:14:29 <Qtr> but how do i put several td in tr?
23:14:51 <Qtr> tr $ td td td
23:15:55 <donri> do td; td; td
23:16:10 <donri> or td >> td
23:19:42 <Qtr> Parse error: naked expression at top level
23:19:46 <Qtr> what does that mean?
23:21:06 <luite> that you have an expression at top level
23:21:12 <luite> for example x + x
23:21:15 <luite> instead of y = x + x
23:21:41 <luite> probably something wrong with your indenting
23:40:06 <Qtr> if i want to do (makeCell marks i) 3 times but with i varying, how could i do that with a function as opposed to just explicitly doing thrice?
23:42:06 <Qtr> mapM_ maybe
23:49:08 <donri> in deed
23:49:21 <donri> mapM_ (makeCell marks) [i1,i2,i3]