--- Log opened Tue Dec 22 00:00:24 2009 04:58 < dibblego> is the HAppS tutorial2 out of date? 06:15 < HugoDaniel> back 06:15 < HugoDaniel> sorry 06:15 < HugoDaniel> yes, im using freebsd 06:15 < HugoDaniel> i used screen to pump up happstack as daemon 06:15 < HugoDaniel> everything went fine 06:16 < HugoDaniel> i really like the xmonad feature of dynamic compilation, it would be great to have it in happstack 06:16 < HugoDaniel> or in a higher level app 06:16 < HugoDaniel> so users only needed to change a config file, and "reload" the runing server 06:26 < HugoDaniel> dyre comes to mind http://hackage.haskell.org/package/dyre 08:43 < HugoDaniel> http://serv.fcsh.unl.pt/a3es/ user: 777 pass: 1777 08:43 < HugoDaniel> all in haskell/happstack/postgresql ... im still finishing it out 08:44 < koeien> are you using happstack-state? 08:44 < koeien> or only a SQL database? 09:36 < HugoDaniel> only sql 09:36 < HugoDaniel> done in about a week 09:36 < HugoDaniel> without prior knowledge of happstack and plpgsql, i guess i could do it a lot faster now... 09:37 < koeien37> what is plpgsql ? 09:37 < HugoDaniel> is the language for the stored procedures of postgresql 09:37 < koeien37> ah. yes 09:37 < koeien37> well, good to hear that it worked out for you 09:37 * koeien37 is a little scared of happstack-state still :) 09:37 < HugoDaniel> the user that happstack uses to access the database has only execute permissions over the database 09:38 < HugoDaniel> it can't do selects, and it can't do inserts/updates 09:38 < koeien37> yeah, i've seen you talk about that before. I think that's pretty sound design 09:38 < HugoDaniel> only execute stored procedures 09:38 < koeien37> i use django atm. i'm a huge fan of everything of it, except the python 09:38 < HugoDaniel> i would like to automate this kind of workflow, perhaps with template haskell 09:38 < HugoDaniel> eheh 09:38 < HugoDaniel> i used to work with django too 09:38 < HugoDaniel> i really like the way they map actions 09:38 < HugoDaniel> using regex 09:39 < koeien37> yes 09:39 < koeien37> although happstack also seems quite nice in that regard 09:39 < koeien37> but i haven't really used it yet :P 09:39 < koeien37> maybe i should find some toy project to complete 10:15 < stepcut> HugoDaniel: there is some code in happstack which will watch the project directory, and automatically recompile and retart the server when the code changes I think.. 10:17 < stepcut> HugoDaniel: we used to have support for dynamically recompiling and loading templates with out restarting the server processes, but the plugins library does not work with GHC 6.10 or higher. http://code.google.com/p/happstack/issues/detail?id=20 10:18 < stepcut> I know how the new version should work, but I don't have the time to implement it :-/ 10:20 < HugoDaniel> hmm 10:20 < HugoDaniel> but the templates already reload in every refresh 10:20 < HugoDaniel> without restarting the server 10:22 < stepcut> HugoDaniel: depends on what templates you are talking about.. 10:23 < stepcut> HugoDaniel: we used to have support for 'templates' that were arbitrary Haskell code 10:24 < stepcut> so the templates had to be compiled with GHC 10:24 < HugoDaniel> ah 10:24 < HugoDaniel> im talking about hstringtemplate templates 10:24 < HugoDaniel> :) 10:24 < stepcut> but, the idea could be extended beyond just templates -- you could make whole serverparts dynamically reloadable 11:22 < HugoDaniel> yes 11:22 < HugoDaniel> that seems like a good thing 11:42 < HugoDaniel> i really like bsd style configs 11:42 < HugoDaniel> simple text files, that override the defaults 11:55 < stepcut> i really like Haskell file configs 11:59 < HugoDaniel> they are nice, but humans tend to be horrible syntax parsers 11:59 < HugoDaniel> specially when confronted with a new syntax 12:04 < stepcut> HugoDaniel: that's why using a syntax I already know, and which can be parsed and type checked is so great 12:05 < stepcut> .ini-style files are the devil -- there is no true standard for them. I know, I have tried to write parsers for them :) 12:06 < HugoDaniel> :D 12:11 < koeien37> stepcut: agreed, as long as i get a sane error message, and not "read: failed" 12:12 < HugoDaniel> read: no parse 12:12 < HugoDaniel> is also nice 12:12 < HugoDaniel> but thats user work 12:12 < HugoDaniel> not so much happstack related 12:18 < stepcut> koeien37: :) 12:30 < xkb> hi 12:31 < xkb> I'm still having troubles installing happs-tutorial 12:31 < xkb> on my mac, HStringTemplate depends on mtl-1.1.0.2 and fails on that 12:31 < xkb> even though it is installed 12:31 < xkb> the err msg: 12:31 < xkb> Text/StringTemplate/QQ.hs:24:7: 12:31 < xkb> Could not find module `Control.Monad.Writer': 12:31 < xkb> it is a member of the hidden package `mtl-1.1.0.2' 12:31 < xkb> Use -v to see a list of the files searched for. 12:32 < vowyer> isn't it hidden? 12:32 < vowyer> you could add the dependency in cabal file 12:32 < xkb> I tried expose, to no avail 12:32 < xkb> ah 12:32 < xkb> I could try that 12:33 < stepcut> hstringtemplate should already be installed when you install happstack, yes? 12:33 < xkb> yes, it is a higher version 12:34 < stepcut> happs-tutorial requires an earlier version? 12:34 < xkb> * HStringTemplate 12:34 < xkb> Synopsis: StringTemplate implementation in Haskell. 12:34 < xkb> Latest version available: 0.6.2 12:34 < xkb> Latest version installed: 0.6.2 12:34 < xkb> yes, it says 0.5 12:34 < vowyer> change it to use 0.6 and see if it compiles 12:35 < vowyer> mine is 0.4.3, strange :S 12:36 < xkb> HStringTemplate >= 0.4.0 && < 0.5.0 12:36 < xkb> is in the cabal file 12:36 < vowyer> that doesn't mean it's incompatible with >= 0.6 12:37 < xkb> trying now 12:38 < stepcut> xkb: where did you get your version of happstack-tutorial from? 12:38 < stepcut> xkb: and what version is it? 12:38 < xkb> just regular cabal update/cabal install 12:39 < stepcut> k 12:39 < xkb> 0.9.3 12:40 < xkb> hmm odd 12:40 < xkb> configure went ok 12:40 < xkb> build fails on the same dependency 12:40 < xkb> HStringTemplate-0.5 12:40 < xkb> even though I changed the dep in the cabal file 12:41 < stepcut> odd 12:41 < stepcut> gotta run 12:41 < xkb> It uses the cabal file in the unpacked dir right? 12:42 < stepcut> yes 12:42 < xkb> hmm strange 12:42 < xkb> thanks for the help anyway :) 12:42 < stepcut> well, depending on how you call cabal 12:42 < stepcut> if you do, cabal install, in the unpacked directory it will use the local directory 12:42 < xkb> just from $PATH 12:42 < vowyer> it uses /tmp in my config for building 12:42 < stepcut> if you did, cabal install happs-tutorial, then it might still get everything from the server 12:42 < xkb> ill try from unpacked dir 12:43 < xkb> ah 12:43 < xkb> now I got another error. Typecheck 12:44 < xkb> that's the same I had yesterday 12:44 < xkb> smartserver 12:44 < xkb> (Conf 5001 Nothing) 12:44 < xkb> "happs-tutorial" 12:44 < xkb> (controller tDirGroups True True) 12:44 < xkb> stateProxy 12:44 < xkb> ] 12:44 < xkb> Couldn't match expected type `ServerPartT IO a' 12:44 < xkb> against inferred type `[Char]' 12:44 < xkb> so it expects another signature 12:44 < xkb> no string app. 12:45 < vowyer> well, you are making progress :) 12:46 < xkb> lol :) 12:46 < xkb> maybe I should just build happstack myself :) 12:46 < vowyer> I haven't tried the tutorial yet, I briefly looked at the guestbook sample and it's pretty clear 12:47 < xkb> I wanted to try the Real World Happstack during the holidays 12:47 < xkb> but I can just try to hack somehting myself :) 12:48 < vowyer> why not? 12:48 < xkb> prob. learn more that way I guess 12:48 < vowyer> tweak the demo a bit, a simple blog shouldn't be too difficult 12:49 < xkb> wanted to try something twitter-integration like 12:49 < vowyer> happstack new project my-twitter-killer, for exampl 12:49 < xkb> I dont know if there's a twit-lib yet? 12:49 < xkb> htwitsome or something ;-) 12:50 < vowyer> there has to be at least 1 12:50 < xkb> hehe, should be yeah 12:50 < xkb> it's so popular these days 12:50 * koeien37 doesn't see the point of Twitter 12:51 < xkb> I use it as RSS, without the reader ;-) 12:51 < HugoDaniel> twitter is great 12:51 < HugoDaniel> :D 12:51 < HugoDaniel> to pass around crazy links 12:51 < vowyer> I see the point, but not the need 12:51 * stepcut reads twitter via an RSS reader ;) 12:51 < xkb> lol 13:06 < koeien37> i briefly looked at UHC to see if i could add a javascript back-end, but no luck so far :( 14:37 < stepcut> xkb: recent versions of happstack-helpers have removed the String argument to smartserver 14:37 < stepcut> if you remove that argument it should build 17:08 < xkb> stepcut: thanks for the pointer, trying it out now 17:13 < xkb> nice! that did the trick 17:13 < xkb> cool thanks! 17:13 < stepcut> cool, 17:13 < stepcut> out for beer, bbl --- Log closed Wed Dec 23 00:00:26 2009