»ö« Welcome to Perl 6! | perl6.org/ | evalbot usage: 'perl6: say 3;' or rakudo:, niecza:, std:, or /msg p6eval perl6: ... | irclog: irc.perl6.org/ | UTF-8 is our friend!
Set by sorear on 4 February 2011.
00:08 daniel-s_ joined 00:10 daniel-s left 00:15 gongyiliao joined 00:17 atrodo left 00:23 prammer left, prammer joined 00:28 tokuhiro_ joined 00:32 tokuhiro_ left 00:35 spider-mario left 00:37 Circlepuller joined, Vlavv` joined 00:39 Circlepuller_ left, Vlavv_ left, dayangkun joined 00:42 cognominal left 00:44 skids joined 00:52 raiph joined 00:53 sergot left 00:59 scott__ joined 01:02 dayangkun left 01:05 dayangkun joined 01:09 cognominal joined 01:12 scott__ left 01:13 japhb_ left 01:16 scott__ joined 01:25 jeffreykegler joined 01:33 Entonian joined 01:34 Entonian left 01:40 colomon left 01:46 Guest59712 left 01:48 cognominal_ joined 01:50 cognominal left 01:53 jeffreykegler left 02:11 scottdware joined 02:12 scottdware left 02:42 orafu left, orafu joined 02:56 silug joined 02:58 leprevost joined 03:12 spaceships left 03:22 sftp left 03:55 colomon joined
thou o/ 03:57
04:10 telex left 04:17 telex joined 04:22 kaleem joined 04:26 telex left 04:30 skids left 04:36 telex joined 05:15 xinming_ joined 05:18 xinming left 05:26 birdwindupbird joined 05:35 brrt joined 05:39 cognominal_ left 05:40 Tene left, Tene joined, SamuraiJack joined
masak morning, #perl6 05:48
cosimo__ morning, masak 05:53
masak commutes for a second day of teaching 05:57
05:58 leprevost left
pmichaud good morning, #perl6 06:02
good morning, masak++
diakopter o_O 06:03
06:05 cognominal joined 06:12 topo__ joined 06:14 topo left 06:18 topo__ is now known as topo 06:26 telex left, brrt left 06:28 telex joined 06:35 brrt joined 06:44 tarch joined 06:45 tarch left 06:52 brrt left
moritz \o 07:00
07:05 hoelzro|away is now known as hoelzro, snearch joined
hoelzro morning perl6 folk 07:06
07:10 cognominal left 07:35 fridim_ joined 07:41 raiph left 07:43 Tedd1 joined 07:45 p6rd left 07:46 kresike joined
kresike good morning all you happy perl6 people 07:47
07:53 fgomez joined 07:59 topo left 08:01 topo joined
tadzik good morning 08:02
phenny tadzik: 16 Aug 18:55Z <japhb> ask tadzik I'm making decent progress locally on panda fixes and improvements; would you prefer I send pull requests, or do you prefer to hand out commit bits?
tadzik japhb: you've just been commit-bitten :) 08:03
japhb: if you plan to break existing stuff, please do that in a branch
08:05 leont joined 08:19 Psyche^ joined 08:22 Patterner left, Psyche^ is now known as Patterner 08:25 eiro left, eiro joined 08:31 dakkar joined 08:32 cognominal joined 08:33 snearch left 08:35 jeffreykegler joined 08:36 jeffreykegler left 08:56 bbkr joined 09:20 thou left 09:27 kaleem left 09:44 dayangkun left 09:50 cosimo__ left 09:53 ObseLeTe joined 10:05 scott__ left 10:09 sudokode left 10:12 ObseLeTe left 10:18 spider-mario joined 10:19 leont left 10:34 ObseLeTe joined 10:45 SamuraiJack left 10:46 SamuraiJack joined 10:47 SamuraiJack left 10:50 SamuraiJack joined 10:51 kaleem joined, fgomez left 11:16 fridim_ left 11:18 cognominal left 11:20 cognominal joined 11:22 am0c joined 11:28 sergot joined
sergot Hi! o/ 11:28
11:39 cosimo joined, gongyiliao left 11:40 sftp joined 11:51 alester_ joined 11:53 telex left, alester left, alester_ is now known as alester 12:08 Timbus joined 12:11 daxim left 12:12 tokuhiro_ joined 12:13 tokuhir__ joined, tokuhiro_ left 12:15 ObseLeTe_ joined, ObseLeTe left
tadzik o/ 12:26
12:28 ObseLeTe_ left 12:38 MayDaniel joined 12:50 am0c left 12:51 am0c joined 12:58 odoacre left 13:04 MayDaniel left 13:06 xinming_ left 13:10 odoacre joined 13:17 leprevost joined 13:24 skids joined 13:25 bluescreen10 joined 13:31 daniel-s_ left 13:32 daniel-s_ joined, adu joined 13:38 MayDaniel joined 13:43 Circlepuller_ joined 13:45 telex joined 13:46 Circlepuller left 13:48 JimmyZ joined
JimmyZ moritz: ping 13:48
13:50 Circlepuller joined 13:52 xinming joined, Circlepuller_ left 13:56 SamuraiJack left, birdwindupbird left, hanekomu left, awwaiid left, obra left, _sri left, pnu_ left, shachaf left 13:57 SamuraiJack joined, birdwindupbird joined, hanekomu joined, awwaiid joined, obra joined, _sri joined, pnu_ joined, shachaf joined
[Coke] Wow, quiet in here. 14:06
JimmyZ because of yapc:eu? 14:07
colomon www.technologyreview.com/view/42892...me-theory/ 14:09
JimmyZ: presumably so. but not sure why they aren't all chattering on here, too! 14:10
JimmyZ may they are enjoy party
*maybe
beer party \o/ 14:11
colomon golem.ph.utexas.edu/category/2012/0...es_in.html 14:12
14:16 bonifatio left
japhb tadzik, thanks for the commit bit! I've got a few fixes and minor enhancements I'll push to master, and then some more invasive stuff I'll throw in a branch. 14:18
(Where 'invasive' is only moderately so -- but you might disagree with the basic design idea, so it's worth discussing.) 14:19
14:20 kaleem left
tadzik sure, go ahead 14:21
PacoAir perllinux.sourceforge.net 14:24
colomon tadzik: hey, how are things going at YAPC::EU?
tadzik colomon: we're actualy before YAPC::EU still 14:25
discussing stuff in Perl, Germany :)
colomon but there's a lot of us out there, right?
tadzik right
japhb tadzik, what do you think about setting the panda repo to feed dalek? 14:28
tadzik japhb: I think it is set
remember how I killed it 3 times one night? ;)
japhb Huh. I just pushed master seemingly successfully, and dalek isn't talking ... oh, I see, not in channel 14:29
tadzik ha, that explains it
japhb d'oh!
No, dalek is in channel, but I couldn't see it because of bad chat client UI. :-( 14:30
tadzik reads commitlog
no, I don't see it either
japhb ? 14:31
japhb investigates
eiro_ perllinux.sourceforge.net ? is this a recent project ? wow ... sf.net still online
hello all :)
tadzik hey eiro_ :) 14:32
eiro_: HN discussion says it's from 2001 or so
japhb I see the commits and branches on github
colomon perllinux is not recent at all, it's about a decade... what tadzik says.
japhb well, branch (I only added one)
tadzik japhb: I like the new `panda list` 14:33
not sure what the git url is useful for though
and it now doesn't fit on my normal terminal size :)
japhb Because in the branch, it shows when you installed from a local spot. :-) 14:34
tadzik a-ha!
lemee look into that
japhb And the next thing I was planning to work on in that branch is adding the 'git describe --always --dirty' output from the install time.
dalek nda: 3a62063 | (Geoffrey Broadwell)++ | bin/panda:
Begin enhancing 'panda list': version and source url columns; automatic column widths for name and version columns
14:35
nda: d6ca1c7 | (Geoffrey Broadwell)++ | rebootstrap.pl:
reboostrap.pl improvements: Save a backup of the old state file, add comments, refactor to limit repeating hardcoded statefile path
nda: 59e1126 | (Geoffrey Broadwell)++ | .gitignore:
Add *~ to .gitignore
nda: f6b9fde | (Geoffrey Broadwell)++ | projects.json.bootstrap:
Fix description of Test::Mock in projects.json.bootstrap
japhb And a pending fix in the branch is that bootstrap/rebootstrap should install panda from $cwd, rather than '.', so it can show up properly in the panda list output.
tadzik ah, there we are :)
japhb Yeah, appears dalek is just slow to notice this morning 14:36
tadzik japhb: what's the new branch name?
japhb "pending fix" ==> "fix I am planning to make but isn't there yet"
verbose-list
dalek nda/verbose-list: 2ba908f | (Geoffrey Broadwell)++ | lib/Panda/Ecosystem.pm:
When installing, save a snapshot of that project's metainfo into the statefile
nda/verbose-list: d0553e2 | (Geoffrey Broadwell)++ | bin/panda:
Display saved metainfo for installed projects when doing 'panda list'
tadzik speaking of which..
japhb ... and there it is. ;-)
mhasch tadzik: since you are in Perl, do you plan to bring a souvenir from there? 14:37
japhb The controversial bit there is that I've added another "column" to the state file, which is a snapshot of the metainfo of the project at the time of the install.
tadzik mhasch: probably :)
hm
eiro_ hey tadzik \o/ almost YAPC! happy to see you all again 14:38
japhb I didn't really have a better idea for something that A) wouldn't skew against the state file over time, and B) would capture the exact install-time state of the project. 14:39
eiro_ haha ... old idea then (perllinux) as well as psh, zoidberg and so on.
tadzik japhb: so we display versions correctly in panda list
14:39 sudokode joined
tadzik like, installed version, not available version, right? 14:39
japhb tadzik, exactly, as well as local install dir, etc.
RIGHT
tadzik awesome
eiro_ now i'm dreaming about a repl on top of perlude: i'm ready to give *sh away 14:40
tadzik so you now can know what you should update, as long as modules are properly versioned
japhb Bingo
(That was about 2-3 feature ideas down the line, but already on my mind. ;-)
tadzik one of ideas I'm keeing in the back of my mind is to keep track of files too 14:41
so you can actually uninstall modules, no one can do that yet :P
that's why there's instlaled and installed-dep, so we can do some sort of GC if we want to
japhb right, I figured. ;-)
mhasch I once was wearing a perl t-shirt in a distant place and met a guy from Perl who thought he had found somebody from home. That was funny. 14:42
japhb Although with the multi-column 'panda-list', we might want to figure out a shorter way to say "[installed for dependencies]" because it makes that column really wide.
tadzik I'd just put that in panda info 14:43
japhb heh, 'panda-list', I've been talking about git too often. ;-)
tadzik I'd like to keep list possibly short, as in, not-wide ;)
14:43 alester_ joined
tadzik consider dpkg -l 14:43
japhb I agree. Perhaps a --verbose option to show more details, but not the default
tadzik well, it's screen width awae too
sirrobert I'd love to see dependencies put into an application subfolder (like nodejs uses). Is that something it can already do? 14:44
mhasch Although he should have figured his home town would not advertise a big blue onion.
japhb As soon as we have TermInfo. ;-)
14:44 alester left, alester_ is now known as alester
sirrobert (via panda install, I mean) 14:44
tadzik sirrobert: you can use DESTDIR env variable
sirrobert ok, cool
tadzik mhasch: hehe
sirrobert tadzik: at some point I'll check out having ufo's makefile do that by default to install deps 14:45
japhb DESTDIR is something I wanted to ask about -- why does DESTDIR get folded into a subdir of cwd?
tadzik ...it does?
japhb ISTR so, yes
tadzik it's horribly wrong then :) 14:46
japhb yeah, 'git grep DESTDIR' and you'll see it in a couple places.
14:47 am0c left
tadzik oh, bin/panda: destdir => %*ENV<DESTDIR> ?? "{cwd}/%*ENV<DESTDIR>" 14:47
mhasch I hate screen width aware behaviour. Make the output terse alright, but do not change it based on silly heuristics.
tadzik wth did I do that
japhb Wasn't me. ;-) 14:48
tadzik was me :)
14:51 mucker joined
japhb tadzik, the cwd/DESTDIR behavior is also in bootstrap.pl, in case you missed it. 14:54
14:54 cognominal left 14:55 cognominal joined
tadzik strange 14:55
want to look at it?
japhb Yeah, if it was only that way in one place, I would have figured just a buglet. But that it was *consistent* across multiple files, I figured you had a good reason.
"look at it" how? I'm not sure I understand. 14:56
You mean "change it and commit"? 14:57
tadzik I don't remember testing DESTDIR extensively, or maybe at all
japhb Ah!
tadzik yeah, change it and see if it works
japhb Gotcha.
Yeah, I can do that in a few minutes. Have some RL stuff to attend to for a bit.
14:57 jaldhar left
tadzik sure 14:57
japhb While I'm AFK, some food for thought: If you supply DESTDIR, does that imply a separate state file? Can the dependencies shown in one state file satisfy the other? 14:59
really afk &
tadzik my first thought was that if DESTDIR's set, then we don't modify the statefile 15:00
tadzik afks as well 15:01
15:04 MayDaniel left 15:15 SamuraiJack left 15:16 tokuhir__ left, tokuhiro_ joined 15:18 crab2313 joined, SamuraiJack joined 15:19 HarryS left, SamuraiJack left 15:20 tokuhiro_ left
masak good morning, #perl6 15:21
hoelzro o/ masak
JimmyZ morning masak 15:22
crab2313 o/ masak
japhb o/
tadzik, hmm ... so basically if you use DESTDIR, you're in charge of your own dependencies and state and such? That seems a bit strong. OTOH, what if we give the user an envvar or something that allows them to set the statefile to use as well ...? 15:23
15:25 thou joined 15:32 birdwind1pbird joined
kresike bye all 15:35
15:35 kresike left 15:44 avar left, avarab joined 15:45 avarab left, avar joined, JimmyZ left 15:52 hoelzro is now known as hoelzro|away 16:10 am0c joined, benabik left 16:11 thou left, thou joined 16:15 bbkr left 16:31 birdwindupbird left
sirrobert r: Str.Str 16:34
p6eval rakudo efde6e: OUTPUT«use of uninitialized value of type Str in string context in block at /tmp/IvxMoRBJGu:1␤␤»
sirrobert r: Str eq 'foo'
p6eval rakudo efde6e: OUTPUT«use of uninitialized value of type Str in string context in block at /tmp/k7NrGzy7hC:1␤␤»
sirrobert r: my $foo; $foo eq 'foo' 16:35
p6eval rakudo efde6e: OUTPUT«use of uninitialized value of type Any in string context in block at /tmp/OHZxmJ8pkU:1␤␤»
masak sirrobert: lots of interactions with undefined variables provide such warnings.
sirrobert r: my $foo; say ($foo && $foo eq 'foo') ?? "yep" !! "nope"
p6eval rakudo efde6e: OUTPUT«nope␤»
sirrobert masak: thanks =) 16:36
masak (and type objects are undefined)
sirrobert masak: was trying to figure out how to do a comparison on something that may or may not have a value
(a hash value, in particular)
masak r: my $foo; say ($foo // "explicit default") eq "OH HAI"
p6eval rakudo efde6e: OUTPUT«False␤»
sirrobert hmmmm 16:37
I haven't encountered // before
masak r: my %h; say (%h<foo> // "totally missing") eq "OH HAI"
p6eval rakudo efde6e: OUTPUT«False␤»
masak sirrobert: // is like || except it picks the rhs if the lhs is undefined.
sirrobert huh cool
masak || picks it if the lhs is falsy.
sirrobert right
great... thanks! 16:38
masak kowtows
sirrobert is it a string comparison?
oh, it's just truthiness
masak what is?
sirrobert //
16:39 sergot left
masak it's not about truthiness. || is 16:39
// is about definedness
sirrobert ohhh, I missed the compound nature of the condition
masak r: for Str, "foo" { say $_ // "default" }
p6eval rakudo efde6e: OUTPUT«default␤foo␤»
sirrobert my %h; say (%h<x> // 'x') eq 'x'
r: my %h; say (%h<x> // 'x') eq 'x'
p6eval rakudo efde6e: OUTPUT«True␤»
sirrobert r: my %h; say (%h<x> // 's') eq 'x' 16:40
p6eval rakudo efde6e: OUTPUT«False␤»
sirrobert I see, I was sort of silently omitting the 'eq...' in my mental parser =)
that has some neat power to it.
r: my %h; say %h<x> // 'x' eq 'x' 16:41
p6eval rakudo efde6e: OUTPUT«True␤»
sirrobert r: <<Foo>>.WHAT 16:43
p6eval rakudo efde6e: ( no output )
sirrobert r: say <<Foo>>.WHAT
p6eval rakudo efde6e: OUTPUT«Str()␤»
masak sirrobert: 'eq' is tighter than '//', so the above probably doesn't mean what you want it to mean. 16:46
16:46 benabik joined
sirrobert masak: thanks 16:46
was just testing precedence
masak r: my %h = x => 42; say %h<x> // 'x' eq 'x' 16:47
p6eval rakudo efde6e: OUTPUT«42␤»
masak well, your case didn't exhibit the precedence ;)
by the way, S03 has a precedence table which you might find useful.
that's how I checked which one was tightest. 16:48
sirrobert great! thanks
masak huh! the programming language Idris has a "so" data type "which guarantees that the value is true". I wonder if this was inspired by Perl 6, or if it's just convergent evolution. 16:53
sirrobert what's p6's equivalent?
16:57 avar left, avar joined
colomon sirrobert: I think he's thinking of "but true" 16:58
sirrobert ah
17:01 birdwind1pbird left
masak no, I'm thinking of the Perl 6 function 'so', which boolifies values at a looser precedence than prefix:<?> 17:01
sirrobert didn't know about that 17:02
colomon but p6 so isn't a data type...
masak indeed it is not.
sirrobert but that may be the Idris conceptual equivalent of the p6 version
17:03 dakkar left
masak yes, I got that feeling. 17:03
sirrobert just spent 30 minutes learning the difference between <<>> and Q<<>> =) 17:06
masak are you sure you don't want <> ? 17:08
r: .say for <foo bar baz>
p6eval rakudo efde6e: OUTPUT«foo␤bar␤baz␤»
sirrobert I was using <<>> to quote things
which apparently works except in some cases =)
masak <<>> isn't completely implemented in Rakudo. 17:09
sirrobert now I realize that <<>> is a ... method postfix thing
masak I don't know about Niecza.
a "method postfix thing"? it's a circumfix quoting operator.
sirrobert r: sub f (Str $s) {say $s}; f(<<Foo Bar>>);
p6eval rakudo efde6e: OUTPUT«Nominal type check failed for parameter '$s'; expected Str but got Parcel instead␤ in sub f at /tmp/VbcEaZreAv:1␤ in block at /tmp/VbcEaZreAv:1␤␤»
sirrobert r: sub f (Str $s) {say $s}; f(Q<<Foo Bar>>); 17:10
p6eval rakudo efde6e: OUTPUT«Foo Bar␤»
sirrobert I had been using <<>> as Q<<>> 17:11
ohhhh .<<>> is the method postfix operator
I missed the .
well, then I don't know what the issue was, except that <<>> breaks function calls and Q<<>> doesn't =)
masak there's no .<<>> method postfix operator as far as I know. 17:12
sirrobert www.perlfoundation.org/perl6/index....kup_tablet
masak there's @things>>.foo
sirrobert in the table of precedence in the Operators section.
L . Method postfix . . . . .meth .+ .? .* .() .[] .{} .<> .<<>> .:: .= .^ .:
masak oh, sorry. 'course
yes, that's hash access. 17:13
sirrobert no idea what it does, I was just going off the tablet
masak r: my %h = foo => 42; say %h.<<foo>>
p6eval rakudo efde6e: OUTPUT«42␤»
sirrobert ahhh
masak I tend to write it without the dot.
r: my %h = foo => 42; say %h<<foo>>
p6eval rakudo efde6e: OUTPUT«42␤»
sirrobert me too
masak can also use French quotes.
sirrobert it interpolates?
masak r: my %h = foo => 42; say %h«foo»
p6eval rakudo efde6e: OUTPUT«===SORRY!===␤Confused␤at /tmp/Uwg_RuCELx:1␤»
masak heh; that should work. 17:14
it does a shell-like interpolation, yes.
sirrobert my %h = foo => 42; my $f = "foo"; say %h<<$f>>;
masak but... not yet in Rakudo.
sirrobert r: my %h = foo => 42; my $f = "foo"; say %h<<$f>>;
p6eval rakudo efde6e: OUTPUT«Any()␤»
sirrobert ok
masak meh, the ECMA-262 v3 specification is so boring it makes me sad. :/ 17:16
sirrobert heh 17:17
17:22 kaare_ joined 17:26 nodmonkey joined 17:30 benabik left 17:33 benabik joined 17:37 avar left 17:38 avar joined 17:44 mucker left, crab2313 left 17:52 jeffreykegler joined 17:59 am0c left 18:05 am0c joined 18:06 Tedd1 left 18:09 jeffreykegler left 18:10 nodmonkey left 18:13 jeffreykegler joined 18:18 jeffreykegler left 18:19 leprevost left 18:21 leprevost joined 18:23 thelazydeveloper joined 18:52 spider-mario left 19:20 fhelmberger joined, benabik left 19:21 benabik joined 19:42 adu left 19:45 fhelmberger left, kaare__ joined 19:47 kaare_ left 19:48 kaare__ is now known as kaare_ 19:49 birdwindupbird joined
dalek rl6-roast-data: 6575718 | coke++ | p (2 files):
today
19:52
[Coke] wishes someone would update pugs so that it didn't have PIDs in the test output, making it harder to spot diffs between runs.
rjbs Disheartening: work for 7 hours, then see the diff stat is 5 files changed, 159 insertions(+), 77 deletions(-) 20:06
I don't know why. I just feel like I did more than that. :)
sirrobert sorry =) 20:07
rjbs It's okay, just don't let it happen again.
sirrobert I spent much of the day on SQL stuff (whug)
I garauntee it: today will never happen again.
r: sub foo (Hash %h) { say %h; }; foo { one => 1, two => 2, }; 20:10
p6eval rakudo efde6e: OUTPUT«Nominal type check failed for parameter '%h'; expected Associative but got Hash instead␤ in sub foo at /tmp/ccq2iOxdnq:1␤ in block at /tmp/ccq2iOxdnq:1␤␤»
sirrobert (How) do I do a hash literal?
a Hash is an EnumMap, which is an Associative... 20:11
colomon n: sub foo (Hash %h) { say %h; }; foo { one => 1, two => 2, }; 20:13
p6eval niecza v19-21-gc86e8e5: OUTPUT«{"one" => 1, "two" => 2}␤»
colomon oh
r: sub foo (%h) { say %h; }; foo { one => 1, two => 2, };
p6eval rakudo efde6e: OUTPUT«("one" => 1, "two" => 2).hash␤»
colomon Hash %h is a hash of hashes
if you just want a hash, you either need to say Hash $h or just %h
sirrobert r: sub foo (%h) { say %h; }; foo { one => 1, two => 2, };
p6eval rakudo efde6e: OUTPUT«("one" => 1, "two" => 2).hash␤»
sirrobert right, I keep forgetting that 20:14
the % makes it explicit anyway
thanks =)
mathw Evening 20:24
colomon sirrobert: it's not quite the same. %h is something like Associative $h... if you really want a Hash, you need to say Hash $h. or maybe %h where { %h ~~ Hash } 20:25
mathw: o/
mathw colomon: o/
tadzik japhb: I don't have any strong opinion on this, really
sirrobert colomon: hmm ok
tadzik but I think that the usecase of DESTDIR is mostly "I want to bundle this module somewhere" 20:26
20:28 am0c left
colomon sirrobert: but certainly the idiomatic way to do it would be %h unless you have a really good reason to do otherwise. 20:28
sirrobert When I create a deployable app, I want each app to have it's own modules
(to tadzik)
colomon: yeah. that'
colomon: yeah, that's what I settled on
colomon: thanks, btw, I would have been stuck on that for a while =) 20:29
colomon sirrobert: no worries, you're not the first person to make that mistake. ;)
sirrobert I like the quote that Perl 6 isn't intended to be a first language, but a last one. 20:30
I don't mind the learning curve; it's worth it for the power and elegance.
(hence my use if vim ;)
s/if/of/ 20:31
mathw all a language has to do for me is prove that learning curve is worthwhile 20:32
:)
and then manufacture a couple of days in which to start studying it
sirrobert Is there a way to execute a method on each object in a list of objects? 20:33
like, a good shorthand way
mathw @list.map: *.method;
benabik sirrobert: @list>>.method 20:34
sirrobert nice
ooh
two of them =)
mathw those aren't the same
sirrobert uh oh... syntax fight
mathw >>. executes potentially in parallel
sirrobert that's cool
mathw .map goes in order
benabik Which means if .method has side effects, it's better to use .map than >>.
sirrobert righto 20:35
mathw definitely, unless you know for sure they can happen in any order and simultaneously without making a mess
benabik nr: my @a = 1,2,3,4,5; @a.map: *.print; say; @a>>.print; say
p6eval rakudo efde6e: OUTPUT«␤53142␤»
..niecza v19-21-gc86e8e5: OUTPUT«===SORRY!===␤␤Unsupported use of bare 'say'; in Perl 6 please use .say if you meant $_, or use an explicit invocant or argument at /tmp/oip5v4aTv1 line 1:␤------> my @a = 1,2,3,4,5; @a.map: *.print; say⏏; @a>>.print; say[0…
benabik Hm. Right, I should test my demo snippets.
sirrobert heh
20:36 birdwindupbird left, am0c joined
benabik r: my @a = 1,2,3,4,5; @a.map(*.say) 20:36
p6eval rakudo efde6e: ( no output )
benabik expected output there. 20:37
r: my @a = 1,2,3,4,5; .print for @a; say ''; @a>>.print
p6eval rakudo efde6e: OUTPUT«12345␤53142» 20:38
benabik That's what I meant to demonstrate, even if map isn't cooperating with me.
sirrobert so my particular case is that I have a hash of objects (as values) and I want to call a method on a set of them (in a particular order)
this is super nice, syntactically:
r: my %h = { a => 1, b => 2, c => 3, }; %h<b a>.say;
p6eval rakudo efde6e: OUTPUT«2 1␤»
sirrobert ha!
benabik That is saying the array that the hash returned. 20:39
r: my %h = { a => 1, b => 2, c => 3, }; %h<b a>.perl.say;
p6eval rakudo efde6e: OUTPUT«(2, 1)␤»
sirrobert ohhh!
benabik Well, the parcel, I guess.
sirrobert well, then "ha."
=)
colomon r: my @a = 1,2,3,4,5; @a.map(*.say).sink
p6eval rakudo efde6e: OUTPUT«No such method 'sink' for invocant of type 'List'␤ in block at /tmp/iJQEJK4QnZ:1␤␤»
sirrobert ohhhhhh crud, I'm going to be late to meet my wife for dinner. bye p6
mathw bye sirrobert 20:40
benabik o/ sirrobert
colomon: Oh. Yet another sink context error?
colomon I reckon. hold on
r: my @a = 1,2,3,4,5; my @b = @a.map(*.say) 20:41
p6eval rakudo efde6e: OUTPUT«1␤2␤3␤4␤5␤»
benabik colomon++
colomon r: my @a = 1,2,3,4,5; my @b := @a.map(*.say)
p6eval rakudo efde6e: ( no output )
benabik So >>.method may run out of order but .map(*.method) may never run! :-D
timotimo is that lazyness in action?
benabik timotimo: That's a lazyness bug in action. :-D 20:42
colomon timotimo: my last example was, yes
benabik Oh, true. In that example it's not a bug.
colomon it's only a bug if you want the side-effects. ;)
benabik We need infix:<$!>
mathw haha 20:43
no we don't
that one always makes me uncomfortable
benabik It shouldn't. 20:44
`f $! x` just means be sure you evaluate x before passing it to f.
mathw yeah, but any use of strictness annotations makes me a bit nervous 20:46
I always feel like I shouldn't have to 20:47
and there are some semantic implications of having seq that are weird. I don't really understand that though. 20:48
20:53 kaare_ left
benabik In Haskell, $! lets the compiler know "no really, I'm going to need this value eventually". It can really keep down the space needed for computation. 20:55
tadzik p6rd: releasese 20:56
21:00 skids left 21:08 fridim_ joined 21:12 bruges left
[Coke] github.com/zag/ru-perl6-book ... a book about perl6 written in pod6, in russian. 21:13
but he uses pod6-in-perl5 to build the book. 21:14
21:14 bruges joined 21:16 benabik left 21:17 benabik joined 21:18 benabik left
rjbs [Coke]: ;) re: tpf gc email 21:20
21:21 fridim_ left 21:27 benabik joined 21:36 am0c left
japhb One of those idle thoughts while waiting for a very slow server to do something: I wonder if doing a Perl/Linux clone with Perl 6 wouldn't be a pretty good way to feel out the weak points in Perl 6's (or our implentations') *nix support ...\ 21:39
Just looking at the commands listed in that Perl/Linux screenshot make me think about a lot of fiddly system fiddling bits.
(Some of course are pretty trivial ... I'm thinking of the ones that aren't.) 21:40
21:41 atrodo joined, atrodo left 21:42 benabik left 21:43 spider-mario joined 22:14 bluescreen100 joined 22:16 alester left 22:21 jeffreykegler joined
moritz in Perl 22:23
22:24 flussence left 22:25 bluescreen10 left, bluescreen100 left
moritz and the wifi here is slow. ssh URLs work better than git:// urls 22:27
dalek kudo/nom: 7aeb019 | moritz++ | src/core/Exception.pm:
spelling
22:28
kudo/nom: 8ca98e1 | moritz++ | src/core/Exception.pm:
X::Placeholder::Mainline now inherits from X::Placeholder::Block
kudo/nom: 92899a2 | moritz++ | src/ (3 files):
s:g/package-type/package-kind/
kudo/nom: 13fee9c | moritz++ | src/ (2 files):
make X::Attribute::Undeclared subclass X::Undeclared
kudo/nom: 9c318f9 | moritz++ | src/ (2 files):
report parameter name in X::Parameter::Default
kudo/nom: 1e651ce | moritz++ | src/ (3 files):
awesomify X::Parameter::WrongOrder and X::Parameter::MultipleTypeConstraints
kudo/nom: 48e5e46 | moritz++ | docs/deprecations:
Add docs/deprecations

Authors of star and compiler release announcements may look here for deprecation notices.
ecs: fe14bc6 | moritz++ | S32-setting-library/Exception.pod:
X::NYI is really a class
22:29
specs: f95bbea | moritz++ | S32-setting-library/Exception.pod:
specs: [S32::Exception] fix typo
22:29 dalek left 22:30 dalek joined, ChanServ sets mode: +v dalek
jeffreykegler r: r: my $x = 1 ; say 42 ?? $x = 43 !! $x = 44; 22:36
p6eval rakudo efde6e: OUTPUT«===SORRY!===␤Confused␤at /tmp/eqp6WzAcIP:1␤»
jeffreykegler r: my $x = 1 ; say 42 ?? $x = 43 !! $x = 44;
p6eval rakudo efde6e: OUTPUT«44␤»
tadzik moritz: obtw, panda can install p6doc now
jeffreykegler Sorry about the first. The second is, according to S03, supposed to be a syntax error. 22:37
That is how I read the section on "Conditional operator precedence" 22:38
Btw, if it is not a syntax error, according to S03, 44 is indeed the right answer
22:39 leprevost left 22:43 skids joined
japhb moritz, don't forget to update doc/type-graph.txt for all of those exception inheritance changes. ;-) 22:45
22:45 nuba_ is now known as nuba
japhb moritz++ # docs/deprecations 22:46
23:24 whiteknight joined 23:25 whiteknight is now known as Guest12385