pugscode.org | temporary feather address: perl6.wall.org | sial.org/pbot/perl6 | ?eval [~] <m oo se> | We do Haskell, too | > reverse (show (scanl (*) 1 [1..] !! 4))
Set by allbery_b on 24 March 2007.
00:07 dduncan joined 00:16 buetow joined 00:19 buetow joined 00:22 ortmage_ joined 00:24 Talaman72 joined, Talaman72 left 00:34 qmole joined 00:54 nipotaway is now known as nipotan 00:59 jisom joined 01:18 epoch joined
epoch pastebin.ca/430507 01:18
buubot The paste 430507 has been copied to: erxz.com/pb/2114
01:26 dolmans joined 01:42 nekokak joined 01:43 ortmage_ joined 01:52 diakopter joined 02:01 mako132_ joined 02:24 b00t joined 02:45 dolmans joined 02:51 LCamel joined, tcliou_ joined 03:34 tcliou_ is now known as tcliou 05:09 ashelyb_ joined 05:18 esstone joined 05:46 [particle] joined 05:47 SubStack joined, RHainsworth joined 06:37 xerox joined
svnbot6 r15865 | Darren_Duncan++ | ext/QDRDBMS/ : abstracted the Changes file so it can be used unchanged for both the Perl 5 and 6 versions; minor SeeAlso.pod update 06:40
06:51 dduncan left 07:00 Khisanth joined 07:14 baest joined 07:31 agentzh joined
svnbot6 r15866 | agentz++ | renamed smartlinks.t and smartlinks2.t to 00-smartlinks.t and 01-smartlinks.t, respectively 07:31
r15867 | agentz++ | updated the POD in smartlinks.pl accordingly 07:34
07:41 iblechbot joined 07:47 xinming joined 07:58 agentzh left 08:04 elmex joined, devogon joined 08:29 elmex joined 08:33 rashakil joined 08:57 andar1 joined 09:04 chris2 joined 09:16 bernhard joined 09:32 VanilleBert joined 09:39 lichtkind joined 10:01 the_dormant joined 10:02 ruoso joined 10:09 Belaf_ joined 10:11 marmic joined 10:15 camenix joined 10:27 the_dormant joined 11:03 araujo joined 11:13 kanru joined 11:14 elmex joined, VanilleBert left 11:27 fglock joined 11:28 cognominal joined
svnbot6 r15868 | fglock++ | - created v6/docs: a place for perl6-in-perl6 documentation 11:38
r15868 | fglock++ | - added kp6.jpg: a diagram of KindaPerl6 internals
r15868 | fglock++ | - added mp6.jpg (was in pugs.blogs.com)
11:38 FurnaceBoy joined 11:42 iblechbot joined 11:48 mako132_ joined 11:57 RHainsworth left 12:04 mjk joined
moritz fglock: what's "DSL" in the diagrams? 12:12
fglock moritz: domain-specific language (regex, string interpolation) 12:13
moritz fglock: ah, thanks
fglock the parts of perl6 that have a different syntax
moritz I only knew "DSL = digital subscriber line" ;-) 12:14
12:15 ofer joined
fglock asymmetric domain-specific languages 12:17
12:18 cmarcelo joined
cmarcelo moose 12:18
fglock: ola
fglock cmarcelo: opa
cmarcelo fglock: I'm looking at kp6 new pictures (in v6/docs). 'Perl 6 AST' that you point there, is generated (intended to be) by what? 12:19
fglock the initial ast is created by the grammar; the ast transformations return either more ast or source code 12:20
source -> (grammar) -> ast -> (transform) -> ast -> (transform) -> source code 12:21
cmarcelo ok. the Regexp Engine (PCR or a new one) is who process grammars? (who will understand Perl-6.0.0 grammar for instance) 12:22
fglock source code can be: perl6, host source code, target source code
kp6 has it's own grammar engine, which is written in mp6
it translates regex->perl6 12:23
cmarcelo and this perl6 can read a perl 6 source and emit an AST?
fglock yes (the intermediate language for kp6 is miniperl6) 12:24
moritz and miniperl6 is a subset of perl6?
fglock moritz: yes 12:25
cmarcelo what's the usual representation for the P6 AST ? (if there's one)
fglock the AST is loosely based on src/Pugs/AST/CapInternals.hs 12:26
internally, it is an node-object tree
cmarcelo ok. so 6-on-6 on parrot would be basically, converting this AST to a format that "a parrot knows how to eat"? 12:29
fglock yes :)
cmarcelo and 6-6 pugs is converting the AST to the YAML format that pugs already know how to parse/run? 12:30
12:30 andar1 left 12:31 andar1 joined
fglock no, pugs YAML is too pugs-specific - it will likely emit perl6-for-pugs 12:32
12:32 andar1 joined, andar1 left
cmarcelo ok. or emit mp6 if pugs implements everything from mp6.. 12:32
fglock yes, or we can modify mp6 to make it pugs-compatible (and parrot-compatible even) 12:33
moritz so the way to compile a perl6 program with 6-on-6 is p6 source -> kp6 -> mp6 -> pugs or p6 source -> kp6 -> mp6 -> onion -> parrot? 12:35
fglock cmarcelo: kp6-on-pugs can use full-pugs; kp6-on-mp6 needs to emulate some features; kp6-on-parrot needs to emulate a different set of features 12:36
moritz: almost that
12:37 andar1 joined
moritz that's ... very indirect ;-) 12:37
fglock mp6 is not needed
except for bootstrapping
cmarcelo mp6 works on p5 (five)? and kp6 on mp6?
12:38 andar1 is now known as andara
fglock cmarcelo: yes 12:38
cmarcelo but in the end the ideal is to have p6 built in p6. both kp6/mp6 are bootstrap devices only? 12:39
(suposing that kp6 has less features than p6)
fglock cmarcelo: yes, kp6 is an intermediate step (and it is ok to skip it) 12:40
12:40 iblechbot joined
fglock but kp6-in-onion is more possible than (6-on-6)-in-onion 12:41
moritz and 6-on-6 is what lives in src/perl6/ in the pugs repository? 12:42
cmarcelo onion has all the minimum features to make possible this kp6-in-onion? or even mp6?
fglock moritz: v6/
cmarcelo: I don't know yet
I think mp6-in-onion is possible; kp6-in-onion will take more work 12:43
cmarcelo if we work on mp6-in-onion and it works we would get: "kp6 running on parrot" and generating "parrot code from Perl 6 source" ? 12:46
fglock not yet - you can do mp6->parrot, but kp6-parrot will need some work 12:48
specifically, the 'BEGIN' code in kp6 needs some clean up 12:49
cmarcelo err.. I'm confusing things then. mp6 runs on top of perl5, reads miniperl6 code, and outputs p5 code | executes miniperl6 code. this is right? 12:52
fglock mp6 runs on top of mp6, 12:53
there is an existing image of mp6 for the perl5 target 12:54
and there is an mp6 emitter for perl5
so we call mp6 "bootstrapped in perl5"
does this make sense? 12:55
moritz to me, it finally does ;-)
cmarcelo mp6 output is execution of code or emmiting something? 12:56
(emitting)
fglock the mp6 emitter is pluggable - it can output perl5, parrot, perl6, yaml, 12:57
the perl5 emitter is good enough, the other ones are experimental 12:58
cmarcelo ok. mp6 runs over mp6, inputs miniperl6 code, outputs (p5|parrot|p6|yaml), we have an image working over p5 (so we can bootstrap). right? 12:59
fglock yes 13:00
cmarcelo great
now kp6
kp6 is written in miniperl6, inputs kindaperl6 code, outputs what?
(fglock: thanks for helping me through this) 13:01
fglock kp6 is all-pluggable, it depends on what "workflow" you select
kp6 is more like a "compiler tool"
or compiler framework 13:02
cmarcelo ok
but kp6 is written in mp6?
fglock yes - but some parts were prototyped in perl5 - these still need to be translated 13:04
kp6 is not finished 13:05
cmarcelo the idea is make kp6 read Perl 6 code and output something? (also do other stuff, but in essentially)
fglock it should output "target source code", which you can run somewere else 13:07
cmarcelo ok. so, with a complete kp6 and mp6->parrot, we would have kp6 running over parrot. ideally. 13:08
fglock "somewhere"
yes
and it could emit perl6-onion
13:09 [particle] joined
fglock and we could use this to bootstrap kp6-in-parrot 13:09
cmarcelo kp6-in-parrot is kp6 written in "parrot"?
fglock kp6 running over parrot 13:10
and emitting code that parrot can run
13:10 nipotan is now known as nipotaway
cmarcelo by running over you mean what? kp6 written in mp6 and have a mp6->parrot makes kp6 run over parrot... kp6-in-parrot means something else besides kp6 emitting parrot code? 13:12
fglock once you have kp6 running in several platforms, you can upgrade the kp6 source code to "kp6" syntax
[particle] hi
cmarcelo [particle]: moose
[particle] kp6 is a superset of mp6, yes?
fglock [particle]: hi
[particle]: yes
[particle] thought so. that's great. 13:13
13:13 ashleyb joined
[particle] do you plan on targeting past or pir? 13:13
fglock [particle]: maybe, but "onion" seems more likely to succeed right now 13:14
[particle] ah, okay 13:15
moritz fglock: may I use v6/docs/kp6.jpg on a perl6 related homepage explaining mp6 and kp6?
[particle] i think onion will get end blocks RSN
fglock moritz: sure
moritz fglock: thanks
avar isn't mp6 the one doing the emitting?
avar recalled that from having read the source.. 13:16
fglock cmarcelo: kp6-in-parrot means it is running over parrot; it doesn't really need to emit parrot code
avar: yes, but the structure of the mp6 compiler is very simple; not enough for full-p6 13:17
avar all I see in kp6 is Transverse.pm, is this correct? 13:18
fglock avar: that's the module that calls the "Visitor" plugins, for ast transformations 13:19
avar: hmm, re emitting, no - kp6 has it's own emitter 13:20
avar where? I don't see anything else in v6-KindaPerl6 13:21
fglock looking... 13:22
cmarcelo moritz: are you writing somewhere about mp6 and kp6? 13:23
fglock avar: svn.pugscode.org/pugs/v6/v6-KindaPe...6/Visitor/
lambdabot Title: Revision 15868: /v6/v6-KindaPerl6/lib/KindaPerl6/Visitor, tinyurl.com/27tutj
fglock avar: EmitPerl5.pm
moritz cmarcelo: yes, I'm writing a German homepage about perl 6, with tutorials and an overview of existing p6 implementations 13:26
cmarcelo nice. where will be the material on mp6/kp6 (url?).. I'll try to translate to pt_BR for reference to others in the hackaton.. 13:27
(and to me hehe) 13:28
masak haven't looked at this yet, but might it be of interest for perl6 implementers? citeseer.ist.psu.edu/526620.html
lambdabot Title: Predicate Dispatching: A Unified theory of Dispatch - Ernst, Kaplan, Chambers (R ...
avar fglock: I don't have v6/v6-KindaPerl6/lib/KindaPerl6/Visitor/, I have v6/v6-KindaPerl6/lib/MiniPerl6/Traverse.pm though 13:29
13:30 kanru joined, perlmonkey2 joined
moritz cmarcelo: just a second, uploading... 13:31
cmarcelo: here: perl-6.de/kp6
lambdabot Title: Perl 6 - kp6 - Perl 6-Compiler in Perl 6
fglock avar: try ' svk up -s ' ? 13:32
avar hrm, I might have detached the svk checkout 13:34
13:36 buetow joined
cmarcelo moritz: thanks^W danke :) 13:37
fglock moritz: re p6 compilers - there is also perl6-in-perl5, search.cpan.org/dist/v6-alpha/ 13:39
lambdabot Title: Fl&#225;vio Soibelmann Glock / v6-alpha - search.cpan.org
fglock which is a different line of thought
moritz fglock: is that still maintained/developed? 13:47
fglock moritz: yes - the directories in pugs are perl5/Pugs-Compiler-Perl6/ and perl5/Pugs-Compiler-Rule/ 13:50
moritz fglock: ok, when I have some motivation left I'll add a description about v6-alpha as well ;-)
fglock ok :) 13:51
moritz fglock: does it really make sense to write so many implementions, or do just write them because they are fun to write? 13:54
fglock moritz: they are incrementally more complex 13:55
it's more likely to succeed this way 13:56
moritz ok
13:56 vel joined 13:57 rashakil joined
moritz and can mp6 handle a larger subset of perl6 than v6-alpha? or just a different one? 13:58
13:59 jrockway joined 14:02 OwlEye joined
avar v6.pm is written in perl5, v6-mini|kindaperl is a compiler in perl6 14:02
moritz I understood that, yes ;-) 14:03
TimToady rehi, back to California from the Near East. :) 14:07
moritz Near East? Israel? *g* 14:08
no, that's only "near east" for europeans I guess ;-)
TimToady Was in Rhode Island, Virginia, and various parts between 14:09
basically a lot of "George Washington slept here" places. 14:11
moritz ;-) 14:12
TimToady I think there will always be more of those places than the "Larry Wall slept here" places, if only because George Washington kept a much better diary than I do. :) 14:13
lumi That Washington was a tired guy
TimToady he was also slightly more famous... 14:14
fglock moritz: it's a different subset
moritz TimToady: all of that can still be changed ;-)
TimToady only if we really do bring on the Singularity. :) 14:15
and then there will be plenty of blame to go around.
fglock though airplanes make it easier to spread slepping places
moritz TimToady: there are many persons that are more famous than G.W. (at least outside the US ;-). You just have to formulate the ultimate "Grand Unifiying Theory" (as a p6 program, of course), then all you sleeping places shall be marked by big stone statues ;-) 14:18
fglock re famous: google count for "george washington" and "larry wall" is 10:1 - not bad :) 14:20
[particle] they must have the wrong larry wall ;) 14:21
fglock I assume it is compensated by having a proportional number of wrong george washingtons :) 14:22
moritz has only 17k hits on google ;-)
but it's rather easy to get many hits on google, just participate in a hell lot of mailing lists that have public archives 14:23
lists.debian.org has more than 1M pages indexed by google 14:24
14:42 ruoso joined 14:48 lichtkind joined
lichtkind tpf was renamed in OSCOn in 2001? 14:49
TimToady lichtkind: what are you thinking that it was renamed from? 15:11
lichtkind ähm sorry TPC i mean
TPF was from YAS
TimToady TPC has always been TPC, it's just that after the first two years it was part of OSCON. 15:12
YAS and TPF were independent bodies that merged, if I recall. 15:14
but I'm not the person to talk to about anything remotely political. 15:15
lichtkind TimToady: thanks i must correct that, so TPC startes at wendesday ?
TimToady depending on whether you want to count the tutorials 15:16
but yes, the "conferencey" part starts on Wed typically 15:17
lichtkind TimToady: sorry to bother you with that but on oreillys page i fond no history section
TimToady haven't looked at this year's schedule though
lichtkind but like you say it it seems that the TPF is only a track of the OSCON
TimToady O'Reilly is a forward looking company. :)
lichtkind haha
TimToady++ 15:18
TimToady: is TPC a track ? 15:19
TimToady it's usually several tracks 15:21
typically there's one main "Perl" track though
but Perl tends to spill over into a lot of other areas 15:22
and there will be smaller tracks for various sub-categories
typically on one day there has been a Conway Channel as well, where Damian talks all day. 15:23
don't know if they've scheduled one this year though
lichtkind he seems to be nonhuman
TimToady I think they're trying some new arrangements this time around.
lichtkind TimToady: i see but you said there is still a TPC and i try to imagine in what form, ist a romm where perl folks meet after the talks or ..? 15:24
romm > room 15:25
TimToady well, the Perl folks like to socialize in any of various ways, so they don't really need to schedule a room for it other than the usual parties and BOFs. Most of the mainline Perl talks happen in the room dedicated to the Perl track, but a lot of Perl stuff happens randomly outside of that. Typically my State of the Onion has been on Tues night 15:31
but that may change this year too.
15:32 fglock joined
lichtkind :) yes seperations is always sad but i still wander where is the Perl conference 15:33
15:39 prly joined 15:44 prly__ joined
OwlEye makes sure to pay attention when lichtkind has a little interview with TimToady 15:45
lichtkind haha
i just try to make my articles up correct
OwlEye seriously. this way i learn about interesting background information 15:46
[particle] TimToady: i don't see # todo formally specced, now that i'm looking for it 15:50
15:54 Jedai joined 15:59 toshinori joined 16:00 prly_ joined
svnbot6 r15869 | moritz++ | perl6.vim: added lots of builtins 16:07
TimToady [particle]: I have no clue where it should be specced 16:13
moritz TimToady: in S34 "Testing Perl 6" ;-) 16:14
16:17 prly joined 16:28 justatheory joined
svnbot6 r15870 | moritz++ | perl6.vim: added cmp comparison op, added TODO section 16:33
16:34 prism joined 16:39 forsaken joined 16:40 andara left 16:44 the_dormant joined 16:46 DarkWolf84 joined 16:51 larsen_ joined 16:57 Limbic_Region joined 17:09 davidfetter joined
davidfetter hello 17:09
Limbic_Region salutations
moritz hello davidfetter ;-)
davidfetter hi :)
moritz what's up? 17:10
davidfetter any parrot people here who will be at fisl?
moritz you could ask in #parrot on irc.perl.org ;-) 17:11
davidfetter i did
moritz any success? 17:12
davidfetter not yet
fglock davidfetter: hi! 17:17
davidfetter hi, fglock :)
fglock re parrot: not that I know of
davidfetter k 17:18
hrm. is haskell embeddable?
fglock davidfetter: I don't think it is easily embeddable, because it's too big; maybe there exists embeddable subsets 17:21
davidfetter k
moritz I thought pugs can eval() haskell code? 17:22
how can that be done without embedding haskell?
fglock it's the other way out; haskell embeds perl5 and such 17:23
moritz ok
17:25 bernhard joined
fglock you can "embed" using a subprocess (Inline::Pugs and Inline::Java do this) 17:30
17:37 Psyche^ joined 17:44 buetow joined 17:48 vel joined 17:54 Psyche^ is now known as Patterner 18:00 eden_c joined 18:01 RHainsworth joined 18:08 kanru joined 18:14 RHainsworth left 18:19 sunnavy joined 18:29 jisom joined 18:37 eden_c joined 18:38 rhandom joined 18:41 forsaken joined 19:00 dmpk2k joined 19:08 eden_c joined 19:19 the_dormant joined 19:22 fglock joined 19:26 phiker joined 19:28 dduncan joined 19:32 marmic joined 19:38 eden_c joined 19:51 Aankhen`` joined, ZSystem joined 19:57 davidfetter left 20:08 lichtkind joined 20:09 eden_c joined
moritz ?eval my @a=1,2[3,4],5; say @a; say @a.join(" "); 20:28
evalbot_r15831 OUTPUT[15␤1 5␤] Bool::True
moritz ?eval my @a=1,2,[3,4],5; say @a; say @a.join(" ");
evalbot_r15831 OUTPUT[123 45␤1 2 3 4 5␤] Bool::True
moritz is join() supposed to flatten lists? 20:29
fglock ?eval my @a=1,2,[3,4],5; say @a; say @a.join(":"); 20:30
evalbot_r15831 OUTPUT[123 45␤1:2:3 4:5␤] Bool::True
fglock that's plain stringification behaviour
20:31 spinclad joined
moritz ok 20:31
20:48 rashakil__ joined 21:11 Limbic_Region joined 22:16 ortmage_ joined 22:18 awwaiid joined 22:26 qmole joined
masak nothingmuch: reading your harrorth tutorial right now 22:39
the down-to-earth description of monads in 03.kwid helped me understand them better
22:40 ProperNoun joined
masak nothingmuch: it can sometimes be a bit confusing to compare the early chapters with the present code 22:43
nothingmuch: for example, src/Harrorth/Parser.hs ref'd in 03.kwid does not exist
nothingmuch: but so far that hasn't hampered understanding, since most of the code is reproduced in the tutorial 22:44
22:45 ProperNoun joined
masak & 22:45
22:48 FurnaceBoy joined 23:23 ProperNoun joined 23:35 SubStack joined, mjk joined