|
2009 -- the year of November. <november-wiki.org> <github.com/viklund/november> <irclog.perlgeek.de/november-wiki> <nopaste.snit.ch> Set by moderator on 10 February 2009. |
|||
|
02:37
Tene joined
06:22
masak joined
|
|||
| Tene | Hmm. Looks like neither Template::Declare or Markapl are thread-safe. | 06:39 | |
| Which is unfortunate. | |||
| masak | Tene++ # never even thought of that | 06:40 | |
| Tene | I'm trying to think about where I can implement it better. I'm pretty sure that we care. | ||
| masak | me, that is. | ||
| Tene: could you please add that thought somewhere in the repo? | |||
| Tene | The way they work is just maintaining a global stack of buffers. | ||
| masak | perhaps along with why thread safety is important. | ||
| it's not immediately obvious to me, because I'm new to this. | |||
| Tene | Eh, for most uses it's really not. | 06:41 | |
| masak | ...but...? | ||
| Tene | The problem is when you want to start doing some kind of threading in your app, and you suddenly find out that some random lib acts weird if used from multiple threads | ||
| 1) it's weird hard to debug problems | |||
| 2) you have to throw the lib out, and find or build a new one | 06:42 | ||
| masak | ack | ||
| Tene | this particularly counts in Perl 6, where there are plans for auto-threading | ||
| masak | indeed. | 06:43 | |
| is there a simple concrete example of when one would want to switch a webapp over to multi-threading? | |||
| Tene | maybe doing something for a big list of users | 06:45 | |
| @users>>.do_something() | 06:46 | ||
| or whatever the hyper syntax is for that | |||
| masak | does that affect the dispatcher? | 06:47 | |
| seems to me the hyperthreaded call is far away from the dispatcher in this case. | |||
| Tene | dispatcher? | ||
| It runs do_something() on each element individually, and order isn't guaranteed. The implementation is free to run multiple calls in paralell. | |||
| masak | oh, sorry, you were talking abou Template::Declare, not the dispatcher. | ||
| Tene: right. | 06:48 | ||
| I don't really see how that could be a problem for Template::Declare, but I'll take your word for it. | |||
| Tene | So if do_something() used a tags library implemented like template::declare, you could get content from one element mixed in with content from another element. | ||
| masak | ouch. | 06:49 | |
| I see. | |||
| why would do_something() use a tags library in the first place? isn't that a kind of bad separation of logic and, um, serialization? | 06:51 | ||
| I can see that it's entirely possible that something like that'd happen, though. | |||
| Tene | Maybe it's doing something like formatting the username according to some criteria | ||
| masak | ah, ok. | 06:52 | |
| Tene | It's certainly not a worry for most normal cases. | 06:53 | |
| I'd like to avoid this problem if I can anyway, though. | |||
| masak | aye. | ||
| slapping 'threadsafe' on a lib seems like a feather in the hat, somehow. | |||
| people know that it matters in some cases. | |||
| use.perl.org/~masak/journal/38601 | 07:36 | ||
| zarah | masak's link is also tinyurl.com/b8kc69 | ||
| moritz_ | congratulations to the november hackers! | 07:46 | |
| masak | a big thank you to the Perl 6 community! \\o/ | 07:48 | |
| moritz_ | I was a bit surprised that the announcement took s long | 07:52 | |
| masak | the january-march delay was mostly our fault. we wanted the www.november-wiki.org site to look nice. | 07:53 | |
| a bit ironic that that address isn't part of the original announcement. :O | |||
| (but it's linked from many of the links in the announcement, so it still matters, of course) | |||
| blog.ianbicking.org/2008/12/27/avoi...ss-object/ | 09:10 | ||
| zarah | masak's link is also tinyurl.com/82mn36 | ||
| moritz_ | links as objects - I like that | 09:17 | |
| masak | I'm generally trying to figger out how to build web stuff so that people don't feel frameworked in by it. | 09:18 | |
| moritz_ | I don't think you need an framekworky aspect here | ||
| anywhere a link is expected, you can just put an object in | 09:19 | ||
| and it'll be stringified when rendered | |||
| masak | aye. | ||
| I meant that the post is about avoiding silos. | |||
| I want to avoid silos too, perhaps in a more vast sense than the post means. | |||
| I want Web.pm to be a sane, mostly opt-out-able set of defaults. | 09:20 | ||
|
15:04
Tene_ joined
16:46
szabgab joined,
moritz_ joined
|
|||