02:47:08 <donri> stepkut: are there any ups and downs to having ixsets in an ixset, as opposed to say a Map and moving the indices to the top ixset?
02:48:40 <stepcut> donri: uh.. maybe?
02:48:44 <donri> :)
02:48:54 <stepcut> donri: i've never thought about it.. but it doesn't sound wrong to nest ixsets
02:52:05 <donri> i guess it's easier to have one ixset when you can
05:21:43 <donri> stepcut: did you see my thoughts on ixLens yesterday
05:22:11 <stepcut> I saw that you came to some realization about why ixLens is broken. Did you have a fix too?
05:22:33 <donri> i have a fix *in mind* :) but i'm undecided if it's a good fix
05:23:09 <donri> the idea is to sidestep the "limit" of updateIx and friends where >1 items result in nothing being done and instead replace them all with the new one
05:23:55 <donri> i *think* that should fix the lens laws, but you still can't implement fromList in terms of the lens... not sure if that's a real requirement or if roconnor was confused at that point
05:24:05 <stepcut> interesting
05:25:37 <donri> it sounds scary to have an operation that potentially deletes lots of entries "implicitly"...
05:25:50 <stepcut> yeah
05:26:01 <donri> but with acid-state the data shouldn't be lost?
05:32:49 <stepcut> I wouldn't say that
05:32:57 <donri> :)
05:33:52 <stepcut> if you never delete event files, then you have all the inputs.. but if other things happened afterwards, you may have to throw out some information in order to recover others
05:33:56 <donri> so... what do? the alternatives seem to be to either forget about ixLens or keep it unlawful
05:37:34 <donri> another option might be a list instead of a maybe
05:38:47 <donri> still have to make sure you keep all entries when you "set" but at least you can?
05:39:19 <donri> not sure that works well with partial lens though
05:39:49 <drakej> stepkut: I noticed that yesod had what looked like a very complete authentication module. Is any of that usable?
05:39:53 <donri> can always provide more than one lens ...
05:40:15 <stepcut> drakej: the authenticate library? or yesod-auth ?
05:40:16 <donri> drakej: maybe look at http://hackage.haskell.org/package/happstack-authenticate
05:41:05 <drakej> stepcut: yesod-auth. We had talked authentication earlier.
05:41:19 <drakej> donri: Already looked at that. Probably will use it.
05:41:25 <donri> doubt you can use yesod-auth with happstack
05:41:27 <stepcut> drakej: it is not  directly usable. Some of the ideas might be.
05:41:40 <drakej> Is yesod much older than happstack?
05:41:48 <donri> quite the opposite :)
05:42:04 <drakej> Why does yesod have so much more stuff?
05:42:19 <stepcut> drakej: like what?
05:43:32 <donri> because it's a tightly coupled integrated package and the features individually tend to feel unfinished :p
05:43:36 <drakej> stepcut: I think I have to say at least the auth lib, and a published book, there might be a few other things.
05:43:47 <drakej> So maybe 'not so much more stuff'
05:44:14 <drakej> Does it take a different approach?
05:44:28 <drakej> I like happs because it seems to build things up slowly
05:44:30 <stepcut> drakej: well, we could print the happstack crash course and have a book of similar magnitude
05:44:52 <drakej> stepcut: it is that big?
05:45:03 <donri> 50k+ words
05:45:36 <drakej> A short novel :P
05:45:39 <stepcut> drakej: the yesod book is just the documentation that is on yesodweb.com printed in a book. You can do a side-by-side comparison if you want to see what the differences are
06:36:53 <drakej> What is the difference between the happstack-heist package and the heist package?
06:37:59 <drakej> I am running into a problem installing the former. https://gist.github.com/2935044
06:38:03 <stepcut> drakej: the happstack-heist package is just a wrapper that makes it easier to integrate heist
06:38:29 <stepcut> :-/
06:38:59 <drakej> Judging by this, I don't think it is possible to install heist with happstack
06:40:00 <stepcut> apparently the heist package has not been updated to blaze-html 0.5
06:40:28 <stepcut> there is nothing I can do about that since I don't control heist
06:40:43 <stepcut> mightybyte1: when will heist on hackage support blaze-html 0.5?
06:40:47 <donri> you can use the older happstack-server for now
06:41:01 <stepcut> true
06:41:09 <drakej> You mean <7?
06:41:18 <stepcut> no
06:41:25 <drakej> I am running 7.0.2 now
06:41:39 <stepcut> 7.0.1 uses blaze-html 0.4
06:41:50 <stepcut> pretty much the only difference is upgrading to blaze-html 0.5
06:41:51 <drakej> ok
06:42:10 <drakej> Is it possible that heist will compile with 0.5 with a simple cabal file change?
06:42:32 <stepcut> drakej: probably not. You will need to change some imports as well
06:43:01 <drakej> ok, I will see about doing 7.0.1
06:43:07 <stepcut> drakej: don't think any code would need to be changed though
06:43:26 <drakej> I feel that heist is a nicer idea because it allows a designer to just use custom tags
06:44:26 <donri> which could be a great idea if splices were self-documenting or something... -.-
06:45:31 <stepcut> nicer than what?
06:45:56 <stepcut> http://i.imgur.com/HnEBm.png
06:46:07 <donri> xD
06:46:08 <stepcut> label design is not done yet
06:46:32 <stepcut> might put the "taking the OO out of web development" catch-phrase on
06:46:39 <stepcut> and replace the lambda with something else
06:46:53 <drakej> stepcut: What else allows me to keep html files without putting them into the hs file?
06:47:08 <donri> now we just need the theme to look that awesome!
06:47:11 <stepcut> drakej: heist is the best choice for that
06:47:18 <stepcut> donri: yeah.. themes are hard :)
06:47:32 <stepcut> donri: its an ongoing process
06:47:52 <stepcut> donri: i made the tabs bluer.. but that change has not gone live yet
06:47:56 <stepcut> not sure what to change next
06:47:57 <drakej> With server 7.0.1, how do I select that package in runhaskell?
06:48:10 <donri> how likely are you to pull if i make drastic changes?
06:48:22 <drakej> Or is there a way to remove 7.0.2
06:48:29 <stepcut> drakej: -package=happstack-server-7.0.1
06:48:37 <stepcut> ghc-pkg unregister happstack-server-7.0.2
06:48:57 <stepcut> donri: depends.. the github bridge is already broken… gotta ask owst what is up with tha
06:49:14 <stepcut> donri: but, darcs patches could be considered
06:49:26 <drakej> ghc-pkg: unregistering happstack-server-7.0.2 would break the following packages: happstack-7.0.0 happstack-hsp-7.1.0 happstack-lite-7.2.0 happstack-server-tls-7.0.0 hsx-jmacro-7.1.1 (use --force to override)
06:49:29 <donri> sure, darcs is ok
06:49:42 <donri> i'm rather asking, how committed are you to the current look and feel :)
06:49:54 <stepcut> donri: i am non-committed
06:50:00 <donri> cool
06:50:09 <stepcut> donri: if you want to do something really drastic there is a better way though
06:50:12 <stepcut> create a new theme :)
06:50:19 <donri> so no promises, but i might play around with it and see if i think i improve anything
06:50:20 <stepcut> well, copy the theme and rename it
06:50:39 <stepcut> to switch themes, you just recompile against a different theme package
06:50:54 <donri> how did you manage that btw
06:51:12 <donri> oh right because the app imports from the theme modules
06:51:15 <stepcut> donri: the themes have to export certain modules with certain functions
06:51:18 <drakej> Do I have to reinstall these things for this to work?
06:51:40 <stepcut> drakej: you can probably remove all those
06:52:20 <stepcut> drakej: the only things you need are happstack-server and happstack-heist, unless you are explicitly using those other things
06:52:41 <stepcut> @time stepcut
06:52:41 <lambdabot> Local time for stepcut is Friday, June 15, 2012 1:53:46 AM Central Daylight Time
06:52:51 <stepcut> going to bed now, I'll be back tomorrow
06:53:26 <stepcut> donri: half the reason for creating clckwrks is so that I don't have to make themes :)
06:54:13 <drakej> I should sleepy now too
06:54:22 <stepcut> @time donri
06:54:23 <lambdabot> Local time for donri is Fri Jun 15 08:55:28
06:54:36 <stepcut> donri: have you gone to bed yet?
06:55:24 <donri> no :(
06:55:48 <stepcut> you're going to need some cans of clckwrks :p
06:55:53 <donri> yes please
06:56:34 <donri> i had the glorious idea to have a cup of coffee around 2 am
06:57:20 <donri> my own brew where a cup compares to about three normal cups
06:59:00 <luite> how do you brew them?
06:59:20 <donri> i just put a lot of powder in the filter
07:00:12 <luite> oh right, just a regular drip brewer?
07:00:59 <donri> sorta... i use a normal water boiler and a filter holder thingy over the cup directly
07:01:02 <donri> yay english vocab
07:01:38 <donri> http://www.kaffeinformation.se/upload/tillredning/Filtertratt.jpg
07:03:24 <luite> oh right, i only use those when camping, except not a water boiler but a gas or liquid fuel burner :)
07:04:03 <donri> well i have a drop brewer here but there are dead spiders in it
07:04:45 <donri> and it's easier to use the other one anyway, when just making one cup
07:04:46 <luite> is that better than live spiders?
07:04:58 <donri> worse i think!
07:05:16 <luite> dead ones don't make webs!
07:06:22 <donri> true
07:06:25 <donri> but, dead bodies!
07:06:29 <donri> there's like, decay and shit
07:07:35 <donri> actually previous owners left it when they moved out and it doesn't look very clean in general
07:08:04 <donri> i'm told i could simply wash it, but my OCD seems to disagree
15:14:39 <dino-> yay, my happstack server is working
16:24:04 <stepkut> dino-: awesome!
16:34:37 <dino-> What I have here is: I was tasked with writing a utility that goes and gets data from some RSS feeds. Parses some of that information and then communicates with a REST service server in our company about various things. Like is this data we haven't stored yet? Here is some new data I'd like you to store..
16:35:09 <dino-> And then logging critical failures to an easyCMDB system, which is a SOAP thing.
16:35:40 <dino-> All of this in Scala.
16:35:54 <dino-> So this place is kind of not very with-it in terms of having dev servers and staging stuff.
16:36:28 <dino-> It's been difficult to get my stuff working against real things without annoying coordination with people to make sure we don't fuck over production stuff.
16:37:21 <dino-> Finally I thought: write a server in Haskell to simulate all the things my thing needs. And to simulate successes, failures, the works.
16:38:44 <stepkut> heh
16:41:21 <dino-> I wish they'd just let me do the actual project in Haskell. It would have gone quicker. I'm talking to everything via http anyway.
16:41:28 <stepkut> :)
16:42:24 <dino-> At least Scala can be clubbed into kind of a demented and sad FP experience.
16:42:35 <stepkut> heh
16:42:44 <dino-> Straight up for-reals Java is a nightmare.
16:43:26 <stepkut> yeah.. I have avoided doing android development for that reason
16:43:35 <dino-> It helps that I don't work with commando OO fans. There's nobody there to be terrified that I never write any instantiatable classes in Scala.
16:43:39 <stepkut> also.. android's realtime sound API sucks (or did when I last checked)
16:43:53 <dino-> stepkut: I've written FP Android stuff with Scala.
16:44:11 <dino-> It works, but you have to treeshake the Scala lib stuff. Too big otherwise.
16:44:18 <stepkut> yeah.. I read about that.. but the lack of a good sound api was the real deal killer
16:45:23 <dino-> I see, didn't know that about sound. They had better get this together. People are using tablets for real music stuff, it seems like.
16:45:46 <stepkut> yup
16:45:49 <dino-> But it's just so completely wrong that you need to communicate with the Java-like VM on Android or you can't easily do anything.
16:45:55 <stepkut> yeah
16:46:03 <stepkut> well, there is an NDK too
16:46:07 <dino-> Even using native stuff has to be behind some Dalvik VM wrapper. It's crap.
16:46:16 <stepkut> iOS is just as wierd with need two languages to do anything
16:46:45 <dino-> I should poke at that, but I fear the NDK is like using the SDL. You have to roll your own EVERYTHING.
16:46:50 <dino-> Buttons and controls.
16:47:43 <stepkut> hmm. I think you have to go all the way.. you can just write some stuff against the NDK and use it in your normal app
16:48:30 <dino-> I wonder if this is what the prboom is using. DOOM ported to it in the free-software Market.
16:48:49 <dino-> There's no sign of native Android UI in there. It's all drawing to the surface, even buttons and stuff.
16:49:30 <dino-> Anyway, thanks for the help with happstack. This went really quickly and is such a small amount of code.
16:49:42 <stepkut> my pleasure! Thanks for using it!
18:42:47 <stepcut> donri: !
20:23:54 <stepcut> I need an idea for the logo on the clckwrks can, http://i.imgur.com/Mhx72.png
20:28:32 <balor> It's got to be a Dali clock :)
20:28:44 <stepcut> oh ?
20:28:49 <stepcut> ah
20:28:50 <balor> http://en.wikipedia.org/wiki/The_Persistence_of_Memory
20:28:51 <stepcut> hmm
20:31:15 <balor> I have an "IO x" where x is of typeclass ToMessage.  How can I apply "ok $ toMessage" to the x so that I get my ServerPartT being returned?
20:31:47 <stepcut> you need liftIO
20:32:18 <balor> ah
20:32:19 <stepcut> you probably want something like, ok =<< toResponse <$> (liftIO foo)
20:32:36 <stepcut> though, I am not sure I would try to write it all on one line
20:33:07 <stepcut> do x <- liftIO foo ; ok (toResponse x)
20:55:32 <dino-> Wow, I went and replaced all of our homemade http get and post code with Apache Http Client and code straight out of their examples. And I'm still getting that Connection reset by peer business from my happstack server. :/
20:56:01 <stepkut> that is not an error
20:56:09 <dino-> I know, but how to get rid of it?
20:56:14 <dino-> It grates on my nerves.
20:56:16 <stepkut> it just means the remote side decided it was done and closed the connection
20:56:26 <dino-> web browser doesn't produce this
20:56:49 <stepkut> you might be able to catch the exception and surpress it
20:57:38 <Lemmih> Closing your eyes also makes it go away.
20:57:43 <stepkut> :)
20:57:47 <stepkut> grep -v
23:07:54 <donri> heh, the persistence of memory = acid-state / clockworks
23:08:10 <stepkut> :)
23:09:14 <stepkut> it looks really weird to see clockworks with all those oo in it
23:11:31 <donri> hehe
23:13:01 <stepkut> here's the latest version, http://i.imgur.com/hNqSU.png
23:13:06 <stepkut> what should I do next?
23:14:36 <alpounet> haha
23:14:41 <alpounet> it's awesome!
23:14:53 <stepkut> maybe I should write something on the wall
23:18:52 <stepkut> a throwing star that looks like a clock gear ?
23:22:13 <donri> is that the half-life logo
23:22:36 <stepkut> no, but it is probably similar
23:22:47 <stepkut> I would rather have something to do with types than lambdas
23:23:04 <stepkut> or maybe a clock but with the arms forming a lambda :p
23:23:53 <stepkut> http://denton83.deviantart.com/art/Half-Life-2-Logo-Headcrabs-20919494