Time |
Nick |
Message |
00:00 |
|
dpk joined #perl6 |
00:09 |
|
kst` joined #perl6 |
00:09 |
|
rjbs joined #perl6 |
00:10 |
rjbs |
Ah, another channel I forgot to make irssi autojoin after I reboot. |
00:11 |
|
dpk joined #perl6 |
00:15 |
|
fgomez joined #perl6 |
00:19 |
|
adu joined #perl6 |
00:30 |
|
drbean joined #perl6 |
00:30 |
|
kshannon joined #perl6 |
00:30 |
|
lue joined #perl6 |
00:30 |
|
colomon joined #perl6 |
00:30 |
|
Timbus joined #perl6 |
00:30 |
|
BinGOs joined #perl6 |
00:30 |
|
ruoso joined #perl6 |
00:32 |
|
grondilu joined #perl6 |
00:35 |
|
kurahaupo left #perl6 |
00:36 |
|
kurahaupo joined #perl6 |
00:55 |
|
obra joined #perl6 |
01:05 |
dalek |
tablets: ea9bc96 | (Herbert Breunung)++ | docs/appendix-b-grouped.txt: |
01:05 |
dalek |
tablets: fix utf in B and update smartmatch table |
01:05 |
dalek |
tablets: review: https://github.com/perl6/tablets/commit/ea9bc96113 |
01:07 |
dalek |
tablets: 40e7bd4 | (Herbert Breunung)++ | docs/appendix-b-grouped.txt: |
01:07 |
dalek |
tablets: lost one op |
01:07 |
dalek |
tablets: review: https://github.com/perl6/tablets/commit/40e7bd45af |
01:10 |
|
yoleaux joined #perl6 |
01:11 |
|
anuby joined #perl6 |
01:27 |
|
dayangkun joined #perl6 |
01:51 |
|
FROGGS_ joined #perl6 |
02:05 |
|
sqirrel joined #perl6 |
02:09 |
|
Chillance joined #perl6 |
02:16 |
|
lustlife joined #perl6 |
02:22 |
diakopter |
r: my Int $x = Int(9); say $x.WHAT |
02:22 |
camelia |
rakudo ef73eb: OUTPUT«(Int)â¤Â» |
02:22 |
diakopter |
r: my Int $x = Int(9/1); say $x.WHAT |
02:22 |
camelia |
rakudo ef73eb: OUTPUT«(Int)â¤Â» |
02:22 |
diakopter |
uh-huh. |
02:23 |
sorear |
what surprises you |
02:23 |
diakopter |
.oO( to the pyromaniac, everything looks like flamebait... ) |
02:24 |
diakopter |
<-- the pyro |
02:24 |
|
toddr joined #perl6 |
02:24 |
diakopter |
toddr: WAT. |
02:24 |
diakopter |
sorear: well, what shouldn't surprise me? |
02:25 |
sorear |
diakopter: stuff working as designed |
02:25 |
sorear |
unless I'm missing somethin |
02:25 |
diakopter |
n: my Int $x = Int(9/1); say $x.WHAT |
02:25 |
camelia |
niecza v24-37-gf9c8fc2: OUTPUT«Unhandled exception: Unable to resolve method postcircumfix:<( )> in type Int⤠at /tmp/2awbbvbVqZ line 1 (mainline @ 3) ⤠at /home/p6eval/niecza/lib/CORE.setting line 4299 (ANON @ 3) ⤠at /home/p6eval/niecza/lib/CORE.setting line 4300 (module-CORE @ 583… |
02:26 |
diakopter |
n: my Int $x = (9/1).Int; say $x.WHAT |
02:26 |
camelia |
niecza v24-37-gf9c8fc2: OUTPUT«(Int)â¤Â» |
02:26 |
sorear |
Int(whatever) is a coercion, just like c++ and javascript |
02:26 |
sorear |
NYI in niecza |
02:27 |
diakopter |
er. I'm a dummy. The .WHAT isn't supposed to be there |
02:27 |
diakopter |
*facepalm* |
02:27 |
diakopter |
r: my Int $x = Int(9); say $x; |
02:27 |
camelia |
rakudo ef73eb: OUTPUT«9â¤Â» |
02:27 |
diakopter |
r: my Int $x = Int(9/1); say $x |
02:27 |
camelia |
rakudo ef73eb: OUTPUT«9â¤Â» |
02:27 |
diakopter |
oh. |
02:28 |
diakopter |
ergh. misreading/mistyping. |
02:30 |
diakopter |
rn: my Associative $spot .= new; $spot |
02:30 |
camelia |
niecza v24-37-gf9c8fc2: ( no output ) |
02:30 |
camelia |
..rakudo ef73eb: OUTPUT«Cannot modify an immutable value⤠in method dispatch:<.=> at src/gen/CORE.setting:1057⤠in any at src/gen/Metamodel.nqp:1352⤠in block at /tmp/L3OLJ03SIp:1â¤â¤Â» |
02:31 |
diakopter |
no clue who's right.. sorear, halp? |
02:32 |
sorear |
Neither one of them. |
02:32 |
diakopter |
should it give some different error? |
02:32 |
sorear |
rn: my role Assoc { method at_key() { ... } }; Assoc.new |
02:32 |
camelia |
rakudo ef73eb: OUTPUT«Method 'at_key' must be implemented by Assoc because it is required by a role⤠in any at src/gen/Metamodel.nqp:2207⤠in any compose_method_table at src/gen/Metamodel.nqp:2198⤠in any apply at src/gen/Metamodel.nqp:2216⤠in any at src/gen/Metamodel.nqp:2356⤠… |
02:32 |
camelia |
..niecza v24-37-gf9c8fc2: OUTPUT«Unhandled exception: Method 'at_key' must be implemented by 'Assoc' because it is required by role 'Assoc[curried][...]'⤠at /tmp/MoF3Td_sMk line 1 (mainline @ 4) ⤠at /home/p6eval/niecza/lib/CORE.setting line 4299 (ANON @ 3) ⤠at /home/p6eval/niecza/li… |
02:33 |
diakopter |
hunh. |
02:33 |
sorear |
Associative is a role with required methods. "my Associative $spot .= new" tries to pun it, and should fail at that point. |
02:33 |
|
skids joined #perl6 |
02:33 |
sorear |
p: Associative.new |
02:33 |
camelia |
pugs: OUTPUT«*** No such subroutine: "&Associative"⤠at /tmp/hmBR1NWIRT line 1, column 1 - line 2, column 1â¤Â» |
02:34 |
sorear |
mildew: Associative.new |
02:34 |
sorear |
perlito: Associative.new |
02:34 |
diakopter |
rn: say (role { }).new |
02:34 |
camelia |
rakudo ef73eb: OUTPUT«<anon>.new()â¤Â» |
02:34 |
camelia |
..niecza v24-37-gf9c8fc2: OUTPUT«ANON.new(...)â¤Â» |
02:35 |
diakopter |
okay.. |
02:36 |
diakopter |
rn: say (role { method new { ... } }).new |
02:36 |
sorear |
looks correct |
02:36 |
camelia |
niecza v24-37-gf9c8fc2: OUTPUT«Unhandled exception: Method 'new' must be implemented by 'ANON' because it is required by role 'ANON[curried][...]'⤠at /tmp/MnogE2C3Mu line 1 (mainline @ 3) ⤠at /home/p6eval/niecza/lib/CORE.setting line 4299 (ANON @ 3) ⤠at /home/p6eval/niecza/lib/COR… |
02:36 |
camelia |
..rakudo ef73eb: OUTPUT«Method 'new' must be implemented by <anon> because it is required by a role⤠in any at src/gen/Metamodel.nqp:2207⤠in any compose_method_table at src/gen/Metamodel.nqp:2198⤠in any apply at src/gen/Metamodel.nqp:2216⤠in any at src/gen/Metamodel.nqp:2356⤠in… |
02:36 |
sorear |
also looks correct, but the error messages could be improved |
02:36 |
diakopter |
k |
02:37 |
diakopter |
nqp-jvm: say((role boo { method new() { ... } }).new) |
02:37 |
camelia |
nqp-jvm: OUTPUT«Cannot stringify this⤠in FAILGOAL⤠in blockoid⤠in method_def⤠in routine_declarator:sym<method>⤠in !protoregex⤠in routine_declarator⤠in term:sym<routine_declarator>⤠in !protoregex⤠in term⤠in termish⤠in EXPR⤠in statement⤠in statementlist⤠in block… |
02:37 |
diakopter |
hehee |
02:38 |
diakopter |
nqp: say((role boo { method new() { ... } }).new) |
02:38 |
camelia |
nqp: OUTPUT«Unable to parse expression in blockoid; couldn't find final '}' at line 2, near "... } }).n"â¤current instr.: 'panic' pc 14721 (src/stage2/gen/NQPHLL.pir:5232) (src/stage2/gen/NQPHLL.nqp:279)â¤Â» |
02:38 |
diakopter |
oh |
02:38 |
diakopter |
nqp-jvm: say((role boo { method new() { nqp::die } }).new) |
02:38 |
camelia |
nqp-jvm: OUTPUT«Operation 'die' requires 1 operands⤠in <anon>⤠in <anon>⤠in compile_op⤠in as_jast⤠in as_jast⤠in <anon>⤠in compile_all_the_stmts⤠in as_jast⤠in as_jast⤠in <anon>⤠in compile_all_the_stmts⤠in as_jast⤠in as_jast⤠in <anon>⤠in compile_all_the_stmtsâ¤â€¦ |
02:38 |
diakopter |
nqp-jvm: say((role boo { method new() { nqp::die('') } }).new) |
02:38 |
camelia |
nqp-jvm: OUTPUT«Method 'new' not found⤠in <anon>⤠in <anon>⤠in eval⤠in evalfiles⤠in command_eval⤠in command_line⤠in MAIN⤠in <anon>⤠in <anon>» |
02:38 |
|
orafu joined #perl6 |
02:38 |
diakopter |
nqp: say((role boo { method new() { nqp::die('') } }).new) |
02:38 |
camelia |
nqp: OUTPUT«Method 'new' not found for invocant of class 'Sub'â¤current instr.: '' pc 56 ((file unknown):44) (/tmp/c67uRzCaPo:1)â¤Â» |
02:38 |
diakopter |
hm, ok |
02:50 |
diakopter |
r: my int @array; @array = 5,6; |
02:50 |
camelia |
rakudo ef73eb: OUTPUT«No such method 'STORE' for invocant of type 'Int'⤠in block at /tmp/wEtJI29Lly:1â¤â¤Â» |
03:00 |
diakopter |
rn: class Sub { }; say(5); sub foo { say 55 }; say &foo.WHAT |
03:00 |
camelia |
niecza v24-37-gf9c8fc2: OUTPUT«5â¤(Sub)â¤Â» |
03:00 |
camelia |
..rakudo ef73eb: OUTPUT«===SORRY!===â¤Can not bind attribute '$!signature' declared in class 'Code' with this objectâ¤Â» |
03:16 |
|
perigrin joined #perl6 |
03:30 |
|
cibs joined #perl6 |
04:28 |
|
Psyche^ joined #perl6 |
04:49 |
|
awwaiid joined #perl6 |
05:20 |
|
SamuraiJack joined #perl6 |
05:31 |
|
rindolf joined #perl6 |
06:02 |
|
baest joined #perl6 |
06:13 |
jnthn |
(from backlog) roles in NQP don't pun into classes (and mostly likely never will get that feature) |
06:22 |
jnthn |
teaching & |
06:24 |
|
berekuk joined #perl6 |
06:27 |
|
kaleem joined #perl6 |
06:34 |
|
frdmn joined #perl6 |
06:36 |
|
domidumont joined #perl6 |
06:42 |
|
jerome_ joined #perl6 |
06:42 |
|
FROGGS_ joined #perl6 |
06:45 |
FROGGS |
morning pals |
06:45 |
diakopter |
slap gninrom |
06:46 |
FROGGS |
:o) |
07:04 |
|
domidumont joined #perl6 |
07:06 |
|
brrt joined #perl6 |
07:08 |
|
salv0 joined #perl6 |
07:15 |
|
tgt joined #perl6 |
07:19 |
|
grondilu joined #perl6 |
07:19 |
|
daxim joined #perl6 |
07:24 |
|
baest joined #perl6 |
07:26 |
|
lustlife joined #perl6 |
07:26 |
rindolf |
FROGGS: morning. |
07:26 |
rindolf |
FROGGS: what's up? |
07:27 |
|
pupoque joined #perl6 |
07:27 |
|
Khisanth joined #perl6 |
07:28 |
cognominal |
:) seen in magit.el: (error "Don't push a detached head. That's gross.") |
07:29 |
FROGGS |
rindolf: $work |
07:29 |
rindolf |
FROGGS: ah. |
07:40 |
|
quester joined #perl6 |
07:57 |
|
rindolf joined #perl6 |
08:01 |
|
rindolf joined #perl6 |
08:05 |
|
berekuk joined #perl6 |
08:05 |
|
rindolf joined #perl6 |
08:16 |
|
rindolf joined #perl6 |
08:17 |
|
pupoque joined #perl6 |
08:29 |
masak |
cognominal: :) |
08:29 |
masak |
morning, #perl6 |
08:32 |
masak |
ooh, seems we're live: http://www.reddit.com/r/perl/comments/1cwhwe/join_masakism_may_1st_to_seelearn_simple_readable/ |
08:32 |
masak |
I should probably make a blog post, too. |
08:32 |
|
rindolf joined #perl6 |
08:33 |
cognominal |
morning, * |
08:37 |
arnsholt |
o/ |
08:40 |
mathw |
o/ |
08:44 |
masak |
o/ |
08:46 |
|
dakkar joined #perl6 |
08:47 |
mathw |
Today is the day my new laptop comes. I'm spending a lot of time staring down the road looking for the big brown UPS van |
08:47 |
mathw |
How is everyone else? |
08:47 |
sorear |
good! |
08:48 |
|
cosimo joined #perl6 |
08:48 |
|
bloonix joined #perl6 |
08:49 |
mathw |
:) |
08:50 |
|
berekuk joined #perl6 |
08:51 |
masak |
yes, good indeed. |
08:54 |
|
SHODAN joined #perl6 |
08:55 |
|
SamuraiJack joined #perl6 |
08:56 |
|
berekuk joined #perl6 |
08:58 |
|
quester left #perl6 |
09:01 |
tadzik |
hello hello |
09:02 |
tadzik |
mathw: eh, you're tempting me again and again :) |
09:06 |
|
spider-mario joined #perl6 |
09:10 |
mathw |
hehe |
09:11 |
mathw |
It's not deliberate, I'm just excited |
09:11 |
tadzik |
I can understand that |
09:14 |
mathw |
As yet another vehicle enters the street which !~ Van::Delivery::UPS |
09:17 |
masak |
surely you mean !~~ |
09:20 |
mathw |
probably |
09:20 |
mathw |
I'm not exactly concentrating very well this morning |
09:21 |
mathw |
Also been writing far too much C# lately |
09:21 |
masak |
:) |
09:21 |
masak |
mathw: I'm gaining respect for C# day by day. |
09:21 |
masak |
mathw: especially the things Microsoft Research are doing with the language. |
09:22 |
mathw |
it has some very, very cool stuff in it |
09:22 |
masak |
yeah. |
09:22 |
masak |
mathw: if you haven't looked into Rx yet, you probably should. |
09:23 |
mathw |
In my last job once we started using Reactive Extensions and some stuff built on that, UI programming became glorious |
09:23 |
masak |
heh :) |
09:23 |
mathw |
It's not so obviously useful in the new job which is all web stuff |
09:23 |
masak |
you know of it, then. good. |
09:23 |
mathw |
heck yes :) |
09:23 |
mathw |
I'm a bit of an FRP enthusiast |
09:23 |
mathw |
so I simply had to check it out |
09:24 |
mathw |
and then today I discovered Elm |
09:24 |
mathw |
which is a Haskell-derived FRP solution for building client-side web stuff |
09:29 |
masak |
ooh |
09:31 |
|
tgt joined #perl6 |
09:33 |
mathw |
Very interested in that kind of thing right now, since I find JavaScript so unpleasant |
09:34 |
mathw |
although AngularJS let me build a basic pure-client-side web app with reasonable ease (especially since I actually wrote it in CoffeeScript :)) |
09:35 |
spider-mario |
CoffeeScript has its own problems, though |
09:35 |
mathw |
true |
09:35 |
mathw |
but it was preferable to JavaScript for that particular project |
09:35 |
spider-mario |
I don’t like its variable scoping, for example |
09:36 |
mathw |
what don't you like about it? |
09:36 |
spider-mario |
the lack of a keyword for declaring variables |
09:37 |
spider-mario |
I don’t like that in Python and Ruby either, and that’s actually one of the reasons why I prefer Perl |
09:37 |
spider-mario |
superficial as it sounds. |
09:38 |
hoelzro |
spider-mario: that's one thing I strongly prefer about Perl as well |
09:39 |
hoelzro |
its scoping rules make sense |
09:40 |
FROGGS |
and the topping are the dynamic variables... |
09:40 |
mathw |
yeah I do like having explicit variable declarations |
09:40 |
mathw |
I like it even better if they're subject to static type checking, which CoffeeScript does not give me |
09:41 |
|
fgomez joined #perl6 |
09:41 |
masak |
mathw: I teach a lot of JavaScript. it *is* a pleasant language, if you navigate the reefs a bit. and if you're prepared to lift much of the complexity stack yourself. |
09:41 |
masak |
mathw: check out KnockoutJS if you haven't already. |
09:42 |
masak |
it's not a framework like AngularJS, but it's a nice implementation of the Observer pattern. |
09:42 |
|
woolfy joined #perl6 |
09:44 |
mathw |
I've heard about it |
09:44 |
mathw |
I'll take a look |
09:45 |
masak |
in my course, I usually demo it through http://learn.knockoutjs.com/ -- it's a nice intro. |
09:49 |
mathw |
just did the first lesson |
09:49 |
mathw |
looks really nice |
09:49 |
mathw |
might re-implement my AngularJS thing in it to see how they compare :) |
09:52 |
|
pupoque joined #perl6 |
09:53 |
masak |
I would be interested in hearing about your findings. I haven't used AngularJS at all. |
09:54 |
masak |
my impression from a distance is that KnockoutJS is more "library" and AngularJS is more "framework". |
09:54 |
mathw |
maybe |
09:55 |
masak |
(with no value judgement beyond that. slightly different niches, is all) |
09:57 |
mathw |
heh |
09:57 |
mathw |
I like their test data |
09:57 |
mathw |
meal options: standard (sandwich), premium (lobster), ultimate (whole zebra) |
09:57 |
mathw |
not sure that'd fit on an airline meal tray |
09:59 |
masak |
this is why it's important to keep your seat upright while eating. |
09:59 |
masak |
to fit the whole zebra on the tray table. |
10:04 |
mathw |
isn't it so the person behind you can fit the zebra on their tray table? |
10:05 |
masak |
yes, of course. |
10:05 |
masak |
I was assuming the usual axiom of golden-rule transitivity here. |
10:07 |
daxim |
airplane seats should be arranged in a circle so that everyone can kick the seat in front to annoy its occupant |
10:08 |
masak |
make the plane donut-shaped, while we're at it ;) |
10:10 |
mathw |
That works for helicopters |
10:10 |
mathw |
if you put iwngs on the outside and spin it fast enough it should take off |
10:10 |
mathw |
you might need some fairly elaborate systems to help the pilot see where it's going though |
10:10 |
masak |
the passengers will be so delighted by the sensation of flying very fast in a tight circle, that they will all order the zebra. |
10:11 |
mathw |
but there's only room on board for twenty-four zebras! |
10:11 |
masak |
of course, you could use some kind of ball-bearing design, so that the insides are actually stationary... |
10:11 |
tadzik |
bull-bear desin |
10:11 |
|
drbean joined #perl6 |
10:26 |
moritz |
full-bear design? |
10:26 |
tadzik |
All black and brown and covered in hair |
10:27 |
daxim |
with the camelia fair! |
10:33 |
masak |
moritz! \o/ |
10:33 |
masak |
moritz: #masakism is a thing now. could you ilogger2 it? :) |
10:35 |
|
pupoque joined #perl6 |
10:36 |
moritz |
masak, no just _ilbot it :-) |
10:36 |
|
_ilbot joined #perl6 |
10:36 |
|
Topic for #perl6 is now »ö« Welcome to Perl 6! | http://perl6.org/ | evalbot usage: 'perl6: say 3;' or rakudo:, niecza:, std:, or /msg camelia perl6: ... | irclog: http://irc.perl6.org/ | UTF-8 is our friend! |
10:40 |
moritz |
[X] done |
10:48 |
masak |
moritz++ |
10:53 |
masak |
(for those who don't know what #masakism is about -- here's the context: https://gist.github.com/masak/5431185 ) |
10:58 |
mathw |
hehe |
10:58 |
mathw |
elegant code in PERL??? |
10:58 |
mathw |
you must be sane, sir :) |
10:59 |
mathw |
My colleagues don't believe it's possible |
11:00 |
* masak |
.oO( well, maybe not if you code in PERL, not Perl... ) |
11:00 |
moritz |
that's when you start calling them cow-orkers :-) |
11:00 |
mathw |
that was emphasis, not error :P |
11:01 |
|
brrt joined #perl6 |
11:04 |
masak |
moritz suggests a new mailing list: perl6-freezers. |
11:04 |
masak |
for people interested in bringing the spec to a frozen state. |
11:05 |
moritz |
which would be like p6l, but without all the design astronautism |
11:06 |
mathw |
would there still be yak shaving? |
11:06 |
masak |
it could be a platform for good work like the one lizmat++ is doing. |
11:08 |
|
drbean joined #perl6 |
11:24 |
|
Timbus joined #perl6 |
11:53 |
|
sorear joined #perl6 |
11:56 |
cognominal |
What is the rationale behind the systematic use of named parameters in its A{I instead of positional ones? |
12:00 |
masak |
cognominal: parse failure near "in its A{I". could you rephrase? |
12:00 |
masak |
cognominal: are you mauvaise-fenetring again? :) |
12:00 |
hoelzro |
is jnthn around? |
12:01 |
|
pupoque joined #perl6 |
12:01 |
masak |
no, he's at $dayjob. |
12:01 |
hoelzro |
=( |
12:01 |
hoelzro |
I have a question about NativeCall, but it can wait |
12:10 |
brrt |
don't wait |
12:10 |
lizmat |
masak: I didn't realise that I'm working towards having the spec in a frozen state ? |
12:11 |
hoelzro |
well, it's regarding a very...odd behavior in a module I'm writing that uses NativeCall |
12:11 |
nwc10 |
lizmat: I read it as "you're working towards something similarly useful" |
12:11 |
nwc10 |
ie "aiming *at* something" and "trying hard not to go in circles or get distracted" |
12:11 |
lizmat |
I see… ok I guess I am… :-) |
12:12 |
lizmat |
away again& |
12:13 |
cognominal |
oops |
12:14 |
cognominal |
What is the rationale behind the QAST API systematic use of named parameters instead of positional ones? |
12:16 |
FROGGS |
cognominal: I'd say that if you have quiet a bunch optional parameters then these should be named ones |
12:17 |
FROGGS |
so you dont have to pass 10 positionals, if ten usecases exist which want to set one (named) argument |
12:20 |
cognominal |
ok, I get the logic |
12:20 |
FROGGS |
cognominal: but that is just my opinion... |
12:21 |
cognominal |
contrary to what I said there are positional parameter to constructors but they represent child nodes |
12:21 |
cognominal |
reading https://github.com/perl6/nqp/blob/master/docs/qast.markdown |
12:23 |
|
PacoAir joined #perl6 |
12:24 |
masak |
lizmat: what nwc10 said. in order to be able to freeze the spec, we must align it with reality/implementation, and remove fossils and stuff. |
12:25 |
masak |
lizmat: as opposed to "hey, I've got this wonderful idea that really should be spec!" |
12:25 |
cognominal |
and this new constructor is inherited by derived nodes https://github.com/perl6/nqp/blob/master/src/QAST/Node.nqp#L12 |
12:26 |
cognominal |
I did not know that .new could be inherited. |
12:26 |
nwc10 |
masak: effectively, also somewhat triage it? |
12:26 |
nwc10 |
in terms of "too hard to implement before launch", "must be implemented before launch", "would be nice, but not essential" |
12:26 |
nwc10 |
and concentrate on the middle |
12:27 |
masak |
that will almost have to be part of perl6-freezers' mission. |
12:27 |
masak |
triage comes very hard in these circles. |
12:27 |
masak |
it's one of our biggest weaknesses. |
12:28 |
masak |
since we don't really have a central authority. the closest we have is a set of core members. |
12:29 |
nwc10 |
I think a chunk of it *can* be done at consideration of implementation |
12:29 |
nwc10 |
"too hard to implement" is relatively easy to tag |
12:29 |
nwc10 |
and then it's between the other two |
12:32 |
masak |
yeah. |
12:33 |
masak |
the spec already has "Conjectural" markers for some things which are either not very well-explored or deemed to hard for 6.0.0 |
12:33 |
cognominal |
Also there is "performance wise irrealistic" |
12:34 |
pmichaud |
good morning, #perl6 |
12:34 |
cognominal |
Should we use github comments for that? I think one can comment line by line? |
12:34 |
FROGGS |
hi pmichaud |
12:34 |
cognominal |
...or not? |
12:35 |
cognominal |
hi pmichaud |
12:35 |
pmichaud |
I also wonder if at some point we should consider the 6.0.0 "spec" in the same vein as an Internet STD -- i.e., it comes after implementations, not before. |
12:35 |
masak |
yeah. |
12:36 |
pmichaud |
and for a really interesting exercise, create the spec from the roast tests. |
12:36 |
pmichaud |
(since they officially define the language, at least according to S01) |
12:37 |
pmichaud |
also, I still think we should separate "Synopses" and "spec" |
12:37 |
pmichaud |
i.e., the Synopses have conjectural markers, the 6.0.0 minimal specification might not have them. |
12:37 |
|
woosley1 joined #perl6 |
12:38 |
cognominal |
I discover pulse : https://github.com/perl6/nqp/pulse |
12:40 |
FROGGS |
cognominal: github's line comments are cool, but one might loose the overview over issues |
12:40 |
nwc10 |
there is an option not on the drop-down menu https://github.com/perl6/nqp/pulse/yearly |
12:40 |
pmichaud |
Last year I had some preliminary designs for a toolset that would be able to easily pick out sections of the synopses to produce specific views of them, and still keep them in sync with changes. |
12:41 |
pmichaud |
e.g., an extract that contains only the sections that Rakudo implements, or (in this conversation) the 6.0.0 spec. |
12:41 |
nwc10 |
I like the graphs on ohloh better https://www.ohloh.net/p/nqp |
12:42 |
pmichaud |
oh, is ohloh not up-to-date on its stats? |
12:42 |
* pmichaud |
fixes. |
12:43 |
spider-mario |
I like ohloh comments such as “with a well-commented source code†|
12:44 |
cognominal |
FROGGS: in fact, I don't remember how they work. Searching. |
12:45 |
pmichaud |
hopefully the ohloh stats will be up-to-date soon. |
12:45 |
pmichaud |
checking other projects |
12:48 |
|
kaleem joined #perl6 |
12:52 |
|
moritz joined #perl6 |
13:08 |
|
Targen joined #perl6 |
13:14 |
|
SamuraiJack_ joined #perl6 |
13:26 |
masak |
raiph: http://www.reddit.com/r/perl/comments/1cwhwe/join_masakism_may_1st_to_seelearn_simple_readable/ -- "via IRC and email". I'm actually not planning to use email. |
13:28 |
|
sqirrel joined #perl6 |
13:39 |
|
tgt joined #perl6 |
13:39 |
gtodd |
how to automagically build rakudo using parrot-5.3? twiddle with Configure.pl/config.default? add --gen-parrot=5.3.0 when I run perl ./Conffgure.pl ?? |
13:40 |
gtodd |
or wait for official change to occur :-) |
13:41 |
|
tgt joined #perl6 |
13:45 |
gtodd |
/usr/local/bin/perl Configure.pl --gen-parrot=RELEASE_5_3_0 --gen-nqp --prefix=$HOME/perl6 seems to work |
13:46 |
arnsholt |
Awesome module idea of the moment: (De)serialize arbitrary objects to/from a graph database using MOP introspection |
13:51 |
gtodd |
sort of like that ZODB thingie in python? |
13:53 |
arnsholt |
Yeah, that looks pretty close to what I really want instead of ORM systems |
13:54 |
gtodd |
hmm speed could happen :-) |
13:55 |
gtodd |
argh ... always errors with new parrot build |
13:56 |
[Coke] |
are you on OS X? |
14:15 |
gtodd |
freebsd |
14:15 |
gtodd |
discussing a bit with Util in #parrot |
14:17 |
|
kbenson joined #perl6 |
14:25 |
gtodd |
[Coke]: Using Configure.pl with --gen-parrot=RELEASE_5_3_0 to build everything there's some breakage trying to build pod files |
14:26 |
|
census joined #perl6 |
14:27 |
gtodd |
[Coke]: the build cd's into parrot/docs and tries to make packfile-c.pod and ops/bit.pod but does something strange |
14:27 |
gtodd |
when trying to run" /usr/local/bin/perldoc -ud packfile-c.pod ../src/packfile/api.c |
14:28 |
|
skids joined #perl6 |
14:28 |
gtodd |
from rakudo's Configure.pl it cd's into parrot/docs and then it seems we try to build docs for "/usr/local/bin/perldoc" and "-ud" and "packfile-c.pod " instead of building "packfile-c.pod" from ../src/packfile/api.c using "/usr/local/bin/perldoc -ud ... as if the ARGS were shifted wrong somewhere |
14:29 |
gtodd |
[Coke]: that is all :-) |
14:35 |
|
obra left #perl6 |
14:40 |
|
toddr_ joined #perl6 |
14:41 |
|
kaare__ joined #perl6 |
14:54 |
census |
that section of my code is Time::HiRes::sleep(0.01*int(rand(50)+100*$num)) #$num is the last two digits of the birth year |
14:55 |
census |
open (my $n, '<', 'file.txt') or die "Cannot open file.txt $!"; while ($<n>) {next unless $_; $name = $; last; } close $n; |
14:55 |
census |
oops |
14:55 |
census |
forget that! |
14:56 |
census |
i was writing notes to myself :( |
14:56 |
census |
wrong window |
15:15 |
|
mtk joined #perl6 |
15:17 |
|
mtk joined #perl6 |
15:21 |
|
mtk joined #perl6 |
15:27 |
|
snearch joined #perl6 |
15:34 |
rjbs |
seen TimToady |
15:36 |
diakopter |
.seen TimToady |
15:36 |
yoleaux |
I saw TimToady 11 Apr 2013 17:07Z in #perl6: <TimToady> thanks |
15:44 |
|
Rix joined #perl6 |
15:50 |
|
FROGGS joined #perl6 |
15:57 |
|
Chillance joined #perl6 |
16:14 |
|
dmol joined #perl6 |
16:15 |
|
domidumont joined #perl6 |
16:16 |
|
pupoque joined #perl6 |
16:17 |
|
census joined #perl6 |
16:17 |
jnthn |
evening o/ |
16:17 |
diakopter |
hi |
16:17 |
diakopter |
jnthn++ |
16:17 |
census |
hi! |
16:17 |
jnthn |
...what for? :) |
16:19 |
diakopter |
jnthn++ |
16:19 |
diakopter |
for karma! |
16:19 |
moritz |
general awesomeness in Perl 6 context |
16:19 |
census |
:) |
16:19 |
census |
#perl6++ |
16:20 |
jnthn |
:) |
16:21 |
jnthn |
Last day of teaching tomorrow, and on Thursday I can spend the day on Perl 6 things :) |
16:22 |
moritz |
\o/ |
16:22 |
jnthn |
Things I learend today: 1) Boeing 717s exist. 2) They are still being flown. 3) I will fly on one next month. o.O |
16:23 |
tadzik |
:D |
16:23 |
jnthn |
And 2...propeller planes... |
16:23 |
nwc10 |
where are you going to? |
16:23 |
jnthn |
KOK |
16:24 |
jnthn |
(Which is the airport in Kokkola, which is in the north of Finland.0 |
16:24 |
jnthn |
The place name looks terribly like koka kola... :) |
16:26 |
* jnthn |
wonders how many people just hit google maps up :P |
16:28 |
|
tgt joined #perl6 |
16:29 |
[Coke] |
gtodd: does your build dir have a space or some other non-alpha-non-ascii char? |
16:29 |
cognominal |
Boing 717 dates from 1995. Is that so old for a plane? |
16:30 |
gtodd |
[Coke]: no |
16:30 |
[Coke] |
r: say 2013-1995 ~ " years, YES" |
16:30 |
camelia |
rakudo ef73eb: OUTPUT«18 years, YESâ¤Â» |
16:30 |
|
tgt joined #perl6 |
16:30 |
gfldex |
Kokkola seams to be the right place to go if one needs cobalt or zinc, or wants to go to the only town in a region |
16:30 |
gtodd |
[Coke]: and it works with parrot RELEASE_5_2_0 |
16:31 |
jnthn |
cognominal: huh, I thought from the number it would be much older... |
16:32 |
jnthn |
Like, the one that came before the 727, which in turn came before the 737.. |
16:32 |
|
kaleem_ joined #perl6 |
16:32 |
gtodd |
jnthn: you may still be able to ski at that time |
16:32 |
jnthn |
So basically, version numbers are useless indicators of any kind of anything. :) |
16:32 |
diakopter |
well they didn't all go in order |
16:32 |
[Coke] |
gtodd: ok. any chance you can open a ticket with parrot/parrot on github? |
16:36 |
gtodd |
will do if it's not just me :-) ... just trying to make sure it is not an new perl or old groff perldoc related thing there was a perldoc UTF8 bug in 5.16 |
16:38 |
gtodd |
https://rt.cpan.org/Public/Bug/Display.html?id=77465 not sure why that would break with perldoc on parrot 5.3 but not with parrot 5.2 though |
16:39 |
cognominal |
imagine perl A300-600T, the perl cargo compiler for big programs, also named beluga. btw, we did spot an airbus beluga with jnthn when we went back and forth between Toulouse and Blagnac in the way to Albi with copious indirecttions |
16:42 |
gtodd |
[Coke]: building parrot all by itself: cd parrot ./perl Configure.pl ;make ... works fine ... but "make docs" then breaks but then (inside parrot) ... cd docs ; make then errm works fine ? |
16:42 |
gtodd |
boggle |
16:42 |
cognominal |
from the front, the beluga has an odd hydrocephalic look http://www.youtube.com/watch?v=UwLI4QDRM-A |
16:45 |
|
isBEKaml joined #perl6 |
16:47 |
|
rindolf joined #perl6 |
16:48 |
jnthn |
time to find some dinner, bbl & |
17:08 |
diakopter |
jnthn: 717-200 entered service long after (1999) the 767. 717-100 was the KC-135 stratotanker (1957) |
17:13 |
|
isBEKaml joined #perl6 |
17:19 |
|
fgomez joined #perl6 |
17:28 |
GlitchMr |
> grep('a', 'a', 'b', 'c', 'd'|'a', 'e', 'a', 'abc').perl |
17:28 |
GlitchMr |
("a", any("d", "a"), "a").list |
17:28 |
GlitchMr |
Smartmatching is so interesting |
17:29 |
|
kaleem joined #perl6 |
17:29 |
moritz |
what did you expect? |
17:30 |
GlitchMr |
I didn't expected it to work with subroutine. |
17:30 |
GlitchMr |
Looks like Perl 5 brought me some confusion. |
17:30 |
GlitchMr |
I always was doing grep * ~~ /something/... without even knowing it uses smartmatching. |
17:34 |
|
mavcunha joined #perl6 |
17:37 |
moritz |
the dir() function internally uses something like readdir().grep(none('.', '..')) |
17:38 |
moritz |
which is a case where junctions, smartmatching and grep just work together really well |
17:38 |
|
lichtkind joined #perl6 |
17:38 |
|
lichtkind_ joined #perl6 |
17:46 |
|
mavcunha joined #perl6 |
17:52 |
|
dmol1 joined #perl6 |
17:54 |
|
jercos joined #perl6 |
17:56 |
jercos |
'lo gentlefolks. So basically either I'm completely confused about perl6 regex, or rakudo 2013.02 is doing something odd... My regex is /^ \d+ 'd' \d+ $/, which in my mind should match a die class string like "6d6". |
17:56 |
jercos |
But that helpfully informs me there's a "Missing block" just before the second \d |
17:57 |
tadzik |
the error must be somewhere else |
17:58 |
tadzik |
r: '4d20' ~~ /^ \d+ 'd' \d+ $/; say $/ |
17:58 |
camelia |
rakudo ef73eb: OUTPUT«「4d20ï½£â¤â¤Â» |
17:58 |
tadzik |
jercos: can you paste the entire code somewhere? |
17:58 |
|
mavcunha joined #perl6 |
17:59 |
jercos |
shoot, you're right, the regex before it used a perl5-style case insensitive flag >.> |
17:59 |
jercos |
thanks :p |
17:59 |
jercos |
I spent entirely too much time trying to "fix" that regex. |
17:59 |
masak |
std: /foo/i |
17:59 |
camelia |
std 86b102f: OUTPUT«[31m===[0mSORRY![31m===[0m�Unsupported use of suffix regex modifiers; in Perl 6 please use prefix adverbs at /tmp/eGtUaCElo5 line 1:�------> [32m/foo/i[33m�[31m<EOL>[0m�Other potential difficulties:� Unsupported use of /i; in Perl 6 please use :i at /tmp/eGt… |
18:01 |
jercos |
Which is odd, given I didn't get that error... |
18:02 |
masak |
r: /foo/i |
18:02 |
camelia |
rakudo ef73eb: OUTPUT«[31m===[0mSORRY![31m===[0m�Unsupported use of /i; in Perl 6 please use :i�at /tmp/zMn4NtUW2Y:1�------> [32m/foo/i[33m�[31m<EOL>[0m�» |
18:02 |
isBEKaml |
r: /foo/i |
18:02 |
camelia |
rakudo ef73eb: OUTPUT«[31m===[0mSORRY![31m===[0m�Unsupported use of /i; in Perl 6 please use :i�at /tmp/MZpCsXwdQ9:1�------> [32m/foo/i[33m�[31m<EOL>[0m�» |
18:02 |
jercos |
well, for educational purposes, here's the code :p http://pastebin.com/3QzNqYsx |
18:03 |
jercos |
or rather, the not-code, as evidenced by that random mess of variables that don't exist any more. |
18:04 |
cognominal |
jercos, you will discover that if you plan ahead, you are better moving to a grammar and the associated actions |
18:05 |
masak |
r: given "42" { when /^'0x'?<[0..9a..f]>+?$/i { say "OH HAI" } } |
18:05 |
camelia |
rakudo ef73eb: OUTPUT«[31m===[0mSORRY![31m===[0m�Unable to parse regex; couldn't find final '/'�at /tmp/JQO87X2ZKm:1�------> [32m'0x'?<[0..9a..f]>+?$/i { say "OH HAI" } [33m�[31m}[0m� expecting any of:� postfix� statement end� statement modifier� s… |
18:05 |
flussence |
r: /^'0x'?<[0..9a..f]>+?$/i |
18:05 |
camelia |
rakudo ef73eb: OUTPUT«[31m===[0mSORRY![31m===[0m�Regex not terminated�at /tmp/NClLoxBYvm:1�------> [32m/^'0x'?<[0..9a..f]>+?$/i[33m�[31m<EOL>[0m� expecting any of:� statement list� prefix or term� prefix or meta-prefix� single quotes� infix … |
18:05 |
flussence |
r: /^'0x'?<[0..9a..f]>+?$ /i |
18:05 |
camelia |
rakudo ef73eb: OUTPUT«[31m===[0mSORRY![31m===[0m�Unsupported use of /i; in Perl 6 please use :i�at /tmp/e2iVRXhhFC:1�------> [32m/^'0x'?<[0..9a..f]>+?$ /i[33m�[31m<EOL>[0m�» |
18:05 |
jercos |
cognominal: could you clarify that? |
18:05 |
masak |
cognominal: I agree in general and in this particular case. |
18:05 |
flussence |
the $/ confuses it |
18:05 |
masak |
cognominal: er, "disagree"/ |
18:06 |
masak |
cognominal: grammars are very useful, but they're not a given until you reach a certain level of complexity. |
18:06 |
jercos |
Oh, never mind, I gotcha. Sorry, I got woken up at 6AM by some random router going down, I'm quite out of it. |
18:06 |
cognominal |
plan ahead is http://de.webfail.com/2d891ddaad4 |
18:07 |
cognominal |
masak: anyway, to learn. It's better to start with regexen instead of full fledged grammars |
18:07 |
jercos |
cognominal: currently straight-over porting a piece of perl5 code with some small changes in idiom as part of my journey into learning perl6. |
18:08 |
jercos |
So while a grammar might be the correct tool for the job, it's a bit out-of-scope for this project :p |
18:08 |
cognominal |
jercos, that's a good way to start. |
18:09 |
cognominal |
I tend to want to go too fast and to fall flat on my face. |
18:11 |
masak |
cognominal: saying "you need grammars, not regexes" is like saying "you need classes/objects, not nested data structures". it's true some of the time and not true some of the time. |
18:11 |
jercos |
Heh, well, I hear that :) |
18:12 |
jercos |
this nice self-pacing is a change in pace. |
18:13 |
|
DarthGandalf joined #perl6 |
18:20 |
dalek |
perl6-roast-data: 2aff1db | coke++ | / (4 files): |
18:20 |
dalek |
perl6-roast-data: today (automated commit) |
18:20 |
dalek |
perl6-roast-data: review: https://github.com/coke/perl6-roast-data/commit/2aff1db632 |
18:23 |
|
tgt joined #perl6 |
18:58 |
|
rafl joined #perl6 |
19:00 |
diakopter |
r: my \ç„¡ := Mu; say ç„¡ |
19:00 |
camelia |
rakudo ef73eb: OUTPUT«(Mu)â¤Â» |
19:09 |
|
Targen joined #perl6 |
19:10 |
|
kurahaupo joined #perl6 |
19:13 |
|
grondilu joined #perl6 |
19:15 |
|
dickinsm joined #perl6 |
19:18 |
|
berekuk joined #perl6 |
19:28 |
* jnthn |
back |
19:31 |
|
tgt joined #perl6 |
19:33 |
|
dickinsm joined #perl6 |
19:36 |
|
berekuk joined #perl6 |
19:44 |
|
thou joined #perl6 |
19:46 |
[Coke] |
jnthn: are we there yet? are we there yet? are we there yet? ;) |
19:46 |
FROGGS |
hehe |
19:47 |
jnthn |
:P |
19:47 |
jnthn |
No, but I did find non-lager beer tonight :) |
19:49 |
FROGGS |
so the driver has beer, ehh? |
19:49 |
FROGGS |
O.o |
19:49 |
* FROGGS |
fastens his seat belt |
19:53 |
* japhb |
imagines a bar that will serve any beer except lager |
19:54 |
tadzik |
that's my future bar |
19:54 |
jnthn |
japhb: I've heard of some that overprice lager to put off that kind of clientelle :) |
19:54 |
tadzik |
. o O ( A lager walks into a bar. "We don't serve your kind here" ) |
19:55 |
FROGGS |
how do one walk into a "beyond all repair?" |
19:57 |
|
Targen joined #perl6 |
19:58 |
geekosaur |
clearly not a sysadmin there :p |
20:04 |
tadzik |
haha |
20:06 |
dalek |
tablets: 7b796e4 | (Herbert Breunung)++ | docs/appendix-a-index.txt: |
20:06 |
dalek |
tablets: added rify to A |
20:06 |
dalek |
tablets: review: https://github.com/perl6/tablets/commit/7b796e4981 |
20:12 |
|
census joined #perl6 |
20:12 |
|
pupoque joined #perl6 |
20:23 |
dalek |
rakudo/jvm-support: 61e1e2a | jonathan++ | src/ (3 files): |
20:23 |
dalek |
rakudo/jvm-support: Prepare for getting rid of Parrot property use. |
20:23 |
dalek |
rakudo/jvm-support: |
20:23 |
dalek |
rakudo/jvm-support: We use them in a few places to hang things off of code objects, but |
20:23 |
dalek |
rakudo/jvm-support: there's no reason they can't just be in an attribute. |
20:23 |
dalek |
rakudo/jvm-support: review: https://github.com/rakudo/rakudo/commit/61e1e2a5b4 |
20:23 |
dalek |
rakudo/jvm-support: ab9a836 | jonathan++ | src/Perl6/ (2 files): |
20:23 |
dalek |
rakudo/jvm-support: First pass at eliminating setprop usage. |
20:23 |
dalek |
rakudo/jvm-support: |
20:23 |
dalek |
rakudo/jvm-support: Gets rid of them all, but unfortunately breaks the build. |
20:23 |
dalek |
rakudo/jvm-support: review: https://github.com/rakudo/rakudo/commit/ab9a836cb1 |
20:28 |
|
bruges joined #perl6 |
20:30 |
|
mykle joined #perl6 |
20:31 |
* mykle |
taps microphone ... |
20:32 |
FROGGS |
ya, we can hear you |
20:32 |
mykle |
howdy. i have a perl6 problem & no idea where to start with it ... |
20:33 |
[Coke] |
this is an excellent place to start. |
20:33 |
[Coke] |
what's wrong? |
20:33 |
FROGGS |
well, one option is to tell us :o) |
20:33 |
mykle |
it looks like on OS X, the Rakudo compiler i built today can't open internet sockets. |
20:33 |
mykle |
and/or something else is wrong with HTTP::Client |
20:34 |
mykle |
i installed it with panda, but the tests didn't run, |
20:34 |
FROGGS |
there is an open parrot ticket for IO::Socket::INET issues :/ |
20:34 |
mykle |
aha. where's the ticket system live? |
20:34 |
[Coke] |
for parrot, github.com/parrot/parrot/issues |
20:35 |
mykle |
newbie question: rakudo uses parrot? |
20:35 |
[Coke] |
Yes, it's built on top of nqp, which is built on parrot. |
20:35 |
[Coke] |
nqp was just recently ported to also run on the JVM. |
20:35 |
FROGGS |
https://github.com/parrot/parrot/issues/942 |
20:36 |
[Coke] |
(rakudo hasn't quite caught up to that) |
20:36 |
mykle |
when i built rakudo and ran the tests, i had a few test failures. is that normal? |
20:36 |
mykle |
t/spec/S32-num/is-prime.t ................................. Failed 6/35 subtests |
20:36 |
|
raiph joined #perl6 |
20:36 |
[Coke] |
on OS X, unfortunately, yes. |
20:37 |
[Coke] |
is-prime is common. I have others related to ICU that don't happen to everyone. |
20:37 |
mykle |
those were the only errs. |
20:37 |
[Coke] |
(it is hard to fudge rakudo tests for just one platform>) |
20:37 |
mykle |
meta-q: is rakudo the right way to run perl6 on os x? |
20:38 |
[Coke] |
it's a way. You can also try niecza which runs on mono, or pugs that runs on haskell. rakudo is probably the most complete implementation at this point. |
20:38 |
|
Targen joined #perl6 |
20:39 |
FROGGS |
niecza isnt bad though, but pugs is pretty outdated |
20:39 |
[Coke] |
mykle: I don't actually see a ticket for the is-prime issue. If you send an email to rakudobug perl.org, it'll open a ticket. (be sure to include your OS version and the output from the failed test.) |
20:39 |
[Coke] |
prn: say is-prime(1234567) |
20:39 |
camelia |
rakudo ef73eb, niecza v24-37-gf9c8fc2: OUTPUT«Falseâ¤Â» |
20:39 |
camelia |
..pugs: OUTPUT«*** No such subroutine: "&is-prime"⤠at /tmp/w25Y1ZwIbw line 1, column 5 - line 2, column 1â¤Â» |
20:40 |
[Coke] |
e.g. |
20:40 |
mykle |
will do, much thanks. |
20:40 |
mykle |
froggs, i found this on github, not much else that matched: https://github.com/parrot/parrot/issues/942 |
20:40 |
mykle |
is that what you meant? |
20:40 |
[Coke] |
mykle: he actually gave you that URL about 24 lines ago. ;) |
20:41 |
mykle |
doi! |
20:41 |
mykle |
thx. |
20:41 |
FROGGS |
:o) |
20:41 |
FROGGS |
so, yes |
20:42 |
mykle |
much thanks, everybody. |
20:43 |
mykle |
ohbtw: is there a make command to just run one test & get its output? all i did was "make test" for the whole suite. |
20:43 |
flussence |
you can make path/to/test.t too |
20:43 |
FROGGS |
jnthn: is it possible that nqp::loadbytecode() behaves differently if I invoke it again for the same file? |
20:44 |
FROGGS |
mykle: make sometests TESTFILES=t/spec/S11-modules/require.t |
20:44 |
|
toddr_ left #perl6 |
20:44 |
FROGGS |
this has the cool fudgy-stuff too |
20:44 |
jnthn |
FROGGS: Sure, we don't duplicately load moduloes. A bunch of stuff in ModuleLoader takes care of that. |
20:45 |
FROGGS |
hmmmm, sad that is |
20:45 |
FROGGS |
jnthn: I am currently working on: { use v5 }; { use v5 } |
20:45 |
mykle |
cool. the first recipe seems to give all the output. |
20:45 |
FROGGS |
I mean, if the module isnt precompiled, I could just re-eval it |
20:46 |
FROGGS |
jnthn: I'd like to do the same for precompiled modules |
20:47 |
jnthn |
FROGGS: Sounds like you want to be writing an EXPORT sub or so, which is certainly run every load. |
20:47 |
jnthn |
FROGGS: Uh, every use I mean. |
20:47 |
FROGGS |
ohh, nice |
20:47 |
grondilu |
Please suggest a better way of coding SHA-256: http://rosettacode.org/wiki/Talk:SHA-256 |
20:51 |
|
MrMeek joined #perl6 |
20:56 |
FROGGS |
jnthn: and EXPORT subs are working too for nqp modules? |
20:57 |
FROGGS |
mine doesnt get called :/ |
20:57 |
jnthn |
Oh... |
20:57 |
jnthn |
No, just Rakudo at present. |
20:57 |
FROGGS |
hmmm |
20:57 |
FROGGS |
so, back to the beginning *g* |
20:58 |
jnthn |
May not be hard to update it to do it though. |
20:58 |
FROGGS |
can you point me at the right place? |
20:58 |
FROGGS |
do_import? |
20:59 |
skids |
grondilu: I implemented SHA-256 in Sum already. |
20:59 |
jnthn |
That sounds like it...I'd check where Rakudo does it, as I think things are factored similar |
20:59 |
jnthn |
Search for &EXPORT or so |
20:59 |
FROGGS |
k, thanks! |
20:59 |
FROGGS |
ya, do_import |
21:00 |
skids |
grondilu: All the Sum stuff is designed such that it should not in theory take it all into memory, but last I checked rakudo did due to some extra unwanted laziness. |
21:04 |
dalek |
tablets: 0866fd0 | (Herbert Breunung)++ | docs/appendix-a-index.txt: |
21:04 |
dalek |
tablets: added .iterator to A |
21:04 |
dalek |
tablets: review: https://github.com/perl6/tablets/commit/0866fd0daa |
21:05 |
jnthn |
.oO( iterator doesn't start with A... ) |
21:05 |
* skids |
decommute |
21:05 |
|
Targen joined #perl6 |
21:12 |
dalek |
tablets: e76261a | (Herbert Breunung)++ | docs/appendix- (2 files): |
21:12 |
dalek |
tablets: added .infinite to A |
21:12 |
dalek |
tablets: review: https://github.com/perl6/tablets/commit/e76261a808 |
21:12 |
lichtkind |
jnthn: i ment the tablet index A |
21:23 |
lue |
hello o/ |
21:28 |
jnthn |
'night, #perl6 |
21:28 |
colomon |
\o |
21:28 |
masak |
'night, jnthn. |
21:32 |
colomon |
masak: does Text::CSV only read files? |
21:32 |
masak |
good question. |
21:32 |
masak |
it's years since I wrote it. |
21:32 |
* masak |
checks |
21:32 |
colomon |
I'm not seeing anything else in there. |
21:33 |
masak |
yeah, it only reads files. |
21:33 |
masak |
it doesn't feel all that unreasonable that it should be able to write them, too. |
21:33 |
colomon |
not a big deal, but I've just taken "use Text::CSV" out of my code. ;) |
21:33 |
masak |
heh :) |
21:33 |
masak |
adding that functionality would mean thinking a bit about how to fit it into the current API, though. |
21:34 |
colomon |
yes |
21:35 |
FROGGS |
r: module A { sub EXPORT { say 1 } }; import A; |
21:35 |
camelia |
rakudo ef73eb: ( no output ) |
21:35 |
FROGGS |
r: module A { sub EXPORT { say 1 } }; import A <x>; |
21:35 |
camelia |
rakudo ef73eb: ( no output ) |
21:36 |
|
Targen joined #perl6 |
21:36 |
FROGGS |
masak: jnthn said that EXPORT sub are always called when I use a module... but locally this doesnt work... do you have a one-liner for me? |
21:36 |
FROGGS |
subs* |
21:40 |
masak |
'fraid not. |
21:40 |
masak |
maybe look at the spectests? |
21:41 |
FROGGS |
searching for EXPORT shows nothing useful |
21:41 |
FROGGS |
it only checks that things are inside GLOBAL::Module::EXPORT::... after importing |
21:41 |
masak |
I'm not sure I've heard about an EXPORT sub before... |
21:41 |
masak |
yeah. |
21:42 |
masak |
that sounds more familiar. |
21:42 |
FROGGS |
r: use Test <x>; |
21:42 |
camelia |
rakudo ef73eb: OUTPUT«===SORRY!===â¤Error while importing from 'Test': no EXPORT sub, but you provided positional argument in the 'use' statementâ¤Â» |
21:42 |
FROGGS |
no EXPORT sub... |
21:44 |
* lue |
though arglist case of use was still NYI. Huh. |
21:46 |
|
timotimo joined #perl6 |
21:53 |
|
bruges joined #perl6 |
21:53 |
|
kurahaupo joined #perl6 |
21:54 |
|
dpk joined #perl6 |
21:57 |
|
silug joined #perl6 |
22:02 |
|
mavcunha joined #perl6 |
22:05 |
|
frdmn joined #perl6 |
22:08 |
FROGGS |
okay, declaring a sub EXPORT($@a) { ... does it, but putting it in a module-scope doesnt work |
22:17 |
|
kivutar joined #perl6 |
22:25 |
diakopter |
FROGGS: our scope? |
22:25 |
FROGGS |
maybe |
22:25 |
diakopter |
er |
22:25 |
diakopter |
method EXPORT or sub EXPORT |
22:25 |
FROGGS |
sub |
22:32 |
lichtkind |
moritz: ping |
22:32 |
lichtkind |
FROGGS: du kannst doch bisserl p5 ? :) |
22:35 |
FROGGS |
lichtkind: a bit :o) |
22:36 |
lichtkind |
FROGGS: i just rmembered that we have to wrench moritz p6doc into the module Perl6::Doc and subsequently into grok and btw updates the tablets entries too |
22:39 |
grondilu |
rn: subset Prime of Int where &is-prime; say 7 ~~ Prime |
22:39 |
camelia |
rakudo ef73eb, niecza v24-37-gf9c8fc2: OUTPUT«Trueâ¤Â» |
22:50 |
japhb |
rn: subset Prime of Int where &is-prime; say 12 ~~ Prime |
22:50 |
camelia |
rakudo ef73eb, niecza v24-37-gf9c8fc2: OUTPUT«Falseâ¤Â» |
22:50 |
japhb |
(Well, at least they got those two right.) |
22:51 |
flussence |
.oO( it'd be nice if I could do things like «$doc = require 'whatever.pod'; foo($doc.WHY)» ) |
22:56 |
masak |
'night, #perl6 |
22:56 |
FROGGS |
gnight masak |
22:58 |
|
xinming joined #perl6 |
22:58 |
flussence |
ooh, this is a horrible hack but it works... |
22:59 |
flussence |
my $doc = eval slurp('whatever.pod') ~ "\n$=pod" |
23:00 |
diakopter |
rn: subset Prime of Int where &is-prime; say 2**57885161-1 ~~ Prime |
23:00 |
camelia |
rakudo ef73eb, niecza v24-37-gf9c8fc2: OUTPUT«(timeout)» |
23:01 |
diakopter |
rn: subset Prime of Int where &is-prime; say 2**521-1 ~~ Prime |
23:01 |
flussence |
(well, it worked when that line was manually edited into the file... not quite as good in code though) |
23:01 |
camelia |
rakudo ef73eb, niecza v24-37-gf9c8fc2: OUTPUT«Trueâ¤Â» |
23:01 |
diakopter |
rn: subset Prime of Int where &is-prime; say 2**607-1 ~~ Prime |
23:01 |
camelia |
rakudo ef73eb, niecza v24-37-gf9c8fc2: OUTPUT«Trueâ¤Â» |
23:01 |
|
adu joined #perl6 |
23:02 |
FROGGS |
jnthn++ # that EXPORT hint solved my problem |
23:02 |
diakopter |
rn: subset Prime of Int where &is-prime; say 2**1279-1 ~~ Prime |
23:03 |
camelia |
rakudo ef73eb, niecza v24-37-gf9c8fc2: OUTPUT«Trueâ¤Â» |
23:04 |
|
cognominal joined #perl6 |
23:05 |
diakopter |
rn: subset Prime of Int where &is-prime; say 2**2203-1 ~~ Prime |
23:05 |
flussence |
/facepalm... of course it won't work without escaping the $... |
23:05 |
camelia |
niecza v24-37-gf9c8fc2: OUTPUT«(timeout)» |
23:05 |
camelia |
..rakudo ef73eb: OUTPUT«Trueâ¤Â» |
23:07 |
census |
hi! is anybody university affiliated here? |
23:08 |
lichtkind |
was there a reason to call the method "bounds" and not "list" |
23:10 |
FROGGS |
gnight all |
23:10 |
lichtkind |
sleep well FROGGS |
23:10 |
|
BenGoldberg joined #perl6 |
23:16 |
dalek |
tablets: 861d018 | (Herbert Breunung)++ | docs/appendix-a-index.txt: |
23:16 |
dalek |
tablets: added .bounds to A |
23:16 |
dalek |
tablets: review: https://github.com/perl6/tablets/commit/861d018b75 |
23:17 |
census |
good night FROGGS |
23:32 |
|
BenGoldberg joined #perl6 |
23:34 |
grondilu |
diakopter: I wrote this Prime subset as a way to suggest a syntactic alternative to dealing with prime numbers in Perl6. I was not questioning the semantics, actually. I actually have no idea on how &is-prime works. |
23:34 |
diakopter |
I thought it used native libraries |
23:34 |
diakopter |
in both rakudo and niecza |
23:37 |
japhb |
One of the probabilistic methods, I believe |
23:38 |
japhb |
(I don't recall if the test count was properly tuned to have very low failure likelihood across the entire range of Int that Rakudo could handle on real hardware, but the fact that it times out on very large inputs seems to indicate there is size-based tuning of some sort.) |
23:39 |
diakopter |
it's timing out on the multiplication, I'm sure |
23:39 |
diakopter |
er, exponentiation |
23:39 |
diakopter |
rn: 2**57885161-1 |
23:40 |
camelia |
rakudo ef73eb, niecza v24-37-gf9c8fc2: OUTPUT«(timeout)» |
23:42 |
BenGoldberg |
IIRC, is-prime is spec'ed to use rabin-miller |
23:42 |
BenGoldberg |
err, miller-rabin |
23:42 |
japhb |
diakopter, yes, that is quite possible -- and means we still don't know if the is-prime test is properly tuned yet. (I don't have the tuits to research that at the moment.) |
23:45 |
diakopter |
what do you mean tuned |
23:46 |
BenGoldberg |
r: say 5.expmod(7,13) |
23:46 |
camelia |
rakudo ef73eb: OUTPUT«8â¤Â» |
23:47 |
BenGoldberg |
Is perl6's &is-prime is using exponentiation, rather than expmod? |
23:48 |
japhb |
A probabilistic test needs to run a certain number of tests to reduce the likelihood of incorrect result below some threshold P. But only the user of the test can say what P should be, so it is my understanding that many libraries make P (or equivalently, the iteration count) one of the inputs to the test library. |
23:48 |
BenGoldberg |
rn: 2.expmod(57885161, 3) |
23:48 |
camelia |
rakudo ef73eb, niecza v24-37-gf9c8fc2: ( no output ) |
23:48 |
BenGoldberg |
rn: say 2.expmod(57885161, 3) |
23:48 |
camelia |
rakudo ef73eb, niecza v24-37-gf9c8fc2: OUTPUT«2â¤Â» |
23:49 |
BenGoldberg |
rn: say 2 ** 57885161 % 3 |
23:49 |
camelia |
rakudo ef73eb, niecza v24-37-gf9c8fc2: OUTPUT«(timeout)» |
23:50 |
BenGoldberg |
If perl6 were to automatically turn a**b%c into a.expmod(b,c), there's a chance that the problem would be avoided |
23:51 |
|
Subterra joined #perl6 |
23:53 |
japhb |
BenGoldberg, note that the miller-rabin implementations may actually be in C code. |
23:54 |
japhb |
So Perl 6 is having to exponentiate the huge number and pass it off to a black box -- no opportunity to rewrite. |