»ö« 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:15
rgc left
00:28
wolfman2000 joined
00:34
tyatpi left
|
|||
lichtkind | yeah all entries have anchors | 00:38 | |
01:01
benabik left
01:05
benabik joined
01:07
envi_ left
01:12
alvis```` joined
01:13
alvis``` left
01:30
xinming left
01:36
colomon joined
01:41
cooper joined
01:42
lestrrat left
01:43
lestrrat joined
01:44
xinming joined
01:47
bacek left
01:49
bacek joined
|
|||
timotimo | is there some sql or ORM for perl6 yet? | 01:59 | |
perl6-sqlite! cute | |||
Could not find SQLite3:from<parrot> in any of: lib <- so, how do i install sqlite3 "into" parrot? | 02:00 | ||
masak: can you tell me how? it's your library. maybe because it's been untouched for 3 years, it's just not up to date? | 02:02 | ||
tadzik | I don't think there's any ORM available | ||
timotimo: you may want to use MiniDBI | |||
ISTR it's working | |||
timotimo | oh, actually Tene owns the repo. you awake? | 02:03 | |
02:03
fgomez joined
|
|||
Tene | I'm awake. | 02:04 | |
What do I own? | |||
02:04
whiteknight left
|
|||
timotimo | Tene: the repository for perl6-sqlite | 02:04 | |
Tene | timotimo: sqlite used to be included in the parrot repo, but isn't any more | 02:05 | |
dunno where it went | |||
timotimo | ok | 02:06 | |
no worries then, i don't really need it, just looking around what there is to see | |||
you might want to add a README to your repo stating that, though | |||
sorear | timotimo: :from<parrot> does not exist in current versions of Rakudo | ||
Tene | that too, but I didn't want to get into that. | 02:08 | |
timotimo | i'll go to bed then, see what amazing things happen tomorrow | ||
Tene | timotimo: I'll give you commit privs; you can do it. | ||
timotimo | gack. all right | ||
Tene | github id? | ||
timo? | 02:09 | ||
yeah, that's you | |||
02:09
lumi_ left
02:18
aloha left,
lumi_ joined
|
|||
Tene | r: [*] 0, 0 ... * | 02:23 | |
p6eval | rakudo 8ead1e: OUTPUT«(timeout)» | ||
Tene | aww | 02:24 | |
;) | 02:25 | ||
02:29
aloha joined
|
|||
lichtkind | tadzik: > $*OSNAME is gone? | 02:36 | |
02:37
thou left
|
|||
lichtkind | itlooks liek but i found an artefakt | 02:39 | |
tene? | |||
tadzik | lichtkind: no idea | ||
02:40
thou joined
|
|||
lichtkind | in the syn $*Kernerl is reference as os name | 02:40 | |
tadzik | lichtkind: there's $*OS | ||
lichtkind | kernel | ||
no | |||
tadzik | r: say $*OS | ||
p6eval | rakudo 8ead1e: OUTPUT«linux» | ||
lichtkind | but according to spec it should be at least $*OSNAME | 02:41 | |
i now it was once $*OS | |||
r: say $*KERNEL | |||
p6eval | rakudo 8ead1e: OUTPUT«Dynamic variable $*KERNEL not found in method gist at src/gen/CORE.setting:8199 in sub say at src/gen/CORE.setting:6244 in block <anon> at /tmp/ZgjMipDT7m:1» | ||
lichtkind | r: say $*OSNAME | 02:42 | |
p6eval | rakudo 8ead1e: OUTPUT«Dynamic variable $*OSNAME not found in method gist at src/gen/CORE.setting:8199 in sub say at src/gen/CORE.setting:6244 in block <anon> at /tmp/XfEpk1wWxd:1» | ||
02:42
DarthGandalf joined
|
|||
lichtkind | phenny: say moritz "s28 say its $*KERNEL even there is an $*OSNAME artefact but rakudo still does $*OS" | 02:43 | |
hm | |||
phenny: hallo | |||
dalek | 02:44 | ||
sorear | phenny: tell moritz 19:43 < lichtkind> phenny: say moritz "s28 say its $*KERNEL even there is an $*OSNAME artefact but rakudo still does $*OS" | ||
phenny | sorear: I'll pass that on when moritz is around. | ||
lichtkind | thanks sorear | ||
02:47
agentzh joined
|
|||
lichtkind | phenny: tell moritz what is the right var vor the os name, i suspect *KERNEL and *DISTRO are recent | 02:48 | |
phenny | lichtkind: I'll pass that on when moritz is around. | ||
02:49
agentzh left
|
|||
lichtkind | good night | 02:50 | |
02:50
lichtkind left
02:57
orafu left,
orafu joined
03:03
chitragupt joined,
chitragupt left
03:37
sftp left
04:15
kaare_ joined
04:21
benabik left
04:32
envi_ joined
04:48
NamelessTee joined
04:51
BruceZu left
04:53
BruceZu joined
|
|||
moritz | o/ | 05:06 | |
phenny | moritz: 02:44Z <sorear> tell moritz 19:43 < lichtkind> phenny: say moritz "s28 say its $*KERNEL even there is an $*OSNAME artefact but rakudo still does $*OS" | ||
moritz: 02:48Z <lichtkind> tell moritz what is the right var vor the os name, i suspect *KERNEL and *DISTRO are recent | |||
geekosaur | ...do those have sane meanings on nonlinux? nonunix? | 05:07 | |
moritz | I have no idea | 05:08 | |
sorear | geekosaur: No | 05:09 | |
It's S28, it's not supposed to be sane. | |||
05:19
kaleem joined
05:39
envi_ left
05:44
birdwindupbird joined
05:46
wolfman2000 left
05:52
wtw joined,
wtw left,
wtw joined
06:06
alvis```` left
06:11
tarch joined
06:21
tokuhiro_ joined
06:51
skids joined
06:56
fhelmberger joined
|
|||
timotimo | is there a way to put an operator declaration that takes the class i'm in as first argument into the class body? | 06:58 | |
class Dog { method infix:<+>($o) { say "woof $o"; } }; my $d = Dog.new(); say $d + 4; | |||
p6: class Dog { method infix:<+>($o) { say "woof $o"; } }; my $d = Dog.new(); say $d + 4; | |||
p6eval | rakudo 8ead1e: OUTPUT«Cannot call 'Numeric'; none of these signatures match::(Mu:U \$v, Mu %_!) in method Numeric at src/gen/CORE.setting:644 in sub infix:<+> at src/gen/CORE.setting:2292 in block <anon> at /tmp/aIEkZ4MrLZ:1» | 06:59 | |
..niecza v16-17-g648c49b: OUTPUT«Unhandled exception: Cannot use value like Dog as a number at <unknown> line 0 (ExitRunloop @ 0)  at /home/p6eval/niecza/lib/CORE.setting line 261 (Any.Numeric @ 5)  at <unknown> line 0 (ExitRunloop @ 0)  at /tmp/n3Dj4jzo0K line 1 (mainline @ 4)  … | |||
..pugs: OUTPUT«*** Cannot cast from VObject (MkObject {objType = (mkType "Dog"), objAttrs = <Hash:0x7f65e3159219>, objOpaque = Nothing, objId = MkObjectId {unObjectId = 3}}) to Double (VNum) at /tmp/Wc8Vl6jrMP line 1, column 79-85» | |||
moritz | timotimo: I believe we've discussed that yesterday. There are mechanisms, but NYI | 07:12 | |
timotimo | neat, thanks | 07:13 | |
moritz | r: import (package A { sub f() is export { say 'in f' } }); f | 07:15 | |
p6eval | rakudo 8ead1e: OUTPUT«===SORRY!===CHECK FAILED:Undefined routine '&import' called (line 1)Undefined routine '&f' called (line 1)» | ||
timotimo | can i quote a couple of lines and remove either (the first line (must be empty) and common leading whitespace from all lines) or (common leading whitespace from the second and all following lines)? | 07:19 | |
07:20
colomon left
|
|||
moritz | I guess that's roughly what .indent(*) is supposed to do | 07:21 | |
but it hasn't been ported to nom yet :( | |||
timotimo | :( | ||
07:24
PZt left
07:27
NamelessTee left
|
|||
timotimo | so rakudo doesn't implement heredoc quoting yet? | 07:31 | |
moritz | nope | ||
timotimo | ok. how do i write multiline strings? | ||
moritz | my $x = 'foo | ||
bar'; | |||
or you can use my $x = q[foo | 07:32 | ||
bar | |||
baz]; | |||
timotimo | okay. little bit trickier: multiple multiline strings in a list? i seem to only get Confused for all my attempts | ||
moritz | r: say 1 | 07:33 | |
timotimo | oh, it was just a missing semicolon. now i get: Method 'STORE' not found for invocant of class 'Any' | ||
p6eval | rakudo 8ead1e: OUTPUT«1» | ||
moritz | r: my @a = q[ab], q[cd]; say @a.perl | ||
p6eval | rakudo 8ead1e: OUTPUT«Array.new("a\nb", "c\nd")» | ||
moritz | timotimo: are you using an our-scoped variable? | 07:34 | |
timotimo | you used say 1 to copypaste the nl character? :) | ||
yes, i am | |||
moritz | yes | ||
don't do that, there's a known bug :( | |||
r: our @a = 1, 2; | |||
p6eval | rakudo 8ead1e: OUTPUT«Method 'STORE' not found for invocant of class 'Any' in block <anon> at /tmp/3dVh4swma6:1» | ||
timotimo | ok | ||
moritz | it fails to initialize @a and %h | ||
timotimo | can i export it to other modules somehow? maybe with a simple sub that only returns that? | ||
moritz | yes | 07:35 | |
timotimo | ok | ||
well, it's rather like raw data anyways, it'd go through some thorough working first | |||
07:35
fglock joined
|
|||
timotimo | (i could do that at compile time! hooray for perl6!) | 07:35 | |
moritz | if you want to allow assignment to it from other packages, you need to write something like my @a; sub myvar() is rw is export { @a } | ||
timotimo | you know, this is my second attempt to do this exact thing. the first one was in c++. it was maddening - i'm quite not good at c++ any more | ||
moritz | timotimo: what are you writing? | 07:37 | |
timotimo | i want to experiment with dungeon crawling a bit - the idea is to make the player feel disoriented by making curved paths appear straight and extremely silly things like "portals" essentially | 07:39 | |
so for instance you'd go east from a room and end up entering the same room from the south side - now everything would be rotated | |||
the code itself should allow for a direct connection of one of the walls to another - but the random dungeon generator should never do that | 07:40 | ||
moritz | just make sure it doesn't confuse you while debugging :-) | ||
timotimo | other things include two parallel paths from one room to another with one being longer than the other | ||
that will be quite a bit harder :) | |||
moritz | well, if you store the stuff in a graph, you get no geometry by default | ||
timotimo | is there any library that's useful for event handling and positional output in terminals? | ||
it's going to be graph-based all right | 07:41 | ||
that was already in the "original design", but the execution was lacking :) | |||
[==] (minmax $str.lines».chars).bounds | 07:45 | ||
is this very perl6y for "are all lines equally long"? | |||
p6: [==] (minmax "aaabbbccc".lines».chars).bounds | 07:46 | ||
p6eval | rakudo 8ead1e, niecza v16-17-g648c49b: ( no output ) | ||
..pugs: OUTPUT«*** No such subroutine: "&minmax" at /tmp/WMsgC3CUfj line 1, column 7 - line 3, column 18» | |||
timotimo | oh but of course. | ||
p6: say [==] (minmax "aaabbbccc".lines».chars).bounds | |||
p6eval | pugs: OUTPUT«*** No such subroutine: "&minmax" at /tmp/ONpOhPcwWt line 1, column 11 - line 3, column 18» | ||
..rakudo 8ead1e, niecza v16-17-g648c49b: OUTPUT«True» | |||
moritz | r: say [==] "aaa\nbbb\nccc".lines>>.chars | ||
p6eval | rakudo 8ead1e: OUTPUT«True» | ||
moritz | r: say [==] "aaa\nbbb\nccdc".lines>>.chars | 07:47 | |
p6eval | rakudo 8ead1e: OUTPUT«False» | ||
timotimo | even better | ||
moritz | aye :-) | ||
timotimo | so, a PRE block in a function would be called before every call to the function and if the last statement in it doesn't return something that smartmatches with True, an exception is thrown? | ||
moritz | yes (but it's about boolification, not smarmatching) | 07:48 | |
timotimo | OK | ||
07:48
echo9 joined
|
|||
timotimo | boolification is what i get when i prepend something with a &, or was that a "?"? | 07:48 | |
echo9 | hi all | ||
moritz | timotimo: ? | 07:49 | |
echo9: hello | |||
timotimo | r: say ? "yes" | ||
p6eval | rakudo 8ead1e: OUTPUT«True» | ||
echo9 | here just for some headsup | ||
:) | |||
timotimo | thanks | ||
moritz | \o/ | ||
timotimo | mhhh, tasty headsoup | ||
can i easily set a message for the exception when the PRE block fails? | |||
echo9 | :P umm.. I want to know like whats really perl6 is for? | ||
am a newbie to perl world* | 07:50 | ||
moritz | timotimo: no. If you want that, you just write die "yourmessage" unless $expression; | ||
timotimo | mhm. | ||
moritz | echo9: Perl 6 is a general-purpose programming language | ||
echo9 | am an advanced c++/.net programmer just want to learn something new so that it can really add up to my resume :D | ||
moritz | echo9: so it's really used for "everything" | ||
timotimo | can preconditions and postconditions be turned off globally somehow? | ||
moritz | echo9: though is compilers aren't as mature as C++ and C# compilers yet, it's still much a work in progress | 07:51 | |
echo9 | general pupose? does that mean full code navigation control? loop structs etc.? | ||
moritz | timotimo: no. But we might want such an option eventually | ||
timotimo | good to know | ||
echo9 | I have one of my friends whos working on perl5 | 07:52 | |
moritz | echo9: yes. It has eerything you exepct from a programming language, and more | ||
echo9 | and he suggested me to go for it :D | ||
moritz | echo9: we have all sorts of control flow, object orientation, functional features, regexes and grammars for parsing, exceptions and so on | ||
echo9 | Thanks moritz :) and what about platform dependency? (perl5 is fine with that I guess? ) | ||
moritz | echo9: well, that depends more on the compilers than on the language... | 07:53 | |
echo9 | threads? parallel programming? | ||
moritz | echo9: we currently have two compilers that work on windows, linux and macos | ||
echo9 | linux would be my choice (always :D) | ||
timotimo | perl6 has an implementation that runs on microsoft .net and mono, that one's called "niecza". the other one, "rakudo", uses the parrot virtual machine. it works on linux at least, i have no idea about windows, but probably there, too | ||
moritz | echo9: those are in planning; not much implemented yet in terms of threads and concurrency | 07:54 | |
echo9 | rakudo hmm.. yeah read some articles on that (still confused o_O ) | ||
moritz | echo9: well, C++ also has several different compilers | ||
echo9 | yep | ||
well time for me to go (at my work place now ;) ) | 07:56 | ||
moritz | have fun, and come back :-) | ||
echo9 | thanks moritz and timotimo :) | ||
timotimo | you're welcome! | ||
echo9 | sure :D | ||
c yall | 07:57 | ||
07:57
echo9 left
|
|||
timotimo | how come this works: my @lines = $str.lines.grep *.trim; but this doesn't: my @lines = $str.lines.grep { .trim }; | 08:08 | |
it would say "couldn't parse blockoid. couldn't find }" | |||
08:08
pjcj left
|
|||
moritz | needs to be grep: { .trim } | 08:09 | |
or grep({.trim}) | |||
geekosaur | so LTA message | ||
moritz | if you put neither : nor ( after a method call, Perl assumes that you don't pass an argument to it | ||
so you get two terms in a row | |||
timotimo | that's what the : is there? i see. | ||
moritz | std: .grep { .foo } | ||
p6eval | std 5740094: OUTPUT«===SORRY!===Unexpected block in infix position (method call needs colon or parens to take arguments) at /tmp/nalD1H0Ihq line 1:------> .grep ⏏{ .foo } expecting infix or meta-infixParse failedFAILED 00:01 109m»… | ||
timotimo | how come Sorry messages often give so little information about the context? | 08:12 | |
no file or line number? | |||
moritz | r: .grep { 1 } | ||
p6eval | rakudo 8ead1e: OUTPUT«===SORRY!===Confusedat /tmp/l91QmN6BNZ:1» | ||
moritz | timotimo: example? | ||
timotimo: in general the answer is "because we haven't fixed it yet" | 08:13 | ||
timotimo | ===SORRY!=== Not enough positional parameters passed; got 1 but expected 2 ... if i knew where it happens exactly, i could tell you ;) | ||
moritz | that's likely an internal error somewhere | ||
running with --ll-exception might give more information | |||
timotimo | r: r: say "oh my\noh my my".lines.grep *.trim; | 08:14 | |
p6eval | rakudo 8ead1e: OUTPUT«===SORRY!===Confusedat /tmp/qJQk_8fsaa:1» | ||
timotimo | nope. | ||
r: say "oh my\noh my my".lines.grep *.trim; | |||
p6eval | rakudo 8ead1e: OUTPUT«Not enough positional parameters passed; got 1 but expected 2 in method grep at src/gen/CORE.setting:1045 in block <anon> at /tmp/lFvquhLpEu:1» | ||
timotimo | but i suppose that's because there has to be a : or { .. }? | ||
moritz | it parses as (.lines.grep()) * ($_.trim) | 08:15 | |
so you get a runtime error about .grep not getting a matcher | |||
timotimo | right | ||
that makes sense | |||
what could cause Method 'gimme' not found for invocant of class 'Str'? | 08:16 | ||
moritz | r: gather loop { take 1 } | 08:17 | |
p6eval | rakudo 8ead1e: ( no output ) | ||
moritz | r: eager gather loop { take 1 } | ||
p6eval | rakudo 8ead1e: OUTPUT«(timeout)» | ||
moritz | r: my @a = gather loop { take 1; last } | ||
p6eval | rakudo 8ead1e: OUTPUT«Method 'eager' not found for invocant of class 'Integer' in sub coro at src/gen/CORE.setting:4805 in method reify at src/gen/CORE.setting:4786 in method reify at src/gen/CORE.setting:4557 in method reify at src/gen/CORE.setting:4557 in method gimme at src… | ||
moritz | timotimo: likely another rakudobug :( | ||
timotimo: you seem to discover quite a number of rakudo limitations and bugs today :/ | |||
timotimo | oh my, sorry about that ;) | 08:19 | |
it's obviously the case that most rakudo users try to tread softly whereas i'm doing the elephant in the porcelain store | |||
... thing ... | |||
so anyway. i was trying to map over the lines and cut off the first N characters for each line. the code looks something like this now: @lines.map({ $_[$init_spaces..*] }).join("\n"); | 08:20 | ||
moritz | timotimo: just make sure to reduce the newly found bugs to something small, and submit them | ||
timotimo | r: my $init_spaces = 3; say " foo\n bar\n baz".lines.map({ $_[$init_spaces..*] }).join("\n"); | 08:21 | |
p6eval | rakudo 8ead1e: OUTPUT«Method 'gimme' not found for invocant of class 'Str' in method postcircumfix:<[ ]> at src/gen/CORE.setting:1147 in block <anon> at /tmp/xoO2TzGDMW:1» | ||
moritz | uhm | ||
timotimo | is that completely wrong? | ||
moritz | you try to .[]-index strings | ||
that's wrong | |||
timotimo | oh, that's not how i would slice strings? | ||
moritz | use .substr($startpos) instead | ||
timotimo | hm, ok | ||
moritz | r: my $init_spaces = 3; say " foo\n bar\n baz".lines.map(*.substr($init_spaces).join("\n") | 08:22 | |
p6eval | rakudo 8ead1e: OUTPUT«===SORRY!===Unable to parse postcircumfix:sym<( )>, couldn't find final ')' at line 2» | ||
moritz | r: my $init_spaces = 3; say " foo\n bar\n baz".lines.map(*.substr($init_spaces)).join("\n") | ||
p6eval | rakudo 8ead1e: OUTPUT«foobar baz» | ||
moritz | r: say "foo"[0] | 08:23 | |
p6eval | rakudo 8ead1e: OUTPUT«foo» | ||
moritz | r: say "foo"[1] | ||
p6eval | rakudo 8ead1e: OUTPUT«.[1] out of range for type "foo" in method gist at src/gen/CORE.setting:8199 in sub say at src/gen/CORE.setting:6244 in block <anon> at /tmp/aU4e0RIjup:1» | ||
moritz | r: say "foo"[1..4] | ||
p6eval | rakudo 8ead1e: OUTPUT«.[1] out of range for type "foo" in method gist at src/gen/CORE.setting:8199 in method gist at src/gen/CORE.setting:4201 in sub say at src/gen/CORE.setting:6244 in block <anon> at /tmp/7I2GjCOvTG:1» | ||
timotimo | r: say "foo"[1..*] | ||
p6eval | rakudo 8ead1e: OUTPUT«Method 'gimme' not found for invocant of class 'Str' in method postcircumfix:<[ ]> at src/gen/CORE.setting:1147 in block <anon> at /tmp/1ZiRf7yMZW:1» | ||
timotimo | there it is | ||
moritz | timotimo++ | ||
moritz submits rakudobug | |||
timotimo | r: my $init_spaces = 3; my @l = " foo\n bar\n baz".lines; @l .= map({ $_[$init_spaces..*] }).join("\n"); | 08:26 | |
p6eval | rakudo 8ead1e: OUTPUT«===SORRY!===Confusedat /tmp/a2CKJ8COjI:1» | ||
timotimo | um, excuse me | ||
r: my $init_spaces = 3; my @l = " foo\n bar\n baz".lines; @l .= map(*.substr($init_spaces)).join("\n"); | 08:27 | ||
p6eval | rakudo 8ead1e: OUTPUT«===SORRY!===Confusedat /tmp/2_Qzeg0YYv:1» | ||
timotimo | that's different from what i had locally, wait. | ||
never mind. | |||
08:27
domidumont left
08:44
pjcj joined
08:45
tarch left,
tarch_ joined
|
|||
timotimo | what's the best way to break out of two for loops from the innermost position? | 08:48 | |
i did a (gather for { for { } })[0] now, but that seems ugly | |||
Teratogen | last LABEL | 08:52 | |
??? | |||
oh wait that's perl 5 =/ | |||
08:52
PZt joined
|
|||
timotimo | i believe perl6 has that label thing, too. i don't know how to apply a label to a for, though | 08:52 | |
08:54
brrt joined
|
|||
timotimo | now i'm pretty confused. say $startx.WHAT; say $starty.WHAT; my $startpos = XYZ.new(:x<$startx>, :y<$starty>); gives Int()\nInt()\nType check failed in assignment to '$!x'; expected 'Int' but got 'Str' | 08:54 | |
?! | |||
Teratogen | I don't do Perl 6 yet | 08:55 | |
timotimo | oh, the < > make it a string? | ||
Teratogen is a Perl 6 beginner | |||
timotimo | yup, that was it | ||
08:55
dakkar joined
|
|||
timotimo | i'm a perl6 beginner, too. can you tell? :) | 08:55 | |
moritz | timotimo: rakudo doesn't implement labels either :/ | 08:59 | |
timotimo | OK | ||
moritz | the usual workaround is to use subroutines and return | ||
timotimo | right. | ||
turns out i need all the values anyway, in a hash from x/y coordinate to value. is take ($col, $line) => $value; a good way to get this? flattening seems to do weird things to me | 09:00 | ||
(0, 0) turns into "0 0" instead, for instance | 09:01 | ||
moritz | hash keys are strings by default | 09:05 | |
timotimo | well, that's sensible | 09:06 | |
which was the function one should override to make classes work well in that regard? | |||
what would produce "XYZ<8816625325255736383>" at the moment. | |||
moritz | my %h{Any}; | ||
but that will surprise your for non-value-types | 09:07 | ||
timotimo | i can see how | ||
moritz | it's probably better to go to two levels, %h{$col} //= {}; %h{$col}{$line} = $value; | ||
timotimo | my XYZ class is supposed to be an immutable class. i should be able to make that work well, right? | 09:08 | |
moritz | yes | 09:09 | |
timotimo | what's the secret trick? :) | ||
moritz | provide a method WHICH which only depends on the attributes, not on the memory address | ||
timotimo | ah, WHICH, that one i was looking for | ||
moritz | grep for 'method WHICH' in src/core/ | ||
timotimo | not sure what those mean ... would mine look something like "multi method WHICH(XYZ:U:) { "some string" } ? | 09:13 | |
moritz | multi method WHICH(XYZ:D:) { nqp::box_s("some string that depends on the attributes", ObjAt) } | 09:14 | |
there's a multi for the type object already | |||
timotimo | interesting. why would i need to do nqp things in my perl6 code? | ||
09:15
araujo left
|
|||
moritz | because we don't yet have primitives for boxing something into a type that's not the default | 09:15 | |
maybe in future you can write ObjAt('the string here') | |||
in fact I should implement that | |||
timotimo | mhm | ||
in the output i still get ("XYZ<-4306223074760605769>" => " ", "XYZ<-4306223074756436050>" => " ", ...).hash, though. some other method i need to implement? | 09:16 | ||
and what's that XYZ:D: thing in the signature? | |||
moritz | it means 'an object of type XYZ, and it must be defined (:D), and it is the invocant (:)" | ||
09:19
thou left
09:29
Timbus left
|
|||
timotimo | i'll try to get some sleep now | 09:29 | |
09:34
Timbus joined
|
|||
moritz | nqp: my @a := [1, 2, 3, 4]; nqp::say(@a) | 09:36 | |
p6eval | nqp: OUTPUT«4» | ||
moritz | nqp: say(5.sqrt) | 09:43 | |
p6eval | nqp: OUTPUT«Method 'sqrt' not found for invocant of class 'Integer'current instr.: '_block1000' pc 36 ((file unknown):38) (/tmp/t9BOXNpAj1:1)» | ||
09:49
domidumont joined
09:58
constantined left
|
|||
cognominal_ | TimToady, reading www.foo.be/docs/tpj/issues/vol1_1/t...-0002.html What is Perl 6, Jazz fusion? | 10:15 | |
or still some kind or cartoon music? :) | 10:16 | ||
geekosaur | dance. with multiple remixes being the norm... | 10:34 | |
10:36
zipf joined
10:50
pernatiy left
10:54
NamelessTee joined
10:59
araujo joined,
araujo left,
araujo joined
11:01
MayDaniel joined
11:03
benabik joined
11:19
wolverian left
11:22
orafu left
11:24
orafu joined
11:25
wolverian joined,
wolverian left
11:26
wolverian joined
11:32
benabik left
11:35
brrt left
11:37
fsergot joined
|
|||
fsergot | Hello #perl6 o/ | 11:38 | |
11:39
mucker joined
|
|||
moritz | \o fsergot | 11:39 | |
11:42
kaare_ left
11:43
zipf left
11:49
NamelessTee left
11:59
benabik joined
12:04
MayDaniel left
|
|||
fsergot | sleepy day.. :( | 12:05 | |
sjn | vewy, vewy sweepy day :) | ||
arnsholt | sjn: But that's ok. Holiday very soon now =D | 12:06 | |
12:06
brrt joined
|
|||
sjn | arnsholt: btw, have you seen this? gist.github.com/1711730 | 12:08 | |
arnsholt | Yes! I intend to attend | 12:11 | |
moritz | isn't cosimo near there too? | 12:13 | |
arnsholt | Yeah, he's at Opera in Oslo | ||
moritz | cosimo: are you coming too? :-) | ||
arnsholt | I talked to him once or twice in the canteen when I interned with them | ||
sjn | arnsholt: don't foreget to sign up :) | 12:17 | |
and do tell if you can host someone? (are you one the oslo.pm mailing list?) | |||
forget* | |||
arnsholt: also, if your employer wants to sponsor, then that would be awesome ;) | 12:18 | ||
(hint, hint) | |||
:D | |||
(not that we *need* it, it would just be nice to be able to pay dinner for everyone or something like that) | 12:19 | ||
arnsholt | There. Signed up | 12:25 | |
No room for guests at my place, unfortunately | |||
12:26
sftp joined
12:27
mucker left
|
|||
sjn | arnsholt: ook | 12:29 | |
12:30
PacoAir joined
12:46
pernatiy joined
12:50
fgomez left
12:53
birdwind1pbird joined
|
|||
arnsholt | Whee. The Stanford graphical model course talks about the Ising model | 12:55 | |
I'm sure moritz approves =) | 12:56 | ||
moritz | arnsholt: Ising in how many dimensions? :-) | 13:00 | |
2D is challenging, but solvable | 13:01 | ||
sjn is a big fan of 0D | 13:02 | ||
a.k.a. "Boolean" | 13:03 | ||
sjn imagines -1D would be a "Maybe" type | 13:05 | ||
sjn shuts up now and goes back to $work | |||
arnsholt | moritz: Only 2D, and not full-on solution. Just used as an example, thankfully | 13:06 | |
moritz | arnsholt: makes sense | 13:08 | |
visualizing an iterative solution, or something? | |||
13:08
bbkr1 left
|
|||
arnsholt | Not even that, at least not yet | 13:08 | |
13:09
bbkr1 joined,
PZt left
|
|||
arnsholt | Just for talking about undirected graphical models and features and such over them | 13:09 | |
It might turn up again once the course starts talking about inference and such though | |||
13:15
envi_ joined
|
|||
cosimo | moritz: i hope so | 13:19 | |
moritz | cosimo: that's great. I hope so too :-) | 13:20 | |
13:22
kaleem left
|
|||
[Coke] | # 04/02/2012 - rakudo++ ; niecza (97.53%); pugs (39.44%) | 13:23 | |
"niecza", 20345, 1, 748, 1531, 22625, 23783 | |||
"pugs" , 8229, 0, 3021, 1346, 12596, 23592 | |||
"rakudo", 20860, 283, 632, 1895, 23496, 24026 | |||
looks like rakudo started failing some tests yesterday. | |||
283, up from 45. | 13:24 | ||
moritz | :( | ||
passes all tests here | |||
[Coke]: are you sure your t/spec/ isn't hung up or so? | |||
13:25
skids left
|
|||
moritz | S32-exceptions/misc.rakudo passed 166 unplanned test(s) | 13:25 | |
that's weird | 13:26 | ||
hm, this file doesn't have test plan | 13:27 | ||
so if it dies, that might be what it reports | |||
dalek | ast: 5e0af50 | moritz++ | S32-exceptions/misc.t: [throws_like] avoid undef warnings for matchers |
13:31 | |
13:32
kaleem joined
13:35
colomon joined
|
|||
tadzik | fsergot: sleepy? Speak for yourself, I had a sleepless night :) | 13:38 | |
and well, that does make a day a bit sleepy, yes | 13:39 | ||
[Coke] | moritz: perlcabal.org/~coke // *.out | 13:42 | |
13:42
mucker joined
|
|||
[Coke] | S26 is failing a lot here. | 13:42 | |
moritz | [Coke]: which is why I have been wondering if your t/spec/ is out of date | 13:43 | |
[Coke]: I've change $=POD to $=pod in both rakudo and t/spec/ | 13:44 | ||
[Coke]: and it seems to have picked up only the changes from rakudo | |||
dalek | ast: dc6ffd8 | coke++ | test_summary: rakudo, at least, runs S26 tests. |
||
[Coke] | the test scripts give each copy of p6 its own t/spec | 13:45 | |
... and yes, it's from Mar 7. wtf. | 13:46 | ||
gist.github.com/1476841#file_spec_r | 13:47 | ||
that's the "run rakudo" spec test. I am clearly /attempting/ to update t/spec | 13:48 | ||
moritz | I guess 'git rb' is an alias for 'git pull --rebase'? | ||
[Coke]: please cd to rakudo/t/spec and see if 'git status' reports anything interesting | 13:49 | ||
[Coke] | unsaved changes. and yes. | ||
must have used it to poke at something in t/spec and forgot to wipe the slate. | |||
[Coke] suspects colomon will start to cry after today's run. ; | 13:50 | ||
;) | |||
colomon | noooooo! | ||
[Coke] | the other 2 repos had no such blockers in t/spec | ||
colomon | what's wrong? |