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. |
|||
00:00
BinGOs left
00:03
icwiener_ joined
00:04
__Ace__ left
|
|||
cj | which implementation is most complete at this point? :) | 00:16 | |
is mp6 kp6+1? | |||
oh, looks like kp6 is mp6+1 | 00:19 | ||
mncharity | kp6>mp6, yes | 00:20 | |
re "probably means that mp6 is doing some things in Perl 5 that Perl 5 itself would do in C instead", for the 7x, indeed. | 00:26 | ||
for why fib-from-mp6 is 100x faster than fib-from-kp6/fake-ruby, but kp6-from-mp6/p5 doesn't seem screamingly fast... perhaps its that the fib on mp6 doesn't use any oo, unlike kp6-from-mp6. | 00:28 | ||
TimToady | .oO(confused) |
00:30 | |
meppl | good night | 00:34 | |
00:35
aindilis` joined
00:42
aindilis left
01:00
aindilis` left
01:01
tjp joined
|
|||
mncharity | re confused, mp6's running of fib is wizzy. mp6's running of kp6 itself is ok. kp6/p5's running of kp6 is said to be glacial. kp6/rb's running of fib is ok. kp6/p5's running of fib is rather slow. so the question is, if kp6/rb's fib is merely ok to mp6's fib wizziness, is there any hope for kp6/rb's kp6 being at least ok? let alone any hope of kp6/rb's kp6 being non-glacial? | 01:03 | |
The hope for kp6/rb's kp6 being at least ok, that is, running no slower than script/kp6 does at present, would have to lie in the mp6 performance on fib being non-representative of its overall performance on kp6. eg, but its not using any p5 oo. | 01:06 | ||
01:06
cnhackTNT joined
|
|||
mncharity | The hope for kp6/rb's kp6 being non-glacial, that is, that a bootstrapped kp6 on a ruby backend is usable, which is the objective of this exercise, lies in the ruby runtime being closer in performance to the mp6 runtime than to the kp6/p5 runtime. | 01:08 | |
01:09
icwiener_ left
01:11
cmarcelo left
|
|||
mncharity | After fiddling briefly, it doesn't look like there are any low-hanging (easy and >=10x) optimizations on the calling convention. While the microbench doesn't confirm we can win, nor did it motivate any interesting optimizations, but at least it leaves winning as a possibility. given the existence proof of redsix, it still seems plausible. So I'm just going to putter ahead with the backend, and we'll see how it all falls out. | 01:13 | |
01:23
cnhackTNT left
01:25
jferrero joined
01:27
dalek joined
|
|||
pugs_svn | r19633 | putter++ | [kp6] ruby backend: wrapup fib() microbenchmark exercise. | 01:35 | |
r19633 | putter++ | Nice to have some numbers. Draft calling convention looks at least | |||
r19633 | putter++ | vaguely plausible. Results were too uncertain to do a performance | |||
r19633 | putter++ | projection. Moved code to a new docs/ruby_backend/Journal.txt. | |||
r19633 | putter++ | Timing a mp6 fib() implemented as a method, rather than a sub, might | |||
r19633 | putter++ | be interesting. | |||
01:37
stevan__ joined
01:39
devogon_ left
01:41
lyokato_ joined
|
|||
pugs_svn | r19634 | lwall++ | Added t/spec/README | 01:42 | |
TimToady | well, could be a good prototype for a Smalltalk backend in any case. :) | 01:44 | |
mncharity | :) | ||
01:46
cnhackTNT joined
|
|||
pasteling | "mncharity" at 24.62.4.94 pasted "kp6: perl Makefile.PL: missing compiled/perl5-kp6-mp6/lib/PAST.pm error" (22 lines, 983B) at sial.org/pbot/29989 | 01:52 | |
mncharity | bbl(?) & | 01:54 | |
btw, that pasted error was just an fyi. a "things didn't build cleanly out of the box" bug report. I suspect PAST.pm needs to be put under revision control, but am unsure. | 01:56 | ||
TimToady | I hope the question mark doesn't indicate you're planning to play Russian Roulette... | 01:57 | |
mncharity | ^.^ no, just dinner | 01:58 | |
pugs_svn | r19635 | tjp++ | Fixed typos in docs/Perl6/Overview.pod | 01:59 | |
TimToady | I hope your survival of dinner has better odds than 5/6 | 02:00 | |
Juerd initially read 5/6 as Perl 5 / Perl 6, and tried to figure out what it meant. | 02:09 | ||
Then I realised the relevance to the russian roulette reference :) | |||
02:12
tjp left
|
|||
TimToady | freeway and dinner & # probably less than 5/6 odds on the freeway... | 02:15 | |
02:20
Schwern joined
02:28
whooosh joined,
whooosh left
02:35
bwisti_ left
02:39
cnhackTNT left
02:50
cnhackTNT joined
02:53
schemacs joined,
schemacs left
03:01
Limbic_Region joined
03:19
cnhackTNT left
03:21
abbyz left
03:25
abbyz joined,
Limbic_Region left
03:35
jferrero left
03:37
kanru joined
03:46
jjore joined
03:53
gbacon joined
04:00
cnhackTNT joined
04:04
aindilis joined
04:10
aindilis left
|
|||
mncharity | TimToady: ah, comprendo. I was thinking bbl *this evening*. :) | 04:16 | |
04:43
Schwern left
05:17
stevan__ left,
stevan_ joined
05:42
alc joined
05:44
aindilis joined
05:52
r0bby joined
06:05
mncharity left
06:14
Khisanth joined
06:31
f0rth joined
06:32
Khisanth left,
Khisanth joined
06:37
f0rth_ joined
06:40
f0rth left
06:45
Khisanth left
06:52
Khisanth joined
07:13
pen1 joined
07:24
devogon joined
07:33
Khisanth left
07:54
BinGOs joined
08:05
Khisanth joined
08:22
Khisanth left
08:23
Khisanth joined
08:28
cosimo joined
08:30
chris2 joined
08:35
Schwern joined
08:38
meteorjay joined
08:42
BinGOs left,
iblechbot joined
08:46
BinGOs joined
08:51
mattz joined
08:59
Khisanth left
09:00
Khisanth joined
09:06
braceta joined
09:07
njbartlett left
09:16
pen1 left,
Khisanth left
09:19
DarkWolf84 left
09:26
Khisanth joined
09:30
pmurias joined
|
|||
pmurias | @tell mncharity the rules engine in mp6 is the part which makes kp6 on mp6 run slow | 09:31 | |
lambdabot | Consider it noted. | ||
09:37
Schwern left,
masak joined
09:39
braceta left
09:42
braceta joined
09:43
devogon left
09:45
Khisanth left
09:47
Khisanth joined
09:59
njbartlett joined
10:03
Khisanth left
10:06
alc left,
ruoso joined
10:11
pmurias left
10:17
Khisanth joined
10:34
Khisanth left
10:43
cnhackTNT left
10:45
njbartlett left
10:46
cspencer joined
11:00
njbartlett joined
11:08
cspencer left,
Khisanth joined
11:10
njbartlett left
11:11
meppuru joined
11:19
macae joined
11:25
nothingmuch joined
11:26
iblechbot left,
Khisanth left
11:41
shlomif joined
11:44
njbartlett joined,
lyokato_ left
11:46
Khisanth joined
11:52
pcbuetow is now known as pbuetow
11:58
shlomif is now known as rindolf
12:01
zamolxes joined
12:07
kanru left
12:13
rindolf left
12:17
Khisanth left
12:18
Khisanth joined,
Aankhen`` joined
12:23
kanru joined
|
|||
ruoso realises that he needs the bool type very early... | 12:23 | ||
ruoso also realises that native bool true and false can also be imortal values | 12:27 | ||
masak | ruoso: immortal? what does that mean in this context? | 12:28 | |
immutable? | |||
ruoso | nope... means not subject to garbage collection | ||
masak | ah | ||
ruoso | that means that I can count on them being there in the C level without any checking | ||
masak | yes | ||
sounds reasonable | |||
12:34
Khisanth left
|
|||
pugs_svn | r19636 | ruoso++ | [smop] test/06_native_bool.c -- starting to declare the native bool type. | 12:34 | |
12:36
devogon joined
12:37
Lorn joined
|
|||
pugs_svn | r19637 | ruoso++ | [smop] src/native_bool.c -- native bool lowlevel calls implemented. | 12:52 | |
r19638 | ruoso++ | [somp] $frame.has_next() implemented. | 12:59 | ||
12:59
jferrero joined
13:00
cmarcelo joined
|
|||
ruoso | lunch & | 13:05 | |
13:08
meppel-san joined
13:10
meppuru left
13:20
macae left
13:23
iblechbot joined,
njbartlett left
13:33
[particle1 left
|
|||
obra | seen fglock | 13:34 | |
@fglock, ping me when you're around | |||
moritz_ | no lambdabot, no joy! | ||
13:37
mattz left
13:38
mattz joined,
lisppaste3 joined
13:47
ebassi joined,
rindolf joined
13:50
cosimo left
14:04
realsri joined
14:06
realsri left,
realsri joined
14:08
realsri left
14:09
zf8 joined
14:10
sri_work joined
14:21
sri_work left,
sri_work joined
14:28
manfred_ joined
14:33
[particle] joined
14:49
chris2 left,
zf8 left
14:51
kanru left,
[particle1 joined
14:54
devogon left,
masak left
14:56
masak joined
15:06
njbartlett joined
15:07
TJCRI joined
15:08
zf8 joined,
[particle] left
15:20
zf8 is now known as zf8|away
|
|||
zf8|away is away: zZzZz... | 15:21 | ||
15:24
devogon joined
15:25
njbartlett left
15:28
njbartlett joined
15:34
njbartlett left,
njbartlett joined
15:51
jhorwitz joined
15:54
rindolf left,
blindfish joined
15:56
iblechbot_ joined
15:57
Schwern joined
15:58
baest_ joined
|
|||
ruoso | later & | 15:58 | |
15:58
ruoso left
16:06
meppel-san left,
iblechbot left
16:08
kanru joined,
meppel-san joined
16:13
fglock joined
16:22
lambdabot joined
|
|||
TimToady | fglock: obra was looking for you earlier | 16:40 | |
obra | fglock: hello! | 16:41 | |
lambdabot | obra: You have 1 new message. '/msg lambdabot @messages' to read it. | ||
obra | lambdabot, hello! ;) | ||
16:42
ebassi left
16:45
TJCRI left
16:47
ebassi joined
16:49
rdice joined
16:53
ispy1 joined
16:55
jferrero left
17:03
ispy1 is now known as ispy_
|
|||
fglock | obra: sorry, I'm fixing something here | 17:03 | |
17:04
DarkWolf84 joined
|
|||
obra | fglock: no worries | 17:05 | |
ping when you're free | |||
17:06
alester joined
|
|||
rhr_ | how does a p6 pragmatic module process the arglist passed to use? e.g. use nf 'c'; doesn't want to import a sub named c... | 17:09 | |
TimToady | it's just a Capture, like any other arglist | 17:10 | |
17:11
icwiener joined
|
|||
TimToady | and can be bound to a Signature, or dispatched over multiple signatures | 17:11 | |
we haven't actually specified the export mechanism in detail, only the tag declarations | |||
but probably something like "sub EXPORTER (*@_, *%_)" would be typical, give or take | 17:12 | ||
rhr_ | OK, I'll use that for now, thanks | 17:13 | |
TimToady | so it would just be the standard exporter that interprets 'c' as a name and puts it into COMPILING:: | ||
17:18
njbartlett left
17:20
Jamtech joined
17:28
[particle1 left
17:29
[particle] joined
17:33
zf8|away is now known as zf8
|
|||
zf8 is back (gone 02:12:18) | 17:34 | ||
17:34
qmole joined,
falesca joined
17:38
barney joined
17:41
macae joined,
macae left,
jjore left
17:50
manfred_ left
17:53
IllvilJa left
17:56
TJCRI joined
18:08
jjore joined
18:11
IllvilJa joined
|
|||
pugs_svn | r19639 | lwall++ | Clarification suggested by jgottman++ | 18:17 | |
18:24
falesca left
18:25
jjore left
18:27
jjore joined
18:30
ebassi left
18:38
jjore-w joined
18:49
icwiener left
18:52
icwiener joined
18:58
ruoso joined
18:59
zf8 left
19:02
mattz left,
mattz joined
19:05
zamolxes left
19:06
meppel-san is now known as meppl,
jferrero joined
19:16
fglock left
19:17
mattz left,
mattz joined
19:18
masak left
19:25
mattz left,
mattz joined
19:27
Aankhen`` left,
mattz left
19:28
mattz joined
|
|||
pugs_svn | r19640 | ruoso++ | [smop] SMOP__SLIME__Frame first implementation almost ready... | 19:39 | |
r19641 | ruoso++ | [smop] small fix in SMOP__SLIME__Frame | 19:40 | ||
19:41
mattz left,
mattz joined
|
|||
ruoso | anyone wondering how a low-level SMOP implementation looks like can have a shiny example at src/smop_slime_frame.c | 19:44 | |
19:47
mattz left
19:52
barney left
|
|||
pugs_svn | r19642 | lwall++ | [fudge] implement #?DOES | 20:01 | |
r19642 | lwall++ | [fudge] : now optional | |||
wolverian | fudge? :o | ||
20:03
[particle1 joined
20:07
[particle2 joined
20:10
jjore-w left
20:12
mncharity joined
|
|||
pugs_svn | r19643 | putter++ | [kp6] compiled/perl5-kp6-mp6/lib/PAST.pm: added to svn. | 20:18 | |
r19643 | putter++ | perl Makefile.PL complains about it's absence, and make kp6_mp6 creates it. | |||
r19644 | putter++ | [kp6] compiled/perl5-kp6-mp6/lib/Test.pm: sync - it was out of date. | 20:19 | ||
20:19
[particle] left
20:20
ispy_ left
|
|||
pugs_svn | r19645 | putter++ | [kp6] Emit/Ruby.pm: first cut at emitting a new calling convention for subs. | 20:20 | |
[particle2 | alester: TimToady++ recently committed t/spec/README, which has good info on the perl 6 test suite. i suggest a perlbuzz article. | ||
20:20
[particle2 is now known as [particle]
|
|||
alester | [particle]: Go on. | 20:21 | |
[particle] | he basically wrote the journal post i've been off-and-on playing with | 20:22 | |
(in that README) | |||
you want me to write up a paragraph about it, with a link, and email it to you? | |||
pugs_svn | r19646 | lwall++ | [fudge] Didn't do #?DOES on subs right | 20:23 | |
20:25
[particle1 left
|
|||
pugs_svn | r19647 | lwall++ | [fudge] Clarify meaning of statement in README | 20:26 | |
20:29
polettix joined
|
|||
pugs_svn | r19648 | putter++ | [kp6] docs/ruby_backend.txt: update calling convention and todo. | 20:36 | |
20:38
pflanze joined
20:42
pmurias joined
20:43
ludan joined
20:49
thoughtpolice joined
20:52
DarkWolf84 left
20:55
DarkWolf84 joined
20:58
riffraff joined
|
|||
pugs_svn | r19649 | lwall++ | [fudge] more sub counting tweaks | 20:58 | |
r19649 | lwall++ | *.t removed colon from #? lines | |||
TimToady | @tell cosimo you don't have to use colons any more on #?pugs | 21:00 | |
lambdabot | Consider it noted. | ||
mncharity | would you believe f(a\n ,b) is a ruby parse error? ie, comma at beginning of line, rather than end, even inside parens. sigh. | ||
pmurias | :( | 21:01 | |
21:04
xinming joined
|
|||
pmurias | mncharity: in order to have good kp6-on-ruby performance you might be eventualy forced to write a regex engine which emits ruby directly (instead of using Token) | 21:05 | |
mncharity | the pragmatics school of language design. examples: bison can't handle it, so language feature x can't spelled in the obvious way. we don't have an extra flag bit available, so no object other than nil/false can evaluate as false in an if statement. sigh. the shoemaker has a sideline in stained glass, and leaves glass shards all over the floor. | 21:06 | |
re regex, right. it was thinking perl5rx backend mixin might have to be translated. rubyrx. any thoughts? | 21:09 | ||
(i'm unfamiliar with Token) | |||
21:12
chris2 joined
|
|||
pmurias | mncharity: Token is a implementation agnostic regex engine (it translates perl6 rules to imperative perl6 code) | 21:17 | |
21:17
Schwern left
|
|||
pmurias | mncharity: so you can use it untill you need the speedup | 21:17 | |
mncharity | great. thanks. | 21:19 | |
pmurias | is it possible to discover what side-effects an execution of a ruby block had? | ||
(which variables where modified) | |||
mncharity ponders... | 21:22 | ||
the short answer is yes | |||
a variable, $x, is just a container. s_x = Scalar.new; s_x._(3); | 21:23 | ||
so the Scalar could do logging. but at present, that _() is a method on containers, so doing something like a mop which permitted say lexically overriding assignment with something that say()ed "hey! there was an assignment!" would require compiler cooperation. | 21:25 | ||
what's the objective? | |||
moritz_ | BEGIN blocks, I guess | 21:26 | |
mncharity | ah, ok | ||
21:28
zamolxes joined
|
|||
pmurias | mncharity: i think it is possible to do that with a visitor (so no need to worry about this now) | 21:29 | |
mncharity | the right thing is perhaps to notice at compile time whether infix:= has been overridden, and emit an actual call to it. currently the kp6 emitter doesn't seem to pass along a bucket of state, so one might have to do a Visitor to spread around the info. | 21:31 | |
21:34
ludan left
|
|||
pmurias | mncharity: not sure ;) | 21:34 | |
21:35
pmurias left
|
|||
mncharity | bbl | 21:38 | |
21:39
Schwern joined
|
|||
Lorn | 12 | 21:49 | |
21:57
Limbic_Region joined
21:58
ludan joined
22:05
jhorwitz left
22:08
mncharity left
22:23
cmarcelo left
22:27
Lorn left
22:29
njbartlett joined
22:30
polettix left
22:31
rdice left,
cognominal_ joined
22:37
TJCRI left,
thoughtpolice left
|
|||
meppl | good night | 22:44 | |
22:46
meppl left
22:53
iblechbot_ left
22:58
mncharity joined
23:06
blindfish left
23:12
polettix joined
23:14
jferrero left
23:42
Jamtech left
|