pugscode.org/ | nopaste: sial.org/pbot/perl6 | pugs: [~] <m oo se> (or rakudo:, kp6:, smop: etc.) || We do Haskell, too | > reverse . show $ foldl1 (*) [1..4] | irclog: irc.pugscode.org/ Set by TimToady on 25 January 2008. |
|||
00:06
grtnam1 joined
00:10
_Chillance_ left
00:34
kanru left
|
|||
rakudo_svn | r28657 | coke++ | RT#56076 ([PATCH] MACOSX_DEPLOYMENT_TARGET not defined during OSX PPC Rakudo build) | 00:36 | |
r28657 | coke++ | | |||
r28657 | coke++ | This adds (proactively, in some cases) the MACOSX_DEPLOYMENT_TARGET env. var | |||
r28657 | coke++ | to the various languge builds; we've found this to be required on OSX with | |||
r28657 | coke++ | the current code base. | |||
r28657 | coke++ | | |||
r28657 | coke++ | Patch courtesy Packy Anderson (packy++ at dardan dot com) | |||
r28658 | jkeenan++ | Correct POD formatting errors. | 00:39 | ||
00:39
cmarcelo left
00:41
JoshuaTree left
00:44
JoshuaTree joined
00:50
Limbic_Region left
01:00
jjore left
01:02
polettix left
01:39
deq` left
01:40
alanhaggai left
01:41
penk joined
01:49
ting joined,
ting left
01:54
eternaleye_ left,
eternaleye_ joined,
justatheory joined
01:59
JoshuaTree left
02:00
JoshuaK joined,
JoshuaK is now known as JoshuaPK,
JoshuaPK left
02:09
GeJ joined
02:22
explorer left
02:30
cjfields joined
02:32
eternaleye joined
|
|||
cjfields | pugs: say 'ABC'.trans('A-Z' => 'a-z'); | 02:34 | |
p6eval | OUTPUT[aBC] | ||
diakopter | ran some load tests on the packrat parser | ||
:( it's still broken | 02:35 | ||
disabling it for now... as with the opp, it won't need left recursive rules | |||
without it enabled, parse times are n**2+n+3, where n is 50 statements | 02:36 | ||
02:38
eternaleye_ left
|
|||
cjfields | pugs: say "\b\n".trans('\b' => 'A', '\n' => 'B'); | 02:39 | |
p6eval | OUTPUT[AB] | ||
cjfields | oi... | ||
pugs: say "\b\n".trans("\b" => 'A', "\n" => 'B'); | 02:40 | ||
p6eval | OUTPUT[A] | ||
cjfields | oi oi oi... | ||
02:45
justatheory left,
Eevee joined
|
|||
cjfields | pugs: say "\b\n\n".trans("\b" => 'A', "\n" => 'B'); | 02:51 | |
p6eval | OUTPUT[A] | ||
cjfields | pugs: print "\b\n".trans("\b" => 'A', "\n" => 'B'); | ||
p6eval | OUTPUT[A] | ||
diakopter | so it stringifies the key in qq | 02:52 | |
02:53
a-jing joined,
a-jing left
02:56
cjfields left
03:03
justatheory joined
03:05
elmex_ joined
03:19
elmex left,
grtnam1 left,
elmex_ is now known as elmex
03:28
cjfields joined
|
|||
cjfields | back | 03:43 | |
diakopter: 'so it stringifies the key in qq'; well, pugs does so only partially (works with /b,leaves out /n). However, it interprets escaped chars in qw (single quotes) as if they are qq. | 03:45 | ||
so it's a mixed bag, really, but I'm not expecting the correct answer from pugs... | 03:46 | ||
just a close to correct one! | |||
speaking of pugs, nice to see a renewed effort to get it running again using the latest ghc | 03:51 | ||
03:59
eternaleye left,
eternaleye joined
04:03
eternaleye_ joined
04:04
sri_work joined,
eternaleye left,
eternaleye_ is now known as eternaleye
04:27
cjfields left
05:06
eternaleye left
05:14
Psyche^ joined
05:26
Patterner left,
Psyche^ is now known as Patterner
|
|||
scrottie | "speaking of pugs, nice to see a renewed effort to get it running again using the latest ghc" -- yay! | 05:39 | |
05:57
wknight8111 left
06:00
BinGOs_ is now known as BinGOs
|
|||
diakopter | scrottie: see the updated INSTALL file | 06:03 | |
it works | 06:04 | ||
diakopter amending my previous performance statements | |||
fixed the packratness; got rid of a bunch of WRONG premature optimization... and then did some other kinds of RIGHT premature optimization | |||
regression line for time vs input is 0.09n**2+0.9n+0.1 | 06:05 | ||
so, a slight polynomial term but dominated by linear. | 06:06 | ||
so, 1200 chars in 12 seconds. now it's only 1/20 the speed of STD5 | 06:10 | ||
06:12
apeiron left
06:13
Jedai joined
06:26
apeiron joined
06:38
eternaleye joined
06:53
alester left
06:58
iblechbot joined
07:02
polettix joined
|
|||
pugs_svnbot | r20968 | diakopter++ | [yap6] | 07:05 | |
r20968 | diakopter++ | * LOTS of performanc improvements; it's actually usable, barely. | |||
07:23
cosimo joined
|
|||
pugs_svnbot | r20969 | moritz++ | [spec] finer graded fudging of complex.t | 07:23 | |
bacek_ | moritz_: its actually bug in Test.pm | 07:29 | |
in 'approx' | |||
moritz_ | bacek_: how so? | ||
bacek_ | abs($x-$y) | ||
moritz_ | and no abs(Complex) multi? | 07:30 | |
bacek_ | yes | ||
moritz_ | frome the mathematical POW it looks fine | ||
bacek_ | perl6: say cis(3*pi/2) | ||
p6eval | kp6 r20969: OUTPUT[no method 'APPLY' in Class 'Undef' at compiled/perl5-kp6-mp6/lib/KindaPerl6/Runtime/Perl5/MOP.pm line 345 | ||
..pugs: OUTPUT[*** No such subroutine: "&cis" at /tmp/T6jpJZSr7l line 1, column 5 - line 2, column 1] | |||
..rakudo r28667: OUTPUT[-1.83691e-16-1i] | |||
..elf r20969: OUTPUT[Undefined subroutine &GLOBAL::pi called at (eval 119) line 3. at ./elf_f line 3854] | |||
bacek_ | he. Looks like rakudo right about result. | 07:31 | |
So its just test wrong. It should be -1i | |||
moritz_ | aye | 07:32 | |
bacek_: are you going to fix it? | 07:34 | ||
07:35
Jedai left
|
|||
moritz_ | pmichaud: btw as long as method fallback is still active, rand($Num) is valid syntax (as fallback for $Num.rand) | 07:36 | |
bacek_ | moritz_: no... I'm not 100% sure... | 07:38 | |
moritz_ | bacek_: but I am ;) | 07:39 | |
bacek_ | perl6: my $arg = 3*pi/2; say cis($arg); say cos($arg) + 1i*sin($arg) | ||
p6eval | kp6 r20969: OUTPUT[no method 'APPLY' in Class 'Undef' at compiled/perl5-kp6-mp6/lib/KindaPerl6/Runtime/Perl5/MOP.pm line 345 | ||
..pugs: OUTPUT[*** No such subroutine: "&cis" at /tmp/e8ObffV8hK line 1, column 23-32] | |||
..rakudo r28667: OUTPUT[-1.83691e-16-1i-1.83691e-16-1i] | |||
..elf r20969: OUTPUT[Undefined subroutine &GLOBAL::pi called at (eval 127) line 3. at ./elf_f line 3854] | |||
moritz_ | and I'm the one who broke it in the first place ;) | ||
bacek_ | moritz_: yeap. test is wrong | 07:40 | |
rakudo: say -1i | |||
p6eval | rakudo r28667 OUTPUT[-1] | ||
bacek_ | but we can't unfudge it yet :) | ||
moritz_ | yes, it's missing the prefix:<-> | 07:41 | |
which you've submitted a patch for iirc | |||
bacek_ | #56540 iirc :) | ||
moritz_ doesn't remeber ticket numbers ;) | 07:42 | ||
bacek_ | #56230. Just checked my inbox :) | ||
pugs_svnbot | r20970 | bacek++ | [spec] Fix test and fudge reason in complex.t | 07:44 | |
bacek_ steal little bit of karma from moritz | |||
moritz_ | you can have all of my #perl6 karma if you implement perl 6 for me ;) | 07:45 | |
bacek_ | moritz_: in progress :) | ||
moritz_ | I know ;) | 07:46 | |
bacek_ | r28610... There is Num.unpolar already... | ||
rakudo: say 1.unploar(1i) | 07:47 | ||
p6eval | rakudo r28667 OUTPUT[Method 'unploar' not found for invocant of class 'Int'current instr.: '_block11' pc 49 (EVAL_13:20) | ||
bacek_ | rakudo: say 1.unpolar(1) | 07:48 | |
p6eval | rakudo r28667 OUTPUT[Method 'unpolar' not found for invocant of class 'Int'current instr.: '_block11' pc 38 (EVAL_13:19) | ||
moritz_ | rakudo: say (1.1).unpolar(1) | ||
p6eval | rakudo r28667 OUTPUT[0.594333+0.925618i] | ||
bacek_ | yak... Its Int ot Num promotion problem | ||
rakudo: say 1.0.unpolar(2) | 07:49 | ||
p6eval | rakudo r28667 OUTPUT[-0.416147+0.909297i] | ||
moritz_ woders if Num shouldn't just be a role that all numeric types do | |||
bacek_ | moritz_: +1. | ||
Why you calculate $angle in complex.t? | |||
moritz_ | I was too lazy to write 110 tests manually | 07:50 | |
sigh, why do some of my pages don't display correctly in FF3? | 07:52 | ||
bacek_ | but $angle not used... | 07:54 | |
moritz_ | in the first block, yes | ||
that's not intentional | |||
bacek_ | You steal my cpu-cicles!!! :) | 07:56 | |
moritz_ | bacek_: but only to prevent you from sending more spam (/me ducks) | 07:57 | |
;-) | |||
bacek_ | but my spam contains patches for rakudo! | 07:58 | |
ok. time to go home. See you in couple of hours. | |||
07:58
bacek_ left
|
|||
moritz_ | ciao | 07:58 | |
08:07
sri_work left,
sri_work joined
08:08
sri_work left,
sri_work joined
08:10
sri_work left
08:11
sri_work joined,
sri_work left
08:12
sri_work joined
08:15
luqui joined
08:19
bsb joined
08:22
masak joined,
masak left
08:34
masak joined
08:35
meppl joined
08:58
drbean left
09:02
xinming joined
09:10
jfredett left
09:12
jfredett joined
09:16
xinming_ left
|
|||
moritz_ | rakudo: say pi / 2 | 09:31 | |
p6eval | rakudo r28667 OUTPUT[1.5708] | ||
09:41
drbean joined
09:55
Jedai joined
|
|||
moritz_ | bacek++ # bringing my attention to uc.t | 10:20 | |
pugs_svnbot | r20971 | moritz++ | [spec] S29-str/uc.t | ||
r20971 | moritz++ | * comment one test that is likely to be out of date | |||
r20971 | moritz++ | (wrt newer Unicode versions) | |||
r20971 | moritz++ | * improved fudging - now ready for inclusion in spectest_regression | |||
moritz_ | uhm, why did I think it's ready for spectest_regression? still reports number of tests wrongly | 10:21 | |
pugs_svnbot | r20972 | moritz++ | [spec] S29-uc.t: fixed test count in fudged output | 10:26 | |
10:34
meppl left
10:38
polettix left
11:07
ilbot2 left,
yves left,
rafl left,
Lunchy left,
Jedai left,
drbean left,
bsb left,
luqui left,
eternaleye left,
aindilis left,
s1n left,
Grrrr left,
japhb left,
pjcj left,
sri_work left,
buubot left,
diakopter left,
wolverian left,
TimToady left,
cls_bsd left,
lambdabot left,
GeJ left,
p6eval left,
yahooooo2 left,
lumi left,
SamB left,
masak left,
iblechbot left,
Eevee left,
penk left,
r0bby left,
agentzh left,
stevan_ left,
fullermd left,
qmole_ left,
kolibrie left,
ingy left,
pmichaud left,
charsbar left,
mj41 left,
simcop2387 left,
xinming left,
apeiron left,
elmex left,
justatheory left,
Coleoid left,
jan__ left,
Khisanth left,
pugs_svnbot left,
dmq left,
mofino left,
jiing left,
dalek left,
Caelum left,
hcchien left,
buu left,
zostay left,
fridim left,
audreyt left,
perlbot left,
BinGOs left,
funktio left,
jfredett left,
Gothmog_ left,
cognominal_ left,
yath left,
Ara4n left,
nnunley left,
Juerd left,
Ingmar left,
lisppaste3 left,
revdiablo left,
felipe left,
cosimo left,
ruoso left,
rakudo_svn left,
arguile left,
Maghnus left,
silug left,
SubStack left,
awwaiid left,
PerlJam left,
osfameron left,
allbery_b left,
Maddingue left,
pasteling left,
Patterner left,
araujo left,
Tene left,
smtms left,
rhr_ left,
kane_ left,
broquaint left,
kcwu left,
Southen_ left,
pengrate left,
cj left,
avar left,
mtve left,
gugod left,
bacek left,
vixey left,
speckbot left,
beppu left,
nothingmuch left,
Kattana left,
spinclad left,
moritz_ left,
Auzon left,
jrockway left,
TreyHarris left,
IRSeekBot left,
obra left,
clkao left,
cookys left,
nipotaway left
11:09
jfredett joined,
xinming joined,
apeiron joined,
elmex joined,
justatheory joined,
BinGOs joined,
Gothmog_ joined,
Coleoid joined,
simcop2387 joined,
funktio joined,
jan__ joined,
cognominal_ joined,
Khisanth joined,
fridim joined,
hcchien joined,
revdiablo joined,
Ara4n joined,
felipe joined,
dmq joined,
perlbot joined,
pugs_svnbot joined,
mofino joined,
dalek joined,
Caelum joined,
jiing joined,
Ingmar joined,
Juerd joined,
buu joined,
audreyt joined,
nnunley joined,
lisppaste3 joined,
yath joined,
zostay joined,
GeJ joined,
p6eval joined,
yahooooo2 joined,
SamB joined,
lumi joined,
smtms joined,
jrockway joined,
obra joined,
broquaint joined
11:10
nothingmuch joined
11:12
broquaint left,
Patterner joined,
bacek joined,
Tene joined,
vixey joined,
Auzon joined,
Southen_ joined,
pengrate joined,
Kattana joined,
TreyHarris joined,
gugod joined,
spinclad joined,
rhr_ joined,
cj joined,
kane_ joined,
broquaint joined,
avar joined,
moritz_ joined,
nipotaway joined,
mtve joined,
spinclad left,
rhr_ left,
Patterner left,
Tene_ joined,
gugod left
11:13
Lunchy joined,
rafl joined,
ilbot2 joined,
yves joined,
TimToady joined,
Patterner joined,
sri_work joined,
buubot joined,
lambdabot joined,
wolverian joined,
diakopter joined,
cls_bsd joined,
irc.freenode.net sets mode: +o TimToady,
broquaint left,
moritz_ left,
ingy joined,
cookys joined,
Southen joined,
masak joined,
iblechbot joined,
Eevee joined,
penk joined,
r0bby joined,
agentzh joined,
stevan_ joined,
mj41 joined,
kolibrie joined,
fullermd joined,
qmole_ joined,
pmichaud joined,
charsbar joined,
irc.freenode.net sets mode: +o ingy,
gugod joined,
cosimo joined,
ruoso joined,
Maghnus joined,
SubStack joined,
silug joined,
pasteling joined,
PerlJam joined,
osfameron joined,
awwaiid joined,
rakudo_svn joined,
allbery_b joined,
Maddingue joined,
arguile joined,
broquain1 joined,
Jedai joined,
drbean joined,
bsb joined,
luqui joined,
eternaleye joined,
aindilis joined,
japhb joined,
pjcj joined,
Grrrr joined,
s1n joined
11:14
moritz joined,
TreyHarris left,
avar left,
avarab joined,
cognominal_ left
11:15
a-jing joined,
a-jing left
11:17
eternaleye left,
cj_ joined,
eternaleye joined,
TreyHarris joined
11:18
spinclad joined
11:19
moritz left
11:20
moritz_ joined
11:21
araujo joined,
Auzon left,
Auzon joined
11:22
cj left
11:23
Tene left
|
|||
moritz_ | freenode had a hiccup ;) | 11:24 | |
11:25
cognominal_ joined,
eternaleye left,
Grrrr left,
s1n left,
japhb left,
luqui left,
pjcj left,
bsb left,
Jedai left,
aindilis left,
drbean left
11:26
eternaleye joined,
Jedai joined,
drbean joined,
bsb joined,
luqui joined,
aindilis joined,
japhb joined,
pjcj joined,
Grrrr joined,
s1n joined,
Southen_ left
11:33
iblechbot left
11:42
pbuetow joined
11:57
FurnaceBoy joined
12:01
edpratomo joined,
FurnaceBoy left
12:06
pbuetow left,
Grrrr left,
s1n left,
japhb left,
luqui left,
pjcj left,
bsb left,
eternaleye left,
Jedai left,
aindilis left,
drbean left
12:07
Tene_ left,
Tene joined,
avarab left
12:08
avar joined
12:10
pbuetow joined,
eternaleye joined,
Jedai joined,
drbean joined,
bsb joined,
luqui joined,
aindilis joined,
japhb joined,
pjcj joined,
Grrrr joined,
s1n joined
12:17
chris2 joined
12:30
cognominal_ left
12:38
Ingmar left
12:39
kanru joined
12:40
cognominal_ joined
12:43
cmarcelo joined
12:44
wknight8111 joined
12:47
gbacon joined
12:53
DietCoke joined
13:01
pbuetow_ joined
13:02
edpratomo left
|
|||
jfredett | /who | 13:08 | |
oops | |||
DietCoke | ME! | 13:09 | |
13:09
pbuetow left
13:10
diakopter is now known as oops,
oops is now known as diakopter
|
|||
moritz_ | /nick TooMuchTimeCoke ;-) | 13:16 | |
diakopter | I like VanillaZero, myself | 13:19 | |
13:29
iblechbot joined,
vixey left
13:30
vixey joined
13:35
TJCRI joined
13:40
Coleoid_ joined
13:45
rhr joined
13:46
a-jing joined,
a-jing left
13:47
penk left
14:01
Coleoid left
14:06
jhorwitz joined
|
|||
pmichaud | 07:33 <moritz_> pmichaud: btw as long as method fallback is still active, rand($Num) is valid syntax (as fallback for $Num.rand) | 14:12 | |
I don't think that's correct. | |||
method fallback says that given $x.foo(), if no 'foo' method is found for $x then it will try foo($x) | |||
14:12
hanekomu joined
|
|||
pmichaud | it doesn't say that because $x.foo() exists then foo($x) must also exist. | 14:12 | |
i.e., method fallback doesn't mean that foo($x) will try $x.foo() | 14:14 | ||
14:14
Lorn joined
14:15
cjfields joined
14:18
luqui left
|
|||
moritz_ | pmichaud: uhm yes, you're right | 14:20 | |
14:21
alester joined
14:45
ilogger2 joined
14:46
avar joined,
avar left
14:50
avar joined
14:52
avar left,
avar joined
14:53
avar left,
avar joined
14:59
pbuetow joined
15:02
meteorjay left
15:03
hercynium joined
15:10
vixey joined
|
|||
pugs_svnbot | r20973 | diakopter++ | [yap6] fix stupid bugs from yesterday. | 15:22 | |
r20973 | diakopter++ | now that the speed is tolerable, working on the opp. | |||
15:38
alanhaggai joined
16:01
meteorjay joined
16:02
TJCRI joined,
alanhaggai left
16:04
meppl joined
16:57
Jamtech joined
16:59
Jamtech left
17:04
kanru joined,
Khisanth joined
17:08
meppl left
|
|||
cognominal_ | what is the perl6 way to get to the last element of an array? | 17:15 | |
moritz_ | cognominal_: @array[*-1] | 17:16 | |
cognominal_ | works in rakudo? | ||
moritz_ | nope | ||
cognominal_ | ok | ||
moritz_ | rakudo: my @a = <a b c>; say @a[@a.end] | ||
p6eval | rakudo r28668 OUTPUT[Method 'end' not found for invocant of class 'Perl6Array'current instr.: '_block11' pc 77 (EVAL_13:29) | ||
moritz_ | rakudo: my @a = <a b c>; say @a[@a.last] | ||
p6eval | rakudo r28668 OUTPUT[Method 'last' not found for invocant of class 'Perl6Array'current instr.: '_block11' pc 77 (EVAL_13:29) | ||
moritz_ | pugs: my @a = <a b c>; say @a[@a.end] | 17:17 | |
p6eval | OUTPUT[c] | ||
cognominal_ | rakudo: my @a = <a b c>; say @a[@a.top] | ||
p6eval | rakudo r28668 OUTPUT[Method 'top' not found for invocant of class 'Perl6Array'current instr.: '_block11' pc 77 (EVAL_13:29) | ||
pmichaud | top/end/last not implemented :-) | ||
moritz_ | TODO: implement List.lend | ||
s/lend/end/ | |||
cognominal_ | in fact I was asking for NQP :) | ||
pmichaud | ...NQP? | ||
moritz_ | nqp: my @a = <a b c>; say @a[@a.end] | 17:18 | |
p6eval | OUTPUT[Statement not terminated properly at line 1, near "= <a b c>;"current instr.: 'parrot;PGE::Util;die' pc 120 (runtime/parrot/library/PGE/Util.pir:82)called from Sub 'parrot;NQP::Grammar;statement_list' pc 3940 (src/Grammar_gen.pir:1362)called from Sub 'parrot;NQP::Grammar;state... | ||
moritz_ | nqp: my @a = (1, 2, 3); say @a[@a.end] | ||
p6eval | OUTPUT[Statement not terminated properly at line 1, near "= (1, 2, 3"current instr.: 'parrot;PGE::Util;die' pc 120 (runtime/parrot/library/PGE/Util.pir:82)called from Sub 'parrot;NQP::Grammar;statement_list' pc 3940 (src/Grammar_gen.pir:1362)called from Sub 'parrot;NQP::Grammar;state... | ||
pmichaud | nqp doesn't support '='. all functions require parens. | ||
moritz_ | nqp: my @a := (1, 2, 3); say @a[@a.end()] | ||
p6eval | OUTPUT[Statement not terminated properly at line 1, near "@a[@a.end("current instr.: 'parrot;PGE::Util;die' pc 120 (runtime/parrot/library/PGE/Util.pir:82)called from Sub 'parrot;NQP::Grammar;statement_list' pc 3940 (src/Grammar_gen.pir:1362)called from Sub 'parrot;NQP::Grammar;state... | ||
pmichaud | all functions (including 'say') require parens :-) | 17:19 | |
moritz_ | nqp: my @a := (1, 2, 3); say(@a[@a.end()]); | ||
diakopter | I can't believe I'm actually *using* an Acme module for something useful | ||
p6eval | OUTPUT[Method 'end' not found for invocant of class 'ResizablePMCArray'current instr.: '_block11' pc 27 (EVAL_3:13)called from Sub 'parrot;PCT::HLLCompiler;eval' pc 806 (src/PCT/HLLCompiler.pir:481)called from Sub 'parrot;PCT::HLLCompiler;evalfiles' pc 1088 (src/PCT/HLLCompiler.pir:6... | ||
moritz_ | pmichaud: thanks ;) | ||
pmichaud | didn't know that p6eval supported nqp :-) | ||
cognominal_ | these two, := and paren, I know even if I still trip over them | 17:20 | |
pmichaud | I should probably have infix:<=> throw a more useful excecption. | 17:25 | |
*exception. | |||
moritz_ | pmichaud: it supports nearly everything that suports 'say("hi")' - except perl 5.10, of course ;) | ||
evalbot control restart | |||
pugs_svnbot | r20974 | moritz++ | [evalbot] truncate stack traces in NQP output - we need a more general | ||
r20974 | moritz++ | solution for filtering | |||
17:25
p6eval joined
|
|||
moritz_ | nqp: say foo bar | 17:25 | |
p6eval | nqp: OUTPUT[Statement not terminated properly at line 1, near "foo bar"current instr.: 'parrot;PGE::Util;die' pc 120 (runtime/parrot/library/PGE/Util.pir:82) | ||
moritz_ | ok, truncation works | ||
afk | 17:27 | ||
17:29
pbuetow_ joined
17:32
Khisanth left
|
|||
cognominal_ | nqp: my %a; %a{'a'}++ | 17:33 | |
p6eval | nqp: OUTPUT[increment() not implemented in class 'Undef'current instr.: '_block11' pc 25 (EVAL_4:16) | ||
cognominal_ | nqp: my %a; %a{'a'}.defined() | ||
p6eval | nqp: OUTPUT[Method 'defined' not found for invocant of class 'Undef'current instr.: '_block11' pc 28 (EVAL_4:14) | ||
cognominal_ | nqp: my %a; say(%a{'a'}.WHAT()) | 17:34 | |
p6eval | nqp: OUTPUT[Method 'WHAT' not found for invocant of class 'Undef'current instr.: '_block11' pc 28 (EVAL_4:14) | ||
17:36
hercynium left
17:39
Khisanth joined
17:40
pbuetow left
|
|||
cognominal_ | nqp: my %a; %a<a> := 0 ; say ++%a{'a'} | 17:40 | |
p6eval | nqp: OUTPUT[increment() not implemented in class 'Sub'current instr.: '_block11' pc 31 (EVAL_4:17) | ||
cognominal_ | nqp: my %a; %a<a> := 0 ; say( ++%a{'a'} ) | ||
p6eval | nqp: OUTPUT[0] | 17:41 | |
cognominal_ | nqp: my %a; %a<a> := 0 ; say( %a<a> := %a<a> + 1 ) | ||
p6eval | nqp: OUTPUT[1] | ||
17:51
meppl joined
17:54
chinsans joined
18:08
chinsans left
18:38
wknight8111 joined
|
|||
pugs_svnbot | r20975 | diakopter++ | [yap6] | 18:38 | |
r20975 | diakopter++ | * a banillion more speed/memory usage premature optimizations. :) | |||
18:42
Jedai joined
|
|||
Auzon | pugs: say 'A' .. 'ZZ' | 18:43 | |
p6eval | OUTPUT[ABCDEFGHIJKLMNOPQRSTUVWXYZAAABACADAEAFAGAHAIAJAKALAMANAOAPAQARASATAUAVAWAXAYAZBABBBCBDBEBFBGBHBIBJBKBLBMBNBOBPBQBRBSBTBUBVBWBXBYBZCACBCCCDCECFCGCHCICJCKCLCMCNCOCPCQCRCSCTCUCVCWCXCYCZDADBDCDDDEDFDGDHDIDJDKDLDMDNDODPDQDRDSDTDUDVDWDXDYDZEAEBECEDEEEFEGEHEIEJEKELEMENEOEPEQERESETEUEVEW... | ||
rakudo_svn | r28670 | pmichaud++ | [rakudo]: | 18:46 | |
r28670 | pmichaud++ | * Fix problem with 'sprintf' method appearing in wrong namespace. | |||
r28670 | pmichaud++ | * Oddly, the problem appeared because running 'perl6.pir' gave | |||
r28670 | pmichaud++ | different results (an exception) from running 'perl6.pbc'. I | |||
r28670 | pmichaud++ | have no clue why the difference existed. | |||
pmichaud | pugs: say 'A' .. 'BB' | 18:47 | |
p6eval | OUTPUT[ABCDEFGHIJKLMNOPQRSTUVWXYZAAABACADAEAFAGAHAIAJAKALAMANAOAPAQARASATAUAVAWAXAYAZBABB] | ||
pmichaud | rakudo: say 'A' .. 'BB' | ||
p6eval | rakudo r28669 OUTPUT[AB] | ||
pmichaud | hrm. | ||
it stops at 'C' because it thinks that 'C' is greater than 'BB'. | 18:48 | ||
that's.... interesting. | |||
pugs: say 'B' ^.. 'BB' | 18:49 | ||
p6eval | OUTPUT[CDEFGHIJKLMNOPQRSTUVWXYZAAABACADAEAFAGAHAIAJAKALAMANAOAPAQARASATAUAVAWAXAYAZBABB] | ||
pmichaud | pugs: say 'B' ^..^ 'BB' | ||
p6eval | OUTPUT[CDEFGHIJKLMNOPQRSTUVWXYZAAABACADAEAFAGAHAIAJAKALAMANAOAPAQARASATAUAVAWAXAYAZBA] | ||
18:49
REPLeffect joined
|
|||
pmichaud | pugs: say 'B' ^..^ 'AG' | 18:50 | |
p6eval | OUTPUT[CDEFGHIJKLMNOPQRSTUVWXYZAAABACADAEAF] | ||
pmichaud | say '0' .. '19' | 18:51 | |
pugs: say '0' .. '19' | |||
p6eval | OUTPUT[012345678910111213141516171819] | ||
pmichaud | pugs: say '0' .. '00' | ||
p6eval | OUTPUT[0123456789] | ||
pmichaud | pugs: say '0'..'01' | ||
p6eval | OUTPUT[0123456789] | ||
diakopter | pugs: say '0A'..'1A' | 18:52 | |
p6eval | OUTPUT[0A0B0C0D0E0F0G0H0I0J0K0L0M0N0O0P0Q0R0S0T0U0V0W0X0Y0Z1A] | ||
diakopter | pugs: say 'A0'..'Z0' | 18:53 | |
p6eval | OUTPUT[A0A1A2A3A4A5A6A7A8A9B0B1B2B3B4B5B6B7B8B9C0C1C2C3C4C5C6C7C8C9D0D1D2D3D4D5D6D7D8D9E0E1E2E3E4E5E6E7E8E9F0F1F2F3F4F5F6F7F8F9G0G1G2G3G4G5G6G7G8G9H0H1H2H3H4H5H6H7H8H9I0I1I2I3I4I5I6I7I8I9J0J1J2J3J4J5J6J7J8J9K0K1K2K3K4K5K6K7K8K9L0L1L2L3L4L5L6L7L8L9M0M1M2M3M4M5M6M7M8M9N0N1N2N3N4N5N6N7N8N9... | ||
diakopter | weird | ||
Auzon | What's weird? | 18:54 | |
18:54
pmurias joined
|
|||
diakopter | Auzon: nm :/ | 18:54 | |
18:54
pzt joined
|
|||
TimToady | '0' .. '00' seems incorrect | 18:55 | |
pugs_svnbot | r20976 | diakopter++ | [yap6] | ||
r20976 | diakopter++ | * less grammar recursion; more speed improvements. | |||
r20976 | diakopter++ | * memoizing fully fixed now... | |||
pmurias | diakopter: hi | ||
rakudo_svn | r28671 | pmichaud++ | [rakudo]: | ||
r28671 | pmichaud++ | * Fix ranges on incrementing strings (e.g., 'A'..'BK') | |||
TimToady | it should be equivalent to '0' .. '99' | ||
diakopter | pugs: say '0A'..'1A0' | 18:56 | |
p6eval | OUTPUT[0A0B0C0D0E0F0G0H0I0J0K0L0M0N0O0P0Q0R0S0T0U0V0W0X0Y0Z1A1B1C1D1E1F1G1H1I1J1K1L1M1N1O1P1Q1R1S1T1U1V1W1X1Y1Z2A2B2C2D2E2F2G2H2I2J2K2L2M2N2O2P2Q2R2S2T2U2V2W2X2Y2Z3A3B3C3D3E3F3G3H3I3J3K3L3M3N3O3P3Q3R3S3T3U3V3W3X3Y3Z4A4B4C4D4E4F4G4H4I4J4K4L4M4N4O4P4Q4R4S4T4U4V4W4X4Y4Z5A5B5C5D5E5F5G5H5I5J... | ||
TimToady | (by the exceed-the-length rule) | ||
pmurias | TimToady: did you see my changes? | ||
pmichaud | TimToady: does it _only_ check length? | ||
TimToady | if it doesn't get an exact match, it only checks lengths, like p5 | ||
pmichaud | ah, length or exact match | 18:57 | |
pmurias should go fetch his laptop instead of talking via cgi-irc | |||
pmichaud | hrm. | ||
diakopter | hm; evalbot's perl 5.8 doesn't like my qr||sp | ||
TimToady | you can't rely on anything other than equality | ||
pmichaud | so, 'A'..'Bz' would be the same a 'A' .. 'ZZ' ? | 18:58 | |
diakopter | oh; that's b/c I don't need the p suffix | ||
TimToady | pmichaud: yes | ||
pmichaud | okay. That complicates things a bit, but I guess we can get there. | ||
TimToady | I think it simplifies things | ||
pmichaud | currently I think pugs does: if length smaller, always increment | 18:59 | |
if length bigger, stop | |||
if length equal, compare | |||
TimToady | that seems sane, as long as compare only means test-for-equality | ||
diakopter | hey, more speed ^ | ||
pmichaud | how would we check if $z ~~ 'A' .. 'AA' ? | 19:00 | |
pugs_svnbot | r20977 | diakopter++ | [yap6] | ||
r20977 | diakopter++ | * don't need 5.10 p suffix | |||
pmichaud | iterate through the range looking for $z ? | ||
ruoso wonders if TimToady have some time to think about the metamethods thing... (I know I'm being annoying with that) | |||
TimToady | no, I'm only stealing some lunch time from $dayjob to try to catch up here, and still haven't even read any email today | 19:01 | |
diakopter snaps his fingers at p6eval | 19:02 | ||
ruoso | ok... I'm not in a rush also... just making sure it stays on topic... | ||
TimToady | I think Mooseyfolk are likelier to give you good feedback on that. I installed the .HOW Curtain for a reason... | 19:04 | |
which is that I mostly don't want to think about it. :) | |||
pmurias | TimToady: seen my commits to STD yet? pmichaud raised some objections about them | 19:05 | |
pmichaud | more questions than objections. :-) | 19:06 | |
TimToady | what did you do? | ||
ruoso | TimToady, that is already peer-reviewed with nothingmuch... I think it's just a matter of 'is this the way to go?' | ||
pmurias | fixed EXPR a bit | ||
listops generate proper match objects | |||
and EXPR receives a string instead of a hash as passing hashes is broken in gimme5 | 19:07 | ||
and EXPR respects the initial precedence | |||
it's one commit really | 19:08 | ||
TimToady | I don't know what "initial precedence" means. the precedence that is passed in is not "initial", it's the limit on precedence looseness | ||
diakopter | qr/^(\Q$want\E)/s | 19:09 | |
oops | |||
pmurias | TimToady: didn't know how to phrase it correctly | ||
TimToady | is there an example to think about? | ||
diakopter | initial meaning innermost? | ||
or outermost? | 19:10 | ||
pmichaud | effectively the change is that EXPR() now accepts a precedence level as an argument instead of a hash containing %preclim<prec> | ||
TimToady | it's used for things like preventing you from saying $a ?? $b = 2 !! $c | ||
it will treat = like a terminator | |||
pmichaud | i.e., it receives $preclim directly instead of setting $preclim to %preclim<prec> | ||
TimToady | not quibbling about the string, as long as we only need the precedence, but we might want other things later | 19:11 | |
pmichaud | (I'm neither for nor against the change -- I was simply wondering about it.) | ||
(fwiw, Rakudo has already been using a simple string as its argument instead of a hash.) | |||
TimToady | I'd be more inclined to fix gimme5 to pass a hash correctly | 19:12 | |
pmichaud | that was my guess. :-) | ||
TimToady | but it's no great shakes either way | ||
19:12
pmurias left
|
|||
pmichaud | okay, works for me! | 19:12 | |
afk # lunch for real this time. | |||
19:13
pmurias joined
|
|||
pmurias | re example to think about was it directed to me? | 19:15 | |
the think i wanted it to work was => which was broken but now works | 19:16 | ||
TimToady | => should simply be parsed as item assignment, which is tighter than comma | 19:17 | |
19:19
barney joined
19:20
pmurias_ joined
19:21
pmurias left
|
|||
TimToady | pmurias_: => should simply be parsed as item assignment, which is tighter than comma | 19:21 | |
pmurias_ | TimToady: it's parsed by fatarrow which calls EXPR with a limit | 19:23 | |
i didn't change that but i made EXPR respect the limit | |||
TimToady: when does autoquoting happen? | 19:24 | ||
the synopsis state that the left side can be anything | 19:25 | ||
TimToady | fatarrow is only for bare identifiers, but yes, it needs to know the precedence in EXPR | ||
ordinary => is defined down with the other binary assignment ops | 19:26 | ||
19:27
eternaleye joined,
barney left
|
|||
pmurias_ | 1=>2; dosn't work | 19:27 | |
TimToady | at line 2724 | 19:28 | |
well, there's lots of things don't work yet. :) | |||
19:29
hercynium joined
|
|||
pmurias_ | TimToady: 2724 in the current revision? | 19:29 | |
TimToady | yes | ||
pmurias_ | 20956? | 19:31 | |
TimToady | how does your current code distinguish item assignment from list assignment? | ||
20977 | 19:32 | ||
oh, wait, it did a merge | |||
19:32
pmurias joined
|
|||
TimToady | so my line numbers are probably off | 19:33 | |
about 30 lines off, probably | |||
anyway, just a few lines below where you commented out the makes | |||
19:34
pmurias left
19:40
pmurias joined
|
|||
TimToady | I went ahead and checked in my current copy, even though it's messing up on final curlies right now | 19:40 | |
pugs_svnbot | r20978 | lwall++ | [STD] current snapshot, some things break | ||
19:40
sscaffidi_ joined,
sscaffidi_ is now known as sscaffidi
|
|||
pmurias | sorry my laptop hanged strangely | 19:40 | |
i just commented the stuff in infix:<=> as it was creating errors | |||
i didn't fix it properly | |||
TimToady: what would you prefere me to work on getting agentz's tracer to work with STD5 or feeding STD's parse tree into elf? | |||
TimToady | when I get off $job I'll be working on a more general memoizing capability, which will hopefully fix the current problem with block endings, and the hardwired stopper state check | ||
elf sounds like it's more on some kind of critical path | 19:41 | ||
and I doubt the format of the parse tree will change rapidly | |||
pmurias | i already started on that one ;) | ||
i actually plan to use {*} hook points | |||
TimToady | it'll be nice to get the canonical *cough* parser up on evalbot at some point | 19:42 | |
well, that's what the {*} are there for | |||
pmurias | diakopter asked for putting STD into evalbot but it creates a lot of output | 19:43 | |
diakopter | TimToady: p6eval runs 5.8 | ||
TimToady | I was thinking more on the level of say "howdy" | ||
Auzon | Is file input the current best way to get an iterator that terminates? | ||
TimToady | not parse tree output | ||
pmurias | i'll head of to work than ;) | 19:44 | |
TimToady | Auzon: seem to be missing some context... | ||
Auzon | I'm trying to test the eager operator. | 19:45 | |
TimToady | well, if | ||
if Range objects worked... | |||
though maybe that doesn't help | 19:46 | ||
19:46
pmurias left
|
|||
Auzon | I guess I need some way to determine that the iterator is fully read, too. | 19:46 | |
TimToady | gather/take would be good for that, if implemented | ||
since it runs arbitrary code on the take end | 19:47 | ||
or you could do eager 1..* and see if you run out of memory :P | |||
Auzon | I don't see a runs_out_of_resource_ok() subroutine. I'd need to implement that first. | 19:49 | |
TimToady | I think file io might be the best bet for now | ||
assuming *that* is implemented :) | 19:50 | ||
19:52
hercynium left,
pmurias_ left
19:53
cjfields joined
|
|||
diakopter | canonical | 19:59 | |
pmichaud | (more general memoizer)++ | 20:05 | |
I've been thinking a similar thing for PCT's grammars. | |||
20:06
REPLeffect left
20:07
REPLeffect joined
|
|||
Auzon | rakudo: gather {} | 20:07 | |
p6eval | rakudo r28671 OUTPUT[Null PMC access in type()current instr.: 'parrot;Perl6;Grammar;Actions;statement_prefix' pc 123897 (src/gen_actions.pir:11710) | ||
pmichaud | gather not implemented yet. | ||
Auzon | That's what I was checking | ||
pmichaud | and empty closures still return null :-| | ||
cjfields | On S05 transliteration: Are we using 'A..Z' for range values instead of 'A-Z' (or both)? | 20:08 | |
pmichaud | cjfields: Perl 6 no longer uses '-' to indicate ranges. | ||
cjfields cheers! | |||
20:09
eternaleye_ joined
|
|||
cjfields | Also, are we planning on supporting the tr/// p5 options: (c)omplement, (d)elete, (s)quash)? Couldn't find anything to verify one way or the other... | 20:11 | |
Auzon | and here was me thinking that tr///c meant 'count' :P | ||
20:14
eternaleye left
20:22
Alias_ joined
|
|||
cjfields looking at A05... | 20:24 | ||
20:29
simcop2387 joined
|
|||
cjfields | Nope, nothing there. Though I can see issues with implementing 'complement' if we want many-to-one... | 20:35 | |
moritz_ | I think the general sentiment is "don't worry too much about transliteration, we have powerful regexes" ;) | 20:37 | |
Auzon | Somewhat related: Can we have glob() use regexes? (The format for $pattern is not specified in S16) | 20:38 | |
moritz_ | Auzon: I think glob() will call the underlying system (?) call | 20:39 | |
PerlJam | That would *so* confuse people! | ||
glob does globbing, not regex | |||
moritz_ | Auzon: you can still use grep rx$regex/, readdir; or some such | ||
PerlJam | that said, having some sort of file selector thing (not called glob) with a switchable pattern matcher would be nice. | 20:40 | |
moritz_ | and it's nice if you can do stuff like @*ARGV = glob @*ARGV if $on_windows; | ||
PerlJam: what's wrong with regexes + grep? ;) | 20:41 | ||
PerlJam | Hmm.. I wonder if we could get m:glob/.../ just like we have m:p5/.../ :-) | ||
moritz_ | you can write regex modifiers as macros | ||
shouldn't be too hard to write one that translates globs to regexes | |||
Auzon | moritz_: readdir can't mimic glob('*/*') :-/ | 20:42 | |
moritz_ | Auzon: right. | 20:43 | |
PerlJam | well, PGE already had parsers for p5, p6, and glob (I wrote some of the glob one actually) | ||
s/had/has/ | 20:48 | ||
pmichaud | more likely is | ||
use STDPatterns; | |||
@a = grep &STDPatterns::glob, @list; | |||
lambdabot | Maybe you meant: activity activity-full admin all-dicts arr ask . ? @ v | ||
pmichaud | or <glob>, or something like that. | ||
or even glob('pattern') to return a regex that does globbing the way you want :-) | |||
Auzon | I guess it'd be really easy to implement a regexglob() | ||
pmichaud | q:glob/ ... /; | ||
anyway, it can be easily done as a library :-) | |||
moritz_ | pmichaud: or just m/:glob/.../ | ||
pmichaud | after that it's just a matter of syntax. | ||
20:52
REPLeffect left
20:56
rdice joined
21:00
rdice left
21:01
eternaleye_ left
|
|||
pugs_svnbot | r20979 | Auzon++ | [gsoc_spectest] Some tests for eager and hyper (8 new tests added) | 21:08 | |
r20979 | Auzon++ | Added more TASKS for S03 and one for S16 | |||
21:11
ruoso joined
21:17
Alias_ left
21:18
Alias_ joined
21:22
bacek_ joined
|
|||
moritz_ | does prefix:<=> consume an Range? | 21:31 | |
21:31
gbacon joined
|
|||
Auzon | moritz_: It iterates a range | 21:32 | |
moritz_ | Auzon: yes, but iteration != consumation | 21:33 | |
Auzon: in p5, each %hash also iteratets over the hash without destroying it | |||
Auzon: so unless it's in spec I doubt that your test cases are right | |||
I'd suggest a different scheme | 21:34 | ||
my $counter = 0; my @test = gather { for 1 .. 5 { take 1; $couter++ } } | |||
is @test[0], 1; | |||
is $counter, 1, 'only one iteration' # that's the test for lazyness | 21:35 | ||
then my @second_test = eager gather {... same code here } | |||
is $counter, 5, 'eager is eager'; | |||
I fear that the Range object hides its lazyness too well te be tested for | |||
Auzon | Alright, yeah, that looks a lot better. So is gather the way to build a generic iterator object? | 21:37 | |
moritz_ | it's one of the easiest | 21:38 | |
21:38
Alias_ left
|
|||
moritz_ | (it's actually used for iterators, continuations, coroutines - whatever you want to call it) | 21:38 | |
bascially for anything that should be lazily executed and returns more than one value | 21:39 | ||
21:39
bacek joined
|
|||
Auzon | ok, thanks moritz_ :) | 21:40 | |
21:44
cmarcelo joined
21:45
Jedai left
|
|||
moritz_ | IIRC kp6 has a similar lazyness test already | 21:45 | |
btw gather...take can be used for implementing lazy builtins quite nicely | 21:46 | ||
sub infix:<xx>(@ary, Num $count) { return gather { take @ary for ^$count } } |