pugscode.org/ | nopaste: sial.org/pbot/perl6 | ?eval [~] <m oo se> | We do Haskell, too | > reverse . show $ foldl1 (*) [1..4] | irclog: irc.pugscode.org/
Set by diakopter on 11 July 2007.
mncharity fglock: re reorganizing, great. if you ever want to reorg Common, feel entirely free. I keep meaning to move my stuff there to Aside/. 00:01
stevan_ hey mncharity
mncharity hi steven_ :)
stevan_ hows things with you
fglock heh - no, I'm just trying to keep v6/ usable
mncharity pictured jumping mooses, and though of you
stevan_ :) 00:02
fglock: where is the talk?
mncharity re heh, ah, ok
fglock hmm - it's in Portuguese
mncharity re things, I'm still in jobsearch avoidance mode (like thesis avoidance but more expensive). Helping out with One Laptop Per Child. 00:03
avar mncharity: what are you doing there?
00:04 araujo left 00:05 theorb joined
mncharity avar: I want to say random application development. But since I got an actual box, it seems I spend more time on testing and doing bug reports. The rest on wiki work, especially regards running stuff in emulation. 00:05
00:06 Notrix left
mncharity mass production nominally starts in a couple of weeks. so there's rather a push to get things nailed down. 00:06
spent a week or two generating static slices of wikipedia. 00:07
pugs_svnbot r18412 | fglock++ | [kp6] re-add lib-kp6-mp6-p5 temporarily, until evalbot gets @LIB fixed 00:10
diff: dev.pugscode.org/changeset/18412
lambdabot Title: Changeset 18412 - Pugs - Trac
mncharity wiki.laptop.org/ wiki.laptop.org/go/OLPC_Peru/Arahuay wiki.laptop.org/go/Software_components wiki.laptop.org/go/Emulating_the_XO wiki.laptop.org/go/Current_events xogiving.org/ wiki.laptop.org/go/Test_issues #olpc #sugar #olpc-content
lambdabot Title: The OLPC Wiki - OLPCWiki 00:11
fglock kp6: "ping?"
mncharity wonders what lambdabot is going to make of that...
exp_evalbot r18412: OUTPUT['ping?'␤]
fglock kp6: my $a = gather { while 1 { take 123; take 456; } }; say $a[3]
exp_evalbot r18412: OUTPUT[456␤]
fglock mncharity: that's the current "Perl 6 in Perl 6" 00:12
mncharity :)
kp6: ...hmm...
exp_evalbot r18412: OUTPUT[syntax error at position 0, line 1 column 0:␤...hmm..␤^ HERE␤]
mncharity /me tries to remember how to print all globals...
fglock kp6: say %*ENV 00:13
exp_evalbot r18412: OUTPUT[HOME /home/evalbot␤LOGNAME evalbot␤SHLVL 2␤LESSCLOSE /usr/bin/lesspipe %s %s␤_ /usr/bin/perl␤PATH /usr/local/bin:/usr/bin:/bin:/usr/games␤LS_COLORS
..no=00:fi=00:di=01;34:ln=01;36:pi=40;33:so=01;35:do=01;35:bd=40;33;01:cd=40;33;01:or=40;31;01:su=37;41:sg=30;43:tw=30;42:ow=34;42:st=37;44:ex=01;32:*.tar=01;31:*.tgz=01;31:*.arj=01;31:*.taz=01;31:*.lz...]
mncharity kp6: Int, Num, Complex, Rat, Str, Bit, Regex, Set, Junction, Code, Block, List, Seq; 00:15
exp_evalbot r18412: OUTPUT[syntax error at position 3, line 1 column 3:␤Int, Num, Complex, Rat, Str, Bit, Regex, Set, Junction, Code, Block, List, Seq␤ ^ HERE␤DISPATCH: calling APPLY on invalid object:$VAR1 = {};␤␤ at lib-kp6-mp6-p5/KindaPerl6/Runtime/Perl5/MOP.pm line 33␤ main::DISPATCH('undef', 'APPLY')
..called at - line 16␤]
mncharity kp6: foo(Int, Num, Complex, Rat, Str, Bit, Regex, Set, Junction, Code, Block, List, Seq);
exp_evalbot r18412: OUTPUT[DISPATCH: calling APPLY on invalid object:$VAR1 = {};␤␤ at lib-kp6-mp6-p5/KindaPerl6/Runtime/Perl5/MOP.pm line 33␤ main::DISPATCH('undef', 'APPLY') called at - line 16␤]
mncharity kp6: Str
exp_evalbot r18412: OUTPUT[DISPATCH: calling APPLY on invalid object:$VAR1 = {};␤␤ at lib-kp6-mp6-p5/KindaPerl6/Runtime/Perl5/MOP.pm line 33␤ main::DISPATCH('undef', 'APPLY') called at - line 16␤]
fglock kp6: ::Int 00:16
exp_evalbot r18412: OUTPUT[syntax error at position 0, line 1 column 0:␤::In␤^ HERE␤]
fglock kp6: ::Int(10)
exp_evalbot r18412: OUTPUT[Died at compiled/perl5/lib/KindaPerl6/Grammar.pm line 3590, <> line 1.␤Can't locate object method "parsing" via package "Constructor" (perhaps you forgot to load "Constructor"?) at - line 1.␤]
fglock pff
mncharity :)
work in progress :)
00:17 theorbtwo left
mncharity I've been repeatedly reminded lately that 'civilization is a bootstrap exercise'. One step at a time. With the critical path very often starved for resources. 00:17
btw, I saw audreyt's planet post go by the other day. is there a kp6 interactive read-eval-print loop, and if not, would you like one? 00:19
fglock kp6: say (10.HOW).methods
exp_evalbot r18412: OUTPUT[increment perl str true HOW WHAT␤]
fglock no, it would be nice
mncharity ok. I'll try to whip one up. 00:21
avar whee 00:22
mncharity fglock: wiki.laptop.org/go/OLPC_Brazil :) 00:28
lambdabot Title: OLPC Brazil - OLPCWiki
fglock it would be nice if it were written in kp6-ish
looking
00:28 REPLeffect_ left
fglock cool - are you going to Brazil some day? 00:30
00:30 cmarcelo left
fglock I studied at UFRGS 00:31
mncharity ah, neat. no, others are off to Peru and China, but I just sit in Cambridge and hack. 00:33
fglock re written in kp6-ish, we plan to bootstrap in Lisp too 00:34
avar the lisp backend will take over!
00:35 Torment left
mncharity the other thing vaguely near the top of my p6 todo list was setting up so the pugs test suite can be run against arbitrary programs. Just set an ENV variable. Rather than each implementation having to frob a couple of files for itself. 00:36
re lisp, yes, sbcl is a nice environment. 00:37
fglock we are heading to a common Makefile.PL, that you can run with an ENV set to which backend you want; then 'make test' just works 00:38
avar well preferrably we'll be able to do that at runtime 00:39
fglock this is what I was working today (instead of writing my talk)
avar but in the future we may want to compile the kp6 frontend with a given backend..
mncharity ah, ok. I was just going to take the existing(still?) redsix lines and multate them into a more general "other". but a more principled approach would be nice. 00:41
fglock no problem - we can replace the syntax later 00:43
00:45 arcady joined
mncharity fglock: don't let me distract you from talk. ;) /me watches cpan -f -i KindaPerl6 tests scroll by. Then maybe just take misc/old_pugs_perl5_backend/PIL-Run/pugs-p5.pl and strip it down to just use print open(| kp6 > tmp); eval(`cat tmp`). 00:45
low hanging fruit, leaving the kp6-ish for another day. 00:46
SamB what does sbcl have that cmucl hasn't?
mncharity tries to think of a polite way to say it... 00:47
SamB don't bother
avar SamB: active development?
mncharity cleaner code and an active community
SamB I don't care if you insult cmucl
ah. that's nice!
00:48 weinig_ left
mncharity stevan_: do you every get up to boston? we should do lunch or something. 00:49
mncharity tries to remember who else is in the Boston area... nominal members of the Perl6 Users Group... 00:50
fglock the talk is going on well - distraction actually helps 00:51
avar there's a p6 user's group? 00:52
stevan_ mncharity: I dont often get up to Boston, but I do plan on trying to make a Boston.pm meeting sometime in the near future 00:53
00:55 justatheory left
mncharity fglock: :) 00:57
avar needs to design a better kp6 interface 00:58
mncharity avar: it turned out there were several pugs developers near Boston, so it was sort of a running joke. I don't think we ever actually met.
avar something with -e, and backend options
having sbcl compile to a binary and so on..
mncharity stevan_: cool. though ruby group unfortunately now lands each month in conflict, so my attendance gets split. 00:59
01:00 Limbic_Region joined
mncharity avar: I found having an interactive eval loop invaluable for testing. Makes random exploration/play/testing much easier. 01:00
fglock heh - I read rugby 01:01
mncharity :)
avar mncharity: yeah, then there's that..
stevan_ mncharity: I wouldnt mind hitting up a ruby users meeting etiher :) 01:02
mncharity "give blood, play rugby^Wruby"
second tuesday of each and every month (for both) 01:03
re much easier, well, at least for me. puts it above threshold for "maybe I'll just sit here for a while and try different things and see how they work". the kp6: bot is great. :) 01:05
fglock perl6: 1+1 01:06
exp_evalbot kp6: OUTPUT[2␤]
..pugs: OUTPUT[2␤]
..p6: OUTPUT[sh: ./parrot: No such file or directory␤]
..nqp: OUTPUT[sh: ./parrot: No such file or directory␤]
mncharity wow. :) 01:07
fglock we have lots of bots
it's the perl6: bot community
01:07 araujo joined
mncharity :) /me wonders if there's a QUOTES file... :) 01:08
SamB wonders where oleg got his URL from
avar how do I run the kp6-perl5 backend now? 01:09
fglock avar: I was thinking, how about renaming MiniPerl6 to nqp-perl5 :)
mncharity avar: is that this one: planetsix.perl.org/ ?
lambdabot Title: Planet Perl Six
avar Let's rename kp6 to onion:) 01:10
fglock $ echo ' say "hi" ' | perl script/kp6 | perl -I -Ilib-modules-kp6-mp6-p5 -I compiled/perl5/lib
$ echo ' say "hi" ' | perl script/kp6 | perl -I compiled/perl5/lib 01:11
01:11 devogon left
avar kp6: my sub x { "bar" } say x() 01:11
exp_evalbot r18412: OUTPUT[DISPATCH: calling APPLY on invalid object:$VAR1 = {};␤␤ at lib-kp6-mp6-p5/KindaPerl6/Runtime/Perl5/MOP.pm line 33␤ main::DISPATCH('undef', 'APPLY') called at - line 48␤]
avar kp6: my sub xyz { "bar" }; say xyz()
exp_evalbot r18412: OUTPUT[bar␤]
01:12 thoughtpolice left
avar oh stupid parser 01:12
mncharity re onion, layers upon layers?
avar yup
And I think we need to drop the "Kinda" stigma:) 01:13
mncharity :) ah, good thought.
avar and the perl logo has been an onion for a while..:) 01:14
mncharity perl6 goulash: add onion, jerked parrot, leg of pug, ... 01:15
01:15 cognominal_ left
avar fglock: what do you think?:) 01:16
fglock i'm ok :)
how about adopting nqp-xxx for the MiniPerl6 backends? 01:17
let's integrate with Parrot
avar I think it's better if the parrot people own "nqp" :)
fglock in some way
avar aren't they using nqp as an embedding language anyway
fglock I see the minis as close-to-the-metal, whatever subset works better in that platform 01:19
01:19 lyokato joined
fglock MiniPerl6-lisp would be very lispish 01:19
01:20 daxim_ left
avar sh-3.1$ make kp6_mp6 01:20
cp src/KindaPerl6/Visitor/EmitLisp.pm compiled/perl5/lib/KindaPerl6/Visitor/EmitLisp.pm
# /usr/bin/perl script/mp6.pl < src/KindaPerl6/Visitor/EmitLisp.pm | perltidy -pro=util/perltidyrc > compiled/perl5/lib/KindaPerl6/Visit\
or/EmitLisp.pm
hrm, makefile broken
fglock oops - sorry
avar fixed it
01:23 polettix left
pugs_svnbot r18413 | avar++ | [kp6] make `make kp6_mp6' work again, compile not copy 01:25
diff: dev.pugscode.org/changeset/18413
lambdabot Title: Changeset 18413 - Pugs - Trac
01:31 weinig joined
fglock avar: I think we could add onion as a new directory, for bootstraping work - and keep KindaPerl6 as the bootstrapping compiler 01:31
so we start with onion-kp6 and later onion-onion
avar aren't we going to move kp6 itself to full-p6? 01:33
01:37 luqui left, arcady left, arcady joined
fglock yes, but moving it over itself is harder; I think keeping a near-frozen version makes it easier 01:39
avar when should we do that? when it bootstraps STD?
fglock like, how we are using mp6 now
it could be done right now, we only have minor problems 01:40
we can port fixes back from onion to kp6 if needed
avar can it be partly done? 01:46
fglock hmm - what you mean? 01:48
avar nm 01:49
ugh, I'll have to rewrite aankhen's Code.lisp, it only does package variables
fglock the idea is to start onion as a separate project, developing it in parallel with kp6; when onion gets usable, then we freeze kp6 01:53
if onion fails, we just move it to misc/ and go on
I need examples of companies that have an open-source R&D department 01:54
not directly related to the company business
01:56 jferrero left
avar fglock: Isn't onion just coninuing where kp6 is going? 01:57
01:58 kanru left
mncharity goes by briefly, notices fun concept of a frozen onion. frosty onion. 01:58
avar fglock: planning major changes with onion incompatable with kp6? 01:59
02:01 marmic left
fglock there are some things that might break kp6 - fixing the parameter passing format, for example 02:01
and experimenting with the regex engine 02:02
02:04 marmic joined
fglock these things require changes in the runtime 02:04
avar but first we want to bootstrap:) 02:10
and having std will be neat since we can parse more stuff
02:15 mr_ank left 02:16 mr_ank joined 02:18 kanru joined
fglock bootstrapping is easier if you have a compiler that works as a safe net 02:27
my talk is finished - now sleep for 3 hours or so & 02:28
02:49 weinig left, weinig joined 02:50 amnesiac joined 02:51 Limbic_Region left 02:52 fglock left
mncharity re creating a repl, there is also ./misc/old_pugs_perl5_backend/pilrun2-leftovers/repl.pl ./misc/runpugs/lib/Repl.pm (all p5) and examples/eval.pl (in p6) to draw from. perhaps also examples/promptr.p6. 03:07
03:13 cognominal_ joined 03:56 kanru left 03:57 justatheory joined 04:25 funktio joined 04:45 Jamtech joined 04:52 Jamtech left 05:01 weinig is now known as weinig|zZz 05:02 c9s joined, c9s left
funktio I think it would be a nice if string.chars returned an array in list context 05:13
would be much more elegant than split "", string 05:14
05:29 Ashizawa joined
spinclad mncharity: putter! yes, here's one nominal member (not paying attention here, clearly, tho i am caught up from a month-long 2 week backlog) 05:45
and about ready to start playing with kp6 05:46
05:55 elmex joined 05:58 jisom joined 06:01 jisom left 06:02 jisom joined
moritz_ btw Junction.str is broken 06:08
I'm trying to fix it, but it's...weird
06:08 justatheory left
moritz_ no method 'type' in Class 'Int' 06:11
ah, the problem is that Junction.str autothreads 06:13
but it shouldn't
changing it to return "placeholder" and calling 'say' on (1|2|3) yields "placeholder\nplaceholder\nplaceholder\n" 06:14
so the problem is not in class Junction, but somewhere in the dispatcher 06:15
06:25 marmic left 06:29 marmic joined 06:41 drupek12 left 06:43 Aankhen`` joined 06:45 iblechbot joined 06:51 zamolxes left 06:55 tewk left 07:11 bsb left 07:12 jisom_ joined 07:14 zamolxes joined 07:21 weinig|zZz left, IllvilJa left 07:22 weinig joined 07:29 gorax joined 07:30 jisom left 07:31 dduncan left 07:33 franck___ joined 07:37 amnesiac left 07:40 devogon joined 07:57 tewk joined 08:42 jisom joined 08:46 cognominal_ left 08:48 mj41 left 09:00 jisom_ left
funktio whoops, I forgot the sigil; I meant $string.chars 09:08
09:19 jisom left 09:24 fglock joined 09:26 cathya joined 09:31 drupek12 joined 09:41 ruoso joined 09:44 andara joined 09:53 fglock left 09:56 fglock joined 09:59 rfordinal_ joined 10:12 rfordinal left, Ashizawa left
cathya you guys do haskell? 10:12
10:15 r0bby left 10:16 ruoso left
integral We do haskell? Pugs has a copious amount of haskell in it :-) 10:18
cathya interesting
im just reading the halting problem 10:19
and there's a quote from larry
10:19 r0bby joined
szbalint hey regh :) 10:20
cathya hi 10:21
oh
hehe
hi
here too huh
10:35 cognominal_ joined
moritz_ pong 10:38
cathya guess what 10:43
10:45 cognominal_ left 10:47 IllvilJa joined 11:05 fglock left
moritz_ what 11:07
11:11 stevan_ left 11:36 lyokato left 11:38 mikeKnight joined
mikeKnight hi,every one 11:38
11:39 iblechbot left, mikeKnight left 11:46 pmurias joined
cathya question OT doesnt linux have a gui that's hardware-accelerated yet? 11:59
besides x 12:02
moritz_ I don't know, perhaps a framebuffer can use 2D acceleration 12:06
pmurias moritz_: doubt it 12:08
moritz_: x and DirectFB on framebuffer can do hardwar acceleration apartantly 12:12
cathya ah ok 12:13
pmurias cathya: i just goolg'ed after my initial stupid response ;) 12:15
* googled
kp6 Makefile is broken 12:16
it copied KindaPerl6/Visitor/EmitPerl5Regex.pm instead of compiling it
Aankhen`` pmurias: Thanks for the macro answer last night. :-) 12:18
AIUI from the answer, in the case of that particular macro, at least, the processing would mostly be in the regex, since that would return an appropriate AST, yes? 12:19
pmurias it could 12:21
what i wanted to do was to wrap the result in a quasi-quote 12:22
so that the regex would return a list and a quasi-quote would turn it into an AST node
Aankhen`` Ah. 12:23
pmurias i'm not sure if do {my $a:=1;say q:code {say $a;}} returns q:code {say 1}; 12:29
avar Aankhen``: Your sub implementation is teh broke:) 12:32
12:38 iblechbot joined
pugs_svnbot r18414 | pmurias++ | [kp6-perl5rx] token-test.pl works 12:44
diff: dev.pugscode.org/changeset/18414
lambdabot Title: Changeset 18414 - Pugs - Trac
13:09 gorax left
Aankhen`` avar: What sub implementation? 13:25
And what's b0rked about it?
13:28 chris2 joined
avar Aankhen``: Code.lisp, it only does packages, should just dispatch to sub objects 13:30
hrm
I was trying to implement my $s = sub {}; $s.()
13:30 weinig left 13:33 weinig joined 13:36 weinig left, araujo left 13:37 weinig joined
Aankhen`` avar: Eh? 13:40
Code.lisp contains KP6-CODE and MAKE-KP6-SUB.
It doesn't have anything to do with packages.
avar kp6-apply-function needs to look it up in a package 13:41
(defmethod kp6-dispatch ((invocant kp6-Code) (method (eql :apply)) &rest parameters)
(defmethod kp6-dispatch ((invocant kp6-Code) (method (eql :apply)) &rest parameter "Run some code with ::Apply, this is used by my $sub = sub {};
$sub.() for instance" 13:42
(let ((interpreter (first parameters))
(arguments (rest parameters)))
(kp6-apply-function interpreter invocant (list (make-instance 'kp6-positional-parameter :value (make-kp6-cell arguments))))))
I was trying to do that
Aankhen`` Ah, KP6-APPLY-FUNCTION.
Wait, you *want* it to look it up in a function, or do you want it to run the code itself?
It's supposed to do the latter at present.
avar run the code 13:43
Aankhen`` And instead of that LET, use this: (destructuring-bind (interpreter &rest arguments) parameters ...)
avar Aankhen``: sial.org/pbot/28011 13:44
lambdabot Title: Paste #28011 from Someone at 208.78.101.240
Aankhen`` Hmm, I'm not sure why KP6-APPLY-FUNCTION is looking it up in a package. 13:45
That's just silly.
13:45 fglock joined
cathya jesus 13:47
knuth is online
lol
13:47 cmarcelo joined
szbalint hm? 13:50
13:50 amnesiac joined
avar Aankhen``: If you could get methods and $sub.() working that would be super rad:) 13:53
Aankhen`` avar: Give me some time. I'm a little swamped at the moment. :-S 13:55
13:59 blindfish joined
pmurias you can treat ::Apply as a ::Call if it helps 14:00
Aankhen`` I plan to. :-) 14:02
cathya kiddin szbalint 14:06
heh
avar wants to kill "this is not implemented" 14:11
pugs_svnbot r18415 | fglock++ | [kp6-perl5] fixed a problem with nested gather{...}
diff: dev.pugscode.org/changeset/18415
lambdabot Title: Changeset 18415 - Pugs - Trac
14:11 turrepurre joined 14:13 cognominal_ joined
fglock avar: there is an alternative to making yet another compiler, which is to port some stuff back to mp6 14:13
this would make possible to "fix" the kp6 compiler runtime 14:14
avar what stuff? 14:15
fglock the kp6 compiler uses the mp6 runtime internally 14:16
this makes some things very difficult - macros for example
we could make mp6 compile to kp6 runtime 14:17
avar couldn't this also be fixed by bootstraping kp6 and running it on the kp6 runtime?
fglock yes, but the bootstrapping itself would be easier to do if this were fixed 14:18
pmurias fglock: fixing of what is nessary?
14:19 Ashizawa joined
fglock pmurias: replacing the kp6 compiler runtime 14:19
pmurias: this is needed in order for the AST to be a Perl 6 land object; we need this in order to have macros 14:24
14:25 justatheory joined 14:27 penk left 14:29 justatheory left 14:30 ofer left, ofer joined
pmurias fglock: it isn't clear to me, do you want the code emitted by kp6 to use the mp6 runtime? 14:33
i understood
Aankhen`` I'm glad one of us did. :-D 14:34
14:34 dconway joined
dconway so this is what irc looks like 14:34
dconway waves to larry
Aankhen`` Beautiful, isn't it? 14:35
pmurias although " replacing the kp6 compiler runtime" part confuses me
fglock: the plan is to make the mp6 emitted code use the kp6 runtime? 14:36
moritz_ fglock: how do need to modify evalbot's @INC?
fglock: for the new dir layout 14:37
fglock pmurias: yes (a possible plan)
[particle] hey there dconway! how's things?
pmurias lib-mp6-p5 changed to compiled/perl5/lib 14:38
* lib-kp6-mp6-p5
fglock moritz_: the lib dir is now compiled/perl5/lib/
pmurias fglock: i think it's a bad plan
fglock so we can have several compiled lib versions
pmurias s/plan/idea
14:39 cognominal_ left
dconway hello moritz_:) 14:39
fglock pmurias: how would you do it?
dconway: hi :)
moritz_ hi dconway ;)
pmurias dconway: hi ;)
fglock pmurias: hi :)
[particle] wonders if dconway is here looking for yet another way to avoid the pod spec ;)
dconway hi pmurias:) 14:40
fglock [particle]: hi :)
dconway it'll take me awhile to get used to this thing
[particle]: not at all
pugs_svnbot r18416 | moritz++ | [evalbot] fixed include path for evalbot (reflects kp6 dir layout changes)
diff: dev.pugscode.org/changeset/18416
lambdabot Title: Changeset 18416 - Pugs - Trac
14:41 exp_evalbot joined
moritz_ kp6: say "hi" 14:41
exp_evalbot r18416: OUTPUT[hi␤]
moritz_ fglock: kp6 with new include path at your service ;) 14:42
dconway be back in a bit, need to reboot
pugs_svnbot r18417 | fglock++ | [kp6] rm old lib
diff: dev.pugscode.org/changeset/18417
14:42 dconway left
lambdabot Title: Changeset 18417 - Pugs - Trac 14:42
fglock moritz_: thanks!
moritz_ you're welcome 14:43
cathya that was the real damian conway? 14:44
[particle] yes 14:45
fglock running out of battery...
[particle] hands fglock a solar charger 14:46
cathya what is with the perl community
all the perl developers started showing up here?
hehe
moritz_ cathya: not all I think ;)
was rafael ever here? or nicholas clark?
fglock moritz_: yes 14:47
rgs I'm yes
here
moritz_ rgs: right
cathya rafael is
lol
there
moritz_ sometimes it's hard to match abbreviations ;)
rgs nicholas is, sometimes, too
[particle] rgs: did rc1 happen?
Aankhen`` <cathya> what is with the perl community # you don't approve of the developers showing up here? :-)
rgs not yet 14:48
pmurias fglock: i don't think changing mp6 would be worth it
cathya haha i dont mind at allll
if it happens good, it'll make this place bigger than debian
[particle] rgs: good luck with it. looking good so far, but i know it's a lot of work
pmurias as developing kp6 is easier and the result isn't temporary
rgs shouldn't take long
cathya so this isnt the real rafael? 14:49
fglock pmurias: how about creating the onion thing; and freezing kp6 as the bootstrap compiler?
pmurias sounds good
fglock k
rgs I'm the one and only rafael!!
[particle] cathya: what's this "real" business. we're all real people, except the bots.
cathya real as in the perl developer
pmurias isn't onion as a name taken by the parrot folks?
fglock perl6: "I'm here" 14:50
exp_evalbot kp6: OUTPUT['I'm here'␤]
..pugs: OUTPUT["I\'m here"␤]
..p6: OUTPUT[sh: ./parrot: No such file or directory␤]
..nqp: OUTPUT[sh: ./parrot: No such file or directory␤]
Tene [particle]: Hey, I'm plenty real!
[particle] what's up with nqp and p6?
Aankhen`` Whoo. 14:51
fglock no parrot there
Aankhen`` Tene: Liar.
[particle] yeah, where is there, and how does it get fixed?
by the way, we're ~14 failing tests away from merging the new oo model into parrot trunk
fglock [particle]: please help moritz_ :)
[particle]: cool 14:52
[particle] fglock: gladly! what's wrong, moritz_?
Tene segfaults on Aankhen``.
Aankhen`` Ewww.
[particle] reboots Tene
pmurias fglock: won't changing the kp6 be nessesary for getting onion to compile
fglock bye bye in 2 minutes 14:53
pmurias: maybe, but it's less complex than fixing it and making it compile itself at the same time
it's very easy to break the bootstrap 14:54
[particle] thinks kp6 needs a version number, a published roadmap, and proper cpan-ification 14:55
pmurias fglock: a stable version could be kept, updated only when the HEAD is proved to work
14:56 cathya left
[particle] it'd be nice to have a repo that allowed branches, wouldn't it :) 14:56
Aankhen`` Needs moar Mercurial. 14:57
pmurias [particle]: you can branch a single directory in subversion 14:58
the pugs repository is so diversified that branching the whole thing dosn't make sense 15:00
Tene <3 git 15:01
15:02 vbattsAtWork joined
Aankhen`` Git it off me! 15:02
15:11 cognominal_ joined
[particle] pmurias: perhaps it's time to set up v6/branches then 15:14
15:18 fglock left 15:21 fglock joined
fglock b 15:22
pasteling "fglock" at 87.103.27.203 pasted "error in irc.pugscode.org" (4 lines, 367B) at sial.org/pbot/28014 15:24
fglock how about making 3 separate Makefiles: Makefile.PL for the CPAN distro, doesn't attempt to recompile; Makefile-mp6.PL for current development; Makefile-kp6.PL for bootstrapping 15:27
[particle] you could have Makefile.PL take options, and generate the appropriate Makefile 15:30
or perhaps different targets within the Makefile?
s/the/one/
fglock we current have different targets, but the Makefile gets hard to maintain 15:31
moritz_ looking...
[particle] you think three makefiles will be easier to maintain? 15:33
(it may be, iunno.)
15:33 pnu joined
fglock good point - not sure 15:34
[particle] parrot has a Makefile.PL that calls Configure.pl to keep cpan happy
and Configure.pl takes many options which affect makefile generation 15:35
15:35 barney joined
[particle] it even includes a 'make Makefile' target, which allows us to modify the makefile templates and regenerate without reconfiguring 15:35
moritz_ while compiling parrot: 15:36
[particle] however, kp6 doesn't really need configuring in the first place, just makefile generation
moritz_ compilers/imcc/imcparser.c:1: error: expected identifier or '(' before '<<' token
make: *** [compilers/imcc/imcparser.o] Error 1
[particle]: any ideas?
[particle] moritz_: sure!
it's likely a merge conflict
anytime you see compiler errors with << or >> 15:37
15:37 rindolf joined
[particle] try svn revert 15:37
moritz_ ok, thanks
15:37 Ashizawa left 15:42 lichtkind joined 15:43 vel joined
fglock looking for the next interesting problem™ 15:55
[particle] loop { do_something_useful( find_something_interesting() ); }; 15:57
fglock can we have loop as a statement modifier? 16:01
$x++ loop;
TimToady no 16:02
16:02 weinig left
TimToady at least, not in Standard Perl 16:03
16:03 xinming left, xinming joined
[particle] $x++ for loop; # self-documenting :) 16:04
16:04 drupek12 left
[particle] would $x++ for *; work? 16:05
TimToady $x++ for ^*
[particle] ah, right
i see a macro somewhere that converts a 'loop' statement modifier to ^* :) 16:06
TimToady 'course, that could also be construed as the metaobject for Whatever.
so maybe the metaobject just happens to return an infinite list in list context. :) 16:07
more likely we just force ^* and ^Whatever to mean different things
[particle] sometimes you just can't resist a good hack
TimToady Whatever is the concept, while * is the use of the concept 16:08
basically, the ^ shortcut for .HOW only works on bare identifiers 16:09
pmurias fglock: not keeping kp6 and mp6 runtimes in the same directory might be a good idea
TimToady and then only if they're already declared as classes
pmurias they are currently kept together in Runtime/Perl5 16:10
TimToady otherwise ^ just has an MMD candidate on Whatever that handles it
amnesiac metaobjects!
TimToady what about 'em?
and then, what about that? 16:11
amnesiac just checking the conversation, and thinking how that could be constructed as the metaobject for Whatever
TimToady well, when you say MyType, it's returning the protoobject (a variant of undef), and * is actually just the Whatever protoobject 16:14
so if there were not a specific prefix:<^> (Whatever) rule, it would default to what ^ does on normal protoobjects 16:15
which is to return the metaobject, Mytype.HOW
amnesiac I see 16:17
TimToady likewise ^42 and ^"zzz" dispatch to different candidates depending on the type being Num or Str 16:18
amnesiac so the metaobject just defines the abstract representation of ANY class? (or any object)
like how to dispatch HOW and WHAT?
TimToady no, those are built-in macros 16:19
.HOW tells you how to do all the rest of the OO stuff
so .HOW can't specify how to call .HOW
amnesiac .HOW tells you how to do all the rest of the OO stuff ---> but for a given type, or any type? 16:20
TimToady every object carries a .HOW, which may or may not be unique, depending on whether you're doing prototype or class-based programming 16:21
default is class-based
but .HOW doesn't care
amnesiac I see 16:22
TimToady in terms of MO it only has to hand a responder interface
back
and the object doesn't care where the responder interface's methods happen to come from
fglock hmm - the problem with implementing STM in perl 5 is possibly related to finding side effects of BEGIN blocks 16:23
16:23 Jamtech joined 16:26 franck___ left, araujo joined 16:34 TJCRI joined 16:39 weinig joined
avar 14:55:20 * [particle] thinks kp6 needs a version number, a published roadmap, and proper cpan-ification 16:43
[particle]: I put it on cpan, granted it could be a lot better..
[particle] yep, good start :)
avar what more does it need? 16:44
[particle] portability
avar Wanna hack it?:)
fglock we have a roadmap 16:45
v6/docs/kp6-roadmap.pod
[particle] you should put the roadmap in the cpan distro
avar TODO: move docs/ to KindaPerl6::Doc
[particle] yeah 16:46
fglock avar: please do!
[particle] i can try to hack it
avar I've been doing so, slooowly:)
[particle]: please do:)
fglock [particle]: does Coro.pm works in windows?
[particle] where's Coro.pm, i can try?
fglock it's used in the current gather/take impl 16:47
16:47 chris2 left
fglock Coro from CPAN 16:47
[particle] okay, just updated v6 from the repo
fglock: check the build reports there
fglock you don't need v6
16:47 justatheory joined
fglock looking 16:47
avar [particle]: If you want to make it portable to windows just have it not write all the makefile stuff out if $^O eq 'Win32', it won't support building (development) but install will work 16:48
Aankhen`` avar: I'm going to give KP6-DISPATCH a required INTERPRETER parameter.
avar oh, and I think `make install' might be broken in general
fglock pass 2, fail 13
but it's a cool module
Aankhen`` avar: I trust that won't break anything?
(Obviously, I'll update all calls and so on.)
[particle] Coro has a lot of platform failures, just within linux 16:49
avar Aankhen``: Why does the lisp implementation need interpreter anyway?
Aankhen``: Won't break anything if you add it everywhere 16:50
Aankhen`` avar: Futureproofing.
avar threads?
Aankhen`` Aye.
An interpreter is a self-contained P6 world.
fglock it's possible to emulate what Coro does, but it takes a lot of work
16:51 justatheory left
fglock brb 16:52
Aankhen`` avar: I'm curious. Why convert everything to use KP6-DISPATCH? 16:53
16:54 andara left
avar Aankhen``: To match the p5 backend, and it makes the MOP stuff easier 17:05
Aankhen``: And to write the internals at the same level "user space" code is written in 17:06
Aankhen`` I still don't understand how it makes the MOP stuff easier, or how we're writing at the same level "user space" code is written at. 17:07
Are you planning to evaluate DEFMETHOD forms at runtime to define new user methods? 17:08
17:16 fglock left 17:17 GeJ_ joined
avar Aankhen``: Everything in p6 works on an object model where you ask the object for its string form, int form, whatever 17:19
pugs_svnbot r18418 | Aankhen++ | [kp6-lisp] 17:20
r18418 | Aankhen++ | * added INTERPRETER parameter to KP6-DISPATCH lambda list.
r18418 | Aankhen++ | * added INTERPRETER parameter to KP6-FOR-LOOP-STRUCTURE; also changed lambda list to group non-body forms within a list.
r18418 | Aankhen++ | * regenerated EmitLisp.pm
diff: dev.pugscode.org/changeset/18418
17:20 GeJ left
lambdabot Title: Changeset 18418 - Pugs - Trac 17:20
avar Aankhen``: Doing that via one dispatch protocol just seems easier
Aankhen``: same level = all the stuff returns p6 objects under MOP, and we explicitly ask the class for the CL version now
as opposed to kp6-true returning t or nil
so a p6 class with method true {} doesn't need any special handling on ::If or other stuff like that 17:21
Aankhen`` How do we handle multiple invocants? 17:22
Hmm, wait, I don't think that's around any more 17:23
.
kp6: (1, 2, 3, 4).map: -> $a { $a + 1 }
exp_evalbot r18418: OUTPUT[syntax error at position 0, line 1 column 0:␤(1, 2, 3, 4).map: -> $a { $a + 1 ␤^ HERE␤]
Aankhen`` Dang, can't remember the syntax.
kp6: [1, 2, 3, 4].map: -> $a { $a + 1 } 17:24
exp_evalbot r18418: OUTPUT[[ 2, 3, 4, 5 ]␤]
Aankhen`` Goodie.
avar Aankhen``: i was trying to get @a.map(sub { $_ ~ "meh" }) working earlier:) 17:26
that's (kp6-dispatch array :map ..)
17:26 Psyche^ joined, fglock joined 17:37 Patterner left, Psyche^ is now known as Patterner
pasteling "Aankhen" at 122.162.197.94 pasted "return (::Call.new(invocant =>" (3 lines, 177B) at sial.org/pbot/28019 17:38
Aankhen`` How do I fix that code so that KP6 accepts it?
At present I get a syntax error near ::Call.
Oh, I guess I mean MP6. This is for the emitter.
avar try breaking it down into smaller parts 17:39
and add more parens
Aankhen`` Do the individual parts look okay to you, though?
avar ::Call() not ::Call.new() ? 17:40
but otherwise yes
fglock avar: yes
it's an mp6ism
avar tell Aankhen`` :)
fglock thinks about fixing
pasteling "Aankhen" at 122.162.197.94 pasted "my $call = ::Call(invocant =>" (4 lines, 196B) at sial.org/pbot/28021 17:42
Aankhen`` That still gives me an error.
avar try := 17:43
Aankhen`` Err.
Hmm.
It keeps complaining about this: Call. 17:44
But that doesn't exist in the file.
(The "." is part of what it complains about.)
fglock Aankhen``: must use := instead of = 17:48
Aankhen`` I'm using that.
Still no go.
17:48 justatheory joined 17:50 TJCRI left
avar paste the patch 17:50
Aankhen`` You asked for it. :-) 17:55
pasteling "Aankhen" at 122.162.197.94 pasted "Index: src/KindaPerl6/Visitor/" (202 lines, 9.4K) at sial.org/pbot/28022 17:56
Aankhen`` Note that the KP6-CALL-FUNCTION is still not okay.
17:56 silug joined 18:00 xinming left, xinming joined 18:02 funktio left
fglock fixed - committing 18:05
moritz_ nqp: say("Hello"); 18:08
exp_evalbot OUTPUT[Hello␤]
pugs_svnbot r18419 | fglock++ | [mp6] implemented .new()
diff: dev.pugscode.org/changeset/18419
lambdabot Title: Changeset 18419 - Pugs - Trac
moritz_ ok, parrot compiled fine
18:16 IllvilJa left 18:38 jisom joined, cognominal_ left 18:39 TJCRI joined 18:46 cognominal_ joined 18:51 fglock left 19:02 cmarcelo_ joined 19:03 cmarcelo left, cmarcelo_ is now known as cmarcelo 19:12 daxim_ joined 19:19 weinig left 19:34 jisom left 19:43 Jamtech left 19:48 dduncan joined 19:49 Jamtech joined 19:50 weinig joined 20:01 barney left 20:04 weinig left, weinig_ joined 20:19 rindolf left 20:24 shoe joined 20:25 jjore-1 joined 20:28 [particle] left 20:36 fridim left 20:37 IllvilJa joined 20:40 jjore-w left 20:46 penk joined 20:47 thoughtpolice joined 20:53 fridim joined 20:57 TJCRI left 20:58 cmarcelo left 21:09 cognominal_ left 21:10 [particle] joined 21:21 fridim left 21:25 drupek12 joined 21:31 blindfish left 21:43 Jamtech left 21:49 vbattsAtWork left
pmurias exit 22:01
meant \/exit
22:01 pmurias left 22:05 lichtkind left 22:08 iblechbot left 22:13 IllvilJa left 22:18 amnesiac left, elmex left, Qiang left, _Helios left, Casan left, zostay left, _go_ left, onebadoze left, drbean left, aindilis left, wilx left, buubot left, melissa left, shachaf left, jeremyb left, lisppaste3 left, theorb left, f0rth left, pjcj_ left, cj left, turrepurre left, r0bby left, Aankhen`` left, takanori left, felipe left, mncharity left, szbalint left, jjore-1 left, Lunchy_ left, audreyt left, Eidolos left, penk left, daxim_ left, GeJ_ left, araujo left, ofer left, rfordinal_ left, marmic left, arcady left, ajs left, kolibrie left, gugod left, drupek12 left, [particle] left, dduncan left, Patterner left, zamolxes left, kcwu left, Daveman left, diakopter left, nelhage left, hcchien left, TreyHarris left, mtve left, LCamel left, thoughtpolice left, justatheory left, vel left, exp_evalbot left, mr_ank left, awwaiid left, nipra_ left, nothingmuch left, yahooooo left, Tene left, jiing left, silug left, pnu left, devogon left, nekokak left, Khisanth left, moritz_ left, statico left, nnunley_ left, buu left, obra left 22:19 TimToady joined, gugod joined, kolibrie joined, ajs joined, cls_bsd joined, SubStack joined, dalek joined, baest joined, arcady joined, marmic joined, rfordinal_ joined, ofer joined, araujo joined, GeJ_ joined, daxim_ joined, penk joined, yahooooo joined, Tene joined, jiing joined, jBoofy joined, ft joined, bloonix joined, nothingmuch joined, nipra_ joined, awwaiid joined, mr_ank joined, exp_evalbot joined, vel joined, justatheory joined, thoughtpolice joined, buu joined, nnunley_ joined, statico joined, obra joined, moritz_ joined, SamB joined, Caelum joined, Juerd joined, Khisanth joined, nekokak joined, devogon joined, pnu joined, silug joined, mtve joined, TreyHarris joined, LCamel joined, hcchien joined, nelhage joined, orafu joined, pugs_svnbot joined, ingy joined, irc.freenode.net sets mode: +o TimToady, broquaint joined, sri_ joined, avar joined, diotalevi joined, diakopter joined, Daveman joined, kcwu joined, zamolxes joined, Patterner joined, dduncan joined, [particle] joined, drupek12 joined, wilx joined, buubot joined, melissa joined, shachaf joined, jeremyb joined, lisppaste3 joined, idiotmax joined, PerlJam joined, wolverian joined, dvorak joined, thepler joined, shmem joined, beppu joined, perlbot joined, jjore-1 joined, Lunchy_ joined, audreyt joined, CindyLinz joined, rafl joined, pravus joined, lumi joined, arguile joined, jrockway joined, Eidolos joined, amnesiac joined, elmex joined, Qiang joined, _Helios joined, Casan joined, zostay joined, _go_ joined, onebadoze joined, drbean joined, aindilis joined, lambdabot joined, test joined, sunnavy joined, charsbr joined, agentzh joined, qmole joined, vsmatck joined, lidden joined, platypus joined, ruz joined, Maddingue joined, allbery_b joined, liffey joined, clkao joined, jql joined, nipotaway joined 22:20 turrepurre joined, r0bby joined, theorb joined, takanori joined, felipe joined, f0rth joined, pjcj_ joined, mncharity joined, Gothmog_ joined, Grrrr joined, ting joined, meppl joined, cerridwen joined, knewt joined, rhr joined, jernster joined, tcliou joined, szbalint joined, cj joined, ChanServ sets mode: -o TimToady 22:24 amnesiac left 22:27 Limbic_Region joined, garulfounix joined, garulfounix left 22:35 [particle] left 22:37 REPLeffect_ joined 22:38 arrowax joined 22:44 [particle] joined 22:48 REPLeffect_ is now known as REPLeffect 23:31 REPLeffect left 23:33 xinming_ joined 23:34 xinming left 23:39 arrowax left 23:47 justatheory left 23:51 thoughtpolice left