Perl 6 - the future is here, just unevenly distributed

IRC log for #perl6, 2008-01-20

Perl 6 | Reference Documentation | Rakudo

| Channels | #perl6 index | Today | | Search | Google Search | Plain-Text | summary

All times shown according to UTC.

Time Nick Message
00:06 lichtkind good night
00:37 alester joined #perl6
00:52 justatheory joined #perl6
01:30 Lorn joined #perl6
01:31 skale joined #perl6
01:57 Auzon joined #perl6
01:57 Auzon left #perl6
01:58 Auzon joined #perl6
02:52 pro21ms4 joined #perl6
03:03 skale left #perl6
04:24 OuLouFu joined #perl6
04:30 p6quester joined #perl6
04:38 silug joined #perl6
05:06 faxathisia joined #perl6
05:27 awwaiid joined #perl6
05:28 meteorjay joined #perl6
05:36 aindilis joined #perl6
05:40 r0bby joined #perl6
05:54 kanru joined #perl6
06:03 lyokato_ joined #perl6
06:19 manfred joined #perl6
06:29 Aankhen`` joined #perl6
06:37 p6quester left #perl6
07:33 orafu joined #perl6
08:07 Jamtech_ joined #perl6
08:12 devogon joined #perl6
08:47 meppuru joined #perl6
09:01 drrho joined #perl6
09:09 khisanth_ joined #perl6
09:13 faxathisia joined #perl6
09:13 Auzon joined #perl6
09:13 japhb joined #perl6
09:13 diakopter joined #perl6
09:13 mj41 joined #perl6
09:13 pugs_svn joined #perl6
09:13 drbean joined #perl6
09:14 alester joined #perl6
09:29 iblechbot joined #perl6
09:39 alester joined #perl6
09:47 rafl joined #perl6
10:04 lodin0 joined #perl6
10:11 cosimo joined #perl6
10:27 Freja joined #perl6
11:24 chris2 joined #perl6
11:54 kanru joined #perl6
11:55 ludan joined #perl6
12:39 pugs_svn r19598 | ruoso++ | [smop] test for the capture native type.
12:47 cognominal_ joined #perl6
12:49 riffraff joined #perl6
12:50 riffraff hi
12:55 pbuetow hi
12:55 pbuetow cd
12:56 pbuetow ups
13:07 fglock joined #perl6
13:08 fglock moritz_: "Can't locate Text/Table.pm in @INC ...  at /data/www/irclog.perlgeek.de/text.pl line 14"
13:08 fglock left #perl6
13:32 ruoso more and more I realise that having objects that are not subject to garbage collection is a vital feature of smop... for instance, an empty capture object will be one of those, so everytime you call a sub without arguments, it'll have how to use that constant value
13:36 pugs_svn r19599 | ruoso++ | [smop] starting to write the native capture code... already defining the constant empty capture...
13:49 ludan joined #perl6
13:50 ludan hello
14:16 cmarcelo joined #perl6
14:18 icwiener joined #perl6
14:21 Botje is there a perl6 implementation far enough to support properwOO yet?
14:47 spinclad moose (see cpan) implements much of perl6 oo in perl5...
14:49 wknight-away joined #perl6
14:52 pmurias joined #perl6
14:52 pmurias ruoso: you can have constants with gc too
14:53 spinclad Botje: of Perl 6 implementations: pugs needs an oo rewrite; rakudo has just gotten its first classes and methods; and kp6... has working classes and methods i believe but lacks roles as yet.
14:53 Botje myeah
14:53 Botje I wanted to discuss perl 6 oo in a paper for school, but i was afraid i'd have to go with moose :(
14:56 spinclad you could discuss its spec, which is somehow less satisfying than real working code
14:58 spinclad a spec not fully tempered in the forge of implementation
15:01 spinclad i think kp6 has plans to implement roles RSN, and rakudo is hard to track it's moving so fast.  check back next month, things should be rather different.
15:03 Botje yeah, i guess
15:03 spinclad better yet, submit patches if you're so inclined
15:03 Botje too bad the paper is due this week ;)
15:03 Botje i'd like to hack pugs but it seems so horribly horribly big
15:04 pmurias Botje: kp6 is smaller
15:04 spinclad faster too
15:05 pmurias spinclad: faster in terms of?
15:05 Botje that's the lisp implementation, no?
15:05 spinclad no, it has a lisp backend tho
15:05 pmurias is implemented in a subset of perl6
15:05 pmurias (untill it bootstraps)
15:06 wolverian rakudo, kp6, smop, pugs, what did I miss?
15:06 pmurias wolverian: smop is a vm
15:06 wolverian instead of?
15:07 pmurias wolverian: it's a vm (like parrot) instead of a compiler (like kp6)
15:08 wolverian ah. thanks
15:08 spinclad pmurias: faster in its kp6-mp6 form, i thought; haven't benchmarked it tho
15:09 pmurias spinclad: it's horribly slow
15:09 pmurias (the default Perl5 backend)
15:10 pmurias the perl5v6 backend could likely be maybe be faster (but is still in it's infancy)
15:11 spinclad *sigh* i should stick to what i know
15:12 pmurias s/be maybe//g
15:13 TimToady if we stick to what we knew we'd still be throwing our spears by hand
15:13 TimToady or maybe just rocks
15:14 spinclad we could get real good at chipping rocks
15:15 TimToady all that does is put lots of little sharp bits on the ground that will cut your feet, so there's no point
15:15 TimToady and you'll never get done with it
15:15 TimToady other technologies will pass you by while you learn
15:16 spinclad not if we stick with what we know
15:16 spinclad s/we/we *all*/
15:16 TimToady well, that's a fine approach if you have millions of years
15:17 ruoso pmurias, re constants: I mean, if they are not subject to gc, I can count on the C pointer being there forever...
15:17 ruoso and I don't have to check if they're still available
15:18 spinclad so... somewhere between cleaving to the known, and making things up, lies the shadow...
15:20 ruoso Botje, re OO: I know you probably want to have a working implementation... but one thing I realised in the process of writing smop is that nothingmuch's MO approach seems to be the only way to implement all of P6 OO semantics... I was only able to see smop implementing all the P6 features in the future when I implemented the responder interface concept...
15:21 ruoso the most intriguing feature of P6 OO is the proto.CREATE(:repr<foo>)
15:21 ruoso in the process of creating a new object instance
15:21 ruoso and it seems to me that the only way of implementing that is through the responder interface...
15:22 Casan ruoso: for a mere mortal, still learning, whats the benefit of proto.CREATE(:repr<foo>) ?
15:23 ruoso you can have a different object low-level representation... which can be compatible with, for instance, Glib
15:23 ruoso and then you have a Glib object created in Perl 6 natutally compatible with the Glib objects
15:24 ruoso and you can use it as parameters to Glib methods
15:24 ruoso Or p5-hash based
15:25 ruoso that you can send without typemapping to p5 functions
15:25 Casan you should write an article explaining this in simple terms. many articles on perl seem very advanced not catering to the beginners. but perhaps that is the case when its already an advanced topic.
15:27 ruoso Casan, indeed... an article would be a good idea... any specific topic you think to be interesting?
15:29 Casan ruoso: I think I understood what you just wrote, but could use it explained in context to a real world example in simple steps.
15:30 pmurias Casan: it's not implemented yet :(
15:30 ruoso that remebers me of getting back to coding ;P
15:30 * ruoso trying to finish the native capture...
15:30 Casan ruoso: but for practical purposes, what I'm really interested to learn from at this point is articles on OO involving apache,mod_perl,perl6 and the mvc pattern.
15:31 ruoso wow...
15:31 ruoso that is a *lot* of stuff
15:31 Casan ruoso: heh, ok, centered around mod_perl and perl 6 though the rest just included to provide context/perspective.
15:32 ruoso but one thing that could be done in this area is to understand how *real* continuations could affect web development, since kinda-continuatoins are already making a lot of fuzz...
15:33 pmurias ruoso: i think hiding the asynchronity is the big thing
15:33 Casan maybe I should continue my investigations and try to write an article myself as a beginner to beginner. but finding information on mod_perl and perl6 is something I still think I haven't succeeded in properly yet, and I have been reading about perl6 for ages.
15:34 ruoso yeah... I wonder how could a web-framework implement it using real continuations...
15:34 drrho joined #perl6
15:36 ruoso Casan, but anyway... in the web context, when comparint to Perl 5, I think the big points of Perl 6 will be: 1) continuations, 2) domain-specific-languages and 3) a more complete OO
15:36 pmurias my Form $form .= new(name => 'text');$form.render;$form.wait_for_submit();say "hi $form.name"
15:38 Casan I am just reading up on continuations on wikipedia now.. if understood right.. continuations in web application programming sounds like something with sessions and states.
15:39 ruoso pmurias, altought that should work... I think the creation of a GUI-like toolkit that implements MVC in the Smalltalk/Swing sense would be much insane..
15:42 ruoso Casan, yeah... but something that would hide that from the user is *the* thing
15:43 pmurias ruoso: i only did webprograming with delimited continuations in narrative javascript so i don't know much about it
15:45 pmurias s/did webprograming/used continuations/
15:48 Freja left #perl6
15:52 ruoso pmurias, I once tried (2001) to implement a GUI-like toolkit (event-based)... and now I know that one thing that with continuations that kind of framework is possible...
15:52 ruoso s/GUI-like toolkit/GUI-like toolit for web/
15:52 ruoso I even had a IDE to design the screens... :)
15:53 ruoso http://perl-oak.sf.net
15:53 lambdabot Title: The Perl Oak Component Tree - Forest Web Application Builder
15:58 alester joined #perl6
16:02 marmic joined #perl6
16:13 meppuru joined #perl6
16:31 ruoso if I have a null terminated void* array... is it sane to use strlen to see the size of the array in bytes and strcpy to copy it?
16:32 pmurias ruoso: no
16:32 pmurias void* is of a diffrent length than char
16:33 ruoso I know... but I do want to know the size in bytes...
16:33 ruoso not the length of the array
16:34 ruoso I want to make a copy of the array
16:37 pmurias ruoso: can't you write a loop?
16:37 ruoso sure... but I was wondering if strlen would be more efficient than a loop...
16:37 ruoso hmmm
16:38 ruoso ok... I really can't do it...
16:38 ruoso because if a part of the pointer is 0, it will stop
16:51 Gothmog_ strlen would probably be less efficient, because it likely fetches single chars, not entire (d)words
16:51 Gothmog_ But just have a look at the glibc source code, for example...
16:52 ruoso putting the question better... which is the most efficient way of copying a null-terminated void* array
16:54 alester Wait, you have a void *
16:54 alester What's in the void * array?
16:54 alester bytes?
16:54 alester Why is it NOT a string?
16:54 ruoso because it is a void**
16:55 ruoso actually a SMOP__Object**
16:55 alester aaaah, ok.
16:55 alester no, then you can't use strlen
16:55 ruoso yeah..
16:55 alester I wouldn't worry about "most efficient".  Just make it work.
16:55 ruoso yeah...
16:55 Gothmog_ You have to allocate space for the copy, right?
16:56 ruoso yep
16:56 Gothmog_ So, just get the size in a simple loop...
16:56 Gothmog_ And use memcpy() or the like.
16:57 Gothmog_ If the array isn't very large, the largest amount of time is taken by malloc(), usually.
16:57 ruoso yeah.. I was just wondering if there isn't a shorter way of doing it...
16:58 Gothmog_ Shorter than while(p[++i]); ? :)
16:59 * ruoso programs in Perl for too long :P
16:59 Gothmog_ Just don't forget to initialize i with -1, if you really copy that. ;)
17:00 ruoso I'm going to use calloc
17:02 pmurias ruoso: calloc?
17:02 pmurias it sets the memory to zero
17:03 ruoso yep, then I know that it will be initialized before copying
17:04 meppuru simpsons
17:11 Gothmog_ ruoso: But why, if you're going to overwrite it anyway in the next few nanoseconds?
17:12 ruoso good question...
17:12 ruoso :P
17:12 Gothmog_ There's no reason for that.
17:12 Gothmog_ :)
17:13 allbery_b calloc() was generally considered Bad Style, last I heard; better to initialize yourself
17:23 riffraff joined #perl6
17:25 * ruoso realises another benefit of the constant identifiers... I'll have how to keep a separeted lookup for them in the capture that is more optimized that will just compare the pointers instead of having to call WHICH
17:25 jhorwitz joined #perl6
18:04 meppuru joined #perl6
18:09 japhb_ joined #perl6
18:18 moritz_ @tell fglock thanks, I'll take a look at it
18:18 Auzon No lambdabot, it seems
18:22 IRSeekBot joined #perl6
18:23 moritz_ I'll tell him myself ;)
18:28 Ariel_Eran left #perl6
19:20 devogon joined #perl6
19:24 alester joined #perl6
19:28 barney joined #perl6
19:31 alester joined #perl6
19:48 pugs_svn r19600 | moritz++ | t/spec/S05-modifier/*.t: updated POD, whitespace fixes
20:21 _sprocket_ joined #perl6
20:24 _sprocket_ i'm trying to do a "make spectest" in the latest perl6 revision, but it's not finding util/fudgeall - has this been committed to svn?
20:25 moritz_ there is a util/fudgeall in the pugs svn repository
20:26 * moritz_ tries it know
20:26 moritz_ s/know/now/
20:26 _sprocket_ ah ok, i guess it's just not showing up in languages/perl6 then
20:26 moritz_ langues/perll6 is in the parrot svn, not the pugs svn
20:27 _sprocket_ yeah, that's where i'm doing the make spectest
20:27 _sprocket_ sorry, i should have been more clear initially :)
20:27 moritz_ make spectest; works for me - although I get a couple of test failures
20:27 moritz_ could you nopaste the complete output please?
20:27 _sprocket_ hmmm....i'll try a clean checkout instead of an update then
20:28 _sprocket_ perl util/fudgeall rakudo t/spec/S02-literals/radix.t t/spec/S03-operators/autoincrement.t t/spec/S03-operators/comparison.t t/spec/S03-operators/equality.t t/spec/S03-operators/relational.t t/spec/S04-statements/until.t t/spec/S04-statements/while.t t/spec/S29-str/capitalize.t t/spec/S29-str/chomp.t t/spec/S29-str/chop.t t/spec/S29-str/comb.t t/spec/S29-str/index.t t/spec/S29-str/lc.t t/spec/S29-str/lcfirst.t t/spec/S29-str/length.t
20:29 _sprocket_ i'll check it out fresh again, and try it out
20:29 moritz_ I get the same message
20:29 _sprocket_ ah ok
20:29 moritz_ but the test works nevertheless
20:29 _sprocket_ yeah, it seems to
20:30 pugs_svn r19601 | ruoso++ | [smop] SMOP__NATIVE__capture_create implemented, still only support constant identifier as the key for named arguments
20:31 moritz_ _sprocket_: I told parrot guys about it, no doubt somebody will fix this soon
20:32 _sprocket_ cool, thanks
20:32 _sprocket_ should i just report that to #parrot next time?
20:32 moritz_ probably, yes
20:33 moritz_ or #rakudo (I don't know hox active that is)
20:33 BinGOs joined #perl6
20:33 moritz_ uhm, not very
20:33 moritz_ forget that one ;)
20:33 _sprocket_ alrighty, thanks :)
20:33 _sprocket_ hah
20:36 chris2 joined #perl6
20:37 BinGOs joined #perl6
20:39 Lorn joined #perl6
20:49 BinGOs joined #perl6
20:50 zf8 joined #perl6
20:51 pugs_svn r19602 | moritz++ | t/spec/S29-array/*.t: converted to new POD format
21:12 JackDeth joined #perl6
21:20 JackDeth left #perl6
21:23 fridim_ joined #perl6
21:28 pbuetow joined #perl6
21:29 jferrero joined #perl6
21:35 pcbuetow joined #perl6
21:36 rindolf joined #perl6
21:50 njbartlett joined #perl6
21:55 fridim_ left #perl6
21:55 fridim__ joined #perl6
22:04 Jamtech joined #perl6
22:13 explorer__ joined #perl6
22:47 pjcj joined #perl6
22:57 wknight-away joined #perl6
23:02 devogon joined #perl6
23:10 bsb joined #perl6
23:18 ruz joined #perl6
23:28 meppuru good night
23:29 __Ace__ joined #perl6
23:29 __Ace__ joined #perl6
23:52 Limbic_Region joined #perl6

| Channels | #perl6 index | Today | | Search | Google Search | Plain-Text | summary

Perl 6 | Reference Documentation | Rakudo