»ö« Welcome to Perl 6! | perl6.org/ | evalbot usage: 'perl6: say 3;' or rakudo:, niecza:, std:, or /msg camelia perl6: ... | irclog: irc.perl6.org | UTF-8 is our friend! Set by sorear on 25 June 2013. |
|||
00:04
pecastro left
00:07
SmokeMac_ joined
00:09
SmokeMa__ joined,
SmokeMachine left,
pecastro joined
00:12
SmokeMac_ left,
Psyche^_ joined
00:16
Psyche^ left,
ajr_ left
00:19
huf left
00:31
xalbo joined
00:32
djanatyn joined
00:36
Tene joined,
Tene left,
Tene joined
00:50
stevan_ joined,
SmokeMa__ left,
SmokeMachine joined
01:13
FROGGS left
01:14
FROGGS joined
01:39
jnap left
01:40
fridim_ joined
01:45
FROGGS left
01:46
FROGGS joined
01:52
telex left
01:54
telex joined
01:58
FROGGS left
02:02
FROGGS joined
|
|||
TimToady | you'd think it was Friday night or sump'n | 02:10 | |
02:19
jnap joined,
jnap left
02:28
colomon joined
|
|||
perigrin | worse than that, it appears people have better things to do! | 02:35 | |
colomon | high school football game. ;) | 03:05 | |
BenGoldberg | r: say 1 ?? 2 !! 3 | 03:17 | |
camelia | rakudo 2ce544: OUTPUT«2» | ||
BenGoldberg | r: say 1 R?? 2 !! 3 | ||
camelia | rakudo 2ce544: OUTPUT«===SORRY!===No such method 'ast' for invocant of type 'NQPMu'» | ||
BenGoldberg | Not the error message I expected to get :) | ||
03:17
colomon left
|
|||
lue | r: say 1 R?? 2 R!! 3 | 03:18 | |
camelia | rakudo 2ce544: OUTPUT«===SORRY!===Found ?? but no !!at /tmp/WWHu8sPcjk:1------> say 1 R?? 2 R⏏!! 3Confusedat /tmp/WWHu8sPcjk:1------> say 1 R?? 2 R⏏!! 3 expecting any of: postfix …» | ||
BenGoldberg | n: say 1 R?? 2 !! 3 | 03:19 | |
camelia | niecza v24-98-g473bd20: OUTPUT«Use of uninitialized value in string context at /home/p6eval/niecza/boot/lib/CORE.setting line 1355 (warn @ 5)  at /home/p6eval/niecza/boot/lib/CORE.setting line 266 (Mu.Str @ 15)  at <unknown> line 0 (ExitRunloop @ 0)  at /home/p6eval/…» | ||
BenGoldberg | std: say 1 R?? 2 !! 3 | ||
camelia | std 082981d: OUTPUT«===SORRY!===Cannot reverse the args of ?? !! because conditional operators are too fiddly at /tmp/9rTVTJvRZu line 1:------> say 1 R?? 2 !!⏏ 3Check failedFAILED 00:01 122m» | ||
BenGoldberg | std: say /(ab)/ R~~ 'ab' | 03:23 | |
camelia | std 082981d: OUTPUT«ok 00:01 125m» | ||
BenGoldberg | rn: say /(ab)/ R~~ 'ab' | ||
camelia | rakudo 2ce544: OUTPUT«True» | ||
..niecza v24-98-g473bd20: OUTPUT«「ab」 0 => 「ab」» | |||
dalek | d: 8adbc60 | larry++ | STD.pm6: allow negation of flipflops |
03:25 | |
03:32
chayin left
03:34
preflex left,
preflex_ joined,
ChanServ sets mode: +v preflex_
03:35
preflex_ is now known as preflex
03:38
araujo left
04:14
kshannon joined
04:15
FROGGS left
04:17
FROGGS joined
|
|||
BenGoldberg | std: say 1 R?? 2 !! 3 | 04:39 | |
camelia | std 8adbc60: OUTPUT«===SORRY!===Cannot reverse the args of ?? !! because conditional operators are too fiddly at /tmp/rIx_MpfdKc line 1:------> say 1 R?? 2 !!⏏ 3Check failedFAILED 00:01 122m» | ||
BenGoldberg | I guess it'll have to wait until the evalbot does a git pull :) | ||
lue | BenGoldberg: what makes you think it'd work now? | 04:40 | |
diakopter | . | 04:42 | |
04:42
preflex_ joined,
ChanServ sets mode: +v preflex_
|
|||
BenGoldberg | r: 1 [[[[[[[[[[[[[[[[+]]]]]]]]]]]]]]]] 1 | 04:42 | |
camelia | ( no output ) | ||
dalek | kudo/nom: a43fff1 | moritz++ | docs/ROADMAP: [ROADMAP] bump date of last udpate |
||
04:42
preflex left
04:43
preflex_ is now known as preflex
04:44
fridim_ left
|
|||
moritz | I love the smell of commits in the morning | 04:44 | |
diakopter wonders if morning will ever come | 04:45 | ||
moritz: :( I'm sorry I wasn't able to get to teh host07 things | 04:46 | ||
moritz | diakopter: no worries | 04:47 | |
diakopter | (maybe you'll have time/energy/willingness :) (changing nqp-m to use nqp and --gen-moar... renaming rakudo to rakudo-parrot... ..) | ||
nqp-m :1 | 04:48 | ||
nqp-m: 1 | |||
camelia | nqp-moarvm: OUTPUT«Unhandled exception: Bytecode segment overflows end of stream» | ||
diakopter | *cry* | ||
hm, I thought there was a third thing on my mental todolist | 04:50 | ||
gar | |||
moritz | aliases p => rakudo-p, j => rakudo-j, r => p+j ? | 04:51 | |
diakopter | p was pugs | ||
but.. | 04:52 | ||
moritz | that can be changed. | ||
diakopter | yeah I think consistency wins a bit there | ||
04:54
logie left
|
|||
diakopter | moritz: of course, what will we call the js backend | 04:55 | |
perigrin | n | ||
diakopter | :D | ||
lue | .oO(Pugs, if we should keep it, could be moved to h: for Haskell or a: for Audrey) |
04:56 | |
diakopter: js backend is clearly to become e: . For ECMAScript, obviously :) | 04:57 | ||
r: say [+] <p j> | |||
camelia | rakudo 2ce544: OUTPUT«Cannot convert string to number: base-10 number must begin with valid digits or '.' in '⏏p' (indicated by ⏏) in method Numeric at src/gen/CORE.setting:11911 in sub infix:<+> at src/gen/CORE.setting:3893 in sub infix:<+> at src/gen/CORE.setting:3…» | 04:58 | |
diakopter | lue: people are staring at me LOL'ing | ||
lue | r: my $a = 'p'; $a.=succ for ^10; say $a; | ||
camelia | rakudo 2ce544: OUTPUT«z» | ||
lue | parrot+java = z: | 04:59 | |
diakopter | lolz parrot+java | ||
lue | r: my $a = 'p'.ord; $a+=10; #`(j) $a+=13; #`(m) say $a.chr; #rakudo -p + -j + -m | 05:01 | |
camelia | rakudo 2ce544: OUTPUT«» | ||
lue | .u | ||
.ping | |||
diakopter | .yoleaux | 05:02 | |
moritz | diakopter: q | ||
diakopter | .yoleaux my yolo | ||
afk& | |||
lue | so clearly the parrot+java+moar combination evoker would be : say "hi Rakudo!" (this is all very straightforward, in my opinion :P) | 05:03 | |
(U+0087 END OF SELECTED AREA, btw) | |||
moritz | r: say 'p' ~| 'j' | 05:04 | |
camelia | rakudo 2ce544: OUTPUT«z» | 05:05 | |
moritz | r: say 'p' ~| 'm'' | ||
camelia | rakudo 2ce544: OUTPUT«===SORRY!=== Error while compiling /tmp/iNmp3JAmpUTwo terms in a rowat /tmp/iNmp3JAmpU:1------> say 'p' ~| 'm'⏏' expecting any of: postfix infix stopper infix or meta-infix …» | ||
moritz | r: say 'p' ~| 'm' | ||
camelia | rakudo 2ce544: OUTPUT«}» | ||
moritz | r: say 'p' ~| 'm' ~| 'j' | ||
camelia | rakudo 2ce544: OUTPUT«^H» | ||
moritz | r: say ('p' ~| 'm' ~| 'j').ord | 05:06 | |
camelia | rakudo 2ce544: OUTPUT«127» | ||
lue almost wants yoleaux to be named cyberman, for hopefully clear reasons | |||
If we're running out of single-letter aliases, we could always go for majuscules. Unless... | 05:08 | ||
R: say "test" | |||
nope, we could theoretically use majuscules :) | 05:09 | ||
05:17
BenGoldberg left
|
|||
moritz | r: say 1 | 05:35 | |
camelia | rakudo 2ce544: OUTPUT«1» | ||
moritz | that's pretty old | 05:36 | |
05:44
huf joined
|
|||
lue | .oO[ At least rakudo is no longer at that point where "pretty old" means "I don't have the version that fixes junctions" :) ] | 05:49 | |
benabik | "Date of last update: just use git log already." | 06:08 | |
06:19
kaare_ joined
06:22
stevan__ joined
06:24
stevan_ left
06:35
k1lldash9 left
06:39
woolfy1 left
06:41
lizmat left
06:52
SamuraiJack joined
|
|||
dalek | rl6-roast-data: 4823f35 | coke++ | / (4 files): today (automated commit) |
06:58 | |
07:12
darutoko joined
|
|||
[Coke] | so, pugs kind of works on the new box. lots of locale errors. | 07:19 | |
dalek | albot: ae68940 | moritz++ | build-scripts/rebuild- (2 files): rework rebuild-rakudo.pl * build rakudo and nqp for jvm and parrot in the same dir * assume that --gen-parrot and --gen-nqp are smart enough (they should be) |
07:21 | |
albot: 7121ee6 | moritz++ | evalbot.pl: use new rakudo-p build |
07:24 | ||
07:24
sqirrel joined
07:27
xenoterracide left
07:49
[Sno] left
08:14
denisboyun joined
08:17
araujo joined
08:33
lue left
08:34
[Sno] joined
08:47
sqirrel left
09:03
virtualsue joined
09:08
lizmat joined
|
|||
jnthn | morning-ish, #perl6 | 09:14 | |
lizmat | good *, #perl6 from the t-dose | 09:15 | |
09:23
SamuraiJack_ joined,
Rotwang joined,
kaare_ left
09:27
SamuraiJack left
09:45
xinming_ joined,
SamuraiJack_ left
09:48
xinming left
09:49
spider-mario joined
09:50
iSlug joined
09:51
darutoko left
|
|||
dalek | albot: b4638da | moritz++ | evalbot.pl: use nqp-{p,j} from the new rakudo build |
09:57 | |
moritz | evalbot control restart | ||
09:57
camelia left
|
|||
dalek | ast: e739aea | (Elizabeth Mattijsen)++ | S32-array/exists (2 files): Merge @a:exists tests into a single file |
10:01 | |
10:01
virtualsue left
|
|||
dalek | kudo/nom: 435d863 | (Elizabeth Mattijsen)++ | t/spectest.data: Remove removed file from tests |
10:02 | |
10:04
camelia joined
|
|||
moritz | nqp-p: say 42 | 10:04 | |
10:05
ChanServ sets mode: +v camelia
|
|||
camelia | nqp-parrot: OUTPUT«Confused at line 2, near "say 42"current instr.: 'panic' pc 16306 (gen/parrot/stage2/NQPHLL.pir:6018) (gen/parrot/stage2/NQPHLL.nqp:426)» | 10:05 | |
moritz | nqp-j: say(42) | ||
camelia | nqp-jvm: OUTPUT«42» | ||
10:06
dmol joined
|
|||
moritz | is it intentional that we don't install the eval server for rakudo-jvm? | 10:07 | |
it would make my ilfe with camelia easier | |||
jnthn | moritz: No objections from me | 10:12 | |
10:18
sqirrel joined
|
|||
moritz | huh, seems it's supposed to happen already | 10:21 | |
10:25
virtualsue joined
10:29
iSlug left
10:32
xinming_ left
10:34
xinming joined
10:38
woolfy joined
10:45
sqirrel left
10:56
SmokeMac_ joined
11:00
SmokeMachine left
11:02
SmokeMac_ left
11:04
SmokeMachine joined
11:05
xinming left
11:06
xinming joined
|
|||
dalek | ast: 83aa430 | (Elizabeth Mattijsen)++ | S32- (2 files): Some more :exists tests |
11:14 | |
11:26
colomon joined
|
|||
colomon | n: say 1 R?? 2 !! 3 | 11:27 | |
camelia | niecza v24-98-g473bd20: OUTPUT«Use of uninitialized value in string context at /home/p6eval/niecza/boot/lib/CORE.setting line 1355 (warn @ 5)  at /home/p6eval/niecza/boot/lib/CORE.setting line 266 (Mu.Str @ 15)  at <unknown> line 0 (ExitRunloop @ 0)  at /home/p6eval/…» | ||
colomon | std: say 1 R?? 2 !! 3 | 11:28 | |
camelia | std 8adbc60: OUTPUT«===SORRY!===Cannot reverse the args of ?? !! because conditional operators are too fiddly at /tmp/4S0Q4LCpIX line 1:------> say 1 R?? 2 !!⏏ 3Check failedFAILED 00:00 122m» | ||
11:32
pdurbin left
11:57
FROGGS[mobile] left
12:03
dmol left
12:08
virtualsue left
12:27
Rotwang left
12:29
cognominal left,
cognominal joined
|
|||
lizmat | r: class A { method b { say $!a } } # correctly dies at compile time | 12:40 | |
camelia | rakudo 435d86: OUTPUT«===SORRY!=== Error while compiling /tmp/D4cXOwgJ0TAttribute $!a not declared in class Aat /tmp/D4cXOwgJ0T:1------> class A { method b { say $!a⏏ } } # correctly dies at compile time» | ||
lizmat | r: class A { method b { say $.a } } # but a public attribute that doesn't exist does not ? | 12:41 | |
camelia | ( no output ) | ||
dalek | p: f40977a | jnthn++ | src/NQP/World.nqp: Fix to --vmlibs on MoarVM. |
12:42 | |
jnthn | lizmat: $.a is $(self.a) which is a method call | ||
lizmat: Which is late-bound (that is, a subclass could supply it, or mixin, or whatever) | 12:43 | ||
So it's a lot harder to do much with | |||
lizmat | ok, so if we're talking about visibility of attributes in roles, then we're basically only talking about private attributes ? | 12:44 | |
dalek | kudo/moar-support: c6f0537 | jnthn++ | / (2 files): Tweaks to start attempting CORE.setting on Moar. |
||
lizmat | jnthn++ | ||
:-) | |||
jnthn | lizmat: Well, the way I tend to think about it is that Perl 6 has no public attributes. | 12:45 | |
lizmat: Just private attributes, and has $.a means "declare $!a and make me an accessor method" | |||
lizmat | ah, ok | ||
jnthn | Which I think is a less confusing way to think of it (in so far as, that's how it actually works) :) | ||
lizmat | so a subclass attribute "a" will hide an attribute "a" in the superclass that way | 12:46 | |
jnthn | A subclass accessor will, yes. | 12:47 | |
Attributes through the $!x syntax are visible in the class that decalred them only | |||
And a $!x in a base class will not conflict with a $!x in a subclass. | |||
That's why nqp::getattr is fully qualified with the declaring type, fwiw | 12:48 | ||
lizmat | but a $!x in a role, is basically defining that in the "does"ing class | ||
except that that doesn't really work yet :-) | 12:49 | ||
jnthn | Yeah, or would be if we got the semantics right :) | ||
lizmat | as far as visibility is concerned | ||
jnthn | Maybe that's one for me to pick over in the next days :) | ||
We make it to like 5 of CORE.setting (the first 4 are comments or empty) on Moar. :) | |||
16,827 lines to go... :P | 12:50 | ||
lizmat | hehe... and there I am working on adding lines to the CORE.setting :-) | ||
ok, so I should leave the role private attribute visibility to you ? | 12:51 | ||
jnthn | Well, I don't mind if you take it, but I don't mind doing it either :) | 12:52 | |
lizmat | I've been looking at it and not seeing my way through to it just yet | ||
so I would inspect your commit with great interest | |||
and then I could try to finish off "is DEPRECATED" on attributes and classes | 12:53 | ||
the way I see it, is to add a deprecated attribute to Attribute | |||
12:54
FROGGS[mobile] joined
|
|||
lizmat | and at compose time of the class of the attribute, add ENTER phasers | 12:54 | |
if there is a method for the attribute | |||
jnthn | Does "is DEPRECATED" make sense on an attribute? | 12:56 | |
Oh...on its accessor... | |||
lizmat | if not, create an accessor method with the call to DEPRECATED | ||
yes | 12:57 | ||
(sorry, was distracted by someone at the Perl stand :-) | |||
jnthn | The latter is probably the easier way | ||
lizmat | the idea of "class A is DEPRECATED {} | ||
would be to add an ENTER phaser on "new" | |||
jnthn | Not sure that will quite work... | 12:58 | |
As the "new" is typically inherited from Mu | |||
lizmat | method new (|c) { DEPRECATED("foo"); nextsame } | 12:59 | |
would do the trick, no? | |||
jnthn | But what if the class itself contains a "new" method already? | 13:00 | |
lizmat | then it would just add an ENTER phaser with a call to DEPRECATED in it | 13:01 | |
this is how "is DEPRECATED" is implemented on subs/methods | 13:17 | ||
dalek | p: 87fa87c | jnthn++ | src/vm/moar/ (2 files): Register QAST->MAST as 'QAST', not 'qast'. |
13:31 | |
kudo/moar-support: e0ad5cd | jnthn++ | src/vm/moar/ops/perl6_ops.c: Stub p6settypes. |
13:32 | ||
kudo/moar-support: a265104 | jnthn++ | src/vm/moar/Perl6/Ops.nqp: QAST->MAST compiler is now 'qast'. |
|||
colomon | is panda working on jakudo yet? | 13:34 | |
13:35
Gothmog_ left
|
|||
jnthn | colomon: Has for a while, I believe | 13:37 | |
donahldh++ did lots of work in that direction :) | |||
colomon | awesome | ||
I should try to get the smoker running on it. | 13:38 | ||
alas, still swamped with $work | |||
13:42
Gothmog_ joined
13:53
Rotwang joined
13:56
denisboyun left
|
|||
jnthn | airprot & | 13:57 | |
colomon | safe travels! | 13:58 | |
13:58
mtk joined
|
|||
diakopter | anyone know when jnthn will be back? :) | 14:07 | |
FROGGS[mobile] | jnthn: "we" attack the setting already? | 14:08 | |
lizmat | it's my understanding he will be in Salzburg next Sat/Sun at the Austrian Perl Workshop | 14:09 | |
and enjoying some time off $work | |||
whether that means he will be online or not, I don't know | 14:10 | ||
FROGGS[mobile]: [14:44:40] <+dalek> rakudo/moar-support: Tweaks to start attempting CORE.setting on Moar. | 14:13 | ||
FROGGS[mobile]: [14:49:49] <jnthn> We make it to like 5 of CORE.setting (the first 4 are comments or empty) on Moar. :) | 14:14 | ||
[14:50:14] <jnthn> 16,827 lines to go... :P | |||
so, I guess, yes :-) | |||
14:16
fridim_ joined
|
|||
diakopter | lolz | 14:17 | |
14:26
rindolf joined,
zakharyas joined
14:27
lue joined
|
|||
lue | hello world o/ | 14:27 | |
lizmat | lue /o | ||
colomon | \o | 14:32 | |
14:38
logie joined
14:47
logie left
14:48
mtk left
|
|||
japhb__ | r: sub read-32-bit() {} | 14:51 | |
camelia | rakudo 435d86: OUTPUT«===SORRY!=== Error while compiling /tmp/XYASvdp5fWMissing blockat /tmp/XYASvdp5fW:1------> sub read⏏-32-bit() {} expecting any of: statement list prefix or term prefix or meta-p…» | ||
japhb__ | r: sub read_32_bit() {} | ||
camelia | ( no output ) | ||
lue | r: sub read-bits32() {} | ||
camelia | ( no output ) | ||
lue | That's not good. | ||
japhb__ | TimToady: Is that ^^ the way you expect hyphenated identifier parsing to work? | 14:52 | |
lue: Yeah, that seems odd | |||
std: sub read-32-bit() {} | |||
camelia | std 8adbc60: OUTPUT«===SORRY!===Malformed block at /tmp/C8xBHgkif2 line 1:------> sub read⏏-32-bit() {} expecting any of: new name to be defined routine_defParse failedFAILED 00:01 120m» | ||
14:52
denis_boyun joined,
mtk joined
|
|||
japhb__ | Huh, it's there in STD too. | 14:52 | |
japhb__ wonders why. | |||
lizmat | std: sub s-foo {}' | 14:53 | |
camelia | std 8adbc60: OUTPUT«===SORRY!===Strange text after block (missing comma, semicolon, comment marker?) at /tmp/Z25YXjPWle line 1:------> sub s-foo {}⏏' expecting any of: POST horizontal whitespace infix or meta-infix infix…» | ||
lizmat | r: sub s-foo {}' | ||
camelia | rakudo 435d86: OUTPUT«===SORRY!=== Error while compiling /tmp/VnUWUipjTVTwo terms in a rowat /tmp/VnUWUipjTV:1------> sub s-foo {}⏏' expecting any of: statement list horizontal whitespace postfix …» | ||
14:53
mtk left
|
|||
lizmat | r: sub s-foo {} | 14:53 | |
camelia | ( no output ) | ||
lizmat | std: sub s-foo {} | ||
camelia | std 8adbc60: OUTPUT«ok 00:01 122m» | ||
14:54
mtk joined
|
|||
japhb__ | I'm thinking the rule for what's inside a hyphenated identifier should be laxer than what's on the front of one. I mean, I can understand not allowing 32-bit-read, but read-32-bit seems sane. | 14:55 | |
std: sub read-32bit() {} | 14:56 | ||
camelia | std 8adbc60: OUTPUT«===SORRY!===Malformed block at /tmp/987SQud9g0 line 1:------> sub read⏏-32bit() {} expecting any of: new name to be defined routine_defParse failedFAILED 00:01 120m» | ||
lue | japhb__: S02:1908 "(Note, however, that identifiers may now contain an apostrophe or hyphen if followed by a character matching <.alpha>)" | ||
synopsebot | Link: perlcabal.org/syn/S02.html#line_1908 | ||
lue | japhb__: so yes, it is intentional. | ||
japhb__ | r: say '3' ~~ /<alpha>/ | 14:57 | |
camelia | rakudo 435d86: OUTPUT«Nil» | ||
japhb__ | Huh. | ||
lue | I personally would vote changing it to <.alnum>. Even "mark-2" is acceptable to me. | 14:58 | |
colomon | what lue said | ||
japhb__ | Ditto. | ||
colomon | I believe the reason is to make it clearer whether you're dealing with a single identifier or mark - 2 | 14:59 | |
lizmat | r: my $a=42; say $a-5 | ||
camelia | rakudo 435d86: OUTPUT«37» | ||
colomon | instead of "unknown variable $a-5" | ||
lizmat | that will fail with <.alphnum> | ||
lue | oh yeah. | ||
lizmat | r: sub a { 42 }; say a-5 | 15:00 | |
camelia | rakudo 435d86: OUTPUT«37» | ||
lizmat | so even checking for sigilled identifiers would not work | ||
lue | .oO( m/ '-' [<alpha>|<digit> <!before $>] / ) |
15:01 | |
japhb__ | I still think the current state is a violation of my mental model that if you wanted an infix operator (subtraction), you should be putting spaces around it. | ||
lue | r: my \foo = 42; my \bar = 21; my \foo-bar = 64; say foo-bar | 15:02 | |
camelia | rakudo 435d86: OUTPUT«64» | ||
japhb__ | It also leaves you with a LTA error (the malformed block error above) | ||
lue | "But I wanted foo *minus* bar" saith someone, I'm sure. | ||
lizmat | r: my \foo = 42; my \bar = 21; my \foo-bar = 21; say foo-bar # problem solved | 15:03 | |
japhb__ | I still stick to the infix op should need spaces rule. The only place I can see people complaining is [*-1] | ||
camelia | rakudo 435d86: OUTPUT«21» | ||
lue | (What I'm saying there is that barewords make this an unfortunate issue too. The point here is that an infix operator is perhaps a poor choice for identifier names.) | ||
15:04
rindolf left,
rindolf joined,
sqirrel joined
|
|||
lue | japhb__: I prefer spaces too. The main problem I have though is that some people prefer not using spaces, and I'm not sure forcing whitespace for the sake of expanded identifier name possibilities is justified. | 15:05 | |
japhb__ | We're already forcing spaces in a LOT of places Perl 5 did not. | ||
lue | True, but I'm not sure the people who expect 42-5 or even $foo+32 to work will be happy with you :) | 15:07 | |
lizmat | maybe "read-32bit" could be made to work, as in ' or -, followed by 0 or more alphnum, followed by one or more alpha ? | ||
japhb__ | And for me the pattern has to be "You can use - in identifiers" or "You cannot use - in identifiers", because I refuse to make an API where some names have - and some have _. That way lies PHP (though their inconsistency is a different one). | ||
diakopter | std: 1 while{1} | ||
colomon prefers spaces around operators except when he doesn't :) | |||
camelia | std 8adbc60: OUTPUT«ok 00:01 123m» | ||
diakopter | std: 1 while.1 | 15:08 | |
camelia | std 8adbc60: OUTPUT«ok 00:00 121m» | ||
diakopter | heh | ||
lue | lizmat: I was thinking of a "final alpha" rule or something, but I was loathe to suggest /yet another/ rule to identifiers. Glad to see not everyone would've objected :) But yeah, that's what my thought bubble earlier was hinting at: | 15:09 | |
.oO( m/ '-' [<alpha>|<digit> <!before $>] / ) |
|||
japhb__ | lizmat: I could probably work with the read-32bit compromise, but it still feels like an exception I have to remember. | ||
nodnod | |||
15:10
denis_boyun left
|
|||
diakopter | does rakudo moar-support have a --gen-moar yet? | 15:10 | |
er, does the --gen-nqp in rakudo moar-support work with moar? | |||
lue | r: my $hanging-hyphens- = 42; | 15:11 | |
camelia | rakudo 435d86: OUTPUT«===SORRY!=== Error while compiling /tmp/sS5qGLOeyFPreceding context expects a term, but found infix = insteadat /tmp/sS5qGLOeyF:1------> my $hanging-hyphens- =⏏ 42;» | ||
lue | fwiw hyphens in idents already have some special rules. | ||
r: my $endnum42; my $normalvar; | |||
camelia | ( no output ) | ||
15:13
rindolf left
|
|||
lue | .oO(perhaps if we replace hyphen en or em dash (– or —), we can avoid these issues.) |
15:13 | |
15:13
rindolf joined,
pecastro left
15:14
pecastro joined
|
|||
lue | hyphen *with | 15:15 | |
diakopter | r: my \_ = $_; $_ = 55; say _ | 15:28 | |
camelia | rakudo 435d86: OUTPUT«55» | ||
diakopter | lizmat: does that ^ seem right to you? | ||
lue | seem right to me. After, idents start with <alpha> :) | 15:30 | |
*After all (geez) | |||
15:31
rindolf left
15:32
rindolf joined,
lizmat left,
woolfy left
15:33
Rotwang left
|
|||
lue | diakopter: ^^^ | 15:37 | |
diakopter | lue: I meant that the \ makes it act like binding | 15:38 | |
lue | Oh. That's weird. | ||
r: my $bar; my \foo = $bar; $bar = 42; say foo | 15:39 | ||
camelia | rakudo 435d86: OUTPUT«42» | ||
japhb__ | Days when TDD doesn't pay: Every one of the half dozen bugs I just fixed were in my tests, not in my implementation. :-( | ||
lue | .oO(Your test tests helped you find them though, right?) |
||
dalek | albot: e5ea5a4 | moritz++ | runtime/run-rakudo-jvm-evalserver: use the installed perl6-eval-server |
15:42 | |
albot: 80846f7 | moritz++ | evalbot.pl: Target reorganization j => rakudo-jvm p => rakudo-parrot P => Pugs r => [rakudo-parrot, rakudo-jvm] rnP => [rakudo-parrot, rakudo-jvm, niecza, Pugs] |
|||
moritz | evalbot control restart | 15:43 | |
15:43
camelia left
|
|||
japhb__ | masak, since you seem to be interested in such things: I find that I don't write tests *before* the code. I put tests and implementation in side-by-side editor windows, hack on both switching back and forth until API seems sane to use *and* implement, and then save both and run the tests to see if I messed up on either side. | 15:43 | |
15:43
camelia joined,
camelia left,
camelia joined
15:44
ChanServ sets mode: +v camelia
15:45
ajr joined,
ajr is now known as Guest17210
|
|||
lue | The One True Downside to TDD, in my experience, is that you need a well-thought-out plan for your project beforehand :P . | 15:45 | |
15:45
kaare_ joined
15:46
Guest17210 is now known as ajr_
|
|||
lue | r: say "can I haz parrots and coffee nao?" | 15:46 | |
camelia | rakudo-jvm 882e33: OUTPUT«Can't call method "syswrite" on an undefined value at /home/p6eval/jvm-rakudo/eval-client.pl line 32.» | ||
..rakudo-parrot 435d86: OUTPUT«can I haz parrots and coffee nao?» | |||
japhb__ | lue: Even with good planning, I find the adage that no plan survives contact with the enemy to win out anyway. | 15:47 | |
dalek | albot: bc2d62e | moritz++ | runtime/run-rakudo-jvm-evalserver: fix typo |
15:48 | |
lue | japhb__: me too (esp. at the start, the content of the tests is going to fluctuate wildly as I peg down naming conventions etc.). But you need to at least have some idea of where it's going, if you don't want to throw away and rewrite tests regularly. | ||
japhb__ has recently decided to give up trying to force myself into coding styles that don't match my work patterns, and instead allow other styles to influence me without getting prescriptivist about it. | |||
15:50
rindolf left
|
|||
japhb__ | .oO( I've been coding relatively successfully for a third of a century ... clearly I'm doing *something* right. ) |
15:50 | |
15:50
rindolf joined
|
|||
moritz | at $work there is perl code written by 4 other programmers than me (2 of them no longer working at the company, one currently on parental leave), and I can tell just from looking at the code who wrote what | 15:50 | |
rj: say 42 | 15:53 | ||
camelia | rakudo-jvm 882e33: OUTPUT«Unhandled exception: java.lang.NoClassDefFoundError: org/perl6/rakudo/RakOps in (gen/jvm/main.nqp:41) in (gen/jvm/main.nqp)» | ||
moritz | this is inconvenient :( | ||
speaking of inconvenient | |||
the rakudo-on-jvm build seems to recompile the setting each time I run 'make j-all', even though nothing has changed :( | 15:54 | ||
and 'make -d' is uselessly verbose | 15:59 | ||
ah, 'make --debug=b' is better | |||
File `gen/jvm/rakudo-runtime.jar' does not exist. | |||
dalek | -pb: fe71aa5 | (Geoffrey Broadwell)++ | / (2 files): Add comments and s/"/'/ for constant strings Cleanup, style, and clarity, mostly. |
16:00 | |
-pb: 2050fac | (Geoffrey Broadwell)++ | lib/PB/Binary/Reader.pm: Handle fixed-width values in PB::Binary::Reader Handle 32- and 64-bit fixed width wire types, reading them as unsigned integers. This leaves just groups to implement amongst the wire types. |
|||
-pb: ce9bea8 | (Geoffrey Broadwell)++ | t/binary-reader.t: Tests for fixed-width wire types Test reading 32-bit and 64-bit fixed width wire types, both "bare" and as part of a kv field pair. |
|||
16:01
zakharyas left
|
|||
moritz | ... because I screwed up, that's why | 16:03 | |
dalek | kudo/nom: e0c6add | moritz++ | tools/build/Makefile-JVM.in: [JVM] rakudo-runtime.jar needs to be in . |
16:09 | |
kudo/nom: cd21411 | moritz++ | tools/build/create-jvm-runner.pl: produce output from create-jvm-runner.pl |
|||
moritz | LHF: rewrite tools/build/create-jvm-runner.pl in nqp or Perl 6 | ||
16:09
btyler joined
16:33
zakharyas joined
16:36
SamuraiJack_ joined,
sqirrel left
16:40
xinming left,
btyler left
16:41
xinming joined
16:52
xenoterracide joined
17:01
SamuraiJack_ left
17:19
denis_boyun joined
|
|||
dalek | p: fd1de52 | (Tobias Leich)++ | src/vm/moar/QAST/QASTOperationsMAST.nqp: port methods about inlineability from jvm backend |
17:20 | |
17:29
virtualsue joined
|
|||
jnthn | o/ from a plane :) | 17:38 | |
FROGGS | o/ | ||
nwc10 | will we get commits-on-a-plane? | 17:48 | |
actually, that's not special, with git | |||
pushes from a plane... | |||
moritz: is there a LHF ticket queue? | |||
moritz | nwc10: there are tickets in RT with [LHF] or [Easy] in the subject | 17:49 | |
jnthn | nwc10: Yes, though probbably in #moaarvm :) | 17:57 | |
hm, latency :) | |||
This plane is almost empty, so I can't have much bandwidth competition :) | 17:59 | ||
18:07
zakharyas left
18:08
sqirrel joined
18:27
SmokeMac_ joined
18:30
SmokeMachine left
|
|||
japhb__ | .oO( Except for that guy a few seats up trying to stream a 1080p movie because he doesn't like the inflight ... ) |
18:31 | |
dalek | kudo/nom: 0e8a78f | (Steve Mynott)++ | README: fix rakudo jvm Configure line in doc |
||
lue | .oO("Why is this so slow? I paid that tech monkey good money so I could stream movies at 2160q !") |
18:33 | |
18:35
benabik left,
benabik joined
18:38
benabik left
18:41
SmokeMachine joined
18:42
SmokeMachine left,
SmokeMachine joined
18:43
benabik joined
18:44
SmokeMachine left,
SmokeMachine joined
18:45
benabik left,
sqirrel left,
SmokeMac_ left
18:47
benabik joined
|
|||
moritz has found the "nostalgy" plugin for thunderbird and is much happier than before | 18:49 | ||
lue researches nostalgy | 18:51 | ||
18:51
SmokeMachine left,
SmokeMachine joined
18:52
SmokeMachine left
|
|||
retupmoca | ok, I've created a pull request for rakudo and nqp for my attempt at creating a simple version of gethost() | 18:53 | |
18:53
SmokeMachine joined
|
|||
retupmoca | it seems to work for me, but this is the first time I've looked at rakudo internals, so I don't know if it's "correct" | 18:54 | |
18:56
SmokeMachine left
18:57
SmokeMachine joined
19:02
raiph joined
|
|||
moritz | retupmoca++ | 19:02 | |
19:02
rindolf left
|
|||
diakopter | moritz: don't you have a moar bommit cit? | 19:04 | |
uhm. | |||
commit bit | |||
colomon now wants a bommit cit | 19:05 | ||
diakopter now wants lunch | |||
moritz | diakopter: I do, but I'd suggest to give dagurval one | 19:06 | |
retupmoca: the nqp part seems fine. The Rakudo part looks like over-engineering to me (two new classes where the only bit of information is a single string) | 19:07 | ||
retupmoca | moritz: S29 seems to say the two classes are needed | ||
unless I'm not understanding it | |||
moritz | retupmoca: I'll go read S29 then :-) | 19:08 | |
retupmoca | it also says gethost is supposed to do a lot more than return the machine's local hostname | ||
but that's the only part I need :) | 19:09 | ||
FROGGS | gethost is intended to lookup a name by ip too, IIRC | ||
moritz | retupmoca: I'd say we ignore that part of S29 for now | ||
retupmoca: make it a function gethostname() that returns a Str, and I'll merge it | |||
retupmoca | will do | 19:10 | |
moritz | retupmoca: we can worry about the fancy class pieces once we are sure we actually want them | ||
moritz builds the NQP part | 19:11 | ||
19:12
dmol joined
|
|||
dalek | p: 9fcd736 | (Andrew Egeler)++ | src/vm/ (4 files): Add gethostname op |
19:16 | |
moritz | retupmoca++ | ||
raiph | does anyone know of good recent blog posts or discussions on "compiler compilers" as defined in en.wikipedia.org/wiki/Parser_generator? | ||
19:16
benabik left
|
|||
raiph | i'm especially interested in how p6 sits in relation to the comment "The ideal compiler-compiler takes a description of a programming language and a target instruction set architecture, and automatically generates a usable compiler from them. In practice, the state of the art has yet to reach this degree of sophistication and most compiler generato | 19:16 | |
rs are not capable of handling semantic or target architecture information." | |||
19:16
benabik joined
|
|||
raiph | (which is from the wikipedia page I linked) | 19:17 | |
19:17
kaare_ left
|
|||
raiph | or to be much more specific, what compiler generators do you know that ARE "capable of handling semantic or target architecture information"? | 19:21 | |
lue | NQP? | 19:22 | |
19:23
sqirrel joined
|
|||
TimToady | we don't really use a compiler generator in the sense they mean it | 19:24 | |
we just make it easy to write a compiler in Perl 6 :) | |||
perigrin | Marpa is a compiler generator in the sense they mean it ... I think. | ||
except ... not really ... by half. | |||
TimToady | if some optimizer wants to pretend it's a compiler generator later on, that's great, but not what Perl 6 is about | ||
moritz | perigrin: I thought Marpa was "just" a parse generator | ||
perigrin | moritz: right ... I corrected myself :) | 19:25 | |
moritz | perigrin: aye | ||
19:26
woolfy joined
|
|||
lue | if STD could run Perl 6, I think viv would qualify as a compiler generator :) | 19:31 | |
GlitchMr | github.com/rakudo/rakudo/commit/88...6b0f348e17 | 19:32 | |
Interesting. I ran that by accident in 2013.01, and it worked. But it's probably so old that accidentally worked. | 19:33 | ||
it accidentally* | |||
dalek | kudo/moar-support: 1185c34 | (Tobias Leich)++ | src/vm/moar/ops/perl6_ops.c: stub p6bool |
19:36 | |
retupmoca | moritz: pull request updated | 19:43 | |
GlitchMr | github.com/rakudo/rakudo/commit/49...ac14d1e059 | 19:45 | |
Language confusion ;-). | |||
FROGGS | I do that too, almost every day :o) | 19:46 | |
(at $work) | |||
GlitchMr | Actually, I sometimes used -> in Perl 6. | 19:50 | |
Or $hash{key} syntax. | 19:51 | ||
FROGGS | the ~/. typo is usually my only stolperstein | 19:52 | |
retupmoca | is there a portable conditional-compilation syntax? | ||
more specifically, I want to say "If running on rakudo-parrot, use this code, otherwise use this code over here" | |||
lue | r: say $*VM<name> | 19:53 | |
camelia | rakudo-jvm 882e33: OUTPUT«jvm» | ||
..rakudo-parrot 0e8a78: OUTPUT«parrot» | |||
timotimo | well, there still is a $known_backends there | 19:54 | |
lue | retupmoca: any chance $*VM<name> would serve your needs? | ||
retupmoca | lue: can I use that at compile time? MIME::Base64 is currently parrot only, but I still want my code to compile on the jvm | 19:55 | |
with an error or something, but with the rest of the features usable | |||
timotimo | you can run-time import if you supply all names that you want to import | ||
lue | r: BEGIN { say $*VM<name> } | ||
camelia | rakudo-jvm 882e33: OUTPUT«jvm» | ||
..rakudo-parrot 0e8a78: OUTPUT«parrot» | |||
lue | apparently yes. | 19:56 | |
timotimo | r: try require MIME::Base64 <&encode &decode>; say &encode; | ||
camelia | rakudo-parrot 0e8a78, rakudo-jvm 882e33: OUTPUT«(Any)» | ||
timotimo | and then you can do things like &encode //= sub { ... } | ||
lue | .oO(Arglist case of use is implemented ‽) |
19:57 | |
FROGGS | star: try require MIME::Base64 <&encode &decode>; say &encode; | ||
camelia | star 2013-09: OUTPUT«(Any)» | ||
timotimo | is that actually part of star? | ||
FROGGS | star: use MIME::Base64 | ||
camelia | ( no output ) | ||
timotimo | oh, apparently it is | 19:58 | |
retupmoca | MIME::Base64 doesn't have exported subs | ||
FROGGS | ahh | ||
retupmoca | it has static methods | ||
MIME::Base64.encode_base64 | |||
timotimo | ah, so it exports a class? | ||
right. you can supply that then | |||
FROGGS | star: try require MIME::Base64; say &MIME::Base64.encode; | ||
camelia | star 2013-09: OUTPUT«No such method 'encode' for invocant of type 'Any' in block at /tmp/FlcV8XbU27:1» | ||
19:58
dansamo joined
|
|||
retupmoca | star: try require MIME::Base64; say &MIME::Base64.encode_base64; | 19:58 | |
camelia | star 2013-09: OUTPUT«No such method 'encode_base64' for invocant of type 'Any' in block at /tmp/QA4omYH58u:1» | ||
FROGGS | star: try require MIME::Base64; say MIME::Base64.^methods | 19:59 | |
camelia | star 2013-09: OUTPUT«Could not find symbol '&Base64' in method <anon> at src/gen/CORE.setting:12026 in any at src/gen/Metamodel.nqp:2671 in any find_method_fallback at src/gen/Metamodel.nqp:2659 in any find_method at src/gen/Metamodel.nqp:946 in block at /tmp/B…» | ||
19:59
Quom joined
|
|||
FROGGS | star: use MIME::Base64; say MIME::Base64.^methods | 19:59 | |
camelia | star 2013-09: OUTPUT«encode_base64 decode_base64» | ||
Quom | That's a little redundant | ||
timotimo | require still needs you to give a list of imported symbols, right? | ||
FROGGS | star: try require MIME::Base64; say &::('MIME')::('Base64').encode_base64 | ||
camelia | star 2013-09: OUTPUT«No such symbol '&::MIME::Base64' in method <anon> at src/gen/CORE.setting:12026 in any at src/gen/Metamodel.nqp:2671 in any find_method_fallback at src/gen/Metamodel.nqp:2659 in any find_method at src/gen/Metamodel.nqp:946 in block at /tmp/…» | ||
dalek | kudo/nom: ec29c0f | (Andrew Egeler)++ | / (4 files): Implement gethostname() Squashed commit of github.com/rakudo/rakudo/pull/221 Signed-off-by: Moritz Lenz [email@hidden.address] |
20:00 | |
timotimo | star: try require MIME::Base64 <Mime::Base64>; say &::('MIME')::('Base64').encode_base64 | ||
benabik | star: try require MIME::Base64; say &::('Mime::Base64::encode_base64') | ||
camelia | star 2013-09: OUTPUT«No such symbol '&::MIME::Base64' in method <anon> at src/gen/CORE.setting:12026 in any at src/gen/Metamodel.nqp:2671 in any find_method_fallback at src/gen/Metamodel.nqp:2659 in any find_method at src/gen/Metamodel.nqp:946 in block at /tmp/…» | ||
star 2013-09: OUTPUT«No such symbol '&::Mime::Base64::encode_base64' in method gist at src/gen/CORE.setting:12021 in method gist at src/gen/CORE.setting:953 in sub say at src/gen/CORE.setting:12921 in block at /tmp/NfxOaU1BiR:1» | |||
FROGGS | star: try require MIME::Base64; say ::('MIME')::('Base64').^methods | 20:01 | |
camelia | star 2013-09: OUTPUT«encode_base64 decode_base64» | ||
20:02
denis_boyun left
|
|||
Quom | r: class A { method b {1} }; say &A.b | 20:03 | |
camelia | rakudo-jvm 882e33: OUTPUT«===SORRY!=== Error while compiling /tmp/ljiVK2iLrcUndeclared name: &A used at line 1» | ||
..rakudo-parrot 0e8a78: OUTPUT«===SORRY!=== Error while compiling /tmp/L9D4s7l8awUndeclared name: &A used at line 1» | |||
Quom | std: class A { method b {1} }; say &A.b | ||
retupmoca | moritz: tyvm :) | ||
camelia | std 8adbc60: OUTPUT«ok 00:01 128m» | ||
Quom | n: class A { method b {1} }; say A.&b | ||
camelia | niecza v24-98-g473bd20: OUTPUT«===SORRY!===Undeclared routine: 'b' used at line 1Unhandled exception: Check failed at /home/p6eval/niecza/boot/lib/CORE.setting line 1502 (die @ 5)  at /home/p6eval/niecza/src/STD.pm6 line 1147 (P6.comp_unit…» | ||
Quom | n: class A { method b {1} }; say &A.b # oops | ||
camelia | niecza v24-98-g473bd20: OUTPUT«Unhandled exception: System.NullReferenceException: Object reference not set to an instance of an object at Niecza.StashCursor.Core (System.String key, Boolean final, Niecza.StashCursor& sc, Niecza.Variable& v, Niecza.Variable bind_to) [0x00000] in…» | ||
lue wonders if MIME::Base64 should be re-written to be pure P6, or if it should just be moved to some sort of VM::Parrot:: to make room for an eventual future P6 MIME::Base64 | |||
Quom | Is &Class.meth unimplemented? | 20:04 | |
timotimo | probably | ||
retupmoca | I would like to have and/or write a pure P6 version of MIME::Base64, but I don't really want to add *another* base64 module | ||
since we have Enc::MIME::Base64 as well (which doesn't compile for me) | |||
Quom | n: class A { method b {1} }; say A.<&b> | 20:05 | |
camelia | niecza v24-98-g473bd20: OUTPUT«(Any)» | ||
retupmoca | (this is for an Email::MIME dependency FYI) | ||
Quom | r: class A { method b {1} }; say A.<&b> | ||
camelia | rakudo-parrot 0e8a78, rakudo-jvm 882e33: OUTPUT«(Any)» | 20:06 | |
20:06
Mouq left,
Quom is now known as Mouq
|
|||
moritz | I don't think &Type.method will ever work | 20:06 | |
because that just calls a method on a Sub object | 20:07 | ||
(orelse fails) | |||
Mouq | moritz: At the same time, STD seems to think it's okay | ||
std: &blabla | 20:08 | ||
camelia | std 8adbc60: OUTPUT«===SORRY!===Undeclared routine: 'blabla' used at line 1Check failedFAILED 00:01 124m» | ||
FROGGS | Mouq: it is okay if the method exists | ||
moritz | to get a reference to a method, use Type.^can('method')[0] | ||
std: &Blabla | |||
camelia | std 8adbc60: OUTPUT«===SORRY!===Undeclared name: 'Blabla' used at line 1Check failedFAILED 00:01 124m» | ||
lue | retupmoca: Enc::MIME... seems to be a reinvented wheel of moritz's MIME::Base64. I don't think anyone would mind much an actually Perl 6 module :) [more] | ||
FROGGS | std: class A { }; A.foo() | ||
camelia | std 8adbc60: OUTPUT«ok 00:01 122m» | ||
FROGGS | ENOCHECKFORMETHODS | ||
lue | retupmoca: The only bad part is that names are taken, which means either current MIME::Base64 -> VM::Parrot::MIME::Base64, or new MIME::Base64 is actually GenuinePerl6::MIME::Base64 or something. | 20:09 | |
FROGGS: syntactically, there is nothing wrong with what you wrote. | |||
FROGGS | why not just adopt MIME::Base64 and make it better? | ||
lue: I know, that is why &A.foo is fine for std | |||
err, &foo.A | 20:10 | ||
retupmoca | FROGGS: that was my first thought, but I'm not sure how to use the current pir code when running on parrot, while running new pure perl code otherwise | ||
lue 's preferred action plan is MIME::Base64 becomes Pure Perl6, and optionally Enc::MIME::Base64 ⇒ VM::Parrot::MIME::Base64 | |||
20:10
virtualsue left
|
|||
FROGGS | retupmoca: put the pir code in a submodule (or a role?), and mix it in or delegate to it depending which backend is there | 20:11 | |
20:11
Mouq left
|
|||
moritz | lue: fwiw it's not really "my" module, I just took over maintenance to make it fit for R* | 20:11 | |
FROGGS | like File::Spec, File::Path or IO::Path or what it is called today | ||
moritz | retupmoca: in case of doubt, use eval | ||
lue | .oO(If there's no significant speed drop with the PP6 version, then you could just ditch the PIR code altogether!) |
20:12 | |
moritz | anyway, I'll gladly hand over maintance of MIME::Base64 to anybody who makes it work on more backends | ||
retupmoca | moritz: I'll work on it if you hand it to me | 20:13 | |
I'd like to have a portable MIME::Base64 for Email::MIME | |||
moritz | retupmoca: should I just fork it into the perl6 organization, and give you a commit bit? | ||
retupmoca | moritz: works for me | ||
timotimo | lue: hah, are you willing to believe that? | ||
lue | I'm assuming MIME::Base64 is based on the RFC 2045, yes? | ||
timotimo: I'm willing to at least try it and see what the experimentation data says :) | 20:14 | ||
timotimo | sure | ||
i'm pessimistic about rakudo performance, honestly | |||
lue | r: say "It can't be that bad. How long did this take? \"{now - BEGIN now}\" Oh." | 20:15 | |
camelia | rakudo-jvm 882e33: OUTPUT«It can't be that bad. How long did this take? "0.142" Oh.» | ||
..rakudo-parrot 0e8a78: OUTPUT«It can't be that bad. How long did this take? "0.05908318" Oh.» | |||
diakopter | timotimo: in general? in what timeframe? | ||
moritz | retupmoca: done | ||
timotimo | diakopter: "right now" | ||
diakopter | meh; don't worry about it for now.. | 20:16 | |
lue | m: say "It can't be that bad. How long did this take? \"{now - BEGIN now}\" Oh." | ||
timotimo | i'm hopeful that moarvm will be noticably faster than parrot | ||
retupmoca | moritz: again, tyvm :) hopefully I won't take too long | ||
timotimo | lue: heh heh | ||
r: say "It can't be that bad. How long did this take? \"{now - BEGIN now}\" Oh." | |||
diakopter | FROGGS: ping | ||
camelia | rakudo-jvm 882e33: OUTPUT«It can't be that bad. How long did this take? "0.148" Oh.» | ||
..rakudo-parrot 0e8a78: OUTPUT«It can't be that bad. How long did this take? "0.060711066" Oh.» | |||
moritz | diakopter: those of us who actually *use* rakudo today are worried about rakudo's performance right now :-) | ||
diakopter | hey, I'll get around to trying it out one of these days... | 20:17 | |
timotimo | that doesn't include the startup time of the compiler (and iiuc the jvm version uses the evalserver), but it's not terribly bad. but it gets bad fast if you do more things :P | ||
diakopter | ..once it runs on a VM whose source I can trust top to bottom... | ||
fsdo bottom | |||
lue | oh hey, uh, I, uh, got something back from camelia! <camelia> rakudo-moar 0e8a78: OUTPUT«It can't be that bad. How long did this take? "0.000000001" Oh.» | 20:18 | |
FROGGS | diakopter: pong | ||
timotimo | :D | ||
diakopter | FROGGS: do you think jnthn was suggesting I could work on the continuations port while he was away? | ||
dalek | osystem: ccce167 | moritz++ | META.list: MIME::Base64 now lives in the perl6 organization |
20:19 | |
20:19
sqirrel left
|
|||
diakopter | FROGGS: relatedly, are you okay with me taking that on over the next day? | 20:19 | |
FROGGS | diakopter: I understand it like that it would be needed while making the setting compile | 20:20 | |
benabik | nqp-m: 1; # That's not good. | ||
camelia | nqp-moarvm: OUTPUT«Unhandled exception: Bytecode segment overflows end of stream» | ||
timotimo | nqp-m: say("why u do dis"); | 20:21 | |
camelia | nqp-moarvm: OUTPUT«Unhandled exception: Bytecode segment overflows end of stream» | ||
FROGGS | diakopter: I am okay with everything, since I tend to not understand the relations between the tasks/milestones :o) | ||
moritz | benabik: but the error message sounds kind of cool :-) | ||
diakopter pokes someone to fix camelia nqp-m | |||
moritz | diakopter: I'll take a look | ||
diakopter | moritz: is it able to use --gen-moar in nqp yet? | ||
dalek | ar: b721a23 | moritz++ | .gitmodules: MIME::Base64 now lives in the Perl 6 organization |
||
moritz | diakopter: should be, but I won't bother changing host07 now... | 20:22 | |
diakopter: because as soon as moar-support lands, we can use the unified rakudo build for all three backends | |||
lue | nqp-m: use MONKEY_DAM; | 20:23 | |
camelia | nqp-moarvm: OUTPUT«Unhandled exception: Bytecode segment overflows end of stream» | ||
moritz | uhm, is anybody doing an R* release for October? | 20:24 | |
I've done 6 out of the last 7 star releases, and I'm starting to feel like a single point of failure | 20:25 | ||
sleep& | 20:28 | ||
lue | good ♞ moritz o/ | 20:29 | |
diakopter | SPF 45 is good | 20:30 | |
timotimo | i have no idea what that means :( | ||
lue | diakopter: ww? | 20:32 | |
moritz: I might be willing to take a crack at releasing something, but I bet I need a CLA for any commitbit on rakudo repos /me will most likely print out the CLA tonight and sign it, and then either scan/email or envelope/mail it | 20:33 | ||
diakopter | timotimo: single point of failure.. | 20:35 | |
timotimo | oh, of course | ||
what does the 45 refer to, though? :| | 20:36 | ||
lue thought it was a recommendation of sunscreen strength | |||
diakopter | FROGGS: I was trying to ask if you had any interest in doing it instead | ||
FROGGS | diakopter: no, I don't even think that I am capable of doing it | 20:37 | |
lue | So, do I just print www.perlfoundation.org/contributor_..._agreement (the whole webpage) as-is, or do I copy-paste the text of the CLA and print that, or is there a secret CLA.pdf I've never come across before? | 20:40 | |
20:40
dansamo left
|
|||
FROGGS | lue: I copied it to a new document, formatted it nicely, signed and sent it both by email and snail mail | 20:41 | |
lue | ...and I just found cla3.pdf, for the first time (I've visited Legal before too, so I must've forgotten about it. But still.) | 20:42 | |
diakopter | what's really stupid is these repositories have been merging pull requests from people who haven't signed it | 20:44 | |
(both parrot and rakudo... ) .. when the whole point is to protect the project from someone contributing code that's not theirs or code they don't contribute all the rights to | 20:45 | ||
jnthn | diakopter: It's mostly a matter of vlume | ||
diakopter | but nobody's been enforcing that for many years | ||
lue | Yeah, I wonder why the TPF still has such an iron grip on rakudo when *no other Perl 6 project* suffers the same level of /p[rotection|aranoia]/ | ||
But hey, as long as there's a CLA I need to sign, I'll do it. | 20:46 | ||
(What's the best approach? Just one of snail/email, or both?) | |||
timotimo | oh, so the pull request without signing the CLA doesn't somehow mean the people who have made the code give up whatever rights? | 20:47 | |
lue | .oO(and arguably hilarious is that rakudo is the one thing you won't find under github.com/perl6) |
20:48 | |
timotimo: I don't think there's even a way to stretch the CLA out to merging a pull request, so... | 20:49 | ||
timotimo | o_O | 20:51 | |
i guess i'll make a cla some time soon | |||
though i have no idea how to make that work with the snail mail stuff | |||
like how much money i have to glue onto it | |||
diakopter | 2,900 euros last I checked | 20:52 | |
timotimo | that's a lot of money | 20:53 | |
diakopter | hey, 2-month long background checks cost a lot | ||
geekosaur | don't they swap . and , ? 3 euros isn't much :p | ||
20:54
ajr_ left
|
|||
tadzik | timotimo: mail it | 20:54 | |
that's what I did | |||
oh, I mean, *e*-mail it | |||
timotimo | ... i can do that? | ||
tadzik | I did that | 20:55 | |
the evidence shows that it worked | |||
print, sign, scan, email | |||
timotimo | ah | ||
yes, i do have a scanner. | |||
20:55
pmurias joined
|
|||
pmurias | diakopter: re having to sign CLA for pull requests would be really annoying | 20:56 | |
diakopter | pmurias: okay, but why have them for folks with commit bits then? | 20:57 | |
I'm sure plenty of folks have submitted more code in pull requests only than folks with commit bits | |||
*some folks with commit bits | |||
pmurias | "here's your commit bit" seems to be a sort of a reward for the CLA | 20:58 | |
diakopter | right, but submitting the CLA doesn't guarantee a commit bit | ||
20:58
SmokeMac_ joined
|
|||
pmurias | aren | 20:58 | |
't we really liberal with commit bits? | 20:59 | ||
lue | tadzik: how long should I wait, via email, before either pestering TPF to take a peek at their inbox or snail-mailing it? | ||
diakopter | pmurias: not historicall for rakudo | ||
lue: you can bug [Coke] about it after a couple weeks | |||
he can ping the proper folks | |||
timotimo: I was kidding about the money; just playing along with your joke :P | 21:00 | ||
lue | Alright. I'd rather not re-learn the arcane magicks of snail-mail unless necessary :) | ||
timotimo | diakopter: :) | ||
tadzik | lue: dunno, a week? | ||
diakopter | lue: just know the US postal service has collected saliva samples from every envelope for 30 years... | ||
tadzik | hah | 21:01 | |
lue | so tonight I shall print-sign-scan-email, then. The email address is [email@hidden.address] or cla@ or webmaster@ or something, right? | ||
diakopter | that's NSA's operation SPITTOON | ||
21:02
SmokeMachine left
|
|||
lue | .oO(What arguably makes the CLA process worse is that it's not the most obvious thing. Example, I do not know the correct destination email. This should've been listed on the CLA or Legal pages) |
21:03 | |
diakopter | .. what's crazy is while I doubt they've actually done that, I'm sure someone proposes it every so often... | ||
pmurias | diakopter: I think the CLA is the main barrier now | 21:04 | |
benabik | .o( The TPF's CLA is the only barrier between us and the NSA collecting saliva from everyone? ) | ||
pmurias | heh | 21:05 | |
lue | I completely understand the CLA's motivations, btw. It just happens to be a high level of security/paranoia for open-source projects in general. | ||
diakopter | it's not security; it's liability protection | 21:06 | |
lue | aka securing your liabilities from threats :) | ||
tadzik | thanks to NSA and all that, the word "Security" now makes one think of something silly and paranoid :) | ||
diakopter | lue: liabilities are negative things... | 21:07 | |
timotimo | that page is hard to print out properly | ||
lue leaves an obligatory^W voluntary HAIL NSA! here before it's too late | |||
diakopter | here's an old one www.perlfoundation.org/attachment/legal/cla.pdf | ||
lue | timotimo: there's cla3.pdf (click "Legal" in the sidebar) | ||
I'll just send it to webmaster@ if I can't find the properer address. (Don't know where else but TPF to look for it, though...) | 21:08 | ||
21:08
xenoterracide left
|
|||
timotimo | oh? | 21:08 | |
i just printed it out using gedit | |||
meh, that's 2 pages | 21:09 | ||
oh well. | |||
i can duplexprint | |||
diakopter | lue: don't send it to webmaster... send it to karen@; she'll be glad to route it I'm sure | 21:10 | |
lue | good to know, thanks diakopter. | ||
diakopter | lue: high level compared to these? contributoragreements.org/wordpress/explore/ | 21:11 | |
dalek | kudo/moar-support: 862eb4f | jonathan++ | src/vm/moar/ops/perl6_ops.c: Implement nqp::p6bool for MoarVM. |
21:14 | |
lue | .oO(I'm pretty sure TPF no longer owns all the Perl 6 codebase anyway. This CLA feels more like a "I don't want to muck about with Pull Requests." statement) |
21:15 | |
timotimo | hehe | ||
lue | s/Perl 6/Rakudo/ of course | ||
retupmoca | re: dispatching based on the current VM. Is there anything wrong with this approach? github.com/perl6/Perl6-MIME-Base64...Base64.pm6 | 21:17 | |
diakopter | retupmoca: you could have those packages export what you want.. or return from the load.. | 21:18 | |
retupmoca | diakopter: I'm not sure how to do that while keeping support for MIME::Base64.encode_base('stuff') | 21:21 | |
without having to call new | |||
s/encode_base/encode_base64/ | 21:22 | ||
diakopter | call new in the BEGIN block? :S | 21:24 | |
lue | you could have modules that just contain functions, unless there's some reason you *need* a class. | 21:26 | |
japhb__ | "Why can't I write to a buf8?" ... # TODO: override at_pos so we get mutability ... "Oh. Crap." | 21:27 | |
21:31
ihm joined
|
|||
retupmoca | also, there is no LICENSE file in MIME::Base64 - am I allowed to just drop one in there, since it mostly isn't my code? | 21:32 | |
I've just been using Creative Commons CC0 for my other modules | 21:33 | ||
lue | Artistic 2 would be a safe LICENSE to use, IMO | ||
tadzik | ask snarkyboojum | ||
or deduce it from LICENSEs he has in other projects | |||
provided he did put some in some | |||
retupmoca | not seeing one in any of his other projects | 21:36 | |
can I send a message via github? | |||
or do I have to dig up an email address from somewhere? | |||
tadzik | I think github removed messaging | 21:37 | |
last time I wanted to message someone, I opened a bug in one of his repos :> | |||
retupmoca | I'll try that | 21:38 | |
lue | .oO(github.com/USER/adhoc-github-messages-to-me) |
||
21:44
ihm left
21:49
preflex left
21:51
preflex joined,
ChanServ sets mode: +v preflex
21:52
iSlug joined
|
|||
dalek | p: bf2001a | (Tobias Leich)++ | src/vm/moar/QAST/QASTOperationsMAST.nqp: map sprintfdirectives for moar |
21:53 | |
jnthn | Well, there's that one down :P | ||
FROGGS | *g* | ||
22:02
felipe left
22:05
camelia left
22:06
camelia joined
22:07
bakedb joined
|
|||
raiph | lue, TimToady, perigrin, moritz: thx for answers to my questions | 22:07 | |
22:07
BinGOs joined,
ChanServ sets mode: +v camelia
|
|||
lue | you're welcome :) | 22:08 | |
22:10
camelia left,
camelia joined
22:11
ChanServ sets mode: +v camelia
22:12
pmurias left
22:13
iSlug left
22:16
Ulti joined
|
|||
dalek | p: aa78b28 | (Tobias Leich)++ | src/vm/moar/QAST/QASTOperationsMAST.nqp: s/seed/srand/, to be in line with jvm/parrot |
22:17 | |
diakopter | nqp-m: say('alive') | 22:19 | |
camelia | nqp-moarvm: OUTPUT«alive» | ||
FROGGS | am I allowed to kill it again? | ||
diakopter | camelia? sure | ||
tadzik | it has more than 9 lives | 22:20 | |
diakopter | it has n+1 lives | ||
tadzik | MOAR LIVES | ||
FROGGS | nqp: nqp::srand(42) | 22:21 | |
camelia | ( no output ) | ||
..nqp-moarvm: OUTPUT«No registered operation handler for 'srand'compile_op» | |||
..nqp-parrot: OUTPUT«error:imcc:syntax error, unexpected INTC, expecting '(' ('42') in file '(file unknown)' line 37013511» | |||
diakopter | heh. | ||
FROGGS | nqp: say(nqp::srand(42)) | ||
camelia | nqp-jvm: OUTPUT«42» | ||
..nqp-moarvm: OUTPUT«No registered operation handler for 'srand'compile_op» | |||
..nqp-parrot: OUTPUT«error:imcc:syntax error, unexpected INTC, expecting '(' ('42') in file '(file unknown)' line 47803015» | |||
diakopter | nqp-parrot: nqp::srand(42.0) | ||
camelia | nqp-parrot: OUTPUT«error:imcc:syntax error, unexpected IREG, expecting '(' ('$I5003') in file '(file unknown)' line 74698520» | ||
diakopter | nqp-parrot: nqp::srand(42.1) | ||
camelia | nqp-parrot: OUTPUT«error:imcc:syntax error, unexpected IREG, expecting '(' ('$I5003') in file '(file unknown)' line 59674376» | ||
diakopter | weird | ||
FROGGS | it wants a bigint | 22:22 | |
diakopter | nqp-parrot: nqp::srand(422938702938452837465) | ||
camelia | nqp-parrot: OUTPUT«Error while compiling block : Error while compiling op srand (source text: "nqp::srand(422938702938452837465)"): Cannot infer type from '-9223372036854775808'current instr.: '' pc 55111 (gen/parrot/stage2/QAST.pir:20131) (gen/parrot/stage2/QAST.nqp:3320)» | ||
FROGGS | r: say(nqp::srand(42)) | ||
diakopter | you knew that was coming | ||
camelia | rakudo-parrot ec29c0, rakudo-jvm 882e33: OUTPUT«42» | ||
22:23
bakedb left
|
|||
FROGGS | the moarvm one does not return the seed btw | 22:23 | |
diakopter | sounds like a NYI | ||
22:24
bakedb joined
|
|||
FROGGS | nqp-m -e 'say(nqp::srand(42))' | 22:24 | |
arg expression cannot be void | |||
diakopter | nqp-m: say(nqp::srand(42)) | ||
camelia | nqp-moarvm: OUTPUT«No registered operation handler for 'srand'compile_op» | ||
diakopter | nqp-m: say(nqp::seed(42)) | ||
camelia | nqp-moarvm: OUTPUT«arg expression cannot be voidhandle_arg» | ||
diakopter | evalbot rebuild nqp-moarvm | 22:25 | |
hm, that used to work | |||
22:25
wbill left
|
|||
FROGGS | nqp-jvm: say(nqp::srand(42.1)) | 22:27 | |
camelia | nqp-jvm: OUTPUT«42» | ||
diakopter | nqp-jvm: say(nqp::srand("-0")) | 22:28 | |
camelia | nqp-jvm: OUTPUT«0» | ||
timotimo | diakopter: i think it's "evalbot control rebuild" actually | ||
but i think only some people are allowed to run that command? | 22:29 | ||
evalbot control rebuild nqp-moarvm | |||
diakopter | boo; it's my server.. | ||
eh, I might remember someone removing that feature | |||
timotimo | oh :( | 22:30 | |
22:31
BinGOs left,
colomon left,
BinGOs joined
22:32
bakedb_ joined
22:33
bakedb left
22:34
colomon joined
|
|||
dalek | p: 52b8ada | (Tobias Leich)++ | src/vm/moar/QAST/QASTOperationsMAST.nqp: srand returns its argument |
22:37 | |
p: 0607d97 | jonathan++ | src/vm/moar/QAST/QASTOperationsMAST.nqp: Map nqp::getlexouter for MoarVM. |
22:41 | ||
22:42
spider-mario left,
BenGoldberg joined,
rurban joined
|
|||
rurban | pmichaud: Do you want to check the new parrot/new-packfile-api branch? I want to merge this tomorrow | 22:43 | |
22:46
xinming left
22:48
xinming joined,
wbill joined
22:52
wbill left
22:55
wbill joined,
wbill left
|
|||
FROGGS | gnight | 22:57 | |
BenGoldberg | preflex: seen yoleaux | 22:59 | |
preflex | yoleaux was last seen on #perl6 1 day, 3 hours, 37 minutes and 49 seconds ago, saying: 18:23Z <diakopter> Mouq: awesome work on stdsigspace Mouq++ | ||
23:00
rurban left
23:01
rurban joined,
rurban left
23:12
konundra joined
23:13
konundra left
23:25
raiph left
|