2014-03-04 23:17:42 +0000 <hyperthunk> explain*
2014-03-04 23:17:48 +0000 <hyperthunk> can't spell tonight, or type for that matter
2014-03-04 23:18:14 +0000hyperthunkarm, or read for that matter. :/
2014-03-04 23:18:30 +0000 <hyperthunk> so carter - unsafeSend
2014-03-04 23:18:47 +0000 <hyperthunk> it's only unsafe because we don't guarantee that the data being passed is fully evaluated
2014-03-04 23:19:04 +0000 <hyperthunk> if you use the 'send' variant in d-p-platform then that *is* safe
2014-03-04 23:19:06 +0000 <hyperthunk> mainly
2014-03-04 23:19:18 +0000 <hyperthunk> because it enforces NFData on the term being sent
2014-03-04 23:19:43 +0000 <hyperthunk> the only reason it matters (that we enforce that) is we do not serialise those calls, since they're just moving data around the local node using STM
2014-03-04 23:19:56 +0000 <hyperthunk> once you get into remote calls, it's all irrelevant anyway
2014-03-04 23:19:58 +0000 <hyperthunk> plus……
2014-03-04 23:20:15 +0000 <carter> soke
2014-03-04 23:20:16 +0000 <carter> ok
2014-03-04 23:20:17 +0000 <carter> currently unsafe send is "trust me, its ok"
2014-03-04 23:20:18 +0000 <carter> what you really want is "this is only allowed for local shared heap messages"
2014-03-04 23:20:18 +0000 <hyperthunk> it would be ***much*** more useful for someone to actually help figure out why serialisation is so slow
2014-03-04 23:20:20 +0000 <carter> this goes back to that data families thing i mentioned
2014-03-04 23:20:22 +0000 <carter> can you gureantee its only used for shared heap?
2014-03-04 23:20:27 +0000 <carter> hows that gurantee you're only sending to shared heap addresses ?
2014-03-04 23:20:28 +0000 <carter> i know
2014-03-04 23:20:29 +0000 <carter> :t send
2014-03-04 23:20:30 +0000 <carter> i agree
2014-03-04 23:20:32 +0000 <carter> what i'm saying
2014-03-04 23:20:33 +0000 <carter> is how does this get enforced
2014-03-04 23:20:34 +0000 <carter> that you're only using unsafe send on local messages
2014-03-04 23:20:42 +0000 <hyperthunk> carter: it does
2014-03-04 23:20:54 +0000 <hyperthunk> if you use unsafeSend to a remote pid, it just ends up going to safe send
2014-03-04 23:20:56 +0000 <hyperthunk> :)
2014-03-04 23:21:08 +0000 <hyperthunk> it's not really "unsafe"
2014-03-04 23:21:27 +0000 <hyperthunk> it's just risky for the case where (a) the call *is* local and (b) there are unevaluated thunks in the message
2014-03-04 23:21:37 +0000 <carter> you're not answering my question
2014-03-04 23:21:43 +0000 <carter> :)
2014-03-04 23:21:46 +0000 <hyperthunk> carter: hahaha
2014-03-04 23:21:47 +0000 <hyperthunk> sorry
2014-03-04 23:21:48 +0000 <hyperthunk> :)