»ö« 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«defaultfoo» | ||
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«foobarbaz» | ||
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!===Confusedat /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«1234553142» | 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«12345» | ||
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!===Confusedat /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
|