Experimental IRC log happs-2008-02-22

Available formats: content-negotiated html turtle (see SIOC for the vocabulary)

Back to channel and daily index: content-negotiated html turtle

These logs are provided as an experiment in indexing discussions using IRCHub.py, Irc2RDF.hs, and SIOC.

03:49:10<anotherdaniel>Hello.
03:49:32<Lemmih>Hi.
03:49:38<anotherdaniel>A quick question about the AllIn example...
03:49:51<Lemmih>Go for it!
03:50:18<anotherdaniel>if you were to fork two calls to simpleHTTP with impl would the state be shared by them?
03:50:32<Lemmih>Yes.
03:50:52<anotherdaniel>so the state is accessed behind the scenes via STM?
03:51:16<Lemmih>Yes, but not via STM.
03:51:30<Lemmih>Or well, kinda.
03:52:03<Lemmih>STM is used but not in any observable way.
03:52:44<Lemmih>The state is global and persistent, and all events are transactional.
03:54:27<anotherdaniel>Ahh, ok. I saw the stm in some of the monads when I was :info'ing everyhting in sight.
03:55:13<anotherdaniel>I take it the maintainSessions function could just be forked in the main same as the simpleHTTP?
03:55:34<Lemmih>Yes.
03:56:10<anotherdaniel>Ok. Cool.
03:56:41<Lemmih>The Component instance has an 'onLoad' function this, actually.
03:57:49<Lemmih>I should update the example to reflect that.
03:58:53<anotherdaniel>So onLoad is a way to startup component specific... hmmm, daemons? And server endpoints.
04:00:05<Lemmih>Yeah, many components require some assistance from IO code.
04:00:25<anotherdaniel>Does stuff started in onLoad have access to all state or only the component's state?
04:01:32<Lemmih>It can access all components. However, it can only safely access its own component and the dependencies of that component.
04:02:06<Lemmih>It doesn't know what other components will be loaded.
04:02:29<Lemmih>(Accessing a component that hasn't been loaded results in a run-time error)
04:02:46<anotherdaniel>Ok, so AllIn is a bit perverse in that all the components are in the same file
04:03:00<anotherdaniel>I guess normally scoping would save you from cross component state access
04:03:08<Lemmih>Right.
04:03:41<anotherdaniel>If you are wayward and access another components state, that is loaded, is it 'safe' in transactional terms?
04:03:59<Lemmih>Yes.
04:05:24<anotherdaniel>If you access state from a component which isn't loaded I presume the run-time error isn't going to corrupt any existing state?
04:05:58<Lemmih>That is correct.
04:06:28<anotherdaniel>Sweet. I'll have to keep digging for caveats. ;)
04:07:30<Lemmih>I'm off to bed. You can send questions to the mailing list or wait for me to return.
04:07:54<anotherdaniel>Thanks very much for your time, Lemmih. Appreciate it.
04:12:10<anotherdaniel>Anybody know what the status of DNS, Plugins and SMTP?
04:12:21<anotherdaniel>Are they obsolete or temporarily indisposed?
13:37:53<fxr>Lemmih: how do you use GetSession, I'm getting ambigious type error
13:38:57<Lemmih>fxr: You have to be specific about the type you want out of it.
13:39:37<fxr>yes, but I couldn't figure out how
13:40:02<Lemmih>s <- query GetSession :: Web YourType
13:40:42<Lemmih>Usually you don't have to make the type signature explicit.
13:42:52<fxr>Lemmih: do you declare type signatures for a specific Session type? For example (Session String) ?
13:44:42<Lemmih>Say again?
13:51:17<fxr>the type signature for the getsession is SesKey -> Query (Session val) (Maybe val)
13:51:37<Lemmih>s <- query GetSession :: Web (Maybe YourType)
13:53:03<fxr>Lemmih: but I wanna learn how do you infere that? asking ghci, I saw that the type signature of GetSession is GetSession :: SesKey -> GetSession val[a7It]
13:53:26<Lemmih>Right.
13:53:35<Lemmih>And 'query GetSession'?
13:54:53<fxr>query GetSession :: (QueryEvent (SesKey -> GetSession val[a7It]) res,
13:54:53<fxr> Control.Monad.Trans.MonadIO m) =>
13:54:53<fxr> m res
13:55:25<fxr>here you use "Web" for the monadic type right?
13:55:25<Lemmih>Oh, right. The SesKey.
13:55:31<Lemmih>s <- query (GetSession key) :: Web (Maybe YourType)
13:57:44<Lemmih>If the normal function is 'getSession key', the event will be 'GetSession key'.
14:14:43<fxr>Lemmih: http://hpaste.org/5813 could you please take a look at this
14:15:48<Lemmih>It's IO (Maybe SessionData) in this example.
14:17:40<fxr>Lemmih: thanks, do you give type signatures explicitly like this example?
14:18:25<Lemmih>Not usually.
14:18:50<Lemmih>Only in artificial cases.
19:07:20<fxr>do you get ghc impossible happened messages? when I delete the object files and rerun my file with sp, it's running as I expected. But when I try to change a line, recompiling fails with a message " panic! (the 'impossible' happened)".
21:27:41<Lemmih>I'm not sure.
23:33:57<Lemmih>HAppS-0.9.2 has been released.
23:39:10<porrifolius>Hi.
23:43:01<porrifolius>Is it possible for state Components to share sub-Components? ie a DAG rather than a tree of Components.
23:44:17<perspectivet>Lemmih: no announcement on the happs website or user email list?

Back to channel and daily index: content-negotiated html turtle