»ö« Welcome to Perl 6! | perl6.org/ | evalbot usage: 'p6: say 3;' or rakudo:, std:, or /msg camelia p6: ... | irclog: irc.perl6.org | UTF-8 is our friend! | feather will shut down permanently on 2015-03-31
Set by jnthn on 28 February 2015.
00:03 telex left 00:04 aborazmeh left, telex joined 00:06 aborazmeh joined, aborazmeh left, aborazmeh joined 00:13 laouji joined
dalek ast: 13f03e8 | skids++ | S04-statements/if.t:
Add tests for result of conditional statements (10 tests, two rakudo todos)
00:25
00:31 vendethiel left 00:39 laouji left 00:40 laouji joined 00:43 laouji left 00:44 laouji joined 00:53 labster left 00:54 Ben_Goldberg joined, labster joined 00:57 BenGoldberg left 01:08 grondilu left 01:18 dayangkun joined 01:29 grettis left
dalek ast: 97e2405 | skids++ | S04-statements/do.t:
Add some tests for do block result values.
01:41
ast: a2a151b | skids++ | S04-statements/do.t:
Adjust plan for prevous commit
atweiden m: sub deref(%h, *@k) is rw { my $h := %h; $h := $h{$_} for @k; $h }; deref(my %x, <one two three>) = 42; say %x.perl 01:50
camelia rakudo-moar c4beed: OUTPUT«{:one({:two({:three(42)})})}<>␤»
atweiden why does deref need `is rw`? 01:51
raydiak because you want to be able to assign to the thing it returns 01:53
02:05 noganex joined 02:08 noganex_ left 02:09 konsolebox joined 02:13 Sqirrel left 02:24 Sqirrel joined 02:28 konsolebox left 02:32 chenryn joined 02:40 egrep joined, jack_rabbit joined, vendethiel joined, araujo joined 02:43 araujo left 02:44 araujo joined 02:56 aborazmeh left 02:57 aborazmeh joined, aborazmeh left, aborazmeh joined
dalek ecs: a095cc4 | (Geoffrey Broadwell)++ | S99-glossary.pod:
Fix a couple corruptions in previous commit
02:59
p/no-readlineint: 384b661 | hoelzro++ | / (6 files):
Remove references to readlineint_fh

This corresponds to recent changes in MoarVM, in the no-moar-linenoise branch.
I haven't removed readlineintfh from the Parrot stage 0 stuff, because the tests are currently failing, and I don't want to bork Parrot worse than it already is.
03:00
p/no-readlineint: 9158824 | hoelzro++ | src/HLL/Compiler.nqp:
Restore prompt to REPL
p/no-readlineint: 6a06631 | hoelzro++ | src/HLL/Compiler.nqp:
Break reading of lines out into a helper method
p/no-readlineint: 886c23c | hoelzro++ | tools/build/MOAR_REVISION:
DON'T MERGE ME Bump MoarVM version
p/no-readlineint: 6ec6227 | hoelzro++ | src/HLL/Compiler.nqp:
Preserve interactive eval context as an attribute of the compiler
Heuristic branch merge: pushed 16 commits to rakudo/tab-completion by hoelzro 03:01
03:05 vendethiel left 03:07 xiaomiao joined 03:30 cschwenz joined 03:39 Sqirrel left 03:45 Sqirrel joined 03:47 chenryn left 03:51 laouji left 03:55 aborazmeh left 04:04 aborazmeh joined, aborazmeh left, aborazmeh joined 04:14 zjmarlow left 04:23 aborazmeh left 04:25 kaare_ joined 04:28 anaeem1 joined 04:30 cschwenz left 04:32 anaeem1 left 04:33 anaeem1_ joined 04:35 Ben_Goldberg left 04:47 alini joined, aborazmeh joined, aborazmeh left, aborazmeh joined, atweiden left, chenryn joined 04:51 chenryn left 04:52 lolisa joined 04:54 laouji joined 05:03 chenryn joined 05:05 timotimo left 05:06 timotimo joined, lolisa left
dalek ast: bca773f | skids++ | S04-statements/for.t:
Add a few tests and fudges for result-values of for loops
05:09
kudo/nom: d26daac | TimToady++ | src/Perl6/ (2 files):
notice when a sigil can't parse what's after
05:13
05:19 skids left, prammer left 05:22 abraxxa joined 05:25 vendethiel joined 05:27 jack_rabbit left 05:45 Psyche^ joined
dtscode [/-\_/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/\] 05:46
oops
05:49 Patterner left 05:52 cschwenz joined 05:53 vendethiel left 05:54 diana_olhovik_ joined, _mg_ joined 05:59 FROGGS left 06:12 aborazmeh left 06:13 alini left 06:15 chenryn left 06:17 chenryn joined 06:18 alini joined, gfldex joined 06:26 _mg__ joined 06:27 yvan1 left, _mg_ left, _mg__ is now known as _mg_ 06:30 gfldex left
nwc10 [\o/\o/\o/\o/\o/\o/\o/\o/\o/\o/\o/\o/] 06:31
jnthn morning, #perl6 06:38
cdc o/ jnthn
06:38 brrt joined 06:39 vendethiel joined
vendethiel computer, messages. 06:39
yoleaux 20 Apr 2015 22:35Z <eli-se> vendethiel: gist.github.com/rightfold/5b5ac73aaaf0d9ccd8bd ;)
06:45 araujo left 06:46 araujo joined 06:47 RabidGravy joined 06:54 FROGGS joined
masak morning, #perl6 06:55
06:55 yeahnoob joined
brrt morning masak, #perl6 06:55
06:57 anaeem1_ left 06:58 rindolf joined, rurban joined
FROGGS morning 07:01
07:08 pecastro left 07:11 zakharyas joined 07:14 leont joined, Timbus joined 07:15 rindolf left 07:17 vendethiel left
sergot morning \o 07:23
FROGGS o/ 07:24
dtscode o/
[ptc] jnthn++ # blog post 07:29
jnthn: btw: you meant the 2015.04 release, not the 2014.04 release, right? 07:30
jnthn uh, yes
fixed, thanks 07:31
[ptc] no probs :-)
07:35 spider-mario left 07:40 Rounin joined
FROGGS jnthn++ 07:42
07:44 yvan1 joined, vendethiel joined 07:46 cschwenz1 joined 07:55 bjz joined
brrt jnthn++ 07:57
i somewhat doubt, now, that jnthn will have 5 months of work on the tasks he set out for the grant :-) 07:58
masak you doubt it's that much, or that little? 07:59
07:59 bjz left 08:00 bjz joined
brrt well, i'm just incredibly impressed by the pace 08:01
08:04 leont left
masak brrt: we've put jnthn in an isolation tank in a foreign country. it seems to have worked. 08:04
08:06 bjz left
brrt :-D 08:06
RabidGravy just tracking down the modules in the META.list that don't appear on modules.perl.org
08:09 vendethiel left 08:12 eli-se joined
eli-se Hello, world! 08:13
masak eli-se! \o/
08:16 darutoko joined 08:20 mrf joined
dalek c: f810ab2 | (Heiko Jansen)++ | lib/Type/Failure.pod:
Use correct method name within its section
08:28
c: 049c71a | niner++ | lib/Type/Failure.pod:
Merge pull request #75 from heikojansen/patch-1

Use correct method name within its section
08:30 wollmers joined
eli-se is it possible to print the instructions a Perl 6 expression is compiled to? 08:33
08:33 andreoss joined
RabidGravy is the build-project-list.pl being used to make the modules.perl.org the one in the gh-pages branch? 08:33
eli-se like the dis module in Python 08:34
jnthn eli-se: You can compile it into a .moarvm or .jar file and then dump the bytecode.
moar --dump somefile.moarvm
08:35 andreoss` joined
eli-se jnthn: is that human-readable or do I need a hex editor and decipher the bytes manually? 08:35
jnthn --dump gives you human readable
eli-se nice, let's see
how do you compile it? 08:37
08:37 vendethiel joined
jnthn perl6-m --target=mbc --output=foo.moarvm -e "say 'hello world'" 08:37
eli-se wonderful! thanks! 08:38
08:38 andreoss left
wollmers m: my $cp = Uni.new(0x0044, 0x0323, 0x0307); say $cp.Str.chars; 08:39
camelia rakudo-moar d26daa: OUTPUT«1␤»
jnthn eli-se: You may want to put the code you're interested in into a sub thingy() { ... } so you can spot it amongst the boilerplate.
wollmers m: my $cp = Uni.new(0x0044, 0x0323, 0x0307); .say for $cp.Str.chars.list>>.uniname; 08:41
camelia rakudo-moar d26daa: OUTPUT«START OF HEADING␤»
eli-se I wonder how instruction sets are designed. 08:42
moritz eli-se: you should talk to the Mill Architecture folks :-) 08:43
eli-se moritz: funny; my VM is called "mill"
wollmers m: my $cp = Uni.new(0x0044, 0x0323, 0x0307); .say for $cp.Str.list>>.uniname;
camelia rakudo-moar d26daa: OUTPUT«should eventually be unreachable␤ in sub uniname at src/gen/m-CORE.setting:9032␤ in sub uniname at src/gen/m-CORE.setting:9031␤ in method uniname at src/gen/m-CORE.setting:4751␤ in method dispatch:<hyper> at src/gen/m-CORE.setting:1443␤ in b…»
jnthn Str.list gives you a list with one Str 08:44
eli-se the instruction set is minimal, though. e.g. arity check is emitted by compiler as push argcount, push integer, compare and then conditional jump
wollmers m: my $cp = Uni.new(0x0044, 0x0323, 0x0307); .say $cp.Str.chars;
camelia rakudo-moar d26daa: OUTPUT«5===SORRY!5=== Error while compiling /tmp/qQFTnPCpu0␤Two terms in a row␤at /tmp/qQFTnPCpu0:1␤------> 3 = Uni.new(0x0044, 0x0323, 0x0307); .say7⏏5 $cp.Str.chars;␤ expecting any of:␤ infix␤ infix stopper␤ state…»
08:45 bjz joined
wollmers m: my $cp = Uni.new(0x0044, 0x0323, 0x0307); say $cp.Str.chars; 08:45
camelia rakudo-moar d26daa: OUTPUT«1␤»
08:46 leont joined
jnthn If you want to get back to a list of codepoints then .NFC or .NFD on a Str will do it 08:46
wollmers m: my $a = Uni.new(0x0044, 0x0323, 0x0307).Str; say $a.chars; 08:47
camelia rakudo-moar d26daa: OUTPUT«1␤»
wollmers m: my $a = Uni.new(0x0044, 0x0323); my $b = Uni.new(0x0307).Str; say $a.chars;say $b.chars; 08:48
camelia rakudo-moar d26daa: OUTPUT«Method 'chars' not found for invocant of class 'Uni'␤ in block <unit> at /tmp/1qLo_VxW8X:1␤␤»
wollmers m: my $a = Uni.new(0x0044, 0x0323).Str; my $b = Uni.new(0x0307).Str; say $a.chars;say $b.chars;
camelia rakudo-moar d26daa: OUTPUT«1␤1␤» 08:49
wollmers m: my $a = Uni.new(0x0044, 0x0323).Str; my $b = Uni.new(0x0307).Str; my $c = $a ~ $b;say $a.chars;say $b.chars;say $c.chars; 08:50
camelia rakudo-moar d26daa: OUTPUT«1␤1␤2␤»
wollmers m: my $a = Uni.new(0x0044, 0x0323).Str; my $b = Uni.new(0x0307).Str; my $c = $a ~ $b;say $a.chars;say $b.chars;say $c.Str.chars;
camelia rakudo-moar d26daa: OUTPUT«1␤1␤2␤»
jnthn And that 2 exposes one of the things that is NYI :)
(Should also come out as 1.) 08:51
wollmers jnthn: that's what I tested;-)
jnthn :)
moritz wollmers: now turn that into tests in github.com/perl6/roast/ 08:52
wollmers jnthn: one of the others NYI is properties of NFG?
lizmat Berlin -> Cologne &
08:52 lizmat left 08:53 eli-se left
jnthn wollmers: Depends. Some bits work (the ones exercises in S15-nfg/regex.t) 08:53
*exercised
m: my $a = Uni.new(0x0044, 0x0323, 0x0307).Str; say $a ~~ /^\w$/; 08:54
camelia rakudo-moar d26daa: OUTPUT«「Ḍ̇␤»
jnthn m: my $a = Uni.new(0x0044, 0x0323, 0x0307).Str; say $a ~~ /^<:L>$/;
camelia rakudo-moar d26daa: OUTPUT«「Ḍ̇␤»
wollmers moritz: ACK, maybe someone can review, agree, disagree or rediscuss my notes at the end of S-15 08:55
moritz: this was where I got stuck 2008 (defining the testcases for NFG). Now jnthn++ such work makes more sense. 08:58
08:58 dakkar joined 08:59 yeahnoob left 09:00 yeahnoob joined, vendethiel left
jnthn wollmers: Is that the bit under "final considerations"? 09:00
moritz wollmers: I fear that most of the Unicody intricacies are lost on me :/ 09:01
09:05 ab5tract_ joined, espadrine joined
wollmers jnthn: Yea, not all of it. This commit github.com/perl6/specs/commit/8702...5c870e4679 09:06
jnthn wollmers: The "properties of graphemes" thing do at the moment, where implemented, take on the properties of the base character, which is indeed taken after putting it in NFC form. 09:07
So the bit around 273 matches up with what's implemented and tested, and TimToady seems to think that's sane. 09:08
The concatenation bit I agree needs dealing with, just didn't get there yet.
wollmers moritz: now, 7 years after 2008, we have have sane properties in Perl5 and in Perl6. So I can get back, defining test cases. 09:09
moritz wollmers: great
jnthn As to the formal definition thing: maybe sync it with github.com/MoarVM/MoarVM/blob/mast...ize.c#L425 09:10
Which is defined as an extension to canonical composition. 09:11
(And so tries to be couched in its language)
dalek href="https://modules.perl6.org:">modules.perl6.org: 022f0df | (Jonathan Stowe)++ | web/lib/P6Project/Info.pm:
Transitionally support $meta->{support}->{source} and
09:19
wollmers jnthn: I am still not completely sure, if my idea of inheriting the properties from the first NFC/NFD character makes sense. Will try to find negative cases.
RabidGravy there, still five errors in building the modules list but a bit better 09:20
one appears to have gone away, one has weird source URL which I have sent PR for and the remaining three there is something weird about their repos 09:22
right off out to get the car cleaned :-\ 09:32
09:32 andreoss` left 09:36 RabidGravy left 09:41 wollmers left
dalek pan style="color: #395be5">perl6-examples: ed4e187 | paultcochrane++ | categories/cookbook/10subroutines/10-01arguments.pl:
Add missing author name
09:42
09:43 Alina-malina left, telex left 09:44 pecastro joined, telex joined 09:45 alini left 09:46 laouji_ joined
[ptc] sorry in advance for the dim question: will META6.json supersede META.info? Or should the spec simply be updated to replace META6.json with META.info? 09:46
also, should there be a copyright year in a module's metadata? 09:47
masak why would a copyright year need to be in the module's metadata (as opposed to just in a comment in the code, or the LICENSE file)? 09:48
09:48 laouji left
[ptc] masak: well, Dist::Zill does it, so I just wondered 09:49
masak I'm curious what that information *could* be used for. I don't see it. 09:50
[ptc] I'm not saying it *should* be there, was just wondering, that's all. 09:51
I did mention dim questions ;-)
09:59 rindolf joined, alini joined, laouji_ left 10:02 Alina-malina joined, laouji_ joined 10:04 yeahnoob left 10:07 brrt left
masak [ptc]: it's a fine question. there might well be a use. 10:08
I mean "copyright year" does sound like metadata. I'm not sure what consumer would be interested in it, is all.
[ptc] masak: was in the middle of updating a module which has a p5 and a p6 version and wondered if the dzil 'copyright_year' would be meaningful in META.info 10:09
masak: other than probably to know at a glance how up to date the module is?
10:10 vendethiel joined
masak not convinced by that usage ;) 10:10
[ptc] me neither :-)
masak glance at the LICENSE file instead ;)
[ptc] doesn't the LICENSE file simply contain the text of the Artistic License or the GPL?
masak or the README, or whatever.
[ptc] then the copyright date doesn't necessarily match up. 10:11
yeah, or that
masak the human-readable metadata, not the machine-readable metadata.
10:12 chenryn left 10:16 |Tux| joined 10:19 Alina-malina left 10:20 |Tux| left 10:21 |Tux| joined, laouji_ left 10:22 laouji joined 10:25 laouji left, laouji joined 10:26 andreoss joined
andreoss are state variables for infinite lists broken? 10:28
yoleaux 20 Apr 2015 15:49Z <flussence> andreoss: .is-prime calls down to mp_prime_is_prime() in libtommath, so you're going to have no chance of beating it for speed using perl6 code.
andreoss Im getting strage errors with lazy state pastebin.com/3UAX16tG 10:29
jnthn Don't see how they'd interact strangely. A stage variable just keeps the container initialized the first time around, and re-instates it next time.
Oh
Don't use state vars with binding.
10:29 risou is now known as risou_awy 10:30 risou_awy is now known as risou
jnthn It's the contaienr that's kept, and if you re-bind it... 10:30
10:30 Ven joined
andreoss the error i get is about infix:<>> which is misleading 10:31
state vars cannot be lazy lists at all?
10:32 vendethiel left
jnthn Well, for your case I don't get why you are using state, when "my constant" would be better. 10:32
10:32 laouji left
Ven o/, #perl6 10:33
jnthn Maybe after the GLR, you'll be able to use assignment there and have it not try to evaluate the infinite thing, and then the issue goes away.
10:33 dayangkun left
jnthn o/ Ven 10:34
andreoss my constant within sub definition is kept between sub calls?
jnthn Yes, constant = BEGIN time
10:35 Sqirrel_ joined
jnthn So, once ever. state is once per closure. 10:35
10:36 vendethiel joined, laouji joined
andreoss thanks 10:36
10:37 Sqirrel left
Ven I was working on sixcheck, and I realized I had wrongly assumed f(|x) would flatten for both positionals and named, but it seems it's not true. 10:38
Is there anything wrong with f(|@a.grep(Pair), |@a.grep({$_ !~~ Pair})? I'm probably missing something. 10:39
(also, this makes me wish we had grep-not :-). Since even * !~~ wouldn't work)
jnthn You need to flatten a hash
Not a list of pairs
|%(@a.grep(Pair)) or so 10:40
Ven m: my @a = 1, 2, 3, a => 5; sub f($x, $y, $z, :$a) { say $a.perl }; f(|@a.grep(Pair), |@a.grep({$_ !~~ Pair})) # I thought it didn't 10:42
camelia rakudo-moar d26daa: OUTPUT«Too many positionals passed; expected 3 arguments but got 4␤ in sub f at /tmp/YQlPBotZMN:1␤ in block <unit> at /tmp/YQlPBotZMN:1␤␤»
Ven m: my @a = 1, 2, 3, a => 5; sub f($x, $y, $z, :$a) { say $a.perl }; f(|%@a.grep(Pair), |@a.grep({$_ !~~ Pair})) # I stand corrected :)
camelia rakudo-moar d26daa: OUTPUT«Too many positionals passed; expected 3 arguments but got 5␤ in sub f at /tmp/LmSqtP1aW1:1␤ in block <unit> at /tmp/LmSqtP1aW1:1␤␤»
Ven m: my @a = 1, 2, 3, a => 5; sub f($x, $y, $z, :$a) { say $a.perl }; f(|@a.grep(Pair).hash, |@a.grep({$_ !~~ Pair})) # duh. 10:43
camelia rakudo-moar d26daa: OUTPUT«5␤»
10:43 Alina-malina joined
Ven I forgot % would apply to @a before .grep 10:44
jnthn Precedence bites :) 10:45
Ven right :). Does grep-not seem like a good thing to have?
In this case, I first tried @a.grep(Pair), @a.grep(* !~~ Pair) and it didn't warn – it only did when I tried it in the REPL later for some reason... 10:46
10:46 Ven left
jnthn I think * !~~ Pair should work, since I think we made * ~~ Pair work recently 10:46
10:47 chenryn joined 10:51 Ven joined
Ven jnthn: right, I'll upgrade my rakudo then. it's around 2 weeks old, and iirc that commit isn't that old 10:51
masak no, I don't think we need a .grep-not 10:53
Ven masak: why not :)? 10:54
masak it seems a really low-powered feature for something we can already do in many other ways. 10:56
we have a ! metaoperator for exactly this reason, so we won't have to invent .x-not methods
Ven we can't .grep(!Pair)
jnthn * !~~ Pair ain't so long 10:57
masak Ven: define your own operator ¡ that means * !~~ $term 10:59
Ven no unicode in my world :) 11:00
that didn't made sense
no characters I don't have on my keyboard :P.
masak I used to think like that. 11:01
Ven (coding in agda is an exception to that rule) 11:03
masak: well, why did your opinion change? 11:04
colomon for me, it was when I discovered how easy it was to type characters not on the keyboard. :) 11:08
11:10 leont left
masak what colomon said. 11:11
it stopped being a good excuse for me.
colomon also programmed his editor to convert the Texas version of some of the Unicode operators he used most often to the proper Unicode version at a keystroke. 11:12
11:14 gcole joined 11:15 Alina-malina left 11:18 Alina-malina joined 11:21 vendethiel left 11:23 rurban left 11:25 vendethiel joined 11:35 brrt joined
Ven masak: I still work on window regularly :) 11:41
11:41 Ven left 11:46 Ulti left 11:47 lolisa joined 11:49 Ven joined 11:52 rurban joined, prammer joined
nine What's a Texas version of an operator? 11:55
nwc10 an ASCII equivalent to the non-ASCII version 11:56
11:56 kaare_ left
nwc10 I'm (a) not sure if it's in the glosarry 11:56
(b) not sure what it would take to have a glossary-aware infobot here
nine Ah, it's right there
syn.perl6.org/S99.html#Texas_operator
nwc10 yoleaux: Texas?
yoleaux: Texas operator? 11:57
yoleaux: botsnack?
11:57 kaare_ joined
moritz >> is the "texas" version of » 11:58
nwc10 why is Texas more ASCII than the rest of the USA? 11:59
moritz in Texas, everything is bigger
12:05 Ulti joined
Ulti nooo lost ops 12:05
also I have follow.pl loaded
12:05 xfix joined
Ulti :'( 12:05
12:08 ggoebel joined
masak Ulti: nice to see you too ;) 12:08
12:12 Sqirrel_ left 12:14 kaare__ joined, kaare_ left 12:16 chenryn left 12:17 chenryn joined 12:21 lolisa left 12:22 lolisa joined 12:23 chenryn left 12:34 laouji left 12:35 ggoebel left 12:36 vendethiel left 12:42 andreoss left, vendethiel joined 12:46 RabidGravy joined
dalek kudo-star-daily: 4a33a6a | coke++ | log/ (2 files):
today (automated commit)
12:51
12:52 leont joined
[Coke] S99:Texas_Operator 12:54
aww.
12:56 Ven left, mjreed left 12:59 cschwenz left 13:03 Ven joined 13:04 vendethiel left 13:11 ab5tract_ left 13:20 vendethiel joined 13:38 ab5tract_ joined 13:40 rurban left 13:41 Ven left, vendethiel left 13:45 vendethiel joined 13:47 ggoebel joined 13:53 Ven joined 13:55 khisanth_ joined 13:57 Khisanth left, xfix left, brrt` joined 13:59 brrt left
mephinet is just reading jnthn's post and is also wandering what list>> means... 14:03
jnthn m: say (-1, 5, -6)>>.abs.perl 14:04
camelia rakudo-moar d26daa: OUTPUT«(1, 5, 6)␤»
mephinet I know understood that it's a Texas operator, but what does it do? I can't find it here: doc.perl6.org/language/operators
brrt` i think it's the hyper operator
m: ('a','b','c')>>.uc.say;
camelia rakudo-moar d26daa: OUTPUT«A B C␤»
jnthn It's a map that may do the method calls in parallel if it things it's worth it
(But gives the results back in the same order as the increments) 14:05
mephinet it shows up in the "operator precedence" chapter, but it has no mention later on.
brrt` hmm... what's the unordered version then?
mephinet jnthn: ah, cool, thanks1
pretty cool, actually ;-) 14:06
14:06 ggoebel left
jnthn brrt`: race map ... 14:06
mephinet the whole "hyper" thingie isn't mentioned in the operators list at all? 14:07
here it is! design.perl6.org/S03.html#Hyper_operators 14:08
14:09 vendethiel left 14:11 Ven left
moritz and where is it missing? 14:12
jnthn moritz: I think mephinet meant in doc.perl6.org 14:18
timotimo o/
mephinet maybe I was looking at the wrong place, but I expected an entry for that in the doc.perl6.org/language/operators 14:19
brrt` doesn't seem unreasonable to me 14:20
timotimo indeed, i'll add it to the WANTED doc
14:21 Ven joined
moritz mephinet: it's not unreasonable; there's just the "known to be incomplete" part in the footer :/ 14:21
dalek c: deb4ebb | timo++ | WANTED:
add hyper operator wantedness
jnthn Also yesterday I noticed Failure has nice documentation on Failure semantics, but the fail sub is missing. Could also go in WANTED.
timotimo [wantedness intensifies] 14:22
14:22 skids joined, Rounin left
Ven I think it'd be amazing for the learnx to go over things "lightly" then defer to the perl6 faq for more 14:23
mephinet timotimo++
timotimo do you really mean the faq? 14:24
14:25 vendethiel joined
Ven no, I mean doc.perl6.org* 14:25
mephinet I meant: thanks for adding it to the wanted list
dalek ecs: 64b47f8 | (Stéphane Payrard)++ | S99-glossary.pod:
pouring into the glossary Danaides barrel
14:26 rurban joined 14:28 Alina-malina left
brrt` \quit 14:33
14:33 brrt` left 14:35 abraxxa left
psch hey #perl6 \o 14:36
RabidGravy yo 14:37
psch i have #116280 fixed with special casing for Inf and NaN, but i'm not sure it's really that sensible, considering #61602 (and github.com/perl6/specs/issues/27 ) exist
(also i like the "extensible sprintf" idea, fwiw) 14:38
RabidGravy anyone got a feeling whether there should be a page for "event driven"/"concurrent"/"reactive" (or whatever we call it) programming on doc.perl6.org/language.html ? 14:40
jnthn RabidGravy: Probably. 14:41
jnthn would be open to writing such a page at some point
RabidGravy you busy, I'll kick it off but it'll probably need some review as I'm a bit fuzzy on the guts 14:42
jnthn *nod* 14:43
I'll be improving the guts in the coming months also. :)
14:45 xfix joined 14:48 vendethiel left, Ven left 14:51 vendethiel joined
RabidGravy jnthn, which of those is the established terminology, BTW? 14:52
jnthn RabidGravy: They're all established in some sense but with slightly different meanings. :) 14:54
(And not everyone agrees on the meanings.)
Concurrency is the most general thing.
skids concurrent is probably the more overarching of the three.
jinx
jnthn All fools think the same. 14:55
No wait, the great minds one... :P
RabidGravy :)
jnthn The Supplies stuff is very much like the Reactive Extensions, as seen in .Net, Java, JavaScript, etc.
But with a Perl design :)
arnsholt jnthn: OOC, what's your plan for ord() where the character in question is an NFG synthetic grapheme? 14:56
timotimo you can't ord that
ord would force you into some "regular" composed form
jnthn arnsholt: That's unresolved as of yet; we may define .ord as a codepoint operation though, so it gets you the first codepoint as if you had NFG 14:57
timotimo hmm
jnthn and .ords may go away now given we have .NFC/.NFD and friends.
arnsholt Yeah, that makes sense
jnthn We should not leak the syntheitcs out
Because if we do and we start out with a global scheme, then someone, somewhere, will have the silly idea of comparing them.
arnsholt I remember reading an older revision of the Unicode synopse which said that ord() could return negative codes, which would just give us such a leaky abstraction 14:58
Yeah, it's just gonna end in terrible, terrible tears
jnthn And then we'll break this great evil on darkpan if we were to switch to a local scheme.
So yeah, better imho to just not let the problem happen.
I'm not quite sure what people's use cases for .ord usually are. 14:59
Oh, I did have one in C# at some point but...it was ASCII-centric too.
timotimo working with pieces of string "bytewise"
jnthn timotimo: Buf! :P 15:00
Or Uni :)
timotimo yeah
but ordat!
jnthn oh gosh :)
timotimo doesn't have to convert the whole thing
jnthn Do we have that? :)
timotimo (except of course god damn combining characters!)
only if you nqp:: that :) 15:01
because you want to write a fast json parser perhaps
jnthn Not sure we do :)
15:01 Ven joined
jnthn If you're that speed-obsessed you're probably better working with codepoints (read, native integers) and pulling bits out as Str :) 15:01
timotimo yeah
there's still room for improvement in JSON::Fast 15:02
like making junction unfolding work again
tadzik hey, contents of feather disks are gone now, right? 15:03
timotimo except for the backups, of course
tadzik hm
I lost access to my /home on my laptop 15:04
timotimo uh-oh
tadzik and everything I can think of that matters is backed up somewhere
except the one big piece of work I did and never pushed to github: my bachelor's thesis program
timotimo that can't be important
;(
tadzik I found some copy from April 29, which is probably as good as it gets, but I remember that I kept a backup on feather too
timotimo it used to be on feather?
mhm, mhm 15:05
well, "throw one away", right? :S 15:06
the backup situation of my desktop and laptop is pretty terrible
tadzik yeah :/ 15:07
the reviewer from the university got a copy on a CD too
timotimo thanks to btrfs COW and subvolumes, i could theoretically build one backup every 10 minutes :)
tadzik I'm pretty sure he never tried took it out of the envelope, but he may still have it...
skids
.oO(A file recovery app that outputs Zen platitudes.)
15:08
timotimo i think i ought to buy a new hard driveto store backups on
15:10 diana_olhovik_ left 15:13 gfldex joined 15:14 vendethiel left
itz_ with btrfs you *need* that backup every 10 mins ;) 15:18
timotimo hah
i haven't had problems with btrfs yet
i only recently heard "oh gosh, btrfs is so unstable, how do you even manage?"
itz_ it lost all my data a year or two back but maybe its better now 15:19
15:19 leont left
timotimo oh 15:20
itz_ that was a power loss on SSD
timotimo all the data :(
15:21 yvan1 left
tadzik my phone runs btrfs 15:23
timotimo neato
tadzik it works so far :P
15:24 osfameron is now known as DottoreOsf
timotimo how far away from home did it work yet? :P 15:24
15:24 DottoreOsf is now known as osfameron 15:27 lolisa left 15:28 ab5tract_ left 15:29 zakharyas left 15:32 cschwenz joined 15:37 rindolf left 15:42 muraiki joined, _mg_ left 15:56 FROGGS left, vendethiel joined 16:05 ggoebel joined 16:06 sftp left
japhb tadzik: What distro are you running on your phone? 16:08
colomon huh. latest Rakudo seems to have broken the command line parser? Seems like it’s throwing away quotes and splitting things up by spaces, so —artist=“Sol Foster” because artist = Sol and another argument Foster 16:09
… hmm, except that’s not consistent with what I’m seeing 16:10
16:13 rindolf joined
colomon arrrgh 16:13
16:14 eli-se joined
TimToady um, shell not smart about smart quotes? 16:14
colomon no
16:14 rurban left
colomon that’s not a cut-n-paste, in my shell it’s right 16:15
At the moment, I’m starting to worry that it’s a pre-comp bug...
TimToady shouldn't you worry about that before it's compiled? <ba dump bumb>
TimToady goes to get another cuppa in hopes it will tamp down the free association 16:16
colomon gist.github.com/colomon/d91cf51c0ca3ec6a636f 16:17
so, as far as I can tell those should both be the same version of the source. 16:18
PerlJam same perl6? Maybe one of them is old 16:19
hoelzro o/ #perl6
masak \o
timotimo orzleoh \o
colomon and my command line arguments are the same, the only difference is one uses perl6 and calls the script, the other uses the panda-installed version 16:20
This is perl6 version 2015.03-321-gaa99dd4 built on MoarVM version 2015.03-133-ga300558
how do i precompile by hand?
timotimo perl6 --target=mbc --output=...moarvm foo.pm 16:21
TimToady --ll-exception might also tell you moar
timotimo in theory, a problem within the pregenerated launcher scripts could exist 16:22
oh
colomon: you're using --author?
colomon yes
that’s not the (entire) problem
timotimo that could be interpreted by the launcher to be a matcher for which module to load
and it'd likely swallow it up 16:23
colomon here’s the latest, author-free version of the issue gist.github.com/colomon/d9afb74d910000d0d44c
note that the launcher (?) based one isn’t properly handling spaces in a filename, but the perl6 launched one is. 16:24
and I switched to a panda-look-based version of the source, which should mean it’s exactly the same as the panda installed version. 16:25
TimToady does someone have a $* instead of a "$@" somewhere?
PerlJam colomon: what OS are you on? 16:27
colomon Ubuntu
arnsholt TimToady's suggestion sounds plausible, I think 16:28
colomon my code is sub MAIN(*@files, :$title?, :$artist?, :$album?, :$track?)
16:28 pecastro left 16:29 cschwenz1 left
TimToady you could print out @*ARGS at the top to see if it's getting to P6 correctly, since MAIN doesn't run till later 16:29
colomon also, wasn’t —author, it was —artist
timotimo mhm 16:30
TimToady but I'm betting something is splitting the args before your program ever starts
colomon TimToady++ (though that’s harder to do with panda-installed stuff)
japhb The perl6 wrapper shell script? 16:31
TimToady I did a recursive grep for '\$\*$' in rakudo's directory and only found configuration and 3rdparty files that had $* at the end of a lint
PerlJam the wrapper uses "$@" though
TimToady *line
japhb PerlJam: That's good at least. 16:32
TimToady why does the could-not-open error message still have backslashes? 16:33
PerlJam TimToady: that's why I was asking about the OS, I was thinking it was a Macism or Windowsism or something
colomon TimToady: yes, it’s splitting the args before my program starts.
me-tags "$@" 16:34
geekosaur if this is the freedesktop stuff then it's braindead and you won;t be able to use quoting to make it behave
colomon errr… huh
PerlJam colomon: could you have *another* indirection besides just the normal perl6 wrapper?
colomon PerlJam: it’s panda doing the indirection
TimToady if it's splitting the args, how is Taglib getting the whole filename, with extra backslashes? 16:35
colomon gist.github.com/colomon/026184091012bf436995
16:35 FROGGS[mobile] joined
PerlJam colomon: what's in /home/colomon/.rakudobrew/bin/../moar-HEAD/install/share/perl6/site/bin/rename-tags ? 16:36
colomon here’s the arg dump:
gist.github.com/colomon/b79b23f9852f40668b2f
eli-se hi 16:37
PerlJam eli-se: greetings
colomon PerlJam: gist.github.com/colomon/be51d3c88133393ced5a is the file you have requested 16:38
FROGGS[mobile] colomon: the wrapper in site/bin is generated by CUR::Installation
TimToady what happens if you use ~/Albums/Jerry_McCarthy/"00001-A Blast of Reels from Jerry McCarthy of Scartaglin.mp3" instead? 16:39
colomon just in case anyone is wondering what the file is soundcloud.com/patrick-cavanagh-2/...rthy_reels
TimToady: that works “normally" 16:40
geekosaur you aren't re-quoting stuff for that shell call
PerlJam aye, what geekosaur said
geekosaur used to ab use quotemeta often as Q) for that in perl5 :)
colomon that’s not “me”, that’s panda / rakudo’s script installation code 16:41
PerlJam sure, but that's bound to be the problem : )
er, :)
FROGGS[mobile] colomon: feel free to provide patches 16:42
TimToady use run instead?
colomon FROGGS[mobile]: :p
FROGGS[mobile] :o)
or at least ticket it... 16:43
colomon where?
FROGGS[mobile] RT
colomon it’s a rakudobug and not a pandabug? 16:44
FROGGS[mobile] aye
colomon is somewhat suspicious that figuring out how to coherently describe the bug might be harder than fixing it. 16:45
geekosaur "strings that may contain spaces or shell special characters are being intepolated directly into a shell call with no quoting applied" 16:46
tadzik japhb: SailfishOS
TimToady there appears to be no reason it should be using shell rather than run
and run would bypass the shell reparse
someone just got lazy 16:47
colomon afk # midday nomming
geekosaur indeed
dalek ecs: b26bc2c | (Stéphane Payrard)++ | S99-glossary.pod:
more entries to S99
16:51
TimToady looks like it comes from ./src/core/CompUnitRepo/Local/Installation.pm
heh, that line also says "exit shell(...).exit;" 16:57
geekosaur yes, I was wondering if that thought it was recovering the exit-status part (as opposed to signal part) of the result or something 16:58
TimToady is this something that is tested by the roast, such that if I specutalatively change it to a run, it woudl be spectested? 16:59
17:01 Foxcool left
TimToady well, shell is definitely wrong there, in any case 17:01
testing... 17:02
well, spectesting, dunno if that actually tests this code
also didn't bother to remove the redundant exit 17:03
if it is redundant, which it mightn't be
but if it's not, .exit is badly named
17:04 vendethiel left 17:05 espadrine left
TimToady badly named attribute, actually, should probably be $.exitcode 17:06
17:06 Foxcool joined
timotimo Cool totally needs a method exit 17:07
0.exit, yeah! 17:08
dalek kudo/nom: 2394bf2 | TimToady++ | src/core/CompUnitRepo/Local/Installation.pm:
missed a Can'tMeta -> CannotMeta
17:09
17:11 alini left
masak oops, sorry about that. 17:12
TimToady++
as your friendly neighborhood release manager, I'd like to remind people about the upcoming release.
it's on Thursday.
please tend to the ChangeLog, the ROADMAP, and each other. :> 17:13
TimToady oops, wrong message on that message
that was the shell->run fix
masak quick, --amend while no-one is looking! :P
masak is such a bad influence
TimToady has had terrible luck with --amend 17:14
masak hehe
I liked --amend so much, I made it a subcommand locally
as in `git amend <files>`
TimToady is there something you have to do after that to actually include the files? 17:15
17:15 eli-se left
TimToady 'cause when I do that, the amendments don't actually get checked in 17:15
masak TimToady: yes, same principle with `git add` before `git commit --amend` as before an ordinary commit.
17:16 konsolebox joined
TimToady doesn't look very principled to me 17:16
masak either that, or you list the files explicitly, as in `git commit --amend <files>`
dinner &
17:20 araujo left
dalek kudo/nom: 3b80788 | TimToady++ | src/core/CompUnitRepo/Local/Installation.pm:
don't use shell where run is more better
17:21
kudo/nom: 013cc02 | TimToady++ | /:
Merge branch 'nom' of github.com:rakudo/rakudo into nom

Seems like I need to merge to get an amendment upstream. I could be rwong...
TimToady I think my 'gp' alias that rebases blows away amendments 17:22
is probably what I've been running into repeatedly 17:23
17:23 vendethiel joined
TimToady colomon: I think I fixed it for you, but I dunno how upstream that fix is wrt your pandafication. 17:24
17:27 dakkar left
dalek rl6-roast-data: 5e42407 | (Heiko Jansen)++ | perl6_pass_rates.csv:
Remove partial data from incomplete run

Once more with feel^-H^-H^-H backspace....
17:27
rl6-roast-data: d66e089 | (Will Coleda)++ | perl6_pass_rates.csv:
Merge pull request #7 from heikojansen/patch-1

Remove partial data from incomplete run
17:28 konsolebox left 17:30 grettis joined, leont joined 17:34 Sysaxed joined
Sysaxed so Larry's talk is _still_ not there, right?... 17:35
Ven Sysaxed: I think it's one of *these* talks. (a dead talk) 17:37
I think nearly a third of all the talks were not recorded "correctly"
Sysaxed :(
ehh, well, okay
still I wonder how did that happen 17:38
I've read their article about recording stuff
Ven no idea, but it's pretty sad. A *ton* of recording were lost :(
Sysaxed still I don't understand how something could be missing
17:39 lizmat joined
dalek pan style="color: #395be5">perl6-examples: 06b1612 | paultcochrane++ | categories/perlmonks/weighted-roll-731696.pl:
[perlmonks] fix typo in title
17:40
Sysaxed and no one bothered to record it with a smartphone or something, right? :)
RabidGravy oh well
Sysaxed however, Larry's talk is not the only video I'd love to see, eh
17:43 telex left
Sysaxed I remember somebody said on this channel "your talk is currently being processed"... 17:43
several months ago
17:44 telex joined
timotimo ;( 17:45
Sysaxed cannot find it in the logs though
17:45 Rounin joined 17:48 eli-se joined
dalek c: 94a6654 | paultcochrane++ | util/missing-methods.p6:
Remove perl6 shebang

It's not necessary in the missing-methods utility script; one can simply call the script with perl6.
17:49
c: ef84a44 | paultcochrane++ | / (3 files):
Merge branch 'master' of github.com:perl6/doc
c: f6a1eb5 | paultcochrane++ | lib/Type/Mu.pod:
Document Mu.take()
17:50 FROGGS joined
[ptc] FROGGS: quick question: is META6.json still current for modules? Or has it been replaced by META.info? 17:51
FROGGS: the spec still mentions META6.json and I was wondering if it needed updating
FROGGS [ptc]: META6.json will be the new one
[ptc] ah, ok
FROGGS especially CPAN will care about META6.json only, while panda might support both for a while 17:52
[ptc] good to know, thanks. At least now I won't update things incorrectly :-)
FROGGS :o)
17:54 kaare__ left 17:55 kaare__ joined 17:58 _mg_ joined
dalek rl6-roast-data: 86a723f | coke++ | / (9 files):
today (automated commit)
17:58
[Coke] (larry's talk) I'm surprised 5 and 6 haven't banded together to just record larry all the time now. 17:59
18:00 Ven left
lizmat [Coke]: we thought it *was* being recorded :-( 18:00
especially in the main hall, we thought it would work :-(
DrForr NLPW failure? 18:01
[Coke] oh, i thought this was referring to a previous talk.
[Coke] was not trying to give lizmat a hard time about anything!
FROGGS El_Che: do you anybody we could ask regarding to larry's talk at the fosdem?
El_Che: do you know*
japhb Actually, I'm with [Coke] on this one. I can't imagine the Perl universe being short of Extremely Paranoid Sysadmins who have backup plans for their backup plans ... and thus have like 6 recording devices at every major talk. :-) 18:02
Clearly lizmat is just too trusting. ;-)
18:03 konsolebox joined
japhb is suddenly reminded of the XKCD re: sysadmin v. terrorists 18:03
I tried to explain to a "normal" developer the contents of my SRE backpack, and they looked at me like I had grown extra limbs 18:04
18:08 sftp joined
lizmat not NLPW, but FOSDEM (at least so far :-( ) 18:09
NLPW I *hope* not, Theo should know
18:11 vendethiel left 18:16 zeleiadi joined
dalek ast: 59f78ba | TimToady++ | S03-operators/assign.t:
Can'tMeta -> CannotMeta
18:17
ast: 7953376 | TimToady++ | S (6 files):
.exit is now .exitcode
kudo/nom: c35aa01 | TimToady++ | src/core/ (2 files):
should not have an exit method that doesn't
18:18 nine joined, nine left, nine joined 18:20 zlad joined
TimToady this change unhides a failure in S17-procasync/basic.t where the exit code was being coerced from Any to 0 and being taken as success 18:20
(exitcode is now initialized to -1 to prevent such a confusion) 18:21
FROGGS nqp-m: say(nqp::join("\n", ["foo", 42, "bar"]))
camelia nqp-moarvm: OUTPUT«This representation (P6int) cannot unbox to a native string␤ at /tmp/gcBkmuUnzY:1 (<ephemeral file>:<mainline>:39)␤ from gen/moar/stage2/NQPHLL.nqp:1279 (/home/camelia/rakudo-inst-2/share/nqp/lib/NQPHLL.moarvm:eval:190)␤ from gen/moar/stage2/NQPHLL.nqp:1…»
FROGGS the exitcode change needs to be changed in panda as well 18:24
TimToady lizmat: any idea why c35aa01 doesn't deprecate .exit method despite use of DEPRECATE()?
FROGGS: I put in a temporary exit method, which seems to work, but doesn't actually deprecate 18:25
FROGGS yeah, just spotted it, phew :o)
lizmat looking
18:26 spider-mario joined, cschwenz left
FROGGS TimToady: maybe because we don't have 2015.04 yet? 18:26
18:26 cschwenz joined
TimToady oh, could be 18:27
lizmat yes, that is the reason
also very interesting: DEPRECATED('Proc::Status.exit', |<2015.04 2015.09>);
2015.09 ?
so we're going to remove deprecations in Sep ? 18:28
FROGGS the plan seems to be that at that point we are aiming for the RC1
cschwenz September *is* before Christmas…. :-P
FROGGS or RC0
cschwenz FROGGS++
18:29 vendethiel joined
dalek kudo/nom: 71ca036 | TimToady++ | src/core/OS.pm:
deprecate .exit now, not next month :)
18:29
18:32 pecastro joined 18:37 _mg_ left
dalek kudo/nom: 44d40c2 | lizmat++ | src/core/ (13 files):
Deprecate everything at 2015.09 at the latest
18:38
ecs: 372ff84 | (Steve Mynott)++ | S15-unicode.pod:
uninames is uniname
18:39
18:39 _mg_ joined
itz_ can someone sanity check that ^^^^ 18:39
[Coke] the code lies: 18:40
m: say uniname("A\x[00]¶\x[2028,80]")
camelia rakudo-moar 013cc0: OUTPUT«LATIN CAPITAL LETTER A␤»
[Coke] but there's 5 lines of output in the spec.
itz_ uninames maybe is supposed to return multiple names?
[Coke] plus there are many copies of uninames just below that one. 18:41
FROGGS itz_: yes
itz_ ok I'll revert
itz--
[Coke] m: say uninames("A\x[00]¶\x[2028,80]") # this don't work, though.
camelia rakudo-moar 013cc0: OUTPUT«5===SORRY!5=== Error while compiling /tmp/IGHSqhIMa0␤Undeclared routine:␤ uninames used at line 1. Did you mean 'uniname', 'univals'?␤␤»
TimToady NYI
18:41 _mg_ left
FROGGS but LHF 18:41
TimToady foorshoor 18:42
dalek ecs: b28668d | (Steve Mynott)++ | S15-unicode.pod:
revert
18:42 lizmat_ joined, lizmat left 18:44 yvan1 joined
[Coke] hacks on it for a bit. 18:46
> uninames("A\x[00]¶\x[2028,80]") 18:48
LATIN CAPITAL LETTER A NULL PILCROW SIGN LINE SEPARATOR
18:48 diana_olhovik joined
[Coke] > uninames("A\x[00]¶\x[2028,80]").perl 18:49
("LATIN CAPITAL LETTER A", "NULL", "PILCROW SIGN", "LINE SEPARATOR", "")
looks like a bug in that uniname doesn't emit <control-0080> there. 18:50
dalek line-Perl5: c85c4ce | (Stefan Seifert)++ | lib/Inline/Perl5.pm6:
Tweak performance by using correct types

Thanks to lizmat++ for pointing this out
kudo/nom: eb86621 | coke++ | src/core/ (2 files):
Implement basic uninames on moar
18:51
ast: cdf7529 | coke++ | S15-unicode-information/uniname.t:
Unfudge now passing tests for uninames
18:52
[Coke] thankfully the tests were very forgiving. :) 18:53
18:54 diana_olhovik left
dalek pan style="color: #395be5">perl6-examples: 944a264 | (Steve Mynott)++ | categories/cookbook/01strings/01- (3 files):
simple case, unicode and soundex examples
18:54
18:54 zeleiadi left
pan style="color: #395be5">perl6-examples: cf85a86 | (Steve Mynott)++ | categories/perlmonks/weighted-roll-731696.pl:
Merge branch 'master' of github.com:perl6/perl6-examples
[Coke] wow. rt.perl.org/Ticket/Display.html?id=122471 - bug was already reported by me in august of last year.
18:54 zlad left 18:57 diana_olhovik joined 19:02 zeleiadi joined 19:03 cschwenz left
itz_ m: constant pi="3.2"; say pi 19:06
camelia rakudo-moar 71ca03: OUTPUT«3.2␤»
itz_ should that be possible?
19:06 konsolebox left
moritz sure 19:07
geekosaur it's not a keyword, it's a constant defined in an outer scope
you can probably use scope escape games to get at the outer one
moritz it's just a redeclaration in an inner scope
m: constant pi = 3; say CORE::pi 19:08
camelia rakudo-moar 71ca03: OUTPUT«3.14159265358979␤»
TimToady m: constant pi = 3; say SETTING::pi 19:10
camelia rakudo-moar 71ca03: OUTPUT«(Any)␤»
TimToady thinks that SETTING should include its outers
m: constant pi = 3; say SETTING::OUTERS::pi
camelia rakudo-moar 71ca03: OUTPUT«3.14159265358979␤»
nine
.oO(TimToady wants to change the language to mask him misremembering something)
19:11
TimToady m: constant pi = 3; say SETTING::LEXICAL::pi
camelia rakudo-moar 71ca03: OUTPUT«3.14159265358979␤»
TimToady nine: I expected it to say (Any) there 19:12
I just don't like it
19:12 tinita_ is now known as tinita
TimToady well, probably not important, but I don't see much use case for getting things from the SETTING exclusive of the CORE 19:13
m: constant pi = 3; say UNIT::OUTER::pi
camelia rakudo-moar 71ca03: OUTPUT«(Any)␤»
TimToady m: constant pi = 3; say UNIT::OUTERS::pi
camelia rakudo-moar 71ca03: OUTPUT«3.14159265358979␤»
TimToady and our usage of the term "setting" refers to the inclusion of CORE 19:14
masak m: constant pi = 3; say SETTING::LEXICAL::pi - pi 19:16
camelia rakudo-moar 71ca03: OUTPUT«0.141592653589793␤»
masak m: module Foo { my $x = 42 }; say $Foo::LEXICAL::x
camelia rakudo-moar 71ca03: OUTPUT«(Any)␤»
masak doesn't grok LEXICAL
TimToady Foo is not a lexical scope 19:20
it should probably be complaining that a package doesn't have a LEXICAL 19:21
skids tries to muster the patience to figure out how to put another PR in from a newer rakudo checkout than his current PR without including the ff in the PR. 19:22
19:22 synbot6 joined
[Coke] if you're doing a lot of PRs, different branches helps, no? 19:23
skids Not sure. If I create a branch, it will be at my current checkout, no?
[Coke] you can branch from anywhere.
skids I can't see anywhere, only the point at which I created the fork. 19:25
(and back from there) 19:26
tony-o skids: git branch -b <branch id> <commit id you want the branch to copy> 19:27
sorry - git checkout -b <branch id> <commit id>
[Coke] You probably should also be keeping your fork up to date, no? 19:28
19:28 virtualsue joined
skids My impression was, if you do that, then you end up sending merge commits along with all your PRs and it's a pain on the receiving end. 19:28
tony-o skids: are you doing rebase or merging with upstream/master ? 19:33
19:36 yqt joined 19:37 brrt joined, Rounin left
skids tony-o: I have no clue what I'm doing, if it isn't obvious. 19:39
tony-o skids: check this link out - robots.thoughtbot.com/keeping-a-gi...rk-updated 19:40
19:43 MARTIMM joined
skids Yeah, I've done rebases before but not with hanging PRs. So I don't know the consequences. 19:44
19:45 virtualsue left
tony-o help.github.com/articles/resolving...it-rebase/ 19:50
19:55 rindolf left 19:56 zakharyas joined, rindolf joined
skids Ok that turned out to be less painful than I feared. 19:57
19:59 rindolf left
dalek ecs: 10347ec | TimToady++ | S02-bits.pod:
clarify that SETTING includes its outers
20:03
kudo/nom: 91156e3 | TimToady++ | src/core/PseudoStash.pm:
SETTING should chain outward to CORE
kudo/nom: a94d687 | TimToady++ | src/core/PseudoStash.pm:
some copy/pastos on WHOness
TimToady there are currently no tests of how SETTING bahaves when SETTING is outside of CORE, btw 20:04
not entirely sure what the best way to test that is...use the RESTRICTED setting maybe?
TimToady notes that RESTRICTED is entirely unspeculated 20:05
and that rakudo does not use alternate settings to implement -n and -p 20:07
japhb Is that way to handle -n and -p required or just an implementation detail? 20:12
TimToady well, it will affect what SETTING means 20:14
and doing -n and -p that way would give me more confidence that settings actually work right 20:16
masak are -n and -p the only things which affect what SETTING means in that way?
TimToady any alternate setting would do so, including RESTRICTED, as we saw above
colomon TimToady++ 20:17
# nothing like getting back from lunch and discovering things now work again.
TimToady :D 20:18
FROGGS jnthn: I think my problem boils down to: deserialize object O from SC A, create SC B and serialize object O with it 20:19
jnthn: I did try nqp::clone'ing the object, but that does not seem to help either
TimToady m: say SETTING::pi 20:20
camelia rakudo-moar a94d68: OUTPUT«3.14159265358979␤»
TimToady YäY
FROGGS can somebody please try this locally? perl6 foo 20:22
(with foo being not there)
TimToady > perl6 nonesuch
Could not open nonesuch. Malformed UTF-8 at line 1 col 21
FROGGS yeah, same here
that feels like a regression
20:23 andreoss joined
PerlJam FROGGS: I get "Could not open foo. Failed to open file: no such file or directory" with This is perl6 version 2014.12-117-g2542c3d built on MoarVM version 2014.12-4-g7e95c05 20:23
andreoss can a whatever value be a part of multi sub?
FROGGS PerlJam: okay, now we know it *is* a regression, thanks :o) 20:24
leedo i also get the UTF-8 message, on a fresh rakudo/moar
PerlJam aye
TimToady andreoss: your question doesn't seem quite well-formed; do you mean 'can I pass a whatever to a multi sub?' or 'can I write a signature that recognizes a whatever?' 20:25
andreoss I meant in a signature.
TimToady just use the Whatever type
andreoss multi x(1, *, *) { 0 }
dalek ast: f905674 | skids++ | S04-statements/do.t:
Fix do-once result value test to properly test what it should.
TimToady m: multi x(1, Whatever, Whatever) { 0 }; say x(1,*,*) 20:26
camelia rakudo-moar a94d68: OUTPUT«0␤»
FROGGS m: sub foo(WhateverCode &c) { &c(2) }; say foo(* ** 2)
camelia rakudo-moar a94d68: OUTPUT«5===SORRY!5=== Error while compiling /tmp/P38qjiMqN2␤Calling foo(WhateverCode) will never work with declared signature (WhateverCode &c)␤at /tmp/P38qjiMqN2:1␤------> 3sub foo(WhateverCode &c) { &c(2) }; say 7⏏5foo(* ** 2)␤»
FROGGS should that work?
TimToady &c doesn't return a WhateverCode 20:27
andreoss WhateverCode implies any arity?
TimToady m: sub foo(WhateverCode $c) { $c(2) }; say foo(* ** 2)
camelia rakudo-moar a94d68: OUTPUT«4␤»
TimToady the type on a &c declaration says what the return type of c is, not what c is 20:28
generally you just want &c there anyway, so you don't overspecify that the user *must* use WhateverCode to implement the closure
m: sub foo(WhateverCode $c) { $c(2) }; say foo({$_ ** 2}) 20:29
camelia rakudo-moar a94d68: OUTPUT«Type check failed in binding $c; expected 'WhateverCode' but got 'Block'␤ in sub foo at /tmp/UJ8O13BUpn:1␤ in block <unit> at /tmp/UJ8O13BUpn:1␤␤»
20:30 nbdsp joined
TimToady and if you want to manipulate the WhateverCode as a value to do further dwimmery, you probably don't want it in &c anyway, but in $c 20:30
nbdsp class B { method methB { say CALLER::<self>.WHAT.perl } }; class D is B { method methD { self.methB } }; D.new.methD; B.new.methB; 20:31
andreoss can be arity be preserved with Whatever? x(1, Whatever, Wharever) is the same as x(1, Whatever)?
PerlJam sees a future FAQ in the making
20:31 FROGGS[mobile] left
nbdsp m: class B { method methB { say CALLER::<self>.WHAT.perl } }; class D is B { method methD { self.methB } }; D.new.methD; B.new.methB; 20:31
camelia rakudo-moar a94d68: OUTPUT«Mu␤Any␤»
TimToady andreoss: those are not the same
m: multi x(1, Whatever, Whatever) { 0 }; say x(1,*) 20:32
camelia rakudo-moar a94d68: OUTPUT«5===SORRY!5=== Error while compiling /tmp/RBD6rWYcaT␤Calling x(Int, Whatever) will never work with any of these multi signatures:␤ (Int $ where { ... }, Whatever, Whatever)␤at /tmp/RBD6rWYcaT:1␤------> 3lti x(1, Whatever, Whatever) { 0 }; s…»
nbdsp Greetings! I wonder can one reliably use this difference to say whether a class method is called from within a class or outside a class?
TimToady nbdsp: why not use a private method in that case, and then it isn't even visible from outside 20:33
20:33 alini joined, eli-se left
TimToady if you also want a publicly visible method of the same name, you can do that 20:34
andreoss m: multi z(1, Whatever) { 0 } ; multi z(Whatever, 0) {1}; say z(1,0);
camelia rakudo-moar a94d68: OUTPUT«5===SORRY!5=== Error while compiling /tmp/_MVavbU6A_␤Calling z(Int, Int) will never work with any of these multi signatures:␤ (Int $ where { ... }, Whatever) ␤ (Whatever, Int $ where { ... })␤at /tmp/_MVavbU6A_:1␤------> 3) { 0 } ; mul…»
TimToady the namespaces are disjoint
nbdsp TimToady: I want to emulate protected methods so that methB caould be called from D, but not from outside the class
TimToady protected methods are a bad idea
even Bjarne thinks so 20:35
nbdsp Why? E.g. in class Exception - the exception string can be set by derived classes, but not from outside.
itz_ m: sqrt(3+4i) 20:36
camelia ( no output )
itz_ m: say sqrt(3+4i)
camelia rakudo-moar a94d68: OUTPUT«2+1i␤»
pmichaud_ hello, all 20:37
20:37 pmichaud_ is now known as pmichaud
pmichaud a pmichaud time update: robotics ends this week. I'm full-time #perl6 starting Apr 28. 20:37
muraiki w00t
20:38 darutoko left
jnthn FROGGS: If the object was once in SC A then it will be marked as such. Further, the whole object graph will be recursively, so a clone at the top level won't help. 20:38
FROGGS hmmmm
20:38 andreoss left
FROGGS I don't even know if that is my problem 20:39
skids \o/ pmichaud++
FROGGS pmichaud: \o/
pmichaud hello, all. :)
FROGGS jnthn: though, I seem to be able to reproduce the issue outside of the setting now
hi :o)
jnthn FROGGS: It probably is 20:40
El_Che FROGGS: I just sent a friendly reminder to a few fosdem organizers I know
jnthn FROGGS: Because it means if you serialize mention *any* of the objects you deserialized from A in another serialization context B, then it's going to emit a cross-reference and then get upset when you try and deserialize. 20:41
itz_ m: say sqrt(i*i)
camelia rakudo-moar a94d68: OUTPUT«6.12323399573677e-17+1i␤»
jnthn o/ pmichaud
FROGGS El_Che++
El_Che: please keep us posted :o)
jnthn pmichaud: iiuc, you'll be in Oslo? :)
FROGGS jnthn: exactly... and since I overwrite the file that contained SC A...
jnthn FROGGS: That's the way SCs are designed to work. :) 20:42
(To cross-reference)
That's the "bounded" in bounded serialization.
About nbdsp's question on self about, no, you can't reliably reach self using CALLER; it probably should never work already
FROGGS yeah, BS :o)
jnthn (Because things have to be marked "is dynamic" to be visible through CALLER) 20:43
El_Che FROGGS: it seems to be in limbo: video.fosdem.org/2015/STATUS.txt 20:44
FROGGS: Not with the posted ones, not with the failures. Sigh
jnthn FROGGS: So your only good bet is to build a fresh data structure.
FROGGS jnthn: yes, I'm copying now by doing 'from-json to-json' >.< 20:45
jnthn And that solves the issue?
nbdsp jnthn: the code I cited is not reaching caller, but there are difference between trying it from within the class and from outside (different reported types of CALLER::<self>.WHAT)
FROGGS jnthn: we'll see... compiling right now
jnthn nbdsp: I'd not rely on that. :) 20:46
20:46 xfix left
pmichaud o/ jnthn 20:46
jnthn pmichaud: Robotics prep going well? 20:47
FROGGS nbdsp: isnt the cleanest way to make a multi method foo(::?CLASS:D) and multi method foo(::?CLASS:U) ?
nbdsp: so you'd know if it was called on the class or an instance
jnthn FROGGS: I think he wants to know the identify of the caller 20:48
FROGGS ohh
pmichaud jnthn: it's hard to say. We leave for the championship tonight (in about 3.5 hours)
jnthn pmichaud: Oh wow, such soon!
pmichaud yes, competition starts tomorrow
FROGGS jnthn: hmpf, the from-json to-json "trick" did not help either... 20:49
I'll continue tomorrow...
pmichaud by saturday, robotics 2014 season is finally _over_.
FROGGS pmichaud: good luck!
jnthn :)
Have fun with it, and good luck!
FROGGS gnight #perl6 20:50
20:50 FROGGS left
jnthn About OSDC.no, I'll be there in Oslo from before the conf 'cus teaching work. And I'll be around until the 11th late afternoon or early evening. 20:50
20:50 zakharyas left
pmichaud I arrive morning of may 8, depart morning of may 12 20:50
jnthn OK :) 20:52
20:54 eli-se joined
skids My PR from today would add this: 20:56
$ ./perl6 -e 'fail(X::NYI::Available.new(:feature<toads> :available<frogs::notquite ribbit noise::croak>))' # Unhandled exception: Please install frogs::notquite, ribbit or noise::croak for\
toads support.
</advertisement> :-) 20:57
lizmat_ .botsnack 20:59
yoleaux :D
synbot6 om nom nom
20:59 dolmen joined
masak .botsnack 21:00
yoleaux :D
synbot6 om nom nom
masak wow, two bots snacking.
skids Wonder if we can get them to fight for the last botsnack. 21:01
synbot6 om nom nom
skids Ah, damn, I guess that's a lost opportunity. 21:02
skids didn't know synbot6 could jump that high.
21:03 MARTIMM left
lizmat_ .bot snack 21:03
21:03 lizmat_ is now known as lizmat
[Coke] arglebarglebotsnackgarble. 21:04
synbot6 om nom nom
pmichaud I'm afk again, back on Monday.
skids rotten 10 month old botsnack from between the couch cushions.
synbot6 om nom nom
jnthn Bet you won't eat this bоtsnack! 21:05
Hah!
lizmat botsnack! ? 21:07
synbot6 om nom nom
lizmat botsnack!
synbot6 om nom nom
dalek pan style="color: #395be5">perl6-examples: 7db1122 | (Steve Mynott)++ | categories/cookbook/0 (3 files):
simple complex nos, base convert and tweaking
21:10
vendethiel \o/
lizmat commute to home& 21:12
21:12 lizmat left, skids left
nbdsp Could someone tell please why this difference in CALLER::<self>.WHAT type in the following code? 21:12
m: class B { method methB { say CALLER::<self>.WHAT.perl } }; class D is B { method methD { self.methB } }; D.new.methD; B.new.methB; 21:13
camelia rakudo-moar a94d68: OUTPUT«Mu␤Any␤»
jnthn nbdsp: If I had to guess, it's an implementation accident that hinges on a method having a self lexical (though in that case its use has been optimized away) leading to a Mu, and a scope with no lexical and so the pseudo-hash just does what a Hash does and hands back a Scalar container, which by default contains an Any. 21:15
nbdsp: You can run with --optimize=off or so to see if I'm right about the "optimized away" bit. 21:16
nbdsp Ohh. I guess this is not reliable indicator then. Thanks. 21:17
jnthn Not at all.
If I wanted to implement some kinda protected thing robustly I'd probably look at how private methods work. 21:18
(In the MOP)
Writing a module that makes things automatically turst their subclasses may be possible. 21:19
Well, it'll be posible, but it may be easily-ish possible
21:20 brrt left
nbdsp With MOP it probably can be done. 21:20
21:23 virtualsue joined, nbdsp left
japhb
.oO( Use the source^WMOP, Luke! )
21:24
21:28 diana_olhovik left
psch i'm confused :/ 21:28
i'm trying to properly deal with .WHAT on a Java interop wrapper
21:29 dolmen left
psch and it at least doesn't die anymore 21:29
ugh
21:30 muraiki left
psch «say System.WHAT» gives me e.g. "org.perl6.nqp.sixmodel.TypeObject@1e3d098c" 21:31
and «print System.WHAT» gives me e.g. "__P6opaque__68@71950f04"
i'm installing the CR for the Java .toString() for both .gist and .Str
so it seems to work ok-ish in &say, even if it's not particularly useful like that 21:33
welp, i'm not sure anymore if i'm trying anything sensible anyway 21:36
jnthn .tell nbdsp I did a quick MOP hack... gist.github.com/jnthn/d8c27741c7b0d25f340d 21:37
yoleaux jnthn: I'll pass your message to nbdsp.
jnthn psch: print should probably be warning about an undefined value...
m: say Int; 21:38
camelia rakudo-moar a94d68: OUTPUT«(Int)␤»
jnthn m: print Int;
camelia rakudo-moar a94d68: OUTPUT«use of uninitialized value <element> of type Int in string context in block <unit> at /tmp/vr1UghWW61:1␤␤»
psch jnthn: right, but doesn't that mean that i have to hook this up somehow differently in the first place?
jnthn psch: Well, it hangs off a method Str being a multi method that only accepts :D iirc 21:39
And the default set of candidates are inherited from Any
masak 'night, #perl6 21:41
psch g'night masak
jnthn figures he'd better rest also
o/
psch jnthn: and :D depends on .defined, which i need to hook up to the java class iiuc?
jnthn psch: No, it means "not a type object" 21:42
psch right
jnthn e.g. .CONCRETE
psch nqp::isconcrete at least seems to work 21:44
so i have to build a CodeRef that i can graft onto the JavaHOW that calls that i guess
21:44 RabidGravy left
psch hrm, there's so many wonky spots left in jvminterop 21:44
TimToady I thought it was .DEFINITE at the higher level
jnthn oops, it is 21:45
TimToady but nqp::isconcrete works too
psch anyway, thanks and g'night jnthn
jnthn TimToady++ # confirming I should actaully get off the keyboard and go to bed :)
'night
TimToady o/
japhb o/
psch i'll have to dig deeper into the our MOP too, i think, considering we probably want to support subclassing from Java to Perl 6
TimToady digs deeper into the NAP... & 21:46
psch what other methods are there that should exist? HOW, WHAT, WHO etc. aren't methods and go through to nqp ops directly afaiu, so i kinda-sorta got those already 21:50
i guess .gist is somewhat sensible to support
oh, WHICH too 21:51
21:55 gfldex left 21:57 kaare__ left 21:58 virtualsue left 22:08 zeleiadi left 22:12 Sysaxed left 22:13 alini left 22:19 yqt left 22:41 eli-se left 22:54 bowtie joined, bowtie is now known as Guest29111 22:57 cognominal joined 22:58 flussence left 22:59 flussence joined 23:01 Guest29111 left 23:02 skids joined 23:03 rmgk is now known as Guest92113, rmgk_ joined, Guest92113 left, rmgk_ is now known as rmgk 23:06 bowtie_ joined 23:09 bjz left 23:13 bowtie_ left 23:18 bowtie_ joined 23:41 LLamaRider joined 23:43 leont left 23:45 bowtie_ left 23:50 bowtie joined 23:51 bowtie is now known as Guest88055 23:55 Guest88055 left