»ö« | perl6.org/ | nopaste: paste.lisp.org/new/perl6 | evalbot usage: 'perl6: say 3;' or rakudo:, alpha:, pugs:, std:, or /msg p6eval perl6: ... | irclog: irc.pugscode.org/ | UTF-8 is our friend! Set by lichtkind on 5 March 2010. |
|||
pugssvn | r30065 | Darren_Duncan++ | the '%','mod' are the 'modulo' op; 'modulus' is either what you call the result besides 'remainder', or it is another name for 'absolute value' op | 00:06 | |
00:10
lue left
|
|||
sorear | Tene: Here's my take - if your $LANGUAGE is insufficiently Parrot-like to handle arbitrary PMCs thrown at it, it should provide an overriden 'import' that can take outside PMCs and coerce them into the most appropriate local object, possibly creating a proxy for things with state | 00:14 | |
Tene: note that get_exports needs to do the same thing, for contravariant types | |||
Tene: if possible, said language should provide pragmata for controlling how it munges Parrot data | 00:15 | ||
Tene: see github.com/jnthn/blizkost/raw/1dd01.../SEMANTICS | 00:16 | ||
Tene: that's what I'm going to do for Perl 5... you cannot take an arbitrary PMC and make it look like a SV, so I've had to make up a few rules. | 00:17 | ||
Unrelatedly, I wonder if there would be a market for a Perl5 on Parrot implementation that can't handle XS (but could use Parrot and Perl6 libs) | 00:19 | ||
jnthn | sorear: Thing is, CPAN is of epic importance, and a decent bit of it relies on XS. | 00:21 | |
Either directly or indirectly. | 00:22 | ||
That's why I wanted to go the "embed Perl 5" route with Blizkost'. | |||
sorear | yes | ||
Blizkost is our only hope for *direct* XS users | |||
jnthn | uh, Blízkosť, I mean, of course. :-) | 00:23 | |
sorear | but a lot of Perl 5 modules that use XS directly, are actually small little things that could be reimplemented in terms of Parrot | ||
jnthn | That's quite possible. | 00:24 | |
TimToady | in any case, p6 needs a p5 parser built in so that it can find the extent of p5 code, even if it ends up feeding it off to the p5 interpreter | ||
sorear | then there's big stuff like DBI and POE that use XS for performance hacks, but I'm sure other people will port those | ||
jnthn | TimToady: If you're embedding 5 in 6 or interleaving, sure. | ||
sorear | \o/ I just got a license to write Parse::Perl5 | 00:25 | |
jnthn | TimToady: I'm mostly hoping for being able to do a "use" of Perl 5 modules for Rakudo *. | ||
TimToady | that's also a good thing | ||
jnthn | Well | ||
It's the one I think we have some vague chance of actually being successful with in the timeframe too :-) | 00:26 | ||
TimToady | I wasn't suggesting anyone other than me work on STD_P5 :) | 00:27 | |
jnthn | Granted Zavolaj has somewhat calmed our immediate "omg no way to access databases in Perl 6" issues, so being able to use Perl 5 DBI isn't as absolutely critical as I first expected, but it's still nice, and there's the rest of CPAN of course. :-) | ||
.oO( One day I might start a project and give it an English name... ) |
00:28 | ||
sorear | One day I might start a project and finish it. | 00:30 | |
TimToady | mee2 | 00:33 | |
viv was supposed to replace gimme5, but hasn't happened yet... | 00:34 | ||
jnthn | It's almost as if implementing Perl 6 is hard or something. | ||
:-) | 00:35 | ||
TimToady | .oO(hard things should be possible) |
||
00:47
jhuni joined
01:02
xomas left
|
|||
spinclad | .oO(impossible things should be before breakfast) |
01:04 | |
pugssvn | r30066 | lwall++ | [STD] allow for the fact that ambiguous use of . probably indicates p5-think, not missing method parens | 01:07 | |
01:18
meppl left
01:22
dolmen left
01:30
jaldhar left
01:36
jaldhar joined
01:58
synth left
02:07
hercynium left,
brushie joined
02:21
silug left
02:29
am0c left
02:31
Chillance left
02:35
ruoso left
|
|||
TimToady | std: my @%a = (1, (2, (3, 4))); | 02:48 | |
p6eval | std 30066: OUTPUT«===SORRY!===Invalid hard reference syntax at /tmp/pyJNqSN2CT line 1:------> my @⏏%a = (1, (2, (3, 4))); expecting any of: desigilname twigilFAILED 00:01 107m» | ||
TimToady | std: $_ .= 'string'; | 02:53 | |
p6eval | std 30066: OUTPUT«===SORRY!===Unsupported use of . to concatenate strings or to call a quoted method; in Perl 6 please use ~ to concatenate, or if you meant to call a quoted method, please supply the required parentheses at /tmp/oPXbPZo4R5 line 1:------> $_ .= | ||
..'string'⏏… | |||
colomon | rakudo: $_ .= 'string'; | 02:56 | |
p6eval | rakudo 328227: OUTPUT«Quoted method name requires parenthesized arguments at line 11, near ";"current instr.: 'perl6;HLL;Grammar;panic' pc 500 (ext/nqp-rx/src/stage0/HLL-s0.pir:328)» | ||
colomon | LTA. | ||
02:59
lue joined
|
|||
lue | ...not doing that again! :) | 03:00 | |
03:03
gfx joined
|
|||
colomon | TimToady: ping? | 03:07 | |
rakudo: say 0 ?| Mu | |||
p6eval | rakudo 328227: OUTPUT«No applicable candidates found to dispatch to for 'infix:<?|>'. Available candidates are::(Any $a, Any $b)current instr.: '_block14' pc 29 (EVAL_1:0)» | ||
colomon | rakudo: say 0 || Mu | 03:08 | |
p6eval | rakudo 328227: OUTPUT«Mu()» | ||
colomon | rakudo: say Mu || 0 | 03:09 | |
p6eval | rakudo 328227: OUTPUT«0» | ||
TimToady | pang | ||
lue | Moo | ||
colomon | TimToady: should 0 ?| Mu work? Right now it gripes because ?| is defined on Any, Any. | 03:10 | |
03:10
vamped left
03:11
vamped joined
|
|||
TimToady | seems reasonable for it to fail | 03:13 | |
colomon | rakudo: say ?Mu | ||
p6eval | rakudo 328227: OUTPUT«0» | ||
colomon | I will change the test to Any, then... | 03:14 | |
rakudo: say 0 ?| Any | |||
p6eval | rakudo 328227: OUTPUT«0» | ||
TimToady | most failures should return a Failure, anyway | ||
or Nil | |||
Mu is more undef than undef :) | |||
colomon | :) | 03:15 | |
lue | Aw, but I like cheese ( :D ) | ||
colomon | rakudo: say 7 > any(4..12) | 03:16 | |
p6eval | rakudo 328227: OUTPUT«maximum recursion depth exceededcurrent instr.: 'parrot;P6object;HOW' pc 54 (runtime/parrot/library/P6object.pir:98)» | ||
TimToady | rakudo: say 7 > any(4...12) | 03:17 | |
p6eval | rakudo 328227: OUTPUT«maximum recursion depth exceededcurrent instr.: 'parrot;P6object;HOW' pc 54 (runtime/parrot/library/P6object.pir:98)» | ||
TimToady | rakudo: say 7 > any(4,5,6,7,8,9,10,11,12) | ||
p6eval | rakudo 328227: OUTPUT«maximum recursion depth exceededcurrent instr.: 'parrot;P6object;HOW' pc 54 (runtime/parrot/library/P6object.pir:98)» | 03:18 | |
colomon is not going to learn how auto-threaded is implemented before going to bed tonight. | |||
TimToady | rakudo: say 7 > 4|5|6|7|8|9|10|11|12 | ||
p6eval | rakudo 328227: OUTPUT«maximum recursion depth exceededcurrent instr.: 'parrot;P6object;HOW' pc 54 (runtime/parrot/library/P6object.pir:98)» | 03:19 | |
lue | result: true (in my book) | ||
TimToady | rakudo: say "yes" if 7 > 4|5|6|7|8|9|10|11|12 | ||
p6eval | rakudo 328227: OUTPUT«maximum recursion depth exceededcurrent instr.: 'parrot;P6object;HOW' pc 54 (runtime/parrot/library/P6object.pir:98)» | ||
TimToady | rakudo: say "yes" if 7 > 4 | ||
p6eval | rakudo 328227: OUTPUT«yes» | ||
TimToady | rakudo: say "yes" if 7 > 4|5 | ||
p6eval | rakudo 328227: OUTPUT«maximum recursion depth exceededcurrent instr.: 'parrot;P6object;HOW' pc 54 (runtime/parrot/library/P6object.pir:98)» | ||
TimToady | rakudo: say 4|5 | ||
p6eval | rakudo 328227: OUTPUT«any(4, 5)» | ||
lue | That's is not what recursion is not that is not...! | 03:20 | |
TimToady | rakudo: say "yes" if 7 == 4|5 | ||
p6eval | rakudo 328227: ( no output ) | ||
TimToady | rakudo: say "yes" if 7 == 4|7 | ||
p6eval | rakudo 328227: OUTPUT«yes» | ||
TimToady | rakudo: say "yes" if 7 == any(4..12) | ||
p6eval | rakudo 328227: OUTPUT«yes» | ||
TimToady | problem seems to be with > | ||
lue | rakudo: say "yes" if 7 > (4|5|6|7|8|9|10|11|12) | 03:21 | |
p6eval | rakudo 328227: OUTPUT«maximum recursion depth exceededcurrent instr.: 'parrot;P6object;HOW' pc 54 (runtime/parrot/library/P6object.pir:98)» | ||
TimToady | rakudo: say "yes" if 7 >= any(4..12) | ||
p6eval | rakudo 328227: OUTPUT«maximum recursion depth exceededcurrent instr.: 'parrot;P6object;HOW' pc 54 (runtime/parrot/library/P6object.pir:98)» | ||
TimToady | rakudo: say "yes" if 7 <= any(4..12) | ||
p6eval | rakudo 328227: OUTPUT«maximum recursion depth exceededcurrent instr.: 'parrot;P6object;HOW' pc 54 (runtime/parrot/library/P6object.pir:98)» | ||
TimToady | rakudo: say "yes" if 7 <=> any(4..12) | 03:22 | |
p6eval | rakudo 328227: OUTPUT«yes» | ||
pugssvn | r30067 | colomon++ | [t/spec] Refudge for Rakudo. | ||
TimToady | are the comparisons defined in Mu rather than Any? | ||
lue | what does <=> do? Does it mean less than, equal to, or greater than? | 03:23 | |
TimToady | yes | ||
so does leg | |||
colomon | TimToady: looking... they don't appear to be in operators.pm... | 03:24 | |
TimToady | is > or < used in Junction? | ||
03:24
hercynium joined
|
|||
sorear | does auto-threaded actually even exist yet? seems like an odd priority for pre-R* | 03:25 | |
lue | rakudo: say 3 <=> 4 | ||
TimToady | it was in alpha | ||
p6eval | rakudo 328227: OUTPUT«-1» | ||
lue | rakudo: say 3 <=> Mu | ||
p6eval | rakudo 328227: OUTPUT«No applicable candidates found to dispatch to for 'infix:<<=>>'. Available candidates are::(Any $a, Any $b)current instr.: '_block14' pc 29 (EVAL_1:0)» | ||
lue | rakudo: say 3 <=> Any | ||
colomon | sorear: it works for ==, as TimToady just showed... | ||
p6eval | rakudo 328227: OUTPUT«Use of type object as valuecurrent instr.: 'perl6;Perl6Exception;throw' pc 14489 (src/builtins/Seq.pir:77)» | ||
TimToady | alpha: say 7 > any(4..12) | ||
p6eval | alpha 30e0ed: OUTPUT«any(Bool::True, Bool::False)» | ||
sorear | colomon: Oh, so auto-threaded only means distribution over junctions | 03:26 | |
I was taking it to imply actual parallel execution | |||
colomon | rakudo: say 7 == any(4..12) | ||
p6eval | rakudo 328227: OUTPUT«any(Bool::False, Bool::True)» | ||
TimToady | it can be parallel | ||
colomon | TimToady: I can't figure out where the comparisons are defined at all. | 03:27 | |
lue | rakudo: my $boot=3; my $up=True; say $boot leg $up # Is there something I can fix? I'm bored :/ | ||
p6eval | rakudo 328227: OUTPUT«1» | ||
colomon | (except for before and after, which I wrote.) | ||
sorear | What is alpha? | ||
TimToady | rakudo: say 7 after any(4..12) | ||
colomon | sorear: the first Rakudo | ||
p6eval | rakudo 328227: OUTPUT«any(Bool::True, Bool::False)» | ||
TimToady | you'll be please to know that your creation works righ | 03:28 | |
*pleased | |||
colomon | sorear: the current Rakudo is a major refactor of the original, and lots of bits still don't work. | ||
sorear | rakudo: if (7 == any(4 .. 12)) { say "Y" } else { say "N" } | ||
colomon | on the other hand, lots of bits work better than before. | ||
p6eval | rakudo 328227: OUTPUT«Y» | ||
sorear | rakudo: if (7 != any(4 .. 12)) { say "Y" } else { say "N" } | ||
p6eval | rakudo 328227: OUTPUT«Y» | ||
colomon | TimToady: before and after are declared Any, Any. | 03:29 | |
TimToady | maybe > and < get turned into parrot codes | ||
03:30
MAK_ joined
|
|||
colomon | TimToady: could be. beyond my ken. | 03:30 | |
lisppaste3 | MAK pasted "Num in context of reference" at paste.lisp.org/display/96351 | 03:31 | |
MAK_ | say didn't work as I expected | 03:32 | |
TimToady | you don't say | ||
sorry :) | |||
colomon | rakudo: my @a = 1..3; say "hello @a[1]" | ||
p6eval | rakudo 328227: OUTPUT«hello @a[1]» | ||
colomon | that's NYI. | ||
dalek | kudo: fefb298 | (Solomon Foster)++ | t/spectest.data: Turn on S03-operators/misc.t. |
||
colomon | rakudo: my @a = 1..3; say "hello { @a[1] }" | 03:33 | |
p6eval | rakudo 328227: OUTPUT«hello 2» | ||
lue | Is there anything critical that needs fixing? I hate lurking. | ||
MAK_ | ok | ||
colomon | afk # bed | 03:34 | |
lue | bye o/ | 03:36 | |
rakudo: my $a=1; say "hello there $a" | 03:37 | ||
p6eval | rakudo 328227: OUTPUT«hello there 1» | ||
lue | rakudo: my @a=[1,2,3]; say "hello there @a and to you too @a[1]" | ||
p6eval | rakudo 328227: OUTPUT«hello there @a and to you too @a[1]» | ||
03:37
MAK_ left
|
|||
lue | ah, so array don't interpolate AT ALL yet (what about hashes...) | 03:38 | |
rakudo: my %a={"hi",1,"oi",2}; say %a # making sure I typed this right... | |||
p6eval | rakudo 328227: OUTPUT«Odd number of elements found where hash expectedcurrent instr.: '&die' pc 16872 (src/builtins/Junction.pir:373)» | ||
lue | rakudo: my %a="hi",1,"oi",2; say %a # making sure I typed this right... | ||
p6eval | rakudo 328227: OUTPUT«hi 1oi 2» | ||
lue | rakudo: my %a="hi", 1, "oi", 2; say "Oh hello %a" | 03:39 | |
p6eval | rakudo 328227: OUTPUT«Oh hello %a» | ||
lue | I guess everyone leaves with colomon. (Here TimToady, I has your cricket) | 03:41 | |
03:41
[particle] joined
|
|||
TimToady | tnx...tnx...tnx...tnx... | 03:42 | |
03:42
[particle]1 left
|
|||
lue | RED ALERT! Particle 1 has vanished. All units out to recover! </nonsense> | 03:44 | |
lue considers fixing the interpolation issue... | 03:49 | ||
03:58
hercynium left
04:04
rv2733 left
|
|||
lue | xkcd.com/353/ this comic almost killed XKCD :) (read the title text) | 04:07 | |
lue --not-here & | 04:12 | ||
04:15
lest_away is now known as lestrrat
04:17
alester joined
04:25
vamped left
04:29
silug joined
04:37
eternaleye joined
05:17
c1sung joined
05:47
jferrero left
06:18
molaf joined
06:24
wolf2k_ubuntu left
06:28
wolf2k_ubuntu joined
06:38
gfx left
06:56
snarkyboojum left
|
|||
colomon | rakudo: say Mu // 42 | 07:17 | |
p6eval | rakudo fefb29: OUTPUT«42» | ||
07:17
justatheory left
|
|||
colomon | rakudo: say 0 ^^ 42 | 07:17 | |
p6eval | rakudo fefb29: OUTPUT«42» | ||
colomon | rakudo: say 1 ^^ 42 | 07:18 | |
p6eval | rakudo fefb29: OUTPUT«» | ||
07:22
k23z__ joined
|
|||
k23z__ | came to ask about set operations | 07:22 | |
if we'll have them in p6 | |||
I mean in the core | |||
now I have to use Set::Scalar in p5 to use them | 07:23 | ||
and they're written in pure Perl which makes them a bit slow .. | |||
so for example for size of intersection of 2 sets I do (Set::Scalar->new(elements) * Set::Scalar->new(elements))->size | |||
colomon | There is a Set type specified for p6, but as I understand it, the details are still in doubt. | 07:24 | |
k23z__ | this is .. ok , but we I've seen better things | ||
colomon: ah ok.. it would be very useful if it would be implemented ... | |||
sorear | How do I export a trait? | 07:25 | |
use My::Module; class Foo { has $.moo is cool; } | |||
colomon | rakudo: say 0 ^^ 0 | 07:27 | |
p6eval | rakudo fefb29: OUTPUT«0» | ||
pugssvn | r30068 | colomon++ | [t/spec] Refudge, switch return 1 if to if { return 1 }. | 07:29 | |
07:32
alester left
|
|||
dalek | kudo: 60f9b3b | (Solomon Foster)++ | t/spectest.data: Move some S03-operators tests back into their proper location, delete duplicate, turn on S03-operators/short-circuit.t. |
07:33 | |
colomon | rakudo: say 42 if 0 | 07:43 | |
p6eval | rakudo fefb29: ( no output ) | ||
colomon | rakudo: say (42 if 0) | ||
p6eval | rakudo fefb29: OUTPUT«» | ||
07:43
M_o_C left
|
|||
colomon | rakudo: say (42 if 0).WHAT | 07:44 | |
p6eval | rakudo fefb29: OUTPUT«Parcel()» | ||
pugssvn | r30069 | colomon++ | [t/spec] Fudge out "return if" test. | ||
dalek | kudo: 345f63d | (Solomon Foster)++ | t/spectest.data: Turn on S04-statement-modifiers/if.t. |
07:50 | |
jhuni | rakudo: say [+] ^5; | 07:56 | |
p6eval | rakudo fefb29: OUTPUT«Confused at line 11, near "say [+] ^5"current instr.: 'perl6;HLL;Grammar;panic' pc 500 (ext/nqp-rx/src/stage0/HLL-s0.pir:328)» | ||
08:47
masak joined
|
|||
masak | good morning, #perl6 | 08:47 | |
sorear | hello | ||
masak | this Japanese twitterer who wants 'are' as a synonym of 'is'... is there some simple grammar-extending code snippet we could throw at him to give him that? | 08:50 | |
masak tries to answer his own question by reading STD.pm | |||
sorear | While you're there, could you please tell me how to export a trait | 08:56 | |
masak | not sure the answer to that is in STD.pm. | ||
09:04
Trashlord left
09:06
rgrau joined
09:07
iblechbot joined
09:15
eternaleye left
|
|||
k23z__ | this STD.pm seems to be quite central , I should read it too | 09:18 | |
masak | it's a good read. | ||
in terms of the Perl 6 code out there, it's one of the most complex pieces of code, and it's virtually devoid of short-term workarounds due to implementation limitations. | 09:20 | ||
09:22
eternaleye joined
09:23
jhuni left
09:28
rgrau left
09:31
mssm joined
|
|||
k23z__ | when I git pull on the rakudo | 09:35 | |
how do I know if I have to recompile in order to get the new things added ? | |||
for example now I see this modifs | |||
build/PARROT_REVISION | 2 +- | |||
src/Perl6/Actions.pm | 121 +++++++++++++++++++++++++++++------------- | |||
src/Perl6/Grammar.pm | 28 +++++++--- | |||
src/Perl6/Module/Loader.pm | 41 +++++++++++---- | |||
src/Perl6/Module/Locator.pm | 15 ++++-- | |||
src/core/Any-str.pm | 6 ++- | |||
src/core/EnumMap.pm | 7 ++- | |||
src/core/Num.pm | 15 +++++ | |||
src/core/Parcel.pm | 2 +- | |||
src/core/Seq.pm | 45 ++++++++++++++++ | 09:36 | ||
masak | basically, if anything changed withing src/, you need to recompile. | ||
k23z__ | src/core/operators.pm | 20 +++++++ | ||
src/core/traits.pm | 4 ++ | |||
src/glue/dispatch.pir | 27 ++++++++++ | |||
src/pmc/p6opaque.pmc | 3 + | |||
src/pmc/perl6multisub.pmc | 63 ++++++++++++++++------ | |||
t/spectest.data | 47 +++++++++-------- | |||
masak | k23z__: please don't paste large amounts of text on the channel. | ||
k23z__ | do the .pir or .pmc mean I need to recompile rakudo ? | ||
ah ok | |||
sorry | |||
masak | k23z__: use nopaste services for that, such as the ones in the topic. | ||
k23z__: yes, any change within src/ means you very probably need to recompile Rakudo. | 09:37 | ||
k23z__ | can I open a socket currently in rakudo ? | ||
09:37
jhuni joined
|
|||
masak | one used to be able to do that in alpha. | 09:37 | |
it doesn't work yet in master. | |||
sorear | no sockets? I guess I'm going to be fixing that soon | 09:38 | |
I have this wonderful knack for jumping in the deep end accidentally | 09:39 | ||
masak | yay | ||
k23z__ | sorear: if you do please let me know, I'd hack something with it | ||
sorear is trying to learn the perl 6 way by righting an IRC client | |||
09:39
Trashlord joined
|
|||
sorear | writing | 09:39 | |
masak | sorear: cool. | ||
we need apps like that. | 09:40 | ||
09:41
saleem left
|
|||
sorear | well, it's also competing with bliznost for brain cycles | 09:41 | |
do you still say cool? :) | |||
k23z__ | masak: if I hit make now it says there's nothing to be done, although I have "git pull" before | ||
masak | sorear: I wouldn't dream of laying out your schedule for you :) | 09:42 | |
sorear | when in doubt, git clean -dfx # read the documentation before running this | ||
masak | k23z__: what sorear said. also, it makes little sense, so one of us is missing something. :) | 09:43 | |
k23z__ | hm | 09:45 | |
sorear | masak: can you give me an example of perl 6 socket code? | ||
k23z__ | sorear: src/old/setting/IO/Socket/INET.pm ? | 09:46 | |
masak | aye. | ||
was just going to link to that: github.com/rakudo/rakudo/tree/alpha...etting/IO/ | |||
sorear | k23z__: socket code, not socket implementation | ||
masak | oh. | 09:47 | |
k23z__ | oh | ||
masak | well, there's Web.pm. | ||
sorear | I need to know exactly what's not working if I'm going to fix anything at all | ||
k23z__ | but I remember there was this wiki called november implemented in p6 , that surely needed to use some sockets sooner or later | ||
masak | sorear: github.com/masak/web/blob/master/li...PDaemon.pm | ||
I should probably link to the HTTP::Daemon code as well... | 09:48 | ||
gitorious.org/http-daemon/mainline/.../Daemon.pm | 09:49 | ||
sorear | So why is there lots of setting stuff in old? | ||
sorear is really, really new here | |||
09:49
z3ndrag0n joined
|
|||
masak | sorear: the old/ directory contains alpha code. | 09:49 | |
I'm actually not sure what prompted people to keep it around in the new branch. | 09:50 | ||
then again, I can sometimes be a purist, and I don't always see the pragmatic reasons for things. | |||
09:50
Su-Shee joined
|
|||
sorear | When did rakudo cease being alpha? | 09:50 | |
masak | sorear: a week or so after the January release, I believe. | 09:51 | |
sorear | oh | 09:52 | |
right | |||
ng | |||
now I just need to figure out what's wrong | |||
I guess ng doesn't support a setting? | 09:53 | ||
masak | it does. but it calls it CORE instead. | 09:57 | |
sorear | where is it kept? | 10:04 | |
masak | github.com/rakudo/rakudo/tree/master/src/core/ | ||
araujo | guys, pugs was abandoned? | 10:05 | |
masak | araujo: no, but the air went out of its one single implementor. | ||
sorear | that's exactly the same thing | ||
araujo | :P | 10:06 | |
masak | unless you count 'abandon' as a conscious, deliberate act. | ||
I don't think anyone wanted Pugs to slow down to a halt, implementation-wise. | 10:07 | ||
it just happened. | |||
araujo | I see I see, ok | ||
sorear | Is it possible for me to modify the setting without rebootstrapping Rakudo? | 10:11 | |
k23z__ | sorear: what you suggested is equivalent to make clean ; make | ||
sorear | no | ||
k23z__ | sorear: which is ok but it takes the time of a build from scratch ... | ||
sorear: it's not ? | |||
hm | |||
sorear | make clean is unreliable | ||
you should always expect it to not work | |||
because, quite simply, it never gets tested | |||
k23z__ | ah ok, I was just trying to say it's building from scratch now | 10:12 | |
masak | sorear: if by 'rebootstrapping' you mean 'rebuilding', then no. | ||
k23z__ | sorear: I was hoping for incremental builds | ||
sorear: would that be possible ? | |||
sorear | k23z__: don't ask me | ||
masak | k23z__: usually, that's what make does. | ||
sorear | wait, nevermind, there's no way what I asked for is even possible | 10:13 | |
10:13
zoi joined
|
|||
masak | :) | 10:13 | |
sorear | parrot perl6.pbc src/gen/core.pm > src/gen/core.pbc # this command takes 12 hours on my machine, I'd *love* it if it could be broken up somehow | ||
k23z__ | hey sorry | 10:14 | |
masak | sorear: you don't have much RAM, do you? | ||
k23z__ | if parrot had something like distcc ... | 10:15 | |
and you had a build farm | |||
sorear | core.pm build has a VMSIZ of ~400MB, I have 384MB of RAM | ||
if there were some magic parrot --use-10%-less-ram switch I'd be set | |||
k23z__ | sorear: use swap on disk ? | 10:16 | |
sorear | or if I could somehow figure out why rakudo uses so much ram | ||
k23z__: I *do* use swap on disk. If I were using swap on network I would know exactly what was wrong | |||
masak | sorear: it's taking so long because you have so little RAM. if you'd get more, it would go faster. | 10:17 | |
building Rakudo easily gobbles up 1024MB. probably a lot more. | |||
the memory consumption definitely went up as we switched to the ng branch. | 10:18 | ||
sorear | what does it even use that much for | 10:20 | |
sorear wonders if there's a memory leak somewhere; compiling a bunch of functions ought not to require that much more than compiling one | |||
also, I was watching top during the build, and total allocated memory never went above ~420 | 10:21 | ||
masak | I am compiling Rakudo now. top tells me that the allocated memory is 620 MB. | 10:25 | |
sorear | oh, probably word size differences | ||
masak | how would word size differences affect the number of bytes allocated? | 10:26 | |
sorear | PMC* is 4 bytes on my system, 8 bytes in most of the rest of the world | ||
an awful lot of the data Parrot allocates is made of void* | |||
masak | I see. | ||
k23z__ | sorry my question went unanswered about incremental builds, my question was if I could recompile faster please ? | 10:29 | |
recompile rakudo | |||
sorear | no, you can't | ||
k23z__ | because for example if I change 10 lines I need to wait ~30m to see the result | ||
sorear: ah ok then | |||
sorear | the bulk of the time spent compiling rakudo is compiling the prelude | ||
which is a single monolithic thing | 10:30 | ||
k23z__ | sorear: and could it be broken up ? | ||
sorear | then it wouldn't be a prelude | ||
masak | k23z__: I don't know if it answers your question -- but usually, unless one did 'make clean' or equivalent, the 'make' process only rebuilds the thing that change and those things that are dependencies of that. | ||
the CORE/Setting/Prelude is quite late in the build chain, for example. | |||
if you only change that, make won't rebuild the grammar and actions files. | 10:31 | ||
sorear | masak: src/core/* is 3ksloc of code. Can I expect that, if my own programs grow to that size, they too will consume 400+ MiB to load? | ||
k23z__ | masak: yes the problem is I tried "make" exactly after I "git pull" and it told me there was nothing else to do(which was weird since I saw that git pulled ~335 new lines) and so sorear told me to do "git clean -dxf" which erased all the built binaries and then I "perl ./Configure.PL --gen-parrot" again and "make" again ... and now I'm waiting for it to finish ... | 10:32 | |
I'm pretty sure I missed something ... I don't know what | |||
masak | sorear: I'm not one to either give promises or dire predictions about Rakudo memory use. but I do know that competent people are working at optimizing Parrot and Rakudo. | ||
k23z__: right. neither do I. I hope 'make' works for you next time. | 10:33 | ||
it usually does for me. | |||
k23z__ | masak: I will try to change one line in some file under src/ and see if make behaves the same way(telling me there's nothing else to be done) | 10:34 | |
but about the build times I wonder | |||
wouldn't it be possible to build a dependency tree | |||
of the whole rakudo project | |||
and then compile distributed on multiple machines | 10:35 | ||
looking at that tree to see if there are no inter-dependencies ? | |||
if they are on differen branches of the tree they can be compiled on differen machines I would think | |||
that is how I suppose distcc works | |||
I have 3-4 idle machines I could put them to work for me like that :) | |||
10:36
perl7 joined
|
|||
masak | k23z__: those are interesting questions. I don't have the answer, unfortunately. | 10:36 | |
sorear | masak: fair enough. | 10:37 | |
perl7 | What does "Rakudo *" really mean? | ||
masak | [baclog] TimToady: what remains before viv can replace gimme5? | ||
perl7: it's a point in the development of Rakudo where we say "Here. This is something that you can start building applications with." | 10:38 | ||
perl7 | masak: production ready? | ||
masak | perl7: depends on what you're producing :) | ||
more like 'usable'. | 10:39 | ||
k23z__ | masak: :) | ||
perl7 | masak: applications in wich I have no time to fix language tricks | ||
masak | perl7: 'fix language tricks'? what do you mean? | ||
perl7 | mberends: There are more intelligent ways of calling me stupid | 10:40 | |
sorry | |||
k23z__ | wtf ? | ||
masak | very non sequitur, I must say. | ||
perl7 | masak: I don't like to work with language implementation issues,... | 10:41 | |
masak | perl7: we're still finding a lot of them. that's just where we are right now. | 10:42 | |
perl7: it will get better, but we simply have to find the issues before that. | |||
there's no magical way that I'm aware of. | |||
perl7 | masak: will be the Rakudo * clean of identified issues? | ||
masak | :) | 10:43 | |
is that the same as asking 'will the RT queue be empty?' ? | |||
because I don't think it ever will. even if you're charitably only counting the real bugs in there. | |||
and that's not because of Rakudo, that's because of software in general. | 10:44 | ||
perl7 | masak: you're rigth, but I ask for identified ones | ||
masak | RT contains the identified ones. | ||
k23z__ | if you have supplies of f00d and a place to crash and paid utilities ... I could take the bug count to zero | ||
sorear | perl7: please realize that you are not dealing with a contracted company here | ||
masak | k23z__: you're welcome to stay at my house. | ||
perl7 | sorear: I'm asking, nor requiring | ||
k23z__ | masak: that is very nice of you Carl , very hospitable :) | 10:45 | |
perl7 | masak: do you have a link to see the RT status for Rakudo * | ||
masak | perl7: tinyurl.com/yak6y85 | 10:46 | |
perl7 | masak: thnaks | ||
masak | k23z__: it'll be fun. I'll provide the f00d, a mattress, and even a laptop if you need it. free wifi. stay as long as you fix things in the RT queue. | 10:47 | |
10:48
xinming_ joined
|
|||
masak | k23z__: we can even race and see if you can fix more tickets than I can submit :) | 10:50 | |
10:50
meppl joined
10:51
xinming left
10:55
jaldhar left,
jaldhar joined
|
|||
masak | rakudo: subset OddInt of Int where { $_ % 2 }; class OhNoes is OddInt {}; my $i = OddInt.new; say $i | 10:57 | |
p6eval | rakudo 345f63: OUTPUT«0» | ||
masak | should classes be allowed to inherit from subtypes? | ||
um. I mean. | 10:58 | ||
rakudo: subset OddInt of Int where { $_ % 2 }; class OhNoes is OddInt {}; my $i = OhNoes.new; say $i | |||
p6eval | rakudo 345f63: OUTPUT«0» | ||
masak | both of these cases are problematic, of course. but the first one is already known. | 10:59 | |
11:05
perl7 left
11:07
m6locks left,
m6locks joined
11:08
zibri joined
11:10
mssm left
11:22
payload joined
11:23
mssm joined
|
|||
k23z__ | masak: hehe :) | 11:26 | |
11:28
payload left
|
|||
masak | '"Talent" is the worst excuse cited by people who give up." -- Carl, the glassblower in ソ・ラ・ノ・ヲ・ト (Soranowoto) | 11:38 | |
that's heartening for those of us who just make it up as we go along. :) | 11:41 | ||
11:46
pmurias joined
|
|||
masak | rakudo: subset A of Int where { $_ == 42 }; grammar G is A {} | 11:50 | |
p6eval | rakudo 345f63: ( no output ) | ||
masak | rakudo: subset A of Int where { $_ == 42 }; grammar G does A {} | ||
p6eval | rakudo 345f63: OUTPUT«Method 'postcircumfix:<[ ]>' not found for invocant of class ''current instr.: 'perl6;ClassHOW;add_composable' pc 3996 (src/metamodel/ClassHOW.pir:186)» | ||
masak | those two make even less sense. | 11:51 | |
11:56
k23z__ left
|
|||
jnthn | oh hai | 12:33 | |
12:33
k23z__ joined
|
|||
masak | lolitsjnthn | 12:33 | |
jnthn | huh...inheriting from a subset type? :-/ | 12:34 | |
Or does-ing one | |||
masak | k23z__: I saw you were asking about set operations in the backlog. jnthn and I were just discussing that on the train back from the Copenhagen++ hackathon. | ||
jnthn | Yes, I think we'll ban that. :-) | ||
masak | jnthn: I agree. | ||
jnthn | Good find. | ||
k23z__ | Queried user last spoke 14s ago. masak is currently in this channel. | ||
masak | :) | ||
jnthn still needs to finish up a few other aspects of subset too | 12:35 | ||
May do that today. | |||
masak | yay | ||
k23z__ | hmm my seen irssi script seems to work | ||
jnthn was happy to close a masakbug last night too :-) | 12:36 | ||
masak | yeah, saw that. jnthn++ | ||
jnthn | I still need to make $x.SomeRole::methname() work | ||
Though did put things back so there'll be an easy-ish way to do taht. | 12:37 | ||
*that | |||
masak | in 'my $a := $b;', both $a and $b are treated as lvalues. | 12:38 | |
that's the same, I guess, as saying that the operation is on the level of the containers, not the values. | |||
alpha: my $c = 42; my $a := my $b = $c; $b = 5; say ($a, $b, $c).perl | 12:40 | ||
p6eval | alpha 30e0ed: OUTPUT«[5, 5, 42]» | ||
k23z__ | masak: ban ? | 12:41 | |
12:41
iblechbot left
|
|||
masak | k23z__: sorry, I don't have an op bit. you'll have to ask someone else. | 12:41 | |
k23z__ | jnthn: ban ? | ||
masak: no no, I was talking about | |||
<@jnthn> Yes, I think we'll ban that. :-) | |||
masak | oh. | ||
k23z__ | I didn't understand what he meant | ||
jnthn: you will ban set operations ? | |||
masak | k23z__: no, jnthn was talking about a class inheriting from a subset. | 12:42 | |
k23z__ | aah yes | ||
masak: yes and can you tell me your conclusion from your train conversation please ? | |||
jnthn | k23z__: What masak said. I don't want to ban sets! :-) | ||
masak | k23z__: only loose things. we want set operations. there are many ways to do them; the least adventurous should probably be in CORE. | 12:43 | |
k23z__: might support one Unicode op set and one Texas/ASCII op set. | |||
k23z__ | If I were to implement them should I write them in PIR, NPQ , Perl6 ? | 12:44 | |
masak | k23z__: might be simplest to do it as a Perl 6 module for now. | ||
jnthn | Aye, Perl 6. | ||
k23z__ | I understand and maybe it can be ported to PIR/NPQ later | ||
masak | k23z__: watch out for serious bikeshedding around the topic. | ||
jnthn | Avoid porting stuff to PIR. | ||
masak | k23z__: well, the nice thing about the CORE/Setting/Predule is that it doesn't need to be ported to PIR. | ||
jnthn | I'm trying to reduce the amount of PIR we have, not increase it. | ||
k23z__ | is PIR/NPQ faster than Perl6 ? I mean if it's more close to Parrot I'd imagine it would be faster but I may be wrong | 12:45 | |
jnthn | k23z__: Yes, for the moment that's certainly true. | 12:46 | |
12:46
masak left
|
|||
jnthn | Writing stuff in Perl 6 means that all of the metamodel bits and code types Just Work, though. | 12:46 | |
colomon | it also means it will work for other implementations of Perl 6. | 12:53 | |
and good morning. :) | 12:54 | ||
jnthn | morning, colomon :-) | 12:55 | |
Yes, that too - and other backends that Rakudo gets in the future. | 12:56 | ||
colomon | jnthn: tried to get S03-smartmatch/any-num.t last night in the middle of the night by defining Rat.ACCEPTS. But that just broke things even worse. | ||
> say 1 ~~ 1.0 | 12:57 | ||
Ambiguous dispatch to multi 'ACCEPTS'. Ambiguous candidates had signatures: | |||
:(Mu : Any $other;; *%_) | |||
:(Mu : Any ::Complex $other;; *%_) | |||
k23z__ | you guys like morphisms ? | 12:58 | |
13:02
M_o_C joined
|
|||
k23z__ | ah then I'll write it in Perl6 | 13:02 | |
those haskell guys apparently have a permutation module since april 2009 | |||
but I'm catching up on them :) | 13:03 | ||
jnthn | colomon: That's...weird. | 13:08 | |
colomon | jnthn: agreed | ||
jnthn | oh wait | ||
thsoe candidates are ambiguous | |||
Wait, ::Complex is a type capture | 13:09 | ||
Not a constraint. | |||
Is Complex not defined at this point? | |||
Or can you stub it? | |||
colomon | rakudo: ("That's" ... "weird").batch(10).perl.say | ||
p6eval | rakudo 345f63: OUTPUT«("That's", "That't", "That'u", "That'v", "That'w", "That'x", "That'y", "That'z", "That'aa", "That'ab")» | ||
jnthn | wow. :-) | 13:10 | |
colomon | jnthn: that's actually your Num.ACCEPTS (::Complex $other) it's referring to there, I think. | ||
13:10
k23z__ left
|
|||
jnthn | Removing the :: should work. | 13:11 | |
colomon | trying... | ||
jnthn | (if Complex has been stubbed) | ||
colomon | which it hadn't been, so it failed, but now I've added class Complex { ... } | 13:13 | |
13:13
k23z__ joined,
k23z__ left
|
|||
colomon | jnthn: I think that may have done it. | 13:22 | |
jnthn | \o/ | 13:23 | |
colomon: I think after that one, the rest of the smart-match tests are syntactic ones. | |||
colomon | unfortunately, while that makes test #2 in that testfile work, that doesn't get the test file working, because test #3 is a hard fail. | 13:24 | |
rakudo: say Mu ~~ 0 | |||
p6eval | rakudo 345f63: OUTPUT«Use of type object as valuecurrent instr.: 'perl6;Perl6Exception;throw' pc 14489 (src/builtins/Seq.pir:77)» | ||
colomon | jnthn: next problem: | 13:29 | |
> say 3+1i ~~ 3 | |||
You can only coerce a Complex to Num if the imaginary part is zero | |||
(which means I'm going to make some more tests here....) | 13:30 | ||
13:33
jhuni left
13:36
sECuRE joined
|
|||
sECuRE | my perl6 segfaults with a trivial hello world program. output, rakudo and parrot versions here: p.nnev.de/1210 - what could that be? | 13:37 | |
pugssvn | r30070 | colomon++ | [t/spec] Fudge and add some more obvious tests. | 13:38 | |
dalek | kudo: 2751645 | (Solomon Foster)++ | src/core/ (2 files): Fix Num.ACCEPTS(Complex), and implement Rat.ACCEPTS. |
13:45 | |
kudo: 8f0ca97 | (Solomon Foster)++ | t/spectest.data: Turn on S03-smartmatch/any-num.t. |
|||
jnthn | sECuRE: How did you build? With --gen-parrot, or a seperate Parrot build? | 13:47 | |
sECuRE | jnthn: using --gen-parrot | ||
i also deleted parrot* before calling that because it wouldn’t build otherwise | |||
before i used git pull ; git reset --hard to update my checkout of rakudo | |||
jnthn | That all sounds fine. | 13:49 | |
I'm sure I've seen something like this get posted a few days ago, I'm trying to remember what the outcome was. | |||
colomon just realized he pushed his last change without spectesting. Drat. | 13:50 | ||
jnthn | colomon: Oh noes! ;-) | ||
colomon | Mind you, I don't know of any fails yet. | 13:51 | |
jnthn | ah yes... irclog.perlgeek.de/perl6/2010-03-13#i_2097693 | ||
sECuRE: Looking at the IRC log, last time somebody ran into this they were able to get around it with a "make install" of Rakudo. | 13:52 | ||
sECuRE | let’s see if it works | ||
indeed, it did. thanks! | |||
jnthn | What platform are you building on, out of curiosity? | 13:53 | |
sECuRE | debian gnu/linux, x86_64 | ||
jnthn | OK. | 13:54 | |
13:56
mssm left
13:57
Trashlord left
|
|||
jnthn | Ah, I just remembered...if you want to run Rakudo from outside of the build directory, make install is required. I think we used to have a nice check and helpful error message at startup about that... | 13:59 | |
13:59
mssm joined
|
|||
jnthn | ...should try to re-instate it. | 13:59 | |
sECuRE | ok, just trying a simple grep command, but it says it’s confused by that. what am i doing wrong? p.nnev.de/1211 | 14:03 | |
colomon | rakudo: my @events = grep { 1 } @events; | 14:04 | |
p6eval | rakudo 345f63: OUTPUT«Confused at line 11, near "my @events"current instr.: 'perl6;HLL;Grammar;panic' pc 500 (ext/nqp-rx/src/stage0/HLL-s0.pir:328)» | ||
jnthn | Missing comma. | ||
(after the closure) | 14:05 | ||
colomon | rakudo: my @events; @events = grep { 1 }, @events; | ||
p6eval | rakudo 345f63: ( no output ) | ||
sECuRE | thanks | ||
but what about the following? | |||
rakudo: my @events; @events .= grep { 1 }; | |||
p6eval | rakudo 345f63: OUTPUT«Confused at line 11, near "@events .="current instr.: 'perl6;HLL;Grammar;panic' pc 500 (ext/nqp-rx/src/stage0/HLL-s0.pir:328)» | ||
sECuRE | rakudo: my @events; @events .= grep { 1 },; | ||
p6eval | rakudo 345f63: OUTPUT«Confused at line 11, near "@events .="current instr.: 'perl6;HLL;Grammar;panic' pc 500 (ext/nqp-rx/src/stage0/HLL-s0.pir:328)» | ||
colomon | rakudo: my @events; @events .= grep {1}; | 14:06 | |
p6eval | rakudo 345f63: OUTPUT«Confused at line 11, near "@events .="current instr.: 'perl6;HLL;Grammar;panic' pc 500 (ext/nqp-rx/src/stage0/HLL-s0.pir:328)» | ||
colomon | rakudo: my @events; @events .= grep: {1} | ||
p6eval | rakudo 345f63: ( no output ) | ||
colomon | or | ||
jnthn | std: my @events; @events .= grep { 1 }; # better errors than Rakudo usually | ||
p6eval | std 30070: OUTPUT«===SORRY!===Unexpected block in infix position (two terms in a row, or previous statement missing semicolon?) at /tmp/m3TAoiW43Y line 1:------> my @events; @events .= grep ⏏{ 1 }; # better errors than Rakudo usual expecting any of: | ||
..bracke… | |||
colomon | rakudo: my @events; @events .= grep({1}) | ||
p6eval | rakudo 345f63: ( no output ) | ||
sECuRE | colomon: what’s the : syntax about? | 14:07 | |
colomon | jnthn can probably explain it better than me. I just know it works. | 14:08 | |
sECuRE | what is the "new XS" in perl6? so, is it already possible to create bindings for a C library, and if so, where can i read about it? | 14:12 | |
colomon | Parrot has a facility for adding C bindings, which ought to work with Rakudo. I don't know the details, and I don't know where there is documentation. (But hopefully someone out there on the channel does...) | 14:15 | |
jnthn: help? | 14:20 | ||
14:20
iblechbot joined
|
|||
colomon | Looks like my Int.ACCEPTS patch broke is m2(1), "a", 'literal Int in signature matches value correctly'; | 14:21 | |
jnthn | oops, sorry...was afk for a moment | 14:25 | |
sECuRE: When a method call is parsed, you have two ways of specifying the arguments for it: either a colon and then a list, or by putting them in parens. | 14:26 | ||
You can choose which looks nicest. :-) | |||
sECuRE | ah, i see | 14:27 | |
jnthn | sECuRE: There's some early implementation work on C bindings. The one I've hacked on with mberends++ is github.com/jnthn/zavolaj/ | ||
See for example github.com/jnthn/zavolaj/blob/maste...lclient.p6 - a mysql binding written in Perl 6. | 14:28 | ||
colomon | jnthn: woah, how'd I miss zavolaj? cool! | ||
sECuRE | thanks, will have a look at it | ||
jnthn | colomon: Well, it was written while I was moving country. :-) | ||
And shown off at the hackathon first. | 14:29 | ||
I guess maybe the details didn't make it to the channel. :-) | |||
(Int.ACCEPTS) way odd. :-/ | |||
colomon: How does it break? | 14:30 | ||
colomon | Null PMC access in get_bool() | 14:31 | |
current instr.: 'm2' pc 1208 (EVAL_1:471) | |||
... call repeated 1 times | |||
called from Sub '_block127' pc 840 (EVAL_1:353) | |||
afk... biab | |||
jnthn | Can't really guess from that...would need to glance the patch. | 14:32 | |
sECuRE | jnthn: unfortunately, it does not seem to work atm: p.nnev.de/1212 | 14:34 | |
jnthn | sECuRE: It's early code and the errors suck. | 14:36 | |
sECuRE: If it gave good errors | |||
Then it'd probably want to tell you that it couldn't find the mysqlclient library. | 14:37 | ||
jnthn makes mental note to improve the errors. | |||
sECuRE | ah, it needed the -dev-package. sorry ;) | ||
jnthn | :-) | ||
bbiab, phone call, other bits | 14:38 | ||
lisppaste3 | colomon pasted "Int.ACCEPTS patch" at paste.lisp.org/display/96370 | 14:54 | |
15:08
jferrero joined,
Psyche^ joined
15:11
Patterner left,
Psyche^ is now known as Patterner
15:39
Chillance joined
15:50
pmurias left
15:55
Trashlord joined
16:00
Exodist left
16:11
envi^home joined
16:21
payload joined
16:26
justatheory joined
16:37
Exodist joined
16:43
rv2733 joined
16:45
Exodist left
|
|||
pugssvn | r30071 | lwall++ | [STD] read minds of people who forget that ".meth args" is a TTIAR error | 16:46 | |
16:49
Exodist joined
16:56
Exodist_ joined,
Exodist left
16:57
Exodist_ left,
iblechbot left,
Exodist joined
16:58
Lorn joined
|
|||
payload | TTIAR? | 16:58 | |
TimToady | two terms in a row | 17:00 | |
the restriction that makes p6 code "self clocking" | 17:01 | ||
and allows the parser to know whether you meant / as division or regex | 17:02 | ||
17:02
wolf2k_ubuntu left
|
|||
pugssvn | r30072 | lwall++ | [STD] no need to rescan whitespace, just check if line number changed | 17:07 | |
r30072 | add "previous line missing its semicolon" to the unexpected block checker | |||
r30072 | s/acomp/arraycomp/ for more clarity | |||
betterworld | Could $x/$y be made a short form for Rat(:numerator($x), :denominator($y)) in a signature? | 17:15 | |
17:18
k23z__ joined,
k23z__ left,
k23z__ joined
17:22
wolverian left
|
|||
jnthn | colomon: I wonder if we're hitting a .tailcall somewhere in the chain of things... | 17:23 | |
colomon: Will see if I can fathom it. | 17:24 | ||
17:24
wolverian joined
|
|||
jnthn | betterworld: Not without making it a special case of some kind...I'm not sure it's a common enough need for that though? | 17:24 | |
betterworld: Note that rather than unpacking it in the signature - cool as that is - you may be better served by doing nude in the method body. | |||
sub foo(Rat $r) { my ($x, $y) = $r.nude; ... } | 17:25 | ||
TimToady | signature unpacking can already do it, if there are methods | 17:28 | |
jnthn | TimToady: The problem isn't the lack of methods, just that numerator and dominator are quite lon | 17:30 | |
*denominator, long | |||
TimToady: If they were .nu and .de it'd be...like a bunch of European domains name TLDs. :-) | |||
It does work today though afaik | |||
Think the request was just for a shorter way, but I'm not sure it's worth huffmanizing. | 17:31 | ||
betterworld | well, I just thought that "sub foo($x/$y)" would be cool and nice to read and quite consistent with the unpacking semantics | 17:32 | |
17:42
payload left
|
|||
lue | hiya! | 17:46 | |
rakudo: my $a=1; say "hello $a" | 17:48 | ||
p6eval | rakudo 8f0ca9: OUTPUT«hello 1» | ||
lue | rakudo: my @a=1,2,3; say "hello @a" | 17:49 | |
p6eval | rakudo 8f0ca9: OUTPUT«hello @a» | ||
lue | rakudo: my %a=1,2,3,4; say "hello %a" | ||
p6eval | rakudo 8f0ca9: OUTPUT«hello %a» | ||
lue | rakudo: my $a=1; say "hello $b" | ||
p6eval | rakudo 8f0ca9: OUTPUT«Symbol '$b' not predeclared in <anonymous>current instr.: 'perl6;PCT;HLLCompiler;panic' pc 137 (compilers/pct/src/PCT/HLLCompiler.pir:101)» | ||
hejki | my @a=1,2,3; say "hello" ~ @a.join(" "); | 17:50 | |
rakudo: my @a=1,2,3; say "hello" ~ @a.join(" "); | 17:51 | ||
p6eval | rakudo 8f0ca9: OUTPUT«hello1 2 3» | ||
lue | heijki: of course you can do something like that. The problem itself is string interpolation, and I want to try and fix it. | ||
Just making sure no else did in the meantime :D | |||
hejki | :P | 17:52 | |
TimToady | std: my @events; @events .= grep { 1 }; | ||
p6eval | std 30072: OUTPUT«===SORRY!===Unexpected block in infix position (method call needs colon or parens to take arguments) at /tmp/atj443WWtI line 1:------> my @events; @events .= grep ⏏{ 1 }; expecting any of: bracketed infix infix or | ||
..meta-infixFAILED 00:01… | |||
17:58
nihiliad joined,
wknight8111 joined
18:02
envi^home left
|
|||
colomon is back from a failed trip to the pub. | 18:03 | ||
szbalint | failed? | 18:04 | |
lue | were there people inside with paper bags over their heads? | 18:05 | |
jnthn | How does a pub trip fail? | ||
EOUTOFBEER? | |||
szbalint feels like in a pub. He has 5 different types of alcohol on his desk atm. | 18:07 | ||
arnsholt | Not bad, not bad. What kinds of booze? | 18:08 | |
jnthn | Wow. My kitchen isn't even quite that awesome (yet). :-) | ||
jnthn only has 4 types to hand at the moment | 18:09 | ||
colomon | too many st pat's celebrators to have lunch with my family there. it was a complete zoo. | ||
szbalint | Caol Ila, Zubrowka, homebrew pálinka, stiegl and some red wine | ||
colomon | pity, because my friends were playing music. | ||
oooo, Caol Ila!!! | |||
jnthn | Borovička, Slivovica, Lemon Cello, Beer. | 18:10 | |
I finished all my vodka and Korean stuff before moving. | |||
Żubrówka sounds nice. :-) | 18:12 | ||
lue | colomon: were people wearing paper bags over their heads? It's very important! [ :) ] | ||
colomon | no, they were wearing giant green leprechaun hats. (among other things, but no paper bags.) | 18:13 | |
jnthn | Pálinka sounds like Hungarian version of what is called Slivovica in Slovakia. | ||
lue | good! The end of the world isn't in 10 minutes then. | ||
colomon | lue: I thought you might be worried about something like that. | ||
jnthn | colomon: Too bad about the fail. :-( | ||
lue | well, you went to a PUB. If there were people wearing paper bags, I'd advise you to run to the nearest bulldozer :D | 18:14 | |
colomon | well. we still had a nice lunch out and then cupcakes from the super-tasty cupcake shop, so not a complete fail. | ||
szbalint | not too much left :( I'll keep the packaging though. dev.perl.hu/static/IMG_2923.JPG | ||
18:14
mberends joined
|
|||
szbalint | jnthn: yeah, that's about right :) | 18:14 | |
colomon | and I'll probably be back at the pub playing music myself in about three hours. :) | 18:15 | |
lue | get yourself some peanuts their. Just in case. :) | ||
OOPS there | |||
colomon | jnthn: any luck with Ints and ACCEPTS? | 18:16 | |
jnthn | szbalint: Wow, nice packacing indeed! | ||
colomon: No, I have a hunch what it may be though. | |||
colomon | hunches are good... | 18:17 | |
jnthn | If you end up doing a tailcall in a call from C (e.g. the one made by the binder), it can happen that an annoying Parrot bug bites, which results in getting a null PMC back rather than the desired result. | ||
It may be that we're hitting something still written in PIR that tailcalls to prefix:<?> | 18:18 | ||
I can dig more later today, but right now I have a Need For Nom. | 18:19 | ||
colomon | huh. and by all means, nom! | 18:20 | |
rakudo: say Any ~~ 0 | 18:22 | ||
p6eval | rakudo 8f0ca9: OUTPUT«Use of type object as valuecurrent instr.: 'perl6;Perl6Exception;throw' pc 14489 (src/builtins/Seq.pir:77)» | ||
18:23
hercynium joined
18:43
hercynium left
|
|||
lue | how would one ssh in emacs? TRAMP comes up a lot. | 18:43 | |
18:43
zibri left
18:46
zibri joined
18:48
nadim left
|
|||
sorear | it occurs to me that I don't *actually* have to mess around with the rakudo recompiler | 19:08 | |
I can write the missing parts of the setting as external modules | |||
then, when they're completely working, let someone else worry about integration | 19:09 | ||
who invented Q:PIR? | |||
jnthn | Q:blah as a general quoting syntax is part of the Perl 6 spec | 19:12 | |
Q:PIR was done by pmichaud, iirc. | |||
sorear | pmichaud++ | ||
colomon | pmichaud++ | ||
arnsholt | lue: Open one of the Emacs terminal emulators and fire off the OpenSSH client? =) | 19:14 | |
19:21
brushie_ joined
19:23
brushie left
|
|||
spinclad | pir::<opname> is nice too. pmichaud++ | 19:25 | |
oh and hi all | 19:26 | ||
19:28
Trashlord left
|
|||
colomon | o/ | 19:29 | |
19:29
IllvilJa left
19:30
eternaleye left
|
|||
colomon | rakudo: say 3 !> 5 | 19:30 | |
p6eval | rakudo 8f0ca9: OUTPUT«1» | ||
19:31
eternaleye joined
|
|||
pugssvn | r30073 | unobe++ | [t/spec] Fudge S06-other/main-eval.t | 19:31 | |
r30073 | | |||
r30073 | modified: S06-other/main-eval.t | |||
19:32
molaf left,
k23z__ left
19:37
rv2733 left
|
|||
colomon | rakudo: my $b = 0; say not($b) + 1); say (not $b) + 1 | 19:38 | |
p6eval | rakudo 8f0ca9: OUTPUT«Confused at line 11, near "); say (no"current instr.: 'perl6;HLL;Grammar;panic' pc 500 (ext/nqp-rx/src/stage0/HLL-s0.pir:328)» | ||
colomon | rakudo: my $b = 0; say not($b) + 1; say (not $b) + 1 | ||
p6eval | rakudo 8f0ca9: OUTPUT«02» | ||
colomon | is (not($b) + 1), ((not $b) + 1), 'not($b) is (not $b)'; | 19:39 | |
can anyone see a reason that test makes any sense? | |||
arnsholt | Makes sure that the operator not and the function not do the same, methinks | 19:40 | |
colomon | actually, I think it's intended to make sure not is higher precedence than +, maybe? | ||
arnsholt | Doesn't look like it from the description | 19:41 | |
colomon | If not, then why have the "+ 1"s in there? | ||
arnsholt | Not entirely sure =) | ||
colomon | raudo: my $b = 0; say not($b); say (not $b) | 19:42 | |
rakudo: my $b = 0; say not($b); say (not $b) | 19:44 | ||
p6eval | rakudo 8f0ca9: OUTPUT«11» | ||
pugssvn | r30074 | colomon++ | [t/spec] Add some more tests for not. | 19:45 | |
jnthn | colomon: But that fail reproduced here now. | 19:49 | |
spinclad | given that rakudo seems to get it wrong ( as not($b) should make not's arglist be just '$b' ), it seems like a good test to have... | ||
rakudo: my $b = 0; say not($b)+1 | 19:50 | ||
p6eval | rakudo 8f0ca9: OUTPUT«0» | ||
colomon | spinclad: are you sure that's not how it should work? | 19:51 | |
spinclad | (why isn't this parsed 'say( (not($b)) + 1 )' ?) | ||
colomon | alpha: my $b = 0; say not($b)+1 | 19:52 | |
p6eval | alpha 30e0ed: OUTPUT«0» | ||
spinclad | perl6: my $b = 0; say not($b)+1 | ||
p6eval | elf 30074, pugs: OUTPUT«2» | ||
..rakudo 8f0ca9: OUTPUT«0» | |||
colomon | not is loose_unary, which is much lower precedent than addition. | 19:54 | |
spinclad | (how again do you ask p6eval for rakudo --output=parse ?) | ||
colomon | *precedence | 19:55 | |
spinclad | but ident(args) is always taken as function call... | 19:56 | |
perl6: my $b = 0; say not $b + 1 | |||
p6eval | rakudo 8f0ca9: OUTPUT«0» | ||
..elf 30074, pugs: OUTPUT«» | |||
spinclad | (without the ident(args), all are agreed on precedence, as you say) | 19:57 | |
perl6: my $b = 1; say not $b - 1 | 19:58 | ||
p6eval | elf 30074, pugs, rakudo 8f0ca9: OUTPUT«1» | ||
spinclad | perl6: my $b = 1; say not($b)-1 | ||
p6eval | rakudo 8f0ca9: OUTPUT«1» | ||
..elf 30074, pugs: OUTPUT«-1» | |||
spinclad | (another example) | 19:59 | |
perl6: my $b = 1; say (not $b)-1 | 20:02 | ||
p6eval | elf 30074, pugs, rakudo 8f0ca9: OUTPUT«-1» | ||
spinclad | mildew: my $b = 0; say not($b)+1 | 20:03 | |
p6eval | mildew: OUTPUT«Can't open perl script "mildew": No such file or directory» | ||
spinclad | sprixel: my $b = 0; say not($b)+1 | 20:04 | |
p6eval | sprixel 30074: OUTPUT«Undeclared routine: 'not' used at line 1NYI: term__S_scope_declarator» | ||
colomon | spinclad: it's okay, I won't take the test out. | ||
spinclad | sorry, i wasn't trying to pile up witnesses, i was curious how many witnesses we actually have at this point | 20:06 | |
20:09
rgrau joined
|
|||
colomon | :) | 20:09 | |
not that I give a fig for the number of witnesses. ;) | 20:10 | ||
but it occurred to me I'd be really cheesed off if sin($b) + 1 was the same as sin($b + 1). | |||
arnsholt | Indeed =) | ||
colomon | (I mean, not that I give a fig for number of witnesses in terms of establishing what it should do. It's way cool there are that many implementations out there!) | 20:11 | |
jnthn | colomon: That would be...epicly confusing. :-) | ||
colomon | jnthn: yeah, it's not obvious to me how "not" should work, but it's very obvious to me how "sin" should. :) | 20:12 | |
sigh,. | 20:13 | ||
I had this great ambition to see how many meta ops I could get implemented before going back to the pub. | |||
but my conscience said, well, you should get !op working as well as possible first. | |||
and then my conscience said, and where are the !op tests, anyway? | |||
and then I looked in not.t and got completely sidetracked. :) | 20:14 | ||
spinclad | sideyakked | ||
colomon | so, does anyone remember where the !op tests are? I remember looking at a few of them when I implemented it, but I can't recall where now... | 20:15 | |
rakudo: say so(1) + 1 | 20:16 | ||
p6eval | rakudo 8f0ca9: OUTPUT«1» | ||
colomon | same deal there... | ||
jnthn | rakudo: say so(1) | 20:17 | |
p6eval | rakudo 8f0ca9: OUTPUT«1» | ||
jnthn | rakudo: say (so(1) + 1) | 20:18 | |
p6eval | rakudo 8f0ca9: OUTPUT«1» | ||
jnthn | ...huh? | ||
spinclad | rakudo: say so (1) + 1 | ||
p6eval | rakudo 8f0ca9: OUTPUT«1» | ||
colomon | those are all so (1 + 1) | ||
spinclad | perl6: say so (1) + 1 | ||
p6eval | rakudo 8f0ca9: OUTPUT«1» | ||
..pugs: OUTPUT«*** No such subroutine: "&so" at /tmp/6RHmCn1n0m line 1, column 5 - line 2, column 1» | |||
..elf 30074: OUTPUT«Undefined subroutine &GLOBAL::so called at (eval 123) line 3. at ./elf_h line 5881» | |||
colomon | rakudo: say (so 1) + 1 | ||
p6eval | rakudo 8f0ca9: OUTPUT«2» | ||
spinclad | rakudo isn't seeing so(1) as func(args) as i think it ought | 20:19 | |
colomon | right | 20:20 | |
any idea how STD.pm sees it? | |||
afk # taking out the garbage while my spectest runs | |||
spinclad | std: say so(1) + 1 | ||
p6eval | std 30074: OUTPUT«ok 00:01 106m» | ||
spinclad | doesn't say ;) | 20:21 | |
colomon | right, but people with high magic can get the parse tree from STD... | ||
spinclad | but again i seem to remember p6eval would pastebin a parsetree given the right xx-yy: invocation | 20:22 | |
std-parse: say so(1) + 1 | |||
rakudo-parse: say so(1) + 1 | |||
which i can't lay recall on | 20:23 | ||
jnthn gets to the bottom of why colomon++'s Int.ACCEPTS patch doesn't work, and swears loudly at Parrot. | 20:24 | ||
TimToady | std parses so() as a function call | 20:25 | |
spinclad | .oO( what, build my own copy? such a thought. ... back in 12 hours o/ ) |
||
(easily verified at home...) | 20:26 | ||
colomon | oooo, jnthn++ | 20:28 | |
dalek | kudo: d631c8f | (David Romano)++ | (9 files): Merge remote branch 'upstream' |
20:30 | |
kudo: e013cab | (David Romano)++ | t/spectest.data: Merge remote branch 'upstream' |
|||
kudo: 5d15313 | (David Romano)++ | (3 files): Merge remote branch 'upstream' |
|||
kudo: 77ee50d | (David Romano)++ | t/spectest.data: Turn on S06-other/main-eval.t remove unneeded comment lines in t/spectest.data |
|||
jnthn | Epic merge | 20:31 | |
pugssvn | r30075 | colomon++ | [t/spec] Add needed done_testing. | 20:33 | |
colomon | Hmmm..... wonder what was up with all those merge branches? My bad somehow? | 20:34 | |
20:36
huf joined
20:37
rindolf joined
|
|||
jnthn | git happens. | 20:38 | |
rindolf | jnthn: heh. | ||
jnthn++ | |||
eat git! | |||
jnthn | colomon: Think I has a fix. | 20:44 | |
rindolf | jnthn: I has? | ||
jnthn | *have :-) | 20:45 | |
rindolf | jnthn: OK. | ||
I can haz the fix? | |||
20:46
IllvilJa joined
|
|||
jnthn | oh, so you DO know lolspeak! | 20:46 | |
:-P | |||
rindolf | jnthn: I doez. | 20:47 | |
jnthn | colomon: spectesting. | ||
colomon: Shall I put the Int part of your patch in too? | |||
Or will that create bother/conflicts for you? | |||
colomon | jnthn: I actually completely backed out the Int part locally, so by all means please put it back in. :) | 20:48 | |
jnthn | colomon: OK, will do provided the test run is OK. | 20:49 | |
colomon | \o/ | 20:56 | |
20:57
tylerni7 joined,
tylerni7 left,
tylerni7 joined
|
|||
colomon is off to the pub again... | 21:01 | ||
21:01
payload joined
|
|||
jnthn | colomon: enjoy! | 21:02 | |
21:10
rv2733 joined
|
|||
dalek | kudo: 9ffe679 | jonathan++ | src/pmc/perl6multisub.pmc: Tweak to make sure Perl6MultiSub matches a (somewhat dubious) Parrot heuristic. |
21:10 | |
kudo: 558c638 | jonathan++ | src/ (2 files): Apply patch from colomon++ to move Int.ACCEPTS into the setting. |
|||
21:11
hercynium joined
|
|||
jnthn | std: my Nil $x | 21:13 | |
p6eval | std 30075: OUTPUT«ok 00:01 107m» | ||
rindolf | A few TODO tests passed for me here on x86-64. | 21:20 | |
pugssvn | r30076 | jnthn++ | [t/spec] Re-fudge S02-builtin-data-types/declare.t. | 21:22 | |
dalek | kudo: 8915a61 | jonathan++ | t/spectest.data: Turn S02-builtin_data_types/declare.t back on. |
21:27 | |
21:28
Su-Shee left
21:31
nihiliad left
|
|||
pugssvn | r30077 | jnthn++ | A couple of todos and skips; we can now run most of what alpha did of unspace.t. | 21:32 | |
m6locks | hmm make spectest returned FAIL although all the tests were ok | 21:33 | |
dalek | kudo: a2ceb6f | jonathan++ | t/spectest.data: Turn unspace.t back on. |
||
jnthn | std: sub baz ($.x) { ... } | 21:37 | |
p6eval | std 30076: OUTPUT«ok 00:01 108m» | ||
jnthn | std: sub quuux ($?VERSION) { ... } | 21:39 | |
p6eval | std 30076: OUTPUT«Potential difficulties: Illegal to use ? twigil in signature at /tmp/PUhtqGp33c line 1:------> sub quuux (⏏$?VERSION) { ... }ok 00:01 106m» | ||
pugssvn | r30078 | jnthn++ | [t/spec] Toss two wrong tests. | 21:45 | |
22:00
vamped joined,
rindolf left
|
|||
lue | rakudo: my @a=1,2,3; say "@a" # just checking | 22:25 | |
p6eval | rakudo a2ceb6: OUTPUT«@a» | ||
diakopter | rakudo: my @a=1,2,3; say "{@a}" | 22:28 | |
p6eval | rakudo a2ceb6: OUTPUT«1 2 3» | ||
22:40
alanm joined
22:41
alanm left
|
|||
lue | where is string interpolation defined? (guessing String.pir/.pm) | 22:42 | |
mberends | lue: perlcabal.org/syn/S02.html | 22:46 | |
lue | oh noes I pressed that for firefox! What have I done! It's gonna die! :( | 22:48 | |
jnthn | mberends: o/ | 22:51 | |
mberends | \o jnthn, are you down to only 4 kinds of alcohol? | 22:52 | |
jnthn | YARLY! | ||
mberends | :-( sorry to hear that | ||
jnthn | Well, I depleted my Ukrainian vodka shortly before leaving Slovakia. | ||
That obviously means I have to go to the Perl workshop there later this year. :-) | 22:53 | ||
lue | does S02 say it's okay for @ and % vars to interpolate in strings like $ can? | ||
rakudo: my $a=3; say "hey $a" | 22:54 | ||
p6eval | rakudo a2ceb6: OUTPUT«hey 3» | ||
jnthn | lue: iirc, "@foo" will not interpolate but "@foo[]" or "@foo[1,2]" for example would. | ||
Or in general, only if there's a postcircumfix. | |||
dalek | kudo: 17766db | jonathan++ | src/Perl6/Actions.pm: Add a missing twigil in signature check from STD. |
||
kudo: 1d5c09f | jonathan++ | t/spectest.data: Turn S06-signature/errors.t back on. |
|||
kudo: 7a56f35 | jonathan++ | src/ (3 files): Get $x.$y() idirect method calls working again. |
|||
kudo: e704ef9 | jonathan++ | src/Perl6/Actions.pm: The illegal twigil detection was a little...over-eager...to complain. Fixed in this patch. |
|||
mberends | lue: inside "{ ... }" | ||
jnthn | Or that. :-) | 22:55 | |
lue | so this should fail: | 22:56 | |
rakudo: my @a=1,2,3; say "@a" | |||
p6eval | rakudo a2ceb6: OUTPUT«@a» | ||
jnthn needs to focus on putting some more S12 bits back over the next day or two. | |||
lue | and this should win: | ||
rakudo: my @a=1,2,3; say "@a[1]" | |||
p6eval | rakudo a2ceb6: OUTPUT«@a[1]» | ||
jnthn | lue: I think Rakudo is correct on the above one. | ||
lue: And wrong on that second one. | |||
(that is, we win at failing, but fail at winning) | 22:57 | ||
mberends | I think Rakudo is correct in both cases | ||
jnthn | orly? | ||
mberends | *I think* | ||
lue | and what if a nonexistant variable is encountered? | ||
jnthn | std: say "@a" | ||
p6eval | std 30078: OUTPUT«ok 00:01 108m» | ||
jnthn | std: say "@a[]" | ||
lue | rakudo: say "$b" | ||
jnthn | std: say "@a[1]" | ||
p6eval | std 30078: OUTPUT«ok 00:01 106m» | ||
rakudo a2ceb6: OUTPUT«Symbol '$b' not predeclared in <anonymous>current instr.: 'perl6;PCT;HLLCompiler;panic' pc 137 (compilers/pct/src/PCT/HLLCompiler.pir:101)» | |||
std 30078: OUTPUT«ok 00:01 106m» | |||
jnthn | std: say "{@a[1]}" | 22:58 | |
p6eval | std 30078: OUTPUT«ok 00:01 106m» | ||
jnthn | ...oh. | ||
std: say @a[1] | |||
p6eval | std 30078: OUTPUT«ok 00:01 105m» | ||
jnthn | Um. | ||
That wasn't quite what I was expecting... | |||
std: say $a | |||
p6eval | std 30078: OUTPUT«ok 00:01 105m» | ||
jnthn was sure STD complained about undeclared lexicals. | 22:59 | ||
mberends | std: say "hello @a["; | ||
p6eval | std 30078: OUTPUT«===SORRY!===(Possible runaway string from line 1)Bogus statement at /tmp/TXaQfxALPJ line 1 (EOF):------> say "hello @a[";⏏<EOL> expecting escapeFAILED 00:01 107m» | ||
mberends | std: say "hello @a[0]"; | ||
p6eval | std 30078: OUTPUT«ok 00:01 106m» | ||
lue | If the scalar doesn't exist, shouldn't NOT error out? What If you wrote a string "@result[1] is $x (add four for £)" | ||
and $x doesn't exist? | |||
jnthn | lue: Yes, it should error out, imo. | ||
rakudo: say "lol $x does not exist" | |||
p6eval | rakudo a2ceb6: OUTPUT«Symbol '$x' not predeclared in <anonymous>current instr.: 'perl6;PCT;HLLCompiler;panic' pc 137 (compilers/pct/src/PCT/HLLCompiler.pir:101)» | ||
jnthn | And it does. | ||
lue | rakudo: say "lol \$x does exist" | 23:00 | |
p6eval | rakudo a2ceb6: OUTPUT«Symbol '$x' not predeclared in <anonymous>current instr.: 'perl6;PCT;HLLCompiler;panic' pc 137 (compilers/pct/src/PCT/HLLCompiler.pir:101)» | ||
lue | darn :/ | ||
jnthn | From STD: | 23:02 | |
Bare scalar variables always interpolate in double-quotish | |||
strings. Bare array, hash, and subroutine variables may I<never> be | |||
interpolated. However, any scalar, array, hash or subroutine variable may | |||
start an interpolation if it is followed by a sequence of one or more bracketed | |||
dereferencers | |||
lue: That above issue is a rakudobug. | |||
er, *From S02 | |||
If it's bare, interpolation don't dare... | |||
But an array subscript makes it interpolate | |||
It's listed near the top of S02 as one of the very few places that the Perl 6 grammar does lookahead beyond one token. | 23:03 | ||
lue | so @a[3] should interpolate? If that's the case, just tell me where interpolation is defined (in the code) and I'll look at it (no promises on fixing it :D ) | ||
jnthn | It should | ||
I think that bit is defined in nqp-rx | |||
mberends | rakudo: my @a=1,2; say "total = { @a[0]+@a[1] }" | 23:04 | |
p6eval | rakudo a2ceb6: OUTPUT«total = 3» | ||
lue | and let me guess nqp-rx is part of svn? | 23:05 | |
mberends | part of Parrot, which you can get via svn | ||
lue | s/svn/pugs/ | ||
mberends | nope | ||
jnthn | lue: github.com/perl6/nqp-rx/blob/master...rammar.pir | 23:06 | |
See quote_EXPR | |||
lue | and now I has to get parrot too!? :/ | ||
mberends | lue: if you built Rakudo using --gen-parrot, it happened automagically | 23:07 | |
jnthn | lue: You already have Parrot if you have Rakudo. What you do need is to check out the nqp-rx source from github | ||
Unless there's a way to do it solely in Rakudo. | 23:08 | ||
I don't understand that area of the codebase very well. | |||
lue | Well then. Here we go, as a plumber once said. :) | 23:09 | |
rakudo: my @a=1,2,3; my @a[3]=5; say @a | 23:12 | ||
p6eval | rakudo a2ceb6: OUTPUT«Redeclaration of symbol @a at line 11, near "=5; say @a"current instr.: 'perl6;HLL;Grammar;panic' pc 500 (ext/nqp-rx/src/stage0/HLL-s0.pir:328)» | ||
23:12
M_o_C left
|
|||
lue | rakudo: my @a=1,2,3; @a[3]=5; say @a | 23:12 | |
p6eval | rakudo a2ceb6: OUTPUT«1235» | ||
lue | rakudo: my @a=1,2,3; @a[3] := @a[1]; say @a | ||
p6eval | rakudo a2ceb6: OUTPUT«:= binding of variables not yet implementedcurrent instr.: '&die' pc 16859 (src/builtins/Junction.pir:373)» | ||
lue | alpha: my @a=1,2,3; @a[3] := @a[1]; say @a | 23:13 | |
p6eval | alpha 30e0ed: OUTPUT«rtype not setin Main (file <unknown>, line <unknown>)» | ||
23:14
PacoLinux left
|
|||
lue & | 23:15 | ||
23:21
mssm left
23:30
payload left
23:31
alester joined
23:32
payload joined
|
|||
vamped | building on that ... | 23:33 | |
rakudo: my @a=0,1,2; @a[5]=5; @a.perl.say | |||
p6eval | rakudo e704ef: OUTPUT«[0, 1, 2, Proxy.new(), Proxy.new(), 5]» | ||
23:34
Lorn left
|
|||
vamped | rakudo: my @a=0,1,2; @a[5]=5; @a[3]=3,4; say @a.perl | 23:34 | |
p6eval | rakudo e704ef: OUTPUT«[0, 1, 2, Seq.new(), Proxy.new(), 5]» | ||
vamped | rakudo: my @a=0,1,2; @a[5]=5; @a[3]=3,4; say |@a | ||
p6eval | rakudo e704ef: OUTPUT«Null PMC access in type()current instr.: '_block14' pc 29 (EVAL_1:0)» | ||
23:34
mssm joined
23:35
Lorn joined,
lisppaste3 left
|
|||
vamped | rakudo: my @a=0,1,2; @a[5]=5; @a[3]=3,4; @a[4]=4; say @a' | 23:37 | |
p6eval | rakudo e704ef: OUTPUT«Confused at line 11, near "say @a'"current instr.: 'perl6;HLL;Grammar;panic' pc 500 (ext/nqp-rx/src/stage0/HLL-s0.pir:328)» | ||
vamped | rakudo: my @a=0,1,2; @a[5]=5; @a[3]=3,4; @a[4]=4; say @a | 23:38 | |
p6eval | rakudo e704ef: OUTPUT«0123 445» | ||
vamped | rakudo: my @a=0,1,2; @a[5]=5; @a[3]=3,4; @a[4]=4; say @a.perl | ||
p6eval | rakudo e704ef: OUTPUT«[0, 1, 2, Seq.new(), 4, 5]» | ||
23:43
snarkyboojum joined
|
|||
sorear | Is there a nice list anywhere of all the P6 setting bits that are missing in rakudo? | 23:51 | |
jnthn | Don't think there's even a nasty list of that, let alone a nice one. | 23:53 | |
The spectests we don't yet attempt give some hints | |||
But there's stuff in the spec that's neither implemented nor has tests. |