»ö« Welcome to Perl 6! | perl6.org/ | evalbot usage: 'perl6: say 3;' or rakudo:, niecza:, std:, or /msg camelia perl6: ... | irclog: irc.perl6.org | UTF-8 is our friend!
Set by sorear on 25 June 2013.
timotimo not bad. 00:00
tadzik and then people stared to exploit it :)
timotimo i'm kinda glad the dotfiles in ~/ are getting somewhat more organized these days
with .share and .config and such
tadzik yeah
useful if you actually use hidden files and dirs :)
timotimo aye.
tadzik also, I'm glad we still have dotfiles, and not everything is in gnome-registry-thingy 00:01
timotimo yes.
tadzik I don't even remeber its name, so hopefully it's dead :P 00:02
timotimo gconf is dead
dconf is "the new hotness"
tadzik oh, gconf :)
mumble grumblie
timotimo i think dconf is in some way less sucky
but i don't know much about it
tadzik I'd rather see a nice API which does plaintext files mangling under the hood
so if you need to access it from cat and grep, it still works
timotimo aye. 00:03
dconf is a simple key-based configuration system. Keys exist in an unstructured database (but it is intended that keys that logically belong together are grouped together).
Change notification is supported. ← that's something that's not as trivial with text files
Stacking of multiple configuration sources is supported. ← that's pretty cool actually 00:04
and it's integrated with policykit
i'm going to bed now. gnite #perl6! 00:13
colomon o/ 00:15
segomos [A 00:51
japhb__ .u block 02:15
yoleaux U+0017 END OF TRANSMISSION BLOCK [Cc] (␗)
U+2417 SYMBOL FOR END OF TRANSMISSION BLOCK [So] (␗)
U+2580 UPPER HALF BLOCK [So] (▀)
lue r: say "a b c" ~~ /<.alpha> % \s/ 02:42
camelia rakudo-parrot 1aeb7c, rakudo-jvm 1aeb7c, rakudo-moar 1aeb7c: OUTPUT«===SORRY!===␤Unrecognized regex metacharacter % (must be quoted to match literally)␤at /tmp/tmpfile:1␤------> say "a b c" ~~ /<.alpha> ⏏% \s/␤Unable to parse regex; cou…»
lue isn't that supposed to work?
benabik r: say "a b c" ~~ /<.alpha> *% \s/
camelia rakudo-parrot 1aeb7c, rakudo-jvm 1aeb7c, rakudo-moar 1aeb7c: OUTPUT«「a b c」␤␤»
benabik % needs to be attached to a quantifier now, as I recall. 02:43
lue yeah, I realize now I don't want % anyway; I want to match a list of terms with some intervening separator, and /@b % \s/ won't quite DWIM :) 02:46
lue idly wonders if bare % (without repetition) could be spec'd to be used with interpolated arrays in the way he demonstrated... 02:50
benabik It makes sense to me.
lue It might mess with people who try to treat arrays as junctions there, but then again you need a quantifier for those cases already. 02:51
lue More interesting is how to make it work for someone who wants to interleave a non-@var list like that... might be /{<constant in-place list>} % ","/ 02:53
(similar to /thing ** {closure}/ methinks)
lue r: class A { has $.z }; class B is A { has $.z }; say "alive‽" 06:40
camelia rakudo-parrot 1aeb7c, rakudo-jvm 1aeb7c, rakudo-moar 1aeb7c: OUTPUT«alive‽␤»
lue I'll leave that for you all to ponder. ♘ #perl6 o/
timotimo r: class A { method foo() { say "ohai" } }; class B is A { method foo() { say "goodbye" } }; say "alive!" 07:27
camelia rakudo-parrot 1aeb7c, rakudo-jvm 1aeb7c, rakudo-moar 1aeb7c: OUTPUT«alive!␤»
timotimo r: class A { has $!foo; }; class B is A { has $!foo; }; say "alive, as well" 07:27
camelia rakudo-parrot 1aeb7c, rakudo-jvm 1aeb7c, rakudo-moar 1aeb7c: OUTPUT«alive, as well␤»
timotimo same thing as those two things
timotimo private attributes are per-class, methods can be overridable. public attributes are a private attribute + an autogenerated method 07:28
masak morning, #perl6 07:51
moritz \o masak, timotimo, * 07:52
timotimo o/
== SORRY == could not deduce sequence
masak :) 07:59
moritz == SORRY == did not use sequence operator
masak == SORRY == using 'sorry' is starting to feel slightly passive-aggressive 08:01
moritz I'm == SORRY == about that :-) 08:03
moritz has spent way too much time playing gabrielecirulli.github.io/2048/ 08:04
timotimo 3052 points <3 08:13
moritz my hiscore so far has been around 16k 08:17
and I had a 1024 and a 512 tile 08:18
moritz but as I said, I spent way too much time on it :-) 08:19
timotimo only 2944 this time ... up to a 256 tile 08:27
damn this is addicting
moritz there's a trick 08:29
collect all the big numbers in the bottom row, for example
and never use the 'up' key
timotimo mhm 08:32
timotimo with your hint i got to 3576 08:40
bleh! 08:42
just by going (up, left, down, right) xx * i got 3224 points
moritz but is it web scale? :-) 08:43
timotimo 3272 points this time 08:45
it's quite discouraging if a very simple data-independent strategy gets so close to the score you get by trying to think it out ...
timotimo okay, now that's just ridiculous 08:47
timotimo just going (down, left, down, right) xx * got me to 6392 just now 08:48
moritz do you automate that? :-)
timotimo no, if i automated it, i wouldn't have the opportunity for my brain to link me hitting the keys with the game merging tiles 08:49
moritz just got to 11k, with a 1024 tile
timotimo okay so the only "danger" to the down, left, down, right strategy is when your whole thing gets stuck so you can't do any of these three actions 08:51
then you have to go up and get a low-number tile in your bottom-most column
row*
after that, your bottom-most row gets stuck
moritz there's a an alternative 08:53
timotimo yeah, i just tried one
i turned the "gravity" by 90 degrees
moritz control the pushing down so that the bottom-most row doesn't get stuck
timotimo hehe.
moritz that's the part that requires thinking/attention 08:54
timotimo there's an alternative 08:56
shut up with your thinking and let me watch colorful blocks with numbers merge! :D
damnit
moritz :-)
arnsholt I <3 SSDs 09:12
tadzik oh yes. Let's never again use anything else :) 09:15
DrEeevil I kinda dislike their binary nature
either they work, or they are a brick ;)
(and some SSDs are not worth the name ... 10 IO/s ?!?!) 09:16
tadzik isn't that just like regular hard drives? :)
DrEeevil nah, those start to have read errars and slov corrupxion
then you at least have enough time to do something
tadzik I guess you can disassemble the HDD and use the disks as those thingys-under-teacups
well, I only once heard of a broken SSD, and that was Linus' 09:17
and he has a *slight* tendency to exaggarrate...
or however you write that
DrEeevil I've had one die, and had it replaced with an "equivalent" device 09:18
... no, OCZ is not equivalent to anything else
FROGGS tadzik: I have such a under-teacup thingy :o) 09:20
I guess that is mandatory when one is working in the IT department
timotimo 16872 \o/ 09:26
moritz timotimo: that's quite good 09:27
timotimo tadzik: "coasters"
moritz: mostly luck :P
i did get a 1024 tile :)
timotimo moritz: you have turned me into a push-down automaton 09:30
tadzik ah, coasters 09:37
arnsholt timotimo: Hey, at least you can recognise center-embedding. Beats plain FSAs =) 10:01
timotimo aye 10:10
FROGGS m: class Foo; say GLOBAL 11:42
camelia rakudo-moar 1aeb7c: OUTPUT«(GLOBAL)␤»
FROGGS m: class Foo; say $?PACKAGE
camelia rakudo-moar 1aeb7c: OUTPUT«(Foo)␤»
timotimo r: class Foo; say GLOBAL::.keys 12:07
camelia rakudo-parrot 1aeb7c, rakudo-jvm 1aeb7c, rakudo-moar 1aeb7c: OUTPUT«Foo␤»
timotimo moritz: a core insight to this seems to be that you always want to have as few different numbers on the board as possible, because every number that doesn't have any other numbers near it is going to be blocking your board for a long time to come. 12:25
that's why it's pretty easy to button-mash your way to your first 256 or even 512
but after that you have to work for more points
moritz timotimo: agreed 13:37
timotimo i'm getting somewhat far with the strategy "always seek to merge twos"
but that seems a bit short-sighted. 13:38
masak timotimo: try "always seek to (greedily) merge the highest pair possible" ? 13:45
brrt you have no other strategy than greedy do you? :-)
its not like you can backtrack 13:46
timotimo well, you have to be on-line, but you can try to be competitive against the most malevolent placer of new 2s and 4s
[Coke] is this the web game that is like the ios game threes?
brrt is also curious how the author claims 2048 is the highest obtainable value 13:47
its not obvious to me why that should be
timotimo well, if you go to 4096, you'll be spending a *lot* of time :) 13:48
but feel free to write an exhaustive search in perl6 :)
brrt hmmm 13:49
timotimo (it will also be spending a *lot* of time, except the jvm's jit may very well kick into full gear there)
gotta run now.
brrt i'm not sure you can exhaustively search in all cases
because some moves decrease the number of cells on the board
and you only finish once all cells are filled/
?
masak brrt: indeed, I'm not convinced the game cannot be sustained infinitely. 14:19
the random component essentially makes it a two-player game.
moritz it cannot 14:20
Timbus_ it would run out of space..
masak oh, if it cannot, then it should be eminently simulatable.
moritz you can't turn a 2 into a 2^18 with only 16 spaces
masak hm, right.
moritz that's also why it gets more difficult with time
masak so you *must* run out of space at some point.
Timbus_ imagine if, it wasnt a grid, but just a line of squares. and the 2 always spawned on the left, and you shifted it right 14:21
moritz the more high numbers you have, the less free space you have to navigate
Timbus_ that simplifies the problem easily
masak ah, it's one of those "the moves fold into the board (and make it more messy)" kind of problems. 14:25
moritz small numbers enter the board, large numbers are created by merging. The challenge is just to create the larger numbers in the correct place, adjacent to other numbers in the same order of magnitude 14:29
fragmentation kills
brrt hmmm 14:34
i see 14:35
masak spryfox.com/our-games/tripletown/ is like that too -- fragmentation kills. 15:07
Go/圍棋 (allegedly) is like that too. 15:08
dalek p/r2-lex-to-local: fb4ffa9 | (Elizabeth Mattijsen)++ | src/ (4 files):
Change .ast to .made where it seemed appropriate
15:32
nqp/r2-lex-to-local: 15869c8 | (Elizabeth Mattijsen)++ | src/ (12 files):
nqp/r2-lex-to-local: "past" is now a thing of the ast
timotimo oh? why did these commits get reported again? 15:34
jnthn Can happen if you merge a brunch 15:36
uh
a branch
.oO( bit late to be pondering brunch... )
15:37
timotimo :)
that reminds me that i'm kinda hungry
jnthn Time for lunner :P 15:38
colomon time to stir-fry! 15:41
just realized I have no green onions. time to cry.
benabik Generally I cry when I have onions. 15:42
I guess I cry when I have no pre-cut onions.
colomon benabik: I got my preliminary lists of players for Ambercon a couple of days ago… :) 15:44
benabik colomon: ooooh 15:45
colomon benabik: if those games don't go well, I have no one to blame but myself. 15:48
(ie good players)
timotimo it occurs to me 15:49
managing the fragmentation of square numbers by tidying up pairs of them
seems like a stereotypically german thing to enjoy
colomon benabik: one new thing -- this year I'm involved in as many Lords of Gossamer and Shadow games as Amber games. (three of each)
benabik colomon: Lords of Gossamer? (I assume shadow just means outside the court.) 15:50
colomon benabik: www.ritepublishing.com/dicelessroleplaying.html (It's Amber DRPG system skinned onto a new multiverse.) 15:51
jercos jnthn: bit late perhaps, that's why it'd be a merged brunch ;)
merged with dinner?
benabik colomon: Oh hey hey. Hadn't seen THAT before. 15:53
pmichaud good morning, #perl6 16:13
[Coke] pmichaud: o/ 16:17
timotimo greetings pmichaud :) 16:19
dalek kudo-star-daily: 38b274f | coke++ | log/ (5 files):
today (automated commit)
16:21
timotimo another idea 16:31
you have a 4x4 grid
you can place a 2 or a 4 in any free space
then you must shift all tiles to one of four directions as if gravity affected them
tiles that rest upon each other during such a phase that have the same number merge into 2 x the number 16:32
in how few turns can you fill up the whole board?
TimToady m: my @array = <a b c>; say "a,b,c" ~~ /<{@array.shift}> +% ','/ 16:43
camelia rakudo-moar 1aeb7c: OUTPUT«「a,b,c」␤␤»
TimToady what's the big deal?
TimToady lue: ^^ 16:44
TimToady it won't backtrack, mind you 16:45
being destructive like that
one would have to arrange to return the correct @array[$i] to make it re-usable 16:46
or arrange to copy the array at the re-entrance
more realistically, you'd pull an iterator out and use that destructively 16:47
TimToady perhaps one could arrange this as an <each(@array)> subrule 16:48
assuming one could get it to clone at the appropriate scope 16:49
however, the lack of demand for this up till now indicates that a solution like / :my @tmp = @array; <{@tmp.shift}> +% ',' / might be quite sufficient 16:50
that would at least be re-entrant, if not backtrackable 16:51
benabik Attempting to backtrack through code just makes the entire rule fail, yes?
TimToady no
it just ignores it 16:52
it assumes you write your code idempotently such that it doesn't matter
benabik Hm. Would have to be very careful how you use destructive iteration then, or you could end up skipping elements. 16:53
TimToady yes, though generally you'd re-enter something like this from the top when you need to 16:54
if the + here backtracked it would not recalculate the LHS, it would just throw away one of the results
or generate the next one, in the case of +?
TimToady greedy backtracking generates all the possible Cursors first; it doesn't have to regen any Cursors from the left 16:55
(unless the backtracking is violent enough to cause re-entry, but then your :my recopies the array)
so I don't think we need a new feature here 16:56
much to the surprise of those who think Perl 6 includes every feature anyone can ever think of :)
benabik Sensible.
TimToady could certainly be wrong at this stage of the morning, or of life 16:57
benabik Failure is always an option.
TimToady in which case I will attempt to backtrack non-destructively :) 16:57
arnsholt o 17:04
/
Delayed wave ^_^
isBEKaml arnsholt: you got your arm detached?
arnsholt: that's what happens when you go through a time warp. splicing. :-) 17:05
isBEKaml \ o 17:06
benabik "My arm's come off. How am I going to operate my digital watch now?" 17:08
isBEKaml "Bluddy hell - I'll just carry this arm around!" 17:14
timotimo is remimnded of that one Space Janitors episode 17:17
[Coke] 17:30
timotimo 17:30
raiph m: print ^Inf # for Ulti 17:45
camelia rakudo-moar 1aeb7c: OUTPUT«(timeout)0123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118…»
raiph .tell Ulti warn ^Inf # I love the idea of elegant golf with P6. For example, refusing to omit spaces when it would work but be ugly. 18:27
yoleaux raiph: I'll pass your message to Ulti.
TimToady one should do token golf, not keystroke golf 18:36
'course then you have to figure out how to count tokens
:16<cafebeef> is one token, probably , but how many is :16($string) ? 18:37
and is foo() fewer tokens than foo.() ?
TimToady one could do keystrokes without counting whitespace, I suppose 18:39
whitspace would correspond to a "free drop" in golf :)
when your ball token is too close to the grandstands token 18:40
or maybe it's more like lift-clean-and-place rules :) 18:41
would be a nice cultural hack to start the Clean Golf meme 18:42
ignore whitespace, allow Unicode chars as single strokes
timotimo m) 18:43
jnthn back 19:20
masak stomach 19:21
segomos chest 19:27
moritz timotimo: ov3y.github.io/2048-AI/
moritz ... but it doesn't win here 19:28
segomos moritz: thanks for ruining my work day 19:39
moritz segomos: you're welcome 19:40
FROGGS score 4948 for the first run... is that good? 19:58
but I won't play it a second time, that is very addicting 19:59
jnthn
.oO( And all Perl 6 development ground to a halt as a result of a game... :) )
FROGGS hehe, yeah 19:59
FROGGS .oO( only parrot will survive ) 20:00
FROGGS std: my %foo; %foo<bar> => "baz" 20:03
camelia std 09dda5b: OUTPUT«ok 00:01 125m␤»
FROGGS p6: my %foo; %foo<bar> => "baz" 20:04
camelia ( no output )
FROGGS that took my a while to spot it... in my code should have been an assignment instead...
shouldn't that warn?
lue p6: my %foo; %foo<bar> => "baz"; say %foo; 20:05
camelia niecza v24-109-g48a8de3: OUTPUT«{}␤»
..rakudo-parrot 1aeb7c, rakudo-jvm 1aeb7c, rakudo-moar 1aeb7c: OUTPUT«().hash␤»
vendethiel ().hash ? really ? :D 20:06
lue FROGGS: I feel the same way about class A { has $.x }; class B is A { has $.x } :)
vendethiel
.oO(is {} too mainstream or something ?)
vendethiel .oO( is {} too mainstream or something ? )
lue vendethiel: TIMTOWTDI
FROGGS lue: what do you want it to do? 20:07
vendethiel lue: oh yeah, that's for sure, but I don't see why .perl doesn't return {}
lue FROGGS: I'd like it to at least warn me that I've redeclared a variable like that, it caused a subtle and annoying bug yesterday :/
masak vendethiel: it used to, but it got changed for some reason I don't remember, or may never have known. 20:08
vendethiel masak: oke!
TimToady p6: my %foo; %foo<bar> => "baz"; say $%foo;
lue vendethiel: because ().hash is just as valid, and also it probably avoids confusion with code-block-based {} :)
camelia niecza v24-109-g48a8de3: OUTPUT«{}␤»
..rakudo-parrot 1aeb7c, rakudo-jvm 1aeb7c, rakudo-moar 1aeb7c: OUTPUT«().hash␤»
vendethiel FROGGS: should void statements produce a warning ?
masak vendethiel: same thing with arrays.
jnthn FROGGS: I've a sinking feeling that should warn... :)
TimToady p6: my %foo; %foo<bar> => "baz"; say %foo.item;
vendethiel masak: that's true
camelia niecza v24-109-g48a8de3: OUTPUT«{}␤»
..rakudo-parrot 1aeb7c, rakudo-jvm 1aeb7c, rakudo-moar 1aeb7c: OUTPUT«().hash␤»
masak r: say [].perl
camelia rakudo-parrot 1aeb7c, rakudo-jvm 1aeb7c, rakudo-moar 1aeb7c: OUTPUT«[]␤»
masak hm. 20:09
TimToady r: say {}.perl
FROGGS vendethiel: yes, things that clearly do not make sense should warn or fail
camelia rakudo-parrot 1aeb7c, rakudo-jvm 1aeb7c, rakudo-moar 1aeb7c: OUTPUT«{}␤»
lue I personally think => there should work just like =
masak r: say [1, 2, 3].perl
camelia rakudo-parrot 1aeb7c, rakudo-jvm 1aeb7c, rakudo-moar 1aeb7c: OUTPUT«[1, 2, 3]␤»
TimToady p6: my %foo; %foo<bar> => "baz"; say %foo.item.perl;
vendethiel lue: well, then you can't create a hash with a key based on a value from another hash ?
masak I distinctly remember getting Array.new(...) sometimes.
camelia rakudo-parrot 1aeb7c, rakudo-jvm 1aeb7c, rakudo-moar 1aeb7c, niecza v24-109-g48a8de3: OUTPUT«{}␤»
TimToady yes, depends on whether it's itemized
vendethiel masak: oh, even I remember it and I've been here for like a month :p
TimToady p6: my %foo; %foo<bar> => "baz"; say $%foo.perl; 20:10
FROGGS lue: btw, I'm not even sure there is a redecl in your example
camelia rakudo-parrot 1aeb7c, rakudo-jvm 1aeb7c, rakudo-moar 1aeb7c, niecza v24-109-g48a8de3: OUTPUT«{}␤»
FROGGS yeah
lue vendethiel: %a{%b<5>} => 1; :)
masak r: say { 4 => [] }.perl 20:11
camelia rakudo-parrot 1aeb7c, rakudo-jvm 1aeb7c, rakudo-moar 1aeb7c: OUTPUT«{"4" => []}␤»
masak hrm.
vendethiel r: my %foo = 'a' => 1; my %bar = %foo<a> => 2; say %bar.perl;
camelia rakudo-parrot 1aeb7c, rakudo-jvm 1aeb7c, rakudo-moar 1aeb7c: OUTPUT«("1" => 2).hash␤»
vendethiel lue: ^
That's what I meant 20:12
lue FROGGS: yeah, I realize it's not quite so simple, but I left it behind while creating a new base class, and the different methods in the new base class and the derived class affect different $!x's
vendethiel: ah, I see what you mean.
FROGGS lue: yes, that is what I expect it should do :o)
TimToady r: say (1 => 2).perl
vendethiel lue: that might be a corner-case though :)
camelia rakudo-parrot 1aeb7c, rakudo-jvm 1aeb7c, rakudo-moar 1aeb7c: OUTPUT«1 => 2␤»
lue FROGGS: not so much fun when you don't realize you forgot to delete a 'has' line :)
FROGGS lue: sure 20:13
lue: but that is something that might or might not be intentional... a compiler can not always decide there
lue I just think it'd be nice if P6 went "hey, just so you know, you declared another $!x in this derived class. Things might not work fine"
"Potential difficulties" I think it's called :)
jnthn lue: The point is that it *will* work fine.
FROGGS I don't like warning for potentionally ok things 20:14
jnthn lue: They are different attributes.
TimToady Potential difficulties: Failed to read your mind...
lue FROGGS: aren't all Potential Difficulties "potentially ok things" though?
jnthn It's important that it's that way. You should be able to subclass without having to care about what's in the parent class.
FROGGS lue: don't thinks so
think*
jnthn That's one of the ways Perl 6 gets inheritance righter than the likes of Java and C#, which make it easy to flaunt things in the base class through using protected... 20:15
FROGGS m: my $a; my $a # this is clearly not ok
camelia rakudo-moar 1aeb7c: OUTPUT«Potential difficulties:␤ Redeclaration of symbol $a␤ at /tmp/2vCz8FTAwe:1␤ ------> my $a; my $a # this is clearly not ok⏏<EOL>␤»
TimToady the only one people carp about frequently is declared but not used
jnthn declared but not used is annoying by default. 20:16
TimToady FROGGS: actually that one is officially ok
lue jnhtn: yeah, I'm just annoyed that Perl 6 let me get away with something that in my case broke things :) [a method in Base modifies its $!x, and then Derived.x doesn't return what I changed; that's what my issue was]
TimToady std: my $a; my $a
camelia std 09dda5b: OUTPUT«Potential difficulties:␤ Useless redeclaration of variable $a (see line 1) at /tmp/JbstzFzwGb line 1:␤------> my $a; my $a⏏<EOL>␤ok 00:01 122m␤»
FROGGS TimToady: for the parser yes, but there is no situation where you would need to do that and really mean it
TimToady note it's a *useless* redeclaration in sTD
lue m: my $a; my $a; say "alive!" 20:17
camelia rakudo-moar 1aeb7c: OUTPUT«Potential difficulties:␤ Redeclaration of symbol $a␤ at /tmp/FSxYsJ3cAG:1␤ ------> my $a; my $a⏏; say "alive!"␤alive!␤»
TimToady well, you can leave the foo off of $foo when you declare it, too, so why all the carpage about declared but not used?
FROGGS m: my $a = 42; my $a; say $a 20:18
camelia rakudo-moar 1aeb7c: OUTPUT«Potential difficulties:␤ Redeclaration of symbol $a␤ at /tmp/JDFTmpE8jO:1␤ ------> my $a = 42; my $a⏏; say $a␤42␤»
FROGGS lue: see this one, do you expect that to happen?
lue FROGGS: since the second one is a *useless* redeclaration, yes :)
[rakudo should be clearer on that point...]
FROGGS lue: yes
jnthn TimToady: 'cus a normal way of working is to stub stuff with names, and then go write tests, and come back and fill in the stubbed stuff. 20:19
TimToady well, it's helping you find what you missed then :P
jnthn TimToady: And even if I ain't doing the tests phase in there, I still tend to do a lot of sketching that way. :)
And the warnings at that point are clutter. I agree they can be desirable at a certain stage.
TimToady trouble is, there's no mechanism to get people to turn those warnings on when they need 'em 20:20
so you get the 'use strict' problem all over again 20:21
maybe we need an 'anon' twigil :)
FROGGS oh oh oh, can we have a -Wall cmd line argument this time?
lue maybe a "is really" trait to turn off warnings? my $a; my $a is really; 20:22
FROGGS m: my $a; my $a; #OK
camelia rakudo-moar 1aeb7c: OUTPUT«Potential difficulties:␤ Redeclaration of symbol $a␤ at /tmp/xS3TwSpnnf:1␤ ------> my $a; my $a⏏; #OK␤»
FROGGS m: my $a; my $a; # OK
camelia rakudo-moar 1aeb7c: OUTPUT«Potential difficulties:␤ Redeclaration of symbol $a␤ at /tmp/uzrKism0Zh:1␤ ------> my $a; my $a⏏; # OK␤»
TimToady r: multi my $a; multi my $a;
camelia rakudo-parrot 1aeb7c, rakudo-jvm 1aeb7c, rakudo-moar 1aeb7c: OUTPUT«===SORRY!=== Error while compiling /tmp/tmpfile␤Missing block␤at /tmp/tmpfile:1␤------> multi my ⏏$a; multi my $a;␤ expecting any of:␤ statement list␤ …»
FROGGS /o\
vendethiel what's a multi my ? 20:23
lue FROGGS: actually, I think I might like -Wall etc. better. That way I can do -Wderived-redecl-attr or however it'd be spelled :)
FROGGS ohh noes, he asked
jnthn tries not to comment on the appropriateness of Perl 6 having a -Wall flag that tells you stuff TimToady++ thinks you need to know :D
TimToady r: my proto $a; my $a; my $a
camelia rakudo-parrot 1aeb7c, rakudo-jvm 1aeb7c, rakudo-moar 1aeb7c: OUTPUT«Potential difficulties:␤ Redeclaration of symbol $a␤ at /tmp/tmpfile:1␤ ------> my proto $a; my $a⏏; my $a␤ Redeclaration of symbol $a␤ at /tmp/tmpfile:1␤ ------> …»
FROGGS vendethiel: I hope is not going to be anything :o)
TimToady std: my proto $a; my $a; my $a
camelia std 09dda5b: OUTPUT«ok 00:01 122m␤»
TimToady there's already a defined mechanism for this
vendethiel wut
TimToady it's really in there for macros, not for programmers 20:24
FROGGS jnthn: it could even add an "except when it's not" to some error messages :o)
TimToady since macros often want to ensure that something is declared
FROGGS yays! the provides section in the META.info is now generated as well in `panda-m bundle` 20:29
dalek rl6-roast-data: ae21865 | coke++ | perl6_pass_rates.csv:
today (automated commit)
20:34
FROGGS next step: zip it for upload to pause 20:35
lue FROGGS: can I pick the archive type thru this method, by chance? I prefer .tar.bz2 and .tar.xz myself :) 20:38
FROGGS lue: dunno, if pause will only accept .tar.gz, then we have no chance to choose :o) 20:39
lue really? that's a shame; tar.gz is the worst of all the .tar.* compression methods :)
FROGGS lue: I will tell you in a few days :o) 20:42
lue (not that tar.gz is bad, just happens to be the least space-efficient out of {gz,bz2,xz} ☺) 20:44
arnsholt It's the most portable one, though 20:46
benabik And hits a much better efficiency vs portability point than just .Z
lue Not an excuse to limit your selection of tar compressions though. (At the very least, don't allow .rar ☺) 20:49
[Coke] www.bbc.com/news/technology-26528516 21:13
"Nasa seeks coders to hunt asteroids"
dalek nda/depends: 1433262 | (Tobias Leich)++ | lib/Panda/ (2 files):
autogenerate "provides" setion on META.info
21:15
lue [Coke]: I like how they never spelled it NASA :)
tadzik oh, good stuff :) 21:16
FROGGS++
dwarring checking test roast test coverage of 2013 advent calender 21:35
dwarring hmmm github connectivity problems - status.github.com/ 21:58
jnthn aww 22:05
dalek ast: fb58cb3 | (David Warring [email@hidden.address] | integration/advent2013-day07.t:
code snippets from advent 2013 day 07 - set specification
22:23
ast: 1312678 | (David Warring [email@hidden.address] | integration/advent2013-day18.t:
starting on advent 2013 day 18 - grammar with duplicate checking
ast: c69b51d | (David Warring [email@hidden.address] | .gitignore:
ignore *~ (emacs backups)
dwarring that's a couple of advent days covered 22:25
dwarring more to do on day 18 22:25
TimToady we don't say RADAR or LASER anymore either 22:29
.oO(I know, we'll just use a little nasa on that problem.)
22:31
huf you still say API though... that bothers me the most for some reason :)
TimToady that's cuz I still spell it out when I pronounce it 22:32
huf yes, that's what i mean. why? it's 2/3 vowels! 22:33
TimToady you make it sound rational :) 22:34
huf it's one of those that surprised me when i heard it from a native. it shouldnt have, but by then my own pronunciation had been burned into my brain 22:35
lizmat lue, FROGGS: you can upload anything to PAUSE 22:47
it's just that installers need to be able to deal with it
FROGGS: see you tomorrow in Lyon
sleep now&
lue Yeah, that's kinda what I assumed beforehand.
lizmat o/ 22:48
japhb__ .ask jnthn Is there any way from Rakudo to see how many threads are actively running tasks, how many are blocked on e.g. IO, how many tasks *could* run if there was a thread available, etc? I'm at the point now that I'm wanting to optimize the use of my thread pool to keep all my cores busy, and it would help to be able to introspect the states. 23:43
yoleaux japhb__: I'll pass your message to jnthn.
japhb__ .tell jnthn A sample use case: I have an app that starts up chewing CPU in one or two cores, launches a bunch of tasks in different threads, they all start communicating with external processes, all cores max out briefly, some tasks finish, others go to low-CPU state and machine drops to only a core or two used for another 20 seconds before finishing. And now I want to know why. :-) 23:47
yoleaux japhb__: I'll pass your message to jnthn.