pugscode.org/ planetsix.perl.org/ | nopaste: sial.org/pbot/perl6 | evalbot: perl6: say 3; (or rakudo:, pugs:, elf:, etc) | irclog: irc.pugscode.org/ | ~315 days 'til Xmas Set by mncharity on 8 February 2009. |
|||
pugs_svn | r25250 | particle++ | [S19] correct wording about STDIN; TimToady++ | 00:06 | |
00:13
Muixirt left
00:28
kate21de left
00:31
shinobi_cl joined,
shinobi_cl left,
jan__ left
00:36
Tene joined
00:39
icwiener left
00:47
Tene_ left
00:52
ayrnieu_ joined,
ayrnieu left,
ayrnieu_ is now known as ayrnieu
00:54
shinobi_cl_ joined
00:57
vpace joined
00:58
aindilis joined
01:13
ayrnieu left
01:14
ayrnieu joined
01:21
gravity left
01:25
gravity joined
01:33
jdv79 left
01:44
vpace left
|
|||
meppl | good night | 01:52 | |
01:52
wknight8111 left
01:53
meppl left
01:58
jferrero left
02:00
drbean joined
|
|||
pugs_svn | r25251 | hinrik++ | [util/perl6.vim] really fix the nesting of formatting codes | 02:16 | |
02:16
lambdabot joined
02:19
Chillance left
02:50
revdiablo joined
|
|||
pugs_svn | r25252 | hinrik++ | [util/perl6.vim] highlight the range operator in character classes | 02:54 | |
diakopter | std: Fribble..8 | 02:55 | |
p6eval | std 25252: OUTPUT«Undeclared name: Fribble used at 1 00:02 32m» | 02:56 | |
diakopter | std: 8..e() | ||
p6eval | std 25252: OUTPUT«Undeclared routine: e used at 1 00:02 32m» | ||
diakopter | std: 8..e | ||
p6eval | std 25252: OUTPUT«00:02 32m» | ||
diakopter | std: 8..7 | 02:57 | |
p6eval | std 25252: OUTPUT«00:02 32m» | ||
02:58
karlw joined
|
|||
karlw | Has anyone gotten Pugs working on OS X 10.5.6? | 03:01 | |
revdiablo | Does anyone still use pugs? | ||
diakopter | revdiablo: Pugs gets frequent releases to Hackage/cabal | 03:02 | |
karlw | I get compile errors. | ||
revdiablo | Ah, I only hear about Rakudo anymore these days | ||
diakopter | karlw: with the latest ghc, it should work as described in svn.pugscode.org/pugs/INSTALL | 03:03 | |
latest ghc=6.10.1 | |||
03:25
gravity left
03:36
shinobi_cl_ left
03:48
ayrnieu left
03:49
ayrnieu joined
04:02
jamtech joined
04:09
jamtech left
04:31
alester joined
04:37
justatheory left
05:10
masak joined
|
|||
masak | rakudo: $*OUT := (class {}).new; say "OH HAI" | 05:33 | |
p6eval | rakudo 6aaec3: OUTPUT«src/pmc_freeze.c:1390: failed assertion '!must_have_seen'Backtrace - Obtained 19 stack frames (max trace depth is 32). (unknown) Parrot_confess (unknown) (unknown) (unknown) (unknown) Parrot_thaw | ||
..PackFile_Co... | |||
masak | huh. good thing I didn't rebuild Rakudo locally. | 05:34 | |
05:38
vpace joined
|
|||
masak | hm, Rakudo works over on #parrot. | 06:01 | |
rakudo: $*OUT := (class {}).new; say "OH HAI" | |||
p6eval | rakudo 6aaec3: OUTPUT«src/pmc_freeze.c:1390: failed assertion '!must_have_seen'Backtrace - Obtained 19 stack frames (max trace depth is 32). (unknown) Parrot_confess (unknown) (unknown) (unknown) (unknown) Parrot_thaw | ||
..PackFile_Co... | |||
06:08
alester left
|
|||
masak | rakudo: say "alive at all?" | 06:10 | |
p6eval | rakudo 6aaec3: OUTPUT«src/pmc_freeze.c:1390: failed assertion '!must_have_seen'Backtrace - Obtained 19 stack frames (max trace depth is 32). (unknown) Parrot_confess (unknown) (unknown) (unknown) (unknown) Parrot_thaw | ||
..PackFile_Co... | |||
masak | apparently not. | ||
06:11
mberends left
|
|||
masak | rakudo: 5 | 06:13 | |
p6eval | rakudo 6aaec3: OUTPUT«src/pmc_freeze.c:1390: failed assertion '!must_have_seen'Backtrace - Obtained 19 stack frames (max trace depth is 32). (unknown) Parrot_confess (unknown) (unknown) (unknown) (unknown) Parrot_thaw | ||
..PackFile_Co... | |||
moritz_ | good morning | 06:16 | |
masak | top of the morning to you, sir! | 06:17 | |
hm, still can't reproduce the above problem after a local rebuild of Parrot and Rakudo. | |||
moritz_ | I'll trigger a rebuild on the server | 06:18 | |
masak | moritz_++ | ||
on a side note, if I rebind $*OUT, should 'say' still output to STDOUT? | |||
moritz_ | don't think so | 06:19 | |
masak submits rakudobug | |||
moritz_ | but I don't remember the exact relatioinship between $*DEFOUT and $*OUT | ||
masak | well, it's the spirit of the bug that counts, not the letter. :) | 06:20 | |
06:21
hercynium left
|
|||
masak misses buubot | 06:23 | ||
now I have to spack locally -- how primitive! :) | 06:24 | ||
$*DEFOUT is mentioned in S16, and is aliased to $*OUT. | |||
which I take to mean that if I rebind $*OUT, things should indeed stop working. | 06:25 | ||
moritz_ | /home/evalenv/parrot/parrot -o perl6.pbc perl6.pir | ||
push_string() not implemented in class 'FixedStringArray' | |||
make: *** [perl6.pbc] Error 1 | 06:26 | ||
masak | oh my. | ||
I'm not getting that over here. | |||
06:27
vpace left,
vpace joined
|
|||
moritz_ | could be a fallout of the string rename stuff | 06:29 | |
but I made a realclean - what else could I do? | |||
06:29
hercynium joined
|
|||
moritz_ | wait, don't know if that also cleans rakudo's tree... | 06:30 | |
masak | might not. | 06:31 | |
06:32
karlw left
|
|||
moritz_ | rakudo: say "back to life" | 06:32 | |
p6eval | rakudo 577566: OUTPUT«back to life» | ||
moritz_ | that's it. | 06:33 | |
masak | moritz_++ | ||
moritz_ | ok, gotta run... bbl | ||
masak | :) | ||
masak is reminded of xkcd.com/208/ | |||
06:36
hercynium left
06:38
justatheory joined
06:47
ashizawa joined
06:52
DemoFreak joined
06:55
justatheory left
07:02
jan_ joined
07:10
kate21de joined
07:14
kate21de left
07:18
mberends joined
07:29
zamolxes left
07:39
yves left
07:47
viklund joined
07:57
vpace left
08:20
szabgab joined
08:22
maerzhase joined
08:28
lisppaste3 left,
dduncan joined
08:32
iblechbot joined,
mberends left
08:36
dduncan left
08:47
maerzhase left
08:48
maerzhase joined
08:54
aindilis` joined
09:08
aindilis left,
mberends joined
09:12
aindilis` left
09:44
Tene_ joined
|
|||
mberends | eek. parrot r36488 does not build on linux amd64. After a realclean, is it recommended to use Configure.pl and Makefile.PL? | 09:54 | |
09:56
Tene left
|
|||
mberends | s/and/or/ | 09:58 | |
moritz_ | Makefile.PL calls Configure.pl | 09:59 | |
I use the latter | |||
mberends | thanks. r36486 builds ok, but r36488 not. | ||
masak | mberends: did you 'make clean' in the Rakudo dir? | 10:03 | |
mberends: oh, sorry, not a Rakudo problem. nvm. | |||
mberends | I think pmichaud's last pbc_to_exe optimization in parrot may currently work properly only on 32 bit systems. Pity it's flaky, because the speedup is immense. | 10:07 | |
masak | aye. | 10:10 | |
hopefully it's salvageable. | 10:11 | ||
10:11
ejs joined
|
|||
pugs_svn | r25253 | hinrik++ | [util/perl6.vim] only highlight R and X as operators when they actually are | 10:15 | |
10:20
pmurias joined
10:48
meppl joined
11:14
yves joined
|
|||
szabgab | is there already some Perl5 code out there that can tell me if a piece of code is perl 5 or perl 6? | 11:26 | |
given a .pm file, I'd like to be able to decide if it is perl 5 or perl 6 ? | 11:27 | ||
mberends | not afaik. but all Perl 6 code must start with 'use v6', 'class' or something else foreign to Perl 5 | ||
szabgab | I know "some" of the requirements, and now I need to implement them so padre can at least guess if the file is perl 5 or perl 6 | 11:28 | |
but I'd prefer to just use someone elses code :-) | 11:29 | ||
11:30
kbaud1 left
|
|||
mberends | good idea, Don't Repeat Yourself. But this time you're probably on your own ;) | 11:31 | |
11:33
kbaud1 joined
11:35
DemoFreak left
|
|||
literal | "use v6" or "class" or "module" afaik | 11:38 | |
moritz_ | aye | ||
szabgab | grammar ? | 11:39 | |
moritz_ | don't think so | ||
but might be a worthy addition | |||
szabgab | HTML::Template::Grammar (again this one :-) has only that | 11:43 | |
moritz_ | currently there's no implementation that forces this policy | 11:46 | |
so people become sloppy | |||
11:55
meppl left
|
|||
szabgab | actually it will be a lot more complex soon | 11:59 | |
11:59
ashizawa left
|
|||
szabgab | as you can change that lexically scoped, right ? | 11:59 | |
so any editor will have to understand that | |||
moritz_ | szabgab: I think we start worrying when somebody starts implementing it | 12:01 | |
masak | moritz_: who are you calling sloppy? :P | 12:14 | |
moritz_ whistles innocently | 12:15 | ||
masak | @ask TimToady can 'grammar' and 'role' start a p6 file, just like 'class' can? | 12:17 | |
lambdabot | Consider it noted. | ||
masak | szabgab: I just pushed a version of HTML::Template::Grammar that has 'use v6' in it. | 12:18 | |
szabgab | moritz_, implementing what ? the editor ? | 12:29 | |
moritz_ | szabgab: no, a compiler that can switich between perl 5 and 6 | ||
szabgab | ok :-) | 12:30 | |
12:31
elmex left,
elmex joined
12:37
kane_ joined
12:43
maerzhase left
12:46
ruoso joined
12:54
meppl joined
|
|||
ruoso | HellO! | 13:06 | |
13:08
pmurias_ joined
|
|||
pmurias_ | ruoso: hi | 13:08 | |
ruoso | hi pmurias_ | ||
13:09
pmurias_ left
13:14
PantheraUncia joined
|
|||
masak wants a compiler that can switch between Perl 5 and Perl 6 | 13:29 | ||
pmurias | masak: you mean {use v5;print ${\"we are in perl5 land\n"}};say "in p6 land again"; | 13:31 | |
mberends | it's easy: 1) finish Rakudo 2) add a switchy thing 3) profit! | ||
masak | mberends: right. :) | ||
pmurias: yes, something like that. | 13:32 | ||
pmurias: but, more specifically, Perl 6+CPAN. | |||
er, that was visually non-obvious. I meant "Perl 6 + CPAN" :) | |||
13:33
maerzhase joined
|
|||
ruoso | masak, smop+mildew is pretty much close to that ;) | 13:50 | |
masak | ruoso: aye, so I gather. :) | 13:51 | |
13:52
maerzhase left
|
|||
masak | it would be fun to be able to run, say, Druid on smop+mildew. | 13:52 | |
ruoso | masak, druid? | 13:53 | |
masak | ruoso: github.com/masak/druid/ | ||
ruoso | masak, ah... smop still doesn't have a regex engine implemented | 13:54 | |
masak | I don't use regexes much in Druid. | 13:55 | |
lots of other string handling, though. | |||
and classes/roles. | |||
pmurias | ruoso: &?ROUTINE.back is a Code? | 13:59 | |
ruoso | yes | 14:01 | |
or not | |||
14:01
PantheraUncia left
|
|||
ruoso | pmurias, I'm unsure | 14:01 | |
I think it's a mold frame | 14:02 | ||
yes... it is a mold fram | |||
14:02
riffraff joined
|
|||
ruoso | pmurias, but I guess a mold frame could be a code | 14:04 | |
pmurias, if it receive a postcircumfix:<( )>, it could resume itself | |||
pmurias | walk& | 14:10 | |
14:31
ludan joined
14:32
DemoFreak joined
14:35
Exodist joined
|
|||
masak | rakudo: my @a = "foo", "foot"; if @a[all(0,1)] ~~ /^ foo/ { say "OH MY!" } | 14:41 | |
p6eval | rakudo 577566: No output (you need to produce output to STDOUT) | ||
masak | funny, I have that same version at home, and I get an error. | 14:42 | |
"get_integer() not implemented in class 'Junction'" | |||
moritz_ | masak: junctions don't yet autothread through array and hash indexes | 14:44 | |
masak | ok. that explains the error. | ||
what about the discrepancy? | |||
moritz_ | sh: line 1: 30775 Segmentation fault ./parrot languages/rakudo/perl6.pbc /tmp/UVbwS23oTx >> /tmp/oDR0HoQgob 2>&1 | 14:45 | |
don't ask me. | |||
masak | :/ | ||
moritz_ | I'll rebuild both parrot and rakudo | ||
and now I do a 'make clean' in rakudo as well | 14:46 | ||
rakudo: my @a = "foo", "foot"; if @a[all(0,1)] ~~ /^ foo/ { say "OH MY!" } | 14:50 | ||
p6eval | rakudo 577566: OUTPUT«get_integer() not implemented in class 'Junction'current instr.: 'parrot;Positional;postcircumfix:[ ]' pc 3275 (src/classes/Positional.pir:42)» | ||
moritz_ | better. | ||
masak | muchly so. | 14:55 | |
so does the fact that junctions are not handled in array and hash indices reside somewhere in the long list of new or open bug tickets on RT? :) | |||
s/so/so,/ | 14:56 | ||
moritz_ | I don't know, I just know it's on rakudo.org somewhere | ||
masak | oh, what the heck. we can clean up duplicates later. | 14:57 | |
masak submits rakudobug | |||
moritz_ | rakudo: say 40000 / 2000 | 15:02 | |
p6eval | rakudo 577566: OUTPUT«sh: ./parrot: No such file or directory» | ||
moritz_ curses | |||
masak | p6eval is insistently non-cooperative today, it seems. | 15:03 | |
moritz_ | somehow that fits to my current image of parrot and rakudo :( | 15:04 | |
[particle]1 | that's your fault for not contributing more! :P | 15:05 | |
moritz_ counts the moritz vs non-moritz commits in rakudo for the last few days | 15:07 | ||
12 vs. 7, liberally counting :-) | 15:08 | ||
masak | moritz_++ | ||
even pitted against everybody else, moritz_ wins! :) | |||
literal | github.com/masak/druid/blob/d734723.../Player.pm | 15:09 | |
masak: why is there a _ after Druid::Game there? | |||
just curious | |||
masak | literal: that's a Rakudobug. | ||
I think I saw a patch for it yesterday. | 15:10 | ||
but I don't think it has gone in yet. | |||
literal | what kind of bug? | ||
moritz_ | masak: I merged it | ||
masak | moritz_: oh! thanks! | ||
literal: no longer a bug, then. | |||
literal | I mean, why would it require you to misspell the name? :P | ||
moritz_ | rakudo: BEGIN { class A::B }; class A {}; say "used to die at compile time"; | ||
p6eval | rakudo 577566: OUTPUT«Class 'Perl6MultiSub' not foundcurrent instr.: 'parrot;Perl6Role;!add_variant' pc 2579 (src/classes/Role.pir:42)» | ||
masak | literal: but it used to be that you couldn't declare A::B first and then B in another scope. | 15:11 | |
moritz_ | oh well. | ||
rakudo: BEGIN { class A::B }; class B {}; say "used to die at compile time"; | |||
p6eval | rakudo 577566: OUTPUT«Class 'Perl6MultiSub' not foundcurrent instr.: 'parrot;Perl6Role;!add_variant' pc 2579 (src/classes/Role.pir:42)» | ||
masak | moritz_: using Rakudo to prove that things no longer fail is a bad idea :P | ||
you're saying you merged the fix? | |||
in that case, what's wrong now? | 15:12 | ||
moritz_ | rakudo: BEGIN { class A::B {}; }; class B {}; say "used to die at compile time"; | ||
p6eval | rakudo 577566: OUTPUT«Class 'Perl6MultiSub' not foundcurrent instr.: 'parrot;Perl6Role;!add_variant' pc 2579 (src/classes/Role.pir:42)» | ||
moritz_ | rakudo: BEGIN { class A::B {}; }; class B {}; say "works locally here" | ||
p6eval | rakudo 577566: OUTPUT«Class 'Perl6MultiSub' not foundcurrent instr.: 'parrot;Perl6Role;!add_variant' pc 2579 (src/classes/Role.pir:42)» | ||
15:13
DataPusher left
|
|||
moritz_ | masak: is 'make spectest' clean on your machine? | 15:13 | |
masak | checking. | 15:14 | |
moritz_ | especially S12-class/basic.t | ||
masak | I just ran that separately. it passes. | ||
moritz_ | now look at the end of that file | 15:15 | |
masak looks | |||
moritz_ | it should test exactly the thing that fails with p6eval | ||
masak | heh. | ||
15:16
alester joined
|
|||
masak | and wouldn't you know, what you ran through p6eval runs fine locally, too! | 15:16 | |
something is slightly askew in the state of Denmark. | 15:17 | ||
moritz_ | I'll kill that cat! | ||
masak | you talking to me, Willis? | ||
15:18
Tene joined
|
|||
moritz_ | I was quoting "dinner for one", a very fine piece of comedy that Germans watch on New Year's Eve | 15:18 | |
masak | moritz_: I know. | ||
we have it too. | |||
"Grevinnan och betjänten" | 15:19 | ||
moritz_ | that's very suprising - I thought it was nearly entirely unknown outside of Germany | ||
masak | I found out that Germany sends it regularly only a year or so ago -- before that I thought that it was specific for Sweden. | 15:20 | |
moritz_ | heh | 15:21 | |
(quantum physics)-- # making simulations painfully hard | 15:23 | ||
15:24
DataPusher joined
|
|||
moritz_ | the hilbert space explodes exponentially with number of particles, and even in my reduced case the runtime is O(n**6.3) or so | 15:24 | |
rakudo: 600**6.3 | |||
p6eval | rakudo 577566: RESULT«3.1794564260066e+17» | ||
moritz_ | rakudo: 60**6.3 | 15:25 | |
p6eval | rakudo 577566: RESULT«159350297058.87» | ||
15:27
maerzhase joined
15:29
Tene_ left
15:34
DemoFreak left
15:38
araujo left
15:45
IllvilJa left
15:49
eternaleye left
|
|||
pmurias | ruoso: shouldn't multis gather variants from where they were defined rather than from where they were called? | 15:51 | |
ruoso | pmurias, unfortunally no... | 15:52 | |
maybe not unfortunally | |||
but well | |||
but maybe it simply doesn't make a difference | 15:53 | ||
because | |||
it will find the variable containing the multi | |||
(at least the outermost definition of it) | |||
and it will look for the innermost variants | |||
(so we can allow scoped variants) | 15:54 | ||
but the question is | |||
how that relates to binding? | |||
should binding a multi variant to this scope make the dispatching look for variants where that multi was defined? or where the multi is called | |||
? | |||
pmurias | perl6: multi foo($a) {say "a"};my $bar = &foo;{multi foo(Int $a) {say "b"};$bar(1)} | 15:56 | |
p6eval | rakudo 577566: OUTPUT«invoke() not implemented in class 'ResizablePMCArray'current instr.: '_block29' pc 256 (EVAL_17:110)» | 15:57 | |
..elf 25253: OUTPUT«/home/evalenv/pugs/misc/STD_red/match.rb:141:in `block in to_dump0': undefined method `to_dump0' for true:TrueClass (NoMethodError) from /home/evalenv/pugs/misc/STD_red/match.rb:140:in `each' from /home/evalenv/pugs/misc/STD_red/match.rb:140:in `map' from | |||
../home/evalenv/pugs/mi... | |||
..pugs: OUTPUT«a» | |||
pmurias | pugs: multi foo($a) {say "a"};my $bar = &foo;{multi foo(Int $a) {say "b"};$bar(1);foo(2)} | ||
p6eval | pugs: OUTPUT«ab» | ||
pmurias | ruoso: according to Multi.pm it should be "a\na\n" | ||
ruoso | pmurias, let me parse your code | 15:58 | |
pugs: multi foo(Str $a) { say "a" }; { my multi foo(Int $a){ say "b" }; foo(1);foo("a"); }; foo(1);foo("a"); | 16:00 | ||
p6eval | pugs: OUTPUT«bbaa» | ||
ruoso | rakudo: multi foo(Str $a) { say "a" }; { my multi foo(Int $a){ say "b" }; foo(1);foo("a"); }; foo(1);foo("a"); | 16:01 | |
p6eval | rakudo 577566: OUTPUT«sh: ./parrot: No such file or directory» | ||
moritz_ | it's short after the full hour, parrot rebuilds... meh | ||
ruoso | pugs: multi foo($a,$b) { say "a" }; { my multi foo($a){ say "b" }; foo(1,2);foo("a"); }; foo(1,2);foo("a"); | ||
p6eval | pugs: OUTPUT«aba*** No compatible multi variant found: "&foo" at /tmp/A7OIClTjCF line 1, column 94-102» | ||
ruoso | right... now we're talking ;) | 16:02 | |
ok... now... how do I bind a multi variant... | |||
pmurias | pugs: multi foo($a) {say "a"};my $bar = &foo;{my multi foo(Int $a) {say "b"};$bar(1);foo(2)} | ||
p6eval | pugs: OUTPUT«ab» | ||
16:03
IllvilJa joined
|
|||
ruoso | pugs: my $c; multi foo($a,$b) { say "a" }; { my multi foo($a){ say "b" }; $c := &foo }; { &foo := $c; foo(1,2);foo("a"); }; | 16:03 | |
p6eval | pugs: OUTPUT«*** Cannot cast from VUndef to Pugs.AST.Types.VCode (VCode) at /tmp/wTlns3T0Zc line 1, column 86-96 /tmp/wTlns3T0Zc line 1, column 86-96» | ||
16:04
ejs left
|
|||
ruoso | pmurias, but yes... the code you wrote suggests it gets the other variants from where it was defined | 16:04 | |
but there is a corner case ther | 16:05 | ||
considering exporting symbols is simply a process of bind | |||
if two different modules export variants for the same multi | |||
how does the variants see each other? | |||
pugs: module A { multi foo($a) is export(:DEFAULT) { say "a" } }; module B { multi foo($a,$b) is export(:DEFAULT) { say "b" } }; use A; use B; foo(1); foo(1,2); | 16:07 | ||
p6eval | pugs: OUTPUT«pugs: *** Unsafe function 'use' called under safe mode at /tmp/Hf47TyHxOT line 1, column 1» | ||
ruoso | pugs: module A { multi foo($a) is export(:DEFAULT) { say "a" } }; module B { multi foo($a,$b) is export(:DEFAULT) { say "b" } }; A::EXPORTALL; use B::EXPORTALL; foo(1); foo(1,2); | ||
p6eval | pugs: OUTPUT«pugs: *** Unsafe function 'use' called under safe mode at /tmp/J1eDZ6QUte line 1, column 1» | ||
ruoso | pugs: module A { multi foo($a) is export(:DEFAULT) { say "a" } }; module B { multi foo($a,$b) is export(:DEFAULT) { say "b" } }; A::EXPORTALL; B::EXPORTALL; foo(1); foo(1,2); | ||
p6eval | pugs: OUTPUT«*** No such subroutine: "&A::EXPORTALL" at /tmp/VTsLTXpFpt line 1, column 124-136» | ||
ruoso | pugs: module A { multi foo($a) is export(:DEFAULT) { say "a" } }; module B { multi foo($a,$b) is export(:DEFAULT) { say "b" } }; A.EXPORTALL; B.EXPORTALL; foo(1); foo(1,2); | 16:08 | |
p6eval | pugs: OUTPUT«*** No such method in class A: "&EXPORTALL" at /tmp/GaoSd9wF0f line 1, column 124-135» | ||
ruoso | pft | ||
pugs: module A { multi foo($a) is export(:DEFAULT) { say "a" } }; module B { multi foo($a,$b) is export(:DEFAULT) { say "b" } }; foo(1); foo(1,2); | |||
p6eval | pugs: OUTPUT«*** No such subroutine: "&foo" at /tmp/uJzVrGDfjF line 1, column 124-130» | ||
ruoso | meh | ||
16:08
REPLeffect left
16:15
icwiener joined,
stephenlb joined
16:16
masak is now known as jonal,
jonal is now known as masak
|
|||
p6paste | "ruoso" at 127.0.0.1 pasted "the context of a multi" (28 lines) at paste.nix.is/6 | 16:22 | |
ruoso | pmurias, ok... that's what I was trying to show | ||
pugs is wrong in the sense that export should put in our, not in my... but... consider the code in test.pl has "use B :MY" | |||
I'd expect it to work as pugs is doing now | 16:23 | ||
and that means that the lookup happens from the perspective of the caller | |||
16:23
aindilis joined,
icwiener_ joined
16:27
nihiliad joined
16:31
mberends left
|
|||
pmurias | ruoso: putting stuff in our doesn't affect the multis | 16:32 | |
ruoso | affect in the sense that it would be adding a variant | 16:33 | |
instead of declaring a new symbol | |||
which would happen in terms of use B :MY | |||
pmurias | & | 16:34 | |
16:34
pmurias left
16:36
icwiener left
17:00
rhr_ joined
17:03
lisppaste3 joined
17:13
hercynium joined,
rhr left
17:14
Southen_ left
17:27
mikehh joined,
justatheory joined
17:31
stephenlb left
17:34
masak left
|
|||
TimToady | exports are supposed to go into my, not our, by default | 17:38 | |
lambdabot | TimToady: You have 1 new message. '/msg lambdabot @messages' to read it. | ||
ruoso | TimToady, hmm | 17:41 | |
ok... | |||
maybe I mis-read S11, but still, while you're there... | |||
TimToady | @tell masak yes, grammar and role can start p6 code; all package_declarators (except package!) are p6 starters | ||
lambdabot | Consider it noted. | ||
ruoso | TimToady, I'm considering a multi installed in my scope is going to look for other variants in the lexical scope of the caller of that multi | 17:42 | |
TimToady | and if &foo represents multiple variants they all have to be included in the candidate list | ||
17:42
justatheory left
|
|||
ruoso | TimToady, of the outer &foo? | 17:42 | |
17:42
justatheory joined
|
|||
ruoso | I mean... when you have a lexically-scoped variant, should it copy all the other variants into itself? | 17:43 | |
s/other/outer/ | |||
TimToady | a call only ever considers its own lexical scope | 17:44 | |
but binding &foo into a new scope pulls in all the longnames it represents | |||
ruoso | right... so changes in the outer scope of that scope after the bind of &foo are invisible | ||
TimToady | how can you have a change in a lexical scope that's already been compiled? | 17:45 | |
ruoso | CALLER::<&foo> := &some_other_variant | ||
or any other binding, in fact | 17:46 | ||
a simple &foo := &other inside an inner block | |||
TimToady | we have to let the optimizer have enough information to optimize | 17:48 | |
ruoso | that means? | ||
TimToady | I think it's allowed to assume that the candidate list generated at compile time is immutable, unless a package is involved | ||
which is why we're trying to tip it toward lexical defs | 17:49 | ||
17:49
finanalyst joined
|
|||
ruoso | what do you mean by "unless a package is involved"? | 17:49 | |
TimToady | packages are mutable at run-time | ||
our multi can change; my multi can't | 17:50 | ||
ruoso | so, binding to a lexical multi is forbidden | ||
hmm... | |||
TimToady | COMPILING:<&foo> := is okay | ||
ruoso | "our multi" means two things... | 17:51 | |
1) declare this syimbol in $?PACKAGE | |||
2) make a local alias to it | |||
so I can change the symbol in the package, | |||
but it's lexical meaning won't change | |||
TimToady | right | 17:52 | |
ruoso | unless you use the fully-qualified name | ||
ok... that makes things much easier | |||
TimToady | possibly multi defaults to "my" anyway... | ||
ruoso | that sounds sane | 17:53 | |
does that apply to regular subs as well? | |||
meaning... | |||
TimToady | don't think so | ||
ruoso | ok... that makes it a bit harder | ||
so, at runtime, a bind should check if this is a multi or not? | |||
TimToady | trying to make those a bit more p5ish, is all | ||
ruoso | worse, actually... | 17:54 | |
a bind should check if the name could hide a multi or replace a multi | |||
TimToady | we could just call it undefined for now | ||
"erroneous", to use the Ada terminology... | 17:56 | ||
ruoso | so, just to make clear... | ||
"binding a new value to a code object that might hide a multi is erroneous" | |||
"because the list of multi variants is immutable" | 17:57 | ||
"therefore you can't add a multi variant at run-time" | |||
TimToady, is that it? | 17:58 | ||
moritz_ | "... unless the lexical pragma C<< use less <speed>; >> is in effect" ;-) | ||
TimToady | use multi :mutable | 17:59 | |
or some such... | |||
the compiler knows if there are multis/protos declared already, and by definition that's exclusive to only subs, and (I suspect) only the call to a known only sub looks in the current package | 18:01 | ||
and nothing looks in the GLOBAL package these days | |||
so you have to say &*foo() to call GLOBAL::foo | |||
(well, or GLOBAL::foo()) | 18:02 | ||
18:02
ludan left
|
|||
TimToady | is everything clear as mud now? :) | 18:03 | |
hopefully the sort of mud you make porcelain out of... | |||
18:03
diakopter is now known as spec_kiln,
spec_kiln is now known as diakopter
|
|||
TimToady | $work & | 18:05 | |
pugs_svn | r25254 | lwall++ | plagiarized typo :) | 18:08 | |
[particle]1 | hee | 18:13 | |
literal | rakudo: my $foo = 'bar'; $foo ~~ tr/bar/ba\nz/; say $foo | 18:18 | |
p6eval | rakudo 577566: OUTPUT«Statement not terminated properly at line 1, near "\\nz/; say "current instr.: 'parrot;PGE;Util;die' pc 129 (runtime/parrot/library/PGE/Util.pir:83)» | ||
literal | rakudo: my $foo = 'bar'; $foo ~~ tr/bar/baz/; say $foo | ||
p6eval | rakudo 577566: OUTPUT«Statement not terminated properly at line 1, near "/; say $fo"current instr.: 'parrot;PGE;Util;die' pc 129 (runtime/parrot/library/PGE/Util.pir:83)» | ||
literal | rakudo: my $foo = 'bar'; $foo ~~ tr/bar/baz/; say $foo; | ||
p6eval | rakudo 577566: OUTPUT«Statement not terminated properly at line 1, near "/; say $fo"current instr.: 'parrot;PGE;Util;die' pc 129 (runtime/parrot/library/PGE/Util.pir:83)» | ||
moritz_ | literal: when I set ft=perl6 tw=70 in vim, it doesn't line-break text blocks in Pod | ||
18:18
M_o_C joined
|
|||
moritz_ | literal: any idea of how to achieve that? | 18:18 | |
literal | it does here | 18:19 | |
wait | |||
moritz_ tries again | |||
literal | does your 'formatoptions' contain t? | 18:20 | |
:set formatoptions? | |||
moritz_ | yes | ||
it does line-break | |||
it just didn't do it in the first three lines | |||
weird. | |||
literal | rakudo: my $_ = 'bar'; tr/bar/baz/; say $_; | 18:21 | |
p6eval | rakudo 577566: OUTPUT«Statement not terminated properly at line 1, near "/; say $_;"current instr.: 'parrot;PGE;Util;die' pc 129 (runtime/parrot/library/PGE/Util.pir:83)» | ||
literal | what's wrong? | 18:22 | |
moritz_ | not yet implemented | ||
literal | oh | ||
moritz_ | it implements .trans though | ||
literal | anyway, I was wondering if the second part of tr/// is a double-quoted string, as with s/// | ||
S05 doesn't say | 18:23 | ||
moritz_ | in p5 it's not | ||
literal: but maybe you need to ask STD.pm | |||
literal | yeah, but in the tests it is assumed | ||
moritz_ | that doesn't mean much :/ | ||
18:24
japhb left
|
|||
pugs_svn | r25255 | moritz++ | [u4x] add a glossary that explains "autothread" | 18:25 | |
r25256 | moritz++ | [u4x] more glossary | 18:30 | ||
18:37
Psyche^ joined
|
|||
pugs_svn | r25257 | hinrik++ | [util/perl6.vim] fix a few subtle bugs, highlight substitutions and transliterations | 18:37 | |
18:38
justatheory left
18:39
Helios left
|
|||
ruoso later &] | 18:42 | ||
18:42
ruoso left
18:43
Helios joined
|
|||
pugs_svn | r25258 | hinrik++ | [util/perl6.vim] update TODO | 18:48 | |
r25259 | hinrik++ | [S26] add vim modeline | 18:51 | ||
18:54
Patterner left,
Psyche^ is now known as Patterner
18:57
riffraff left
18:58
icwiener_ left,
icwiener joined
19:02
lambdabot left
19:03
PZt joined
19:05
justatheory joined,
lambdabot joined
19:06
pmurias joined
19:09
lambdabot left
19:11
lambdabot joined
|
|||
literal | rakudo: my @foo = <a b <c> d>; say @foo.perl | 19:35 | |
p6eval | rakudo 577566: OUTPUT«Statement not terminated properly at line 1, near "d>; say @"current instr.: 'parrot;PGE;Util;die' pc 129 (runtime/parrot/library/PGE/Util.pir:83)» | ||
literal | rakudo: my @foo = <a b c d>; say @foo.perl | ||
p6eval | rakudo 577566: OUTPUT«["a", "b", "c", "d"]» | ||
diakopter stares at 444k lines of STD.json | 19:37 | ||
TimToady | std: my @foo = <a b <c> d>; say @foo.perl | 19:39 | |
p6eval | std 25259: OUTPUT«00:02 34m» | ||
19:50
icwiener left
19:51
icwiener joined
20:16
hercynium left,
rhr_ left,
smtms left,
samlh left,
[cotto] left,
[particle]1 left,
literal left,
zostay left,
pugs_svn left,
kcwu left,
icwiener left,
M_o_C left,
aindilis left,
Exodist left,
ayrnieu left,
dalek left,
moritz_ left,
TimToady left,
rakudo_svn left,
p6eval left,
simcop2387 left,
meppl left,
hudnix left,
gfldex_ left,
Nom- left,
agentzh left,
BinGOs left,
cognominal left,
finanalyst left,
IllvilJa left,
DataPusher left,
alester left,
szabgab left,
wolverian left,
jrockway left,
tcliou|Away left,
bigpresh left,
Gothmog_ left,
jnthn left,
revdiablo left,
sunnavy left,
felipe left,
justatheory left,
nihiliad left,
kane_ left,
estrabd left,
hcchien left,
clkao left,
edenc left,
preflex left,
kbaud1 left,
c9s left,
idemal left,
s1n left,
Grrrr left,
broquaint left,
LCamel left,
AzureStone left,
mikehh left,
elmex left,
yves left,
iblechbot left,
viklund left,
jan_ left,
xinming left,
gbacon left,
yahooooo left,
ilbot2 left
20:17
allbery_b left,
mj41 left,
lambdabot left,
Patterner left,
lisppaste3 left,
c1sung left,
jeremiah left,
buu left,
orafu left,
Matt-W left,
PerlJam left,
drbean left,
SamB left,
mtve left,
integral left,
Maddingue left,
Caelum left,
maerzhase left,
Tene left,
avar left,
spinclad left,
baest left,
cls_bsd left,
Khisanth left,
pmichaud left,
diakopter left,
f00li5h left,
pmurias left,
Helios left,
zev left,
Cyrus left,
dmpk2k left,
mdxi left,
jjore left,
ft left,
charsbar_ left,
nipotan left,
awwaiid left
20:18
pmichaud joined,
icwiener joined,
lambdabot joined,
pmurias joined,
justatheory joined,
Helios joined,
Patterner joined,
M_o_C joined,
finanalyst joined,
mikehh joined,
hercynium joined,
lisppaste3 joined,
rhr_ joined,
nihiliad joined,
aindilis joined,
IllvilJa joined,
maerzhase joined,
DataPusher joined,
Tene joined,
alester joined,
Exodist joined,
meppl joined,
kane_ joined,
elmex joined,
kbaud1 joined,
yves joined,
iblechbot joined,
szabgab joined,
viklund joined,
jan_ joined,
ayrnieu joined,
revdiablo joined,
drbean joined,
Nom- joined,
SamB joined,
smtms joined,
c9s joined,
dalek joined,
idemal joined,
xinming joined,
avar joined,
bigpresh joined,
[particle]1 joined,
cognominal joined,
broquaint joined,
tcliou|Away joined,
Grrrr joined,
irc.freenode.net sets mode: +o pmichaud,
AzureStone joined,
agentzh joined,
jrockway joined,
charsbar_ joined,
mdxi joined,
wolverian joined,
Caelum joined,
hudnix joined,
integral joined,
jeremiah joined,
p6eval joined,
mj41 joined,
BinGOs joined,
ft joined,
allbery_b joined,
zostay joined,
[cotto] joined,
samlh joined,
literal joined,
pugs_svn joined,
kcwu joined,
simcop2387 joined,
preflex joined,
dmpk2k joined,
Khisanth joined,
c1sung joined,
s1n joined,
Matt-W joined,
gfldex_ joined,
sunnavy joined,
f00li5h joined,
rakudo_svn joined,
gbacon joined,
TimToady joined,
moritz_ joined,
nipotan joined,
mtve joined,
Cyrus joined,
edenc joined,
Maddingue joined,
diakopter joined,
irc.freenode.net sets mode: +oooo literal TimToady moritz_ diakopter,
PerlJam joined,
buu joined,
ilbot2 joined,
baest joined,
felipe joined,
jnthn joined,
Gothmog_ joined,
estrabd joined,
hcchien joined,
irc.freenode.net sets mode: +oo PerlJam jnthn,
clkao joined,
LCamel joined,
zev joined,
awwaiid joined,
jjore joined,
yahooooo joined,
spinclad joined,
orafu joined,
cls_bsd joined
|
|||
pugs_svn | r25260 | pmichaud++ | Clarify glossary entry for "autothreading" a bit. | 20:29 | |
20:42
hudnix left,
gfldex_ left,
meppl left
20:43
meppl joined,
hudnix joined,
gfldex_ joined
20:55
IllvilJa left
20:56
dominiko joined
21:05
justatheory left
21:10
hudnix_ joined,
hudnix left,
gfldex_ left,
meppl left,
hudnix_ is now known as hudnix
21:11
meppl joined,
gfldex_ joined
21:14
gfldex_ left
21:15
gfldex joined
21:20
IllvilJa joined
21:27
stephenlb joined
21:32
schmalbe joined
21:33
justatheory joined
21:43
REPLeffect joined
21:47
DemoFreak joined
21:50
Tene_ joined
21:55
M_o_C left
21:59
Whiteknight joined
22:00
meppl left
22:02
Tene left
22:06
viklund left
22:10
REPLeffect left
22:16
DemoFreak left,
DemoFreak joined
22:21
schmalbe left
22:22
dominiko left
22:25
ludan joined
22:30
pmurias left
22:41
DemoFreak left
22:42
DemoFreak joined
22:49
DemoFreak left
22:50
DemoFreak joined
23:01
Exodist left
23:09
iblechbot left
23:19
justatheory left
23:28
maerzhase left
23:37
hercynium left
23:38
Tene joined
23:44
justatheory joined,
DemoFreak left
23:47
scrottie joined
23:49
Tene_ left
23:55
cognominal left
23:58
cognominal joined
|