»ö« 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[a␤b], q[c␤d]; 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 "aaa␤bbb␤ccc".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 "aaa␤bbb␤ccc".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-infix␤Parse failed␤FAILED 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!===␤Confused␤at /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!===␤Confused␤at /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«foo␤bar␤ 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!===␤Confused␤at /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!===␤Confused␤at /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?
[Coke] I'll just add a note to the history that rakudo's been fighting under a disadvantage. 13:51
moritz colomon: just rakudo passing more tests than [Coke]++'s runs have shown
[Coke] colomon: rakudo's t/spec has been stale since march 7th or so.
tadzik eek
13:52 tokuhiro_ left
colomon was just celebrating getting a clean spectest run from Niecza for the first time in ages. 13:52
[Coke] will just let the next daily run go. we'll have fresh numbers in 3 hours or so. 13:55
13:58 JimmyZ_ joined
colomon ... and now niecza has a failing test again. :\ 14:01
14:04 leprevost joined
jnthn o/ 14:13
jnthn about for a short while before he goes for $flight 14:14
colomon \o
tadzik \o 14:15
fsergot tadzik: not good :P
dalek ast: e1f01c0 | (Solomon Foster)++ | S12-enums/misc.t:
Fudge new test for Niecza.
14:16 lichtkind joined
tadzik fsergot: I'm used to it :) And I have two exams behind me, so the day's good anyway :) 14:17
lichtkind hai tadzik
tadzik if GLS hurried up, the day'd be Very Good :)
hello lichtkind
14:18 tarch_ left, tarch__ joined
lichtkind you cant resolve my $*Kernel question? 14:19
tadzik I don't think so, I'm completely green in this subject :/
lichtkind maybe best i look when tim is around 14:20
14:22 wtw left 14:26 lichtkind left 14:29 tarch__ left 14:38 lichtkind joined
lichtkind shiii have to change my os 14:39
tadzik: any suggestions for me?
fsergot tadzik: How were your exams? :) 14:42
jnthn -> airport, home in ~22 hours 14:46
timotimo good * #perl6 14:51
lichtkind hai timotimo 14:58
jnthn: o/
15:01 skids joined
lichtkind moritz: i maybe found the problem 15:01
its in installing URI
in that testsuite i get the error in escape.t 15:02
timotimo my WHICH is apparently still wrong 15:05
p6: class XYZ { has Int $.x; has Int $.y; has Int $.z = 0; multi method WHICH(XYZ:D:) { nqp::box_s("XYZ($.x $.y $.z)", ObjAt) } } my %h; %h{XYZ.new(0, 0)} = "hello"; %h{XYZ.new(0, 0)} = "world"; say %h{XYZ.new(0, 0)};
p6eval pugs: OUTPUT«*** ␤ Unexpected "XYZ"␤ expecting word character, "|", ":", "*", parameter name or ")"␤ at /tmp/F9AzY0mlyc line 1, column 75␤» 15:06
..niecza v16-17-g648c49b: OUTPUT«===SORRY!===␤␤Strange text after block (missing comma, semicolon, comment marker?) at /tmp/NqvupUp_9Y line 1:␤------> qp::box_s("XYZ($.x $.y $.z)", ObjAt) } }⏏ my %h; %h{XYZ.new(0, 0)} = "hello"; %h{␤␤Parse failed␤␤»…
..rakudo 8ead1e: OUTPUT«===SORRY!===␤Confused␤at /tmp/re4F_s4Vs2:1␤»
timotimo whoops.
p6: class XYZ { has Int $.x; has Int $.y; has Int $.z = 0; multi method WHICH(XYZ:D:) { nqp::box_s("XYZ($.x $.y $.z)", ObjAt) } }; my %h; %h{XYZ.new(:x(0), :y(0))} = "hello"; %h{XYZ.new(:x(0), :y(0))} = "world"; say %h{XYZ.new(:x(0), :y(0))};
p6eval pugs: OUTPUT«*** ␤ Unexpected "XYZ"␤ expecting word character, "|", ":", "*", parameter name or ")"␤ at /tmp/OlpVAolByl line 1, column 75␤»
..rakudo 8ead1e: OUTPUT«Any()␤»
..niecza v16-17-g648c49b: OUTPUT«world␤»
timotimo that's not what i meant to do actually
p6: class XYZ { has Int $.x; has Int $.y; has Int $.z = 0; multi method WHICH(XYZ:D:) { nqp::box_s("XYZ($.x $.y $.z)", ObjAt) } }; my %h; %h{XYZ.new(:x(0), :y(0))} = "hello"; %h{XYZ.new(:x(0), :y(0))} = "world"; say %h.perl;
p6eval rakudo 8ead1e: OUTPUT«("XYZ<-3377021848842683120>" => "hello", "XYZ<-3377021848846920162>" => "world").hash␤»
..niecza v16-17-g648c49b: OUTPUT«{"XYZ()<instance>" => "world"}.hash␤»
..pugs: OUTPUT«*** ␤ Unexpected "XYZ"␤ expecting word character, "|", ":", "*", parameter name or ")"␤ at /tmp/fkHx7Gwk1U line 1, column 75␤»
timotimo niecza surely seems to get it right 15:07
niecza: class XYZ { has Int $.x; has Int $.y; has Int $.z = 0; multi method WHICH(XYZ:D:) { nqp::box_s("XYZ($.x $.y $.z)", ObjAt) } }; my %h; %h{XYZ.new(:x(0), :y(0))} = "hello"; %h{XYZ.new(:x(0), :y(0))} = "world"; %h{XYZ.new(:x(99), :y(99)} = "bork bork bork"; say %h.perl;
p6eval niecza v16-17-g648c49b: OUTPUT«===SORRY!===␤␤Unable to parse argument list at /tmp/sfNfs_rNqW line 1:␤------> ew(:x(0), :y(0))} = "world"; %h{XYZ.new(⏏:x(99), :y(99)} = "bork bork bork"; say ␤Couldn't find final ')'; gave up at /tmp/sfNfs_rNqW line 1…
timotimo niecza: class XYZ { has Int $.x; has Int $.y; has Int $.z = 0; multi method WHICH(XYZ:D:) { nqp::box_s("XYZ($.x $.y $.z)", ObjAt) } }; my %h; %h{XYZ.new(:x(0), :y(0))} = "hello"; %h{XYZ.new(:x(0), :y(0))} = "world"; %h{XYZ.new(:x(99), :y(99))} = "bork bork bork"; say %h.perl;
p6eval niecza v16-17-g648c49b: OUTPUT«{"XYZ()<instance>" => "bork bork bork"}.hash␤» 15:08
15:08 lichtkind left
timotimo nope, not right. 15:08
15:09 REPLeffect left
timotimo p6: class XYZ { has Int $.x; has Int $.y; has Int $.z = 0; multi method WHICH(XYZ:D:) { nqp::box_s("XYZ($.x $.y $.z)", ObjAt) } }; my %h{Any}; %h{XYZ.new(:x(0), :y(0))} = "hello"; %h{XYZ.new(:x(0), :y(0))} = "world"; %h{XYZ.new(:x(99), :y(99))} = "bork bork bork"; say %h.perl; 15:09
p6eval rakudo 8ead1e: OUTPUT«(XYZ.new(x => 0, y => 0, z => 0) => "world", XYZ.new(x => 99, y => 99, z => 0) => "bork bork bork").hash␤»
..pugs: OUTPUT«*** ␤ Unexpected "XYZ"␤ expecting word character, "|", ":", "*", parameter name or ")"␤ at /tmp/14v3UP5mKm line 1, column 75␤»
..niecza v16-17-g648c49b: OUTPUT«===SORRY!===␤␤Postconstraints, and shapes on variable declarators NYI at /tmp/FTvjqVALp7 line 1:␤------> YZ($.x $.y $.z)", ObjAt) } }; my %h{Any}⏏; %h{XYZ.new(:x(0), :y(0))} = "hello"; %␤␤Unhandled exception: Check fail…
timotimo oh, so that's required. neat.
15:09 REPLeffect joined
timotimo i totally didn't realize that yesterday/this morning 15:11
15:17 ggoebel left 15:21 havenn joined, MayDaniel joined, kaleem left
moritz
.oO( it's "moritz explains stuff" day on p6l again )
15:25
15:30 birdwind1pbird left 15:32 MayDaniel left
moritz [Coke]: maybe you should add set -e to the top of your spectest script 15:32
[Coke]: that way it aborts when any of the commands fail. Will make it easier to detect such things in future 15:33
15:33 ggoebel joined
benabik `set -e` is your friend. I add it to the top of nearly all of my scripts. 15:33
moritz it's like the 'use strict;' of shell scripting 15:34
I use it way too little
oh, and it's way too hard to find the functionality of 'set -e' in the docs 15:35
'man bash-builtins' => a huge page
searching for 'set' is a nearly hopeless endeavor, way too many hits 15:36
15:36 Guest69907 left
moritz scrolling takes ages 15:36
15:36 xenu joined
benabik Biggest problem I have with set -e is that subshells don't cause a failure. So I have to ( foo; bar ) || exit $? 15:36
15:37 pernatiy left 15:38 NamelessTee joined
moritz github.com/bkase/git-paradox # nice 15:40
15:40 pernatiy joined 15:42 alester joined 15:45 fglock left 15:47 thou joined, Psyche^ joined 15:51 Patterner left, Psyche^ is now known as Patterner 15:52 JimmyZ_ left
timotimo what's the best way to loop until a list ("queue") is emptied while adding new elements from within the loop body? 15:56
moritz while @queue { ... } 15:57
and use shift and push inside the body 15:58
timotimo ok
15:59 tokuhiro_ joined
timotimo whoops, .perl takes a while for a hash that has another hash in it that has that first hash in it 16:02
moritz quite a while. 16:03
like, forever.
16:03 birdwind1pbird joined, tokuhiro_ left 16:04 p6eval left
timotimo yeah 16:04
hm, wouldn't it fill up the ram before forever? 16:05
moritz depends on whether you run a Turing machine or a DFA :-)
16:05 brrt left
timotimo :D 16:09
pmichaud r: say "foo"[0] 16:22
rakudo: say 'hello'
ENOP6EVAL 16:23
timotimo noooooooo
pmichaud Are strings supposed to recognize .[] ? I don't think they are/should, but perhaps I'm misremembering.
sorear good * #perl6 16:24
pmichaud: Any recognizes .[]
a string pretends to be a one-item list
pmichaud yes, but only to return self for .[0] and out-of-range for other stuff
okay, the example in rt #112216 seemed to imply that .[] could be used to index parts of a string
16:26 birdwind1pbird left
pmichaud anyway, I see the rakudobug... will fix. 16:27
16:28 GlitchMr joined
timotimo i wonder how hard a raycaster is to make ... 16:32
pmichaud fixed locally, spectesting
timotimo a question. if i want to bind a library that's written in C (and has an optional c++ api, too), would i do that with NativeCall? 16:36
would that be portable across niecza and rakudo? what about being future-proof?
arnsholt NativeCall/zavolaj is Rakudo-only, AFAIK 16:37
colomon not at all portable to Niecza yet
timotimo is it the only thing there is? is there maybe a more comfortable solution?
arnsholt I suppose that's something that'll be addressed at some point, but right now it's not
timotimo (i'll be trying to bind libtcod)
pmichaud I'm thinking of looking more at native call stuff at the p6 hackathon this month 16:38
tadzik fsergot: moderately well, they are just midterms so nothing critical (yet) :) 16:39
timotimo there is a C# version of libtcod. would that "just work" on niecza through some kind of magic? that's what .net was made for, right?
masak good evening, #perl6.
cognominal_ pmichaud, when do you expect bugs like rt.perl.org/rt3/Public/Bug/Display...?id=111288 to be fixed? 16:40
pmichaud cognominal_: whenever I (or someone) finds the energy/motivation to fix it :) 16:41
I might be able to take a look at it soon (next day or two)
[Coke] pmichaud++ 16:42
cognominal_ and the competency too, that's why that falls on your lap :)
I sound grumpy, but really, pmichaud++ 16:43
dalek kudo/nom: 1bbf9eb | pmichaud++ | src/core/Any.pm:
Fix slicing of non-lists with infinite ranges (RT #112216, timotimo++).
16:44
timotimo \o/ 16:45
thanks, pmichaud++
pmichaud > say "foo"[1..*]
>
> say "foo"[0..*]
foo
>
16:47 dakkar left 16:48 PZt joined
masak Tene: taking infinite time to calculate C<[*] 0, 0 ... *> feels kinda right to me. sure, we could introduce special-casing for 0 factors, but then the programmer will never feel the thrill of multiplying an infinite sequence into 0 ;) 16:52
(besides, such special-casing would couple infix:<*> and the reduction metaoperator in ways which are not necessarily beneficial.) 16:53
benabik masak: We'd need a generic way to cancel reduction. 16:54
Or, probably better, a generic way to specialize reduction. 16:56
16:57 pernatiy left
masak I can see the need for a generic way to exit a loop prematurely. I do not see the use case to exit a reduction prematurely. what's the use case, benabik? 16:57
benabik masak: [*] 0, 1, 2 ... * can exit the moment it sees the 0 16:59
masak that's the same use case as Tene's. 17:00
pmichaud iirc, the generic way to specialize reduction is to define prefix:<[*]>
masak I am not convinced. when would the user go, "oh, thank god my infinite list of factors short-circuited on the 0 I knew was in there!"? 17:01
benabik masak: There are several similar things. [&&] False, True, True;
[Coke] just stopping when you see a 0 isn't enough, though - you'd need to know you don't see any Failures/NaNs down th eline.
benabik When the user doesn't know there's a 0?
masak benabik: so it's either 0 or infinite loop?
also, what [Coke] said. 17:02
p6: say 0 * NaN
17:02 birdwindupbird left
[Coke] ENOEVALBOT 17:03
masak :(
benabik Blah weak typing. :-/
Does reduction pay any attention to short-circuiting?
timotimo how would i smartmatch in a given block against a string, like i would if i used eqv?
pmichaud short-circuiting [*] and [&&] feels like YAGNI
timotimo wrap it in / so it becomes a regex?
masak benabik: I agree about [&&]. it needs special-casing. but note that && *is* short-circuiting. * isn't.
benabik: in the sense that if the rhs of infix:<*> is 0, the lhs is still evaluated. 17:04
17:04 mucker left
masak er. other way around. 17:04
damn tricky left/right distinction :P 17:05
benabik Several languages do short circuit on values like 0 * _. But now that I think about it, they have stronger type systems, so you know you're dealing with ints and don't have to worry about NaN, failure, etc.
pmichaud note that [&&] doesn't short-circuit evaluation of its arguments
e.g., [&&] a(), b(), c(), d() 17:06
timotimo so one would have to have a lazy list first?
cognominal_ pmichaud, I have updated nqpq : gist.github.com/2293712 17:07
masak pmichaud: why not, ooc?
pmichaud masak: S03:4611
Similarly, list-associative operators that have the thunk-izing characteristics of 17:08
macros (such as short-circuit operators) lose those macro-like characteristics.
You can say
[||] a(), b(), c(), d()
to return the first true result, but the evaluation of the list is controlled
by the semantics of the list, not the semantics of C<||>.
cognominal_ pmichaud, with this update, World stuff works but ./nqpq -e 'grammar A { token TOP { a } }; A.parse("a")' gives invoke() not implemented in class 'Capture'
pmichaud cognominal_: I don't know if anyone's been maintaining nqpq since I worked on it last summer, so I'm not too surprised if it fails. 17:09
TimToady otoh, //= is useless as a cache idiom if it doesn't thunk the right side 17:10
cognominal_ pmichaud, at least, being written in nqp, it will be easier to maintain once it will work
pmichaud cognominal_: well, yes, that's kind of the point of nqpq. But I suspect it's easier for me to start a new nqpq from the existing nqp than it is to try to apply lots of patches to the existing one. 17:11
TimToady and if we thunkize the right side of //=, it's not a big stretch to other meta-ops
perl6: my $a = 1; $a //= die "oops" 17:12
cognominal_ pmichaud, I am not so sure. regexen seems to work (not tested much) but as I said, I have problems with grammars.
pmichaud ENOP6EVAL
TimToady oops
bbkr std: [()]{}
17:13 Chillance joined
pmichaud cognominal_: well, it has as much to do with my comfort level of fixes as it does with "what seems to work" 17:13
cognominal_ :)
pmichaud I'd be much more comfortable starting with the existing nqp code (known to work and in the current toolchain) than to try to patch up code that hasn't been touched much in eight months.
17:13 lateau joined
masak tadzik: feature request in Rakudo: =data 17:14
kthx
tadzik masak: do you have any particular usecase in mind? 17:15
17:15 lateau left
pmichaud afk here -- bank run and lunch 17:15
17:17 ggoebel left 17:18 ggoebel joined 17:24 lichtkind joined
masak tadzik: so, here's what happened. I started out doing a Perl 5 script with a __DATA__ section at the end. but before finishing it I really felt I needed the >>+=<< operator, so I switched to Perl 6. 17:24
but neither Rakudo nor Niecza does =data, so I had to workaround that part. 17:25
lichtkind hai masak 17:26
[Coke] I think data is nifty, but I rarely want it for things that I intend to use more than once. 17:27
masak lichtkind: konichiwa
[Coke] just as a one more =data point.
masak [Coke]: right, this was just a one-off script. 17:28
lichtkind [Coke]: to my current kephre writing style =data would be essential
#= even more so
masak [Coke]: actually, it started of as a \s-separated data file, and then I thought "hey, I can write the script in the same file without even leaving vim!" :)
lichtkind masak: do you know if $*KERNEL is official
masak lichtkind: S28 buyer beware grain of salt here be dragoons :) 17:29
[Coke] we just need to make perl scripts like .xlsx files; the .pl is really a .zip, and all the data and code is inside. :) 17:30
rakudo is back down to the 30 failures from months ago.
17:30 havenn left
[Coke] # 04/03/2012 - rakudo++ ; niecza (95.46%); pugs (38.61%) 17:30
"niecza", 20345, 1, 749, 1531, 22626, 24040
"pugs" , 8229, 0, 3021, 1346, 12596, 23849
"rakudo", 21311, 30, 636, 1897, 23874, 24050
masak [Coke]++ 17:31
17:34 fhelmberger left
dalek ast: 97359c6 | coke++ | test_summary:
pugs runs some S01 tests
17:34
tadzik masak: sounds sensemaking. I'll try to tackle this once I catch up with sleeping 17:38
colomon does std parse =data? 17:40
TimToady no
colomon that will make matters more difficult, I reckon. :)
17:41 fglock joined
TimToady std requires begin/end or for 17:42
[Coke] doesn't pod variables give you this already?\ 17:44
(or something very much like it?) 17:45
18:00 brrt joined
moritz r: say 0..0 ~~ 0..0 18:04
ENOP6EVAL
18:05 p6eval joined, ChanServ sets mode: +v p6eval
moritz r: say 0..0 ~~ 0..0 18:06
p6eval rakudo 57a681: OUTPUT«True␤»
moritz r: say 0..0 ~~ 0..1
p6eval rakudo 57a681: OUTPUT«False␤»
18:09 pernatiy joined
colomon n: say 0..0 ~~ 0..1 18:09
p6eval niecza v15-6-gefda208: OUTPUT«False␤»
masak p6: say 3..4 ~~ 1..5 18:12
p6eval rakudo 57a681, niecza v15-6-gefda208: OUTPUT«False␤»
..pugs: OUTPUT«␤»
18:12 havenn joined
masak ponders the pros and cons of spec'ing Range ~~ Range as doing a "compatibility"/subset check 18:16
18:17 spider-mario joined
masak spider-mario! \o/ 18:18
moritz masak: all(range1) ~~ range2 already does the subset check 18:19
though probably not very efficiently
spider-mario good evening :)
masak and it contains a discretization step, which feels inelegant.
spider-mario or whatever part of the day you are in
masak is in a train :) 18:20
spider-mario :D
from where to where, if I may ask?
masak from slightly before sunset to late night. 18:21
spider-mario :D (bis)
dalek kudo/nom: 4373f09 | moritz++ | src/core/ (2 files):
throw typed X::OutOfRange exception from Any.at_pos
tadzik good just-evening spider-mario :)
masak I prefer going in this direction. but my seat is facing the other way.
spider-mario 20:22 here 18:22
(8:22 PM)
masak ooh, that's my time as well ;)
masak looks around to see if he can spot spider-mario :)
spider-mario I’m currently in Rouen (France) 18:23
that’s where I study
masak merveilleux.
spider-mario certes. :) 18:24
sorear o/ masak, spider-mario
brrt r: our @foo = Rat(2.sqrt).nude
p6eval rakudo 57a681: OUTPUT«Method 'STORE' not found for invocant of class 'Any'␤ in block <anon> at /tmp/FKxpycXkP6:1␤␤»
brrt perl6: our @foo = Rat(2.sqrt).nude 18:25
p6eval pugs: OUTPUT«*** No such method in class Rat: "&nude"␤ at /tmp/H6uXnaUwyI line 1, column 12 - line 2, column 1␤»
..niecza v15-6-gefda208: OUTPUT«Unhandled exception: Unable to resolve method postcircumfix:<( )> in class Rat␤ at /tmp/lJFTWjzdWZ line 1 (mainline @ 3) ␤ at /home/p6eval/niecza/lib/CORE.setting line 3842 (ANON @ 3) ␤ at /home/p6eval/niecza/lib/CORE.setting line 3843 (module-CORE @ 65)…
..rakudo 57a681: OUTPUT«Method 'STORE' not found for invocant of class 'Any'␤ in block <anon> at /tmp/e2ko1VfZ77:1␤␤»
masak sorear! \o/
spider-mario \o
brrt our $foo = Rat(2.sqrt).nu
perl6: our $foo = Rat(2.sqrt).nu 18:26
p6eval niecza v15-6-gefda208: OUTPUT«Unhandled exception: Unable to resolve method postcircumfix:<( )> in class Rat␤ at /tmp/aYz5FrMQjo line 1 (mainline @ 3) ␤ at /home/p6eval/niecza/lib/CORE.setting line 3842 (ANON @ 3) ␤ at /home/p6eval/niecza/lib/CORE.setting line 3843 (module-CORE @ 65)…
..rakudo 57a681: OUTPUT«Method 'nu' not found for invocant of class 'Rat'␤ in block <anon> at /tmp/vM9LGy4fvb:1␤␤»
..pugs: OUTPUT«*** No such method in class Rat: "&nu"␤ at /tmp/hvMdWSi_E5 line 1, column 7 - line 2, column 1␤»
brrt fair enough.. does anyone know why rakudo acts the way it does?
[Coke] p: say 3.Int
p6eval pugs: OUTPUT«3␤»
[Coke] p: "\o/".say
p6eval pugs: OUTPUT«\o/␤»
brrt why can't i assign anything to an array? 18:27
timotimo how do i given-when for strings? smartmatch seems to want to cast the string to Num
r: given "foo" { when "foo" { say "foo!" }; default { say "bar"; } ; } 18:28
p6eval rakudo 57a681: OUTPUT«foo!␤»
timotimo well, that's embarassing
my confusion seems to come from a lack of line numbers in error messages ... again :\
brrt r: say <2/6>.perl 18:29
p6eval rakudo 57a681: OUTPUT«"2/6"␤»
brrt p: say <2/6>.perl
p6eval pugs: OUTPUT«"2/6"␤»
18:30 jferrero left
brrt p6eval: say "foobar".graphs 18:32
moritz brrt: try it with 'my', not 'our'
brrt: rakudo has a regression with 'our' arrays and hashes, but we use them so seldomly it took some time to notice
timotimo ah, i've tried to use the outer topicalizer, forgetting that it gets overwritten by given ... 18:33
brrt moritz: that works :-)
thanks 18:34
dalek albot: 51491c5 | moritz++ | sync.pl:
synchronization script
18:35
albot: 3d5677e | moritz++ | sync.pl:
fix thinko
18:39
albot: 97ff805 | moritz++ | sync.pl:
chdir before syncing
18:40
GlitchMr perl6: print 10..1 18:41
p6eval pugs, rakudo 4373f0, niecza v15-6-gefda208: ( no output )
GlitchMr Am I not understanding something?
benabik Ranges can't be backwards. 18:43
p6: print 10...1
p6eval rakudo 4373f0, niecza v15-6-gefda208: OUTPUT«10987654321»
..pugs: OUTPUT«*** ␤ Unexpected "1"␤ expecting operator, ":", "," or term postfix␤ at /tmp/lBOSIi3Jrd line 1, column 12␤»
18:44 vlixes joined
lichtkind TimToady: can i have official approve that $*OS and $*OSNAME are dead? 18:44
GlitchMr This is confusing...
tadzik lichtkind's back!
lichtkind: about OS, what are you running now?
GlitchMr But I guess it makes sense with arbitary ranges... 18:45
masak someone needs to reach into the Unicode consortium and physically stop them. www.unicode.org/charts/PDF/U1F300.pdf
tadzik yeah, that is far beyond any border of sanity and sense
masak "ear of maize"? "bento box"? "woman with bunny ears"!?
18:46 jferrero joined
moritz published on April 1st? 18:46
lichtkind tadzik: ubuntu but im about to change to fedora or mint
masak moritz: I wish.
[Coke] hopes PerlJam and pmichaud are nowhere near those tornados.
tadzik lichtkind: I have no experience with Fedora, but I find Mint more friendly than Ubuntu, and I Mint is the one I usually direct to newbies. What drives you off Ubuntu though? 18:47
FRONT-FACING BABY CHICK 18:48
does any Unicode guy/gal really believe that anyone, ever, is going to use characters of this sort?
sorear 3 earth globes!
masak somewhere, in a Unicode meeting, someone must have been discussing whether to include both "baby chick" and "front-facing baby chick". /o\
lichtkind tadzik: i like unitiy in next 2 generations it will be awesawesome but i simple dont like it when an os crashes when i have running flash +another vid player
tadzik "Great, we have sooooo many code points, let's fill them with BS"
sorear tadzik: I think that most of these are interop with the in-house code pages of Japanese cell carriers 18:49
tadzik "Surely we won't need them later"
GlitchMr INPUT SYMBOL FOR LATIN LETTERS...
Shouldn't this be part of GUI if anything and not separate character?
masak one would think.
"we need a symbol for the input of different types of symbols that we already have" 18:50
GlitchMr INPUT SYMBOL FOR MISC SYMBOLS?
tadzik sorear: so, like brother symbols, a japanese character and its meaning as a drawing, or such?
GlitchMr I wonder what next? Unicode characters which have to written in certain color... 18:51
Oh wait...
PerlJam looks outside ...
GlitchMr 1F499 BLUE HEART...
Seriously what?
PerlJam there's some wind, but not tornado :)
s/not/no/
vlixes 1F4B8 MONEY WITH WINGS
tadzik FROG FACE is awesome 18:52
moritz I don't see a publishing date in that PDF
GlitchMr vlixes, seriously, what they were drinking while doing this?
sorear tadzik: I think it's more like the cell carriers go "we have a few thousand empty slots in our codepage"
masak GlitchMr: UniCola. 18:53
tadzik masak: :D
. o O ( There's a character for that! )
sorear there's a large gap between 256 and 65536, and including additional kanji runs into extremely diminishing returns past 5000 or so
(the set of characters that all educated people are expected to use only numbers 2000) 18:54
tadzik NAIL POLISH 18:55
it would sound wrong in different context
GlitchMr January 31, 2012 18:56
...
vlixes GlitchMr, they need to get fun in some way I guess
GlitchMr Heh...
18:57 birdwindupbird joined
GlitchMr Soon, 32-bit will be not enough... 18:57
masak you Japanese lovers are so cute, referring to hanzi as "kanji"... :P
Teratogen is waiting for 128 bit processors to come into vogue
128 bit epoch!
WHOOP!
moritz wants a cluebat that works over the Internet 18:58
tadzik moritz: I presume there's a codepoint for that 18:59
18:59 GlitchMr left
masak FRONT-FACING CLUEBAT 18:59
moritz tadzik++
brrt is there a way to use matched character is the trans method, 19:00
benabik masak: head-facing cluebat
brrt say to uppercase only certain letters
masak brrt: sounds like you want .subst, not .trans
brrt ok :-) 19:01
masak r: $_ = "The answer is 2 + 2"; s[\d+ \s* '+' \s* \d+] = eval $/; .say 19:03
p6eval rakudo 4373f0: OUTPUT«Nominal type check failed for parameter '$code'; expected Str but got Match instead␤ in sub eval at src/gen/CORE.setting:443␤ in block <anon> at /tmp/1pU1SleqHo:1␤␤»
masak r: $_ = "The answer is 2 + 2"; s[\d+ \s* '+' \s* \d+] = eval ~$/; .say 19:04
p6eval rakudo 4373f0: OUTPUT«The answer is 4␤»
masak whoa.
I... whoa.
tadzik :)
masak rakudo++
moritz r: "foo"[2] 19:05
p6eval rakudo 4373f0: ( no output )
moritz r: use fatal; "foo"[2]
p6eval rakudo 4373f0: OUTPUT«Index out of range. Is: 2, should be in 0..0␤ in block <anon> at src/gen/CORE.setting:8217␤ in method at_pos at src/gen/CORE.setting:1169␤ in method postcircumfix:<[ ]> at src/gen/CORE.setting:1138␤ in block <anon> at /tmp/V3yAICnwR_:1␤␤»
moritz r: use fatal; "foo"[2..*]
p6eval rakudo 4373f0: ( no output )
tadzik r: use fatal; say "foo"[2..*] 19:06
p6eval rakudo 4373f0: OUTPUT«␤»
masak r: $_ = "The answer is either 2 + 2 or 40 + 2"; s:g[\d+ \s* '+' \s* \d+] = eval ~$/; .say 19:08
p6eval rakudo 4373f0: OUTPUT«The answer is either 4 or 42␤»
masak \o/
I don't understand anymore why I used to dislike the s[]= form so. it's awesome. 19:10
sorear masak: I don't understand how anyone could not like it either. 19:11
n: $_ = 'This... it is a STRING!'; s:g[\w+] .= flip; .say 19:12
p6eval niecza v15-6-gefda208: OUTPUT«===SORRY!===␤␤Malformed assignment operator at /tmp/GMd1lirM18 line 1:␤------> = 'This... it is a STRING!'; s:g[\w+] .=⏏ flip; .say␤␤Parse failed␤␤»
sorear n: $_ = 'This... it is a STRING!'; s:g[\w+] .=flip; .say
p6eval niecza v15-6-gefda208: OUTPUT«===SORRY!===␤␤Malformed assignment operator at /tmp/1NKm6wn_vy line 1:␤------> = 'This... it is a STRING!'; s:g[\w+] .=⏏flip; .say␤␤Parse failed␤␤»
sorear r: $_ = 'This... it is a STRING!'; s:g[\w+] .= flip; .say
p6eval rakudo 4373f0: OUTPUT«===SORRY!===␤Missing assignment operator␤at /tmp/5V25lEHn16:1␤»
sorear n: $_ = 'This... it is a STRING!'; s:g[\w+] ~= '!'; .say 19:13
p6eval niecza v15-6-gefda208: OUTPUT«This!... it! is! a! STRING!!␤»
masak clearly the .= form should work, though.
sorear aye 19:14
masak std: 'This... it is a STRING!'; s:g[\w+] .= flip; .say
p6eval std 1ad3292: OUTPUT«ok 00:00 42m␤»
masak STD.pm6 agrees. 19:15
masak submits rakudobug
moritz all the meta ops don't work
masak submits nieczabug
moritz masak: I think we already have a ticket for that
at least we have failing tests for += 19:16
masak ok, unsubmitting the rakudobug.
fsergot s:g[\w+] .= flip; how does it work? 19:17
lichtkind moritz: any thoughts why module URI fails?
fsergot like $_ ~~ ?
moritz fsergot: it doesn't. That's the problem.
lichtkind: no. You?
fsergot moritz: so, how should it work ? :) 19:18
masak fsergot: yes, it should substitute on $_
fsergot: the matched part is flipped, thanks to .=flip
fsergot Great, thanks. masak++ moritz++
masak fsergot: and it matches as many times as it can, thanks to :g
well, as many non-overlapping times as it can ;) 19:19
r: $_ = "babababababab"; s:g[bab] = "BAB"; .say
p6eval rakudo 4373f0: OUTPUT«BABaBABaBABab␤»
masak :D
moritz r: $_ = "babababababab"; s:ov[bab] = "BAB"; .say 19:20
p6eval rakudo 4373f0: OUTPUT«===SORRY!===␤Adverb ov not allowed on substitution␤at /tmp/SzM3kAbzkC:1␤»
fsergot Awesome, now it's clear! :) 19:21
19:21 lichtkind left
TimToady new RC entry: rosettacode.org/wiki/Runge-Kutta_method#Perl_6 19:21
fsergot r: $_ = "babababababab"; s:g[bab] ~= "BAB"; .say
p6eval rakudo 4373f0: OUTPUT«===SORRY!===␤Missing assignment operator␤at /tmp/sDzWeGykQC:1␤»
fsergot Right.. 19:22
:)
moritz hopes it does use Math::RungeKutta;
nope :( 19:23
masak :/
TimToady no, it's a demo of how to *implement* it
but feel free to add the other as an alternate solution :) 19:24
fsergot There can be two versions. :) 19:25
TimToady perl6: use Math::RungeKutta;
p6eval niecza v15-6-gefda208: OUTPUT«Unhandled exception: Unable to locate module Math::RungeKutta in @path␤ at /home/p6eval/niecza/boot/lib/CORE.setting line 1362 (die @ 3) ␤ at /home/p6eval/niecza/src/NieczaPathSearch.pm6 line 23 (NieczaPathSearch.load_module @ 13) ␤ at /home/p6eval/niecz…
..rakudo 4373f0: OUTPUT«===SORRY!===␤Could not find Math::RungeKutta in any of: lib, /home/p6eval/.perl6/lib, /home/p6eval/nom-inst1/lib/parrot/4.2.0-devel/languages/perl6/lib, .␤»
..pugs: OUTPUT«pugs: *** Unsafe function 'use' called under safe mode␤ at /tmp/s3iUmwK0o9 line 1, column 1␤»
19:25 literal left 19:26 avar left
fsergot Have to go. Good night #perl6 o/ 19:26
19:26 fsergot left
masak 'branoc, fsergone already :) 19:27
moritz star: use Math::RungeKutta;
19:27 p6eval left
masak p6eval-- 19:27
moritz feel free to install star on feather1, user p6eval
19:28 p6eval joined, ChanServ sets mode: +v p6eval
masak I'm soon getting off this train... :) 19:28
TimToady also, feel free to make rakudo grok the RC code :) 19:29
p6eval star 2012.01: OUTPUT«Can't chdir to '/home/p6eval/rakudo-star-2012.01/': No such file or directory at lib/EvalbotExecuter.pm line 179␤ EvalbotExecuter::_auto_execute('HASH(0x8a33c08)', 'use Math::RungeKutta;', 'GLOB(0x8addc60)', '/tmp/3ocA6fqOK3', 'star') called at lib/EvalbotExecuter.p…
19:29 avar joined, avar left, avar joined, literal joined, groky joined
PerlJam TimToady: cute use of unicode 19:30
(and by "cute" I mean something more akin to "appropriate" :)
19:31 lichtkind joined
TimToady though there's a deficiency in niecza that prevents use of numeric subscripts there 19:31
lichtkind shit crashed 4th tie today
TimToady and the modifier letter prime didn't work either
lichtkind: there is no $*OS any more, since that's an overly ambiguous concept
lichtkind and i suppose $*OSNAE too 19:32
TimToady and in any case, one should get the .name for some object
*from
so $*DISTRO.name or $*KERNEL.name or $*VM.name
lichtkind thats ny understanding just rakudo did otherwise 19:33
thanks you
TimToady perl6: my $y₁ = 42; say $y₁ 19:34
p6eval niecza v15-6-gefda208: OUTPUT«===SORRY!===␤␤Confused at /tmp/qNNs12psD8 line 1:␤------> my $y⏏₁ = 42; say $y₁␤␤Parse failed␤␤»
..rakudo 4373f0: OUTPUT«===SORRY!===␤Confused␤at /tmp/QO0eEXeWNI:1␤»
..pugs: OUTPUT«42␤»
TimToady perl6: my $yʹ = 42; say $yʹ
p6eval pugs, rakudo 4373f0: OUTPUT«42␤» 19:35
..niecza v15-6-gefda208: OUTPUT«===SORRY!===␤␤Confused at /tmp/lh8EHeQRjK line 1:␤------> my $y⏏ʹ = 42; say $yʹ␤␤Parse failed␤␤»
moritz eval: use utf8; 'ʹ' =~ /\w/
buubot_backup moritz: 1
moritz n: say so 'ʹ' ~~ /\w/ 19:36
p6eval niecza v15-6-gefda208: OUTPUT«False␤»
TimToady perl6: say so '₁' ~~ /\w/ 19:37
p6eval rakudo 4373f0, niecza v15-6-gefda208: OUTPUT«False␤»
..pugs: OUTPUT«*** No such subroutine: "&so"␤ at /tmp/CpRjh8cABh line 1, column 5 - line 2, column 1␤»
TimToady perl6: say so '¹' ~~ /\w/
p6eval rakudo 4373f0, niecza v15-6-gefda208: OUTPUT«False␤» 19:38
..pugs: OUTPUT«*** No such subroutine: "&so"␤ at /tmp/LjHj9ESo85 line 1, column 5 - line 2, column 1␤»
TimToady pugs: say '¹' ~~ /\w/ 19:39
p6eval pugs: OUTPUT«Error eval perl5: "if (!$INC{'Pugs/Runtime/Match/HsBridge.pm'}) {␤ unshift @INC, '/home/p6eval/.cabal/share/Pugs-6.2.13.20120203/blib6/pugs/perl5/lib';␤ eval q[require 'Pugs/Runtime/Match/HsBridge.pm'] or die $@;␤}␤'Pugs::Runtime::Match::HsBridge'␤"␤*** Can't locate P…
TimToady eval: use utf8; '¹' =~ /\w/
buubot_backup TimToady: No output.
TimToady eval: use utf8; print "yes" if '¹' =~ /\w/
buubot_backup TimToady: No output.
TimToady hmm 19:40
lichtkind what is |w?
masak word boundary. 19:41
PerlJam word character
moritz 'or w' 19:42
lichtkind ok i fixed S28 19:43
TimToady S05:1873
lichtkind hope i can push it
masak gets off the train 19:45
PerlJam lichtkind: to clarify (hopefully), <|w> will match a word boundary, and \w will match a word character. (I was guessing a typo on your part and answering the latter) 19:46
lichtkind thank you
are more chars like |.. there ?
PerlJam lichtkind: See S05 :) 19:47
moritz p6: say so 'w' ~~ /<:w>/ 19:49
TimToady ENOp6ALIAS? 19:50
p6eval pugs, rakudo 4373f0, niecza v15-6-gefda208: OUTPUT«(timeout)»
TimToady ETOOSLOW...
moritz p6: say so 'w' ~~ /<:w>/ 19:51
lichtkind PerlJam: thanks 3 new items
spider-mario why is it taking ages?
lichtkind we get to the 1000 19:52
p6eval rakudo 4373f0, niecza v15-6-gefda208: OUTPUT«(timeout)»
..pugs: OUTPUT«*** No such subroutine: "&so"␤ at /tmp/bUMqsZJWGG line 1, column 5 - line 2, column 1␤»
spider-mario pugs doesn’t have so?
tadzik it would seem so
PerlJam pugs was old when so was created
tadzik H A H A H A
lichtkind are there also <gc> ? 19:56
grapheme boundary subrule?
19:58 colomon left
lichtkind anybody here with git clues? 19:59
[Coke] spider-mario: please open a ticket for missing "so" at github.com/perl6/Pugs.hs
19:59 aindilis left
lichtkind has anyone clue why git uses a usernam for me i cant find in any config? 20:06
moritz maybe it's in a config you can't find 20:07
~/.gitconfig
lichtkind i would not ask if its that eas y:) 20:08
moritz well, how could I know what's easy for you?
lichtkind true 20:09
but maybe there is a global in the etc/config or so 20:10
im getting mag here
i cant clone
Tene git config --global --list
if that doesn't list it, check your environment.
If that does list it, it's in a global config
might also be in your per-repo config, maybe. 20:11
moritz but it if was that easy, lichtkind wouldn't need to ask.
doy it will pull your real name from /etc/passwd if nothing is set, i believe
which you probably set when you installed your system
Tene yes 20:12
doy and email defaults to ${USER}@`hostname` or so
moritz ok, i know now why stuff was timing out earlier 20:13
I accidentally tried to build rakudo star on feather3 (instead of feather1) 20:14
lichtkind thank you tnee but that brought no new insights
i studied the error msg and chose the https version
moritz and it went deep into swap space
lichtkind works now
thanks all for support
at least im not allone in that 20:15
brrt is there a zip library for perl6? 20:17
better yet, is there something like exec()?
masak yes to the latter question. 20:18
shell(), IIRC.
a zip library would be cool, but frankly I don't think we have the perf yet :/
still, a slow zip library would be slightly cool, too :P
brrt undoubtly; for my purposes shell() will do :-) 20:20
TimToady .u 🍻 20:21
phenny U+1F37B (No name found)
lichtkind aaah im so used to type hg so my poor brain has to think each time i type git 20:22
[Coke] hey! I'm doing the rakudo release this month.
dalek ecs: 7658104 | (Herbert Breunung)++ | S28-special-names.pod:
replaced $*OSNAME which is long gone
masak lichtkind: alias hg=git
:P
[Coke] I wonder if I need to think about that until 2 days before the release. ;)
lichtkind my first commit 20:23
to the spec at least
i have to put in my name :)
20:23 vlixes left
lichtkind masak: but you know i need hg for my projects which are using it 20:25
20:28 colomon joined
moritz wow, King's Gambit solved. 20:30
masak hgs lichtkind ;)
moritz chessbase.com/newsdetail.asp?newsid=8047
masak moritz: that's... impressive. 20:31
20:31 localhost left 20:32 y3llow_ joined, bruges_ joined
masak rolling my suitcase from the train station and home to my apartment, I realized that I want to effect the following change on the spec: 20:32
20:32 localhost joined
moritz it's not solved by exhaustive search, the search aborts if a rating is found that is a clear win for either party 20:33
20:33 fgomez joined
masak I want there to be a user-definable way to create lvalue constructs, like s[] and substr and vec. 20:33
also, whatever happened to vec in Perl 6? is it even in the spec?
benabik Proxy?
masak yeah, Proxy will maybe figure in such a solution.
TimToady vec is supposed to be replaced by Bool @vec and such 20:34
moritz (and I have wager running until 2050 if chess is solved. I said no. It's the first time I kinda fear to lose that wager)
masak I want something that will make things lvalues when needed, but that will not hurt performance for ordinary rvalue calculations.
20:34 bruges left, y3llow left
moritz masak: that sounds like a worthy goal 20:35
masak TimToady: how do I create a Bool @vec? what do you mean by "and such"? vec works at any power-of-2 precision.
20:35 y3llow_ left
masak TimToady: the nice thing about vec is precisely its lvalue capabilities. 20:35
TimToady Uint4 @vec
er, uint
20:36 y3llow joined
masak I'd much rather use uint1 than Bool, by the way :P 20:36
and again, it's the two-way-binding that's the key.
TimToady anyway, the plan is to have compact arrays of tiny integers
20:37 brrt left, y3llow left
TimToady and they put in U+1F37B just to mollify you, but especially jnthn 20:37
[Coke] .u 1F37B 20:38
phenny [Coke]: Sorry, no results for '1F37B'.
20:38 y3llow joined
TimToady CLINKING BEER MUGS 20:38
masak :) 20:39
Teratogen did you know you can use greek letters for variable names in javascript?
pretty neat!
masak Teratogen: that's highly original! :)
moritz it works in most modern languages
including p5, p6, java and a few others 20:40
Teratogen well I think there should be a perl keyboard just like there was an apl keyboard 20:41
what do you think of THOSE apples?
geekosaur haskell (thereby pissing people off because they want λ to be an operator character...)
masak proposal: Cool.vec($size where { $size.fmt("%b") ~~ /^10+$/ }) creates an array of $size-sized uints. but it's also proxied such that assignment to the elements reflect back on the original container.
there should also be a sub form.
Teratogen: I think APL keyboards are cute, but that that time is past. I think you think so too. 20:42
Teratogen there was a "space cadet" keyboard that had five meta buttons I think 20:43
shift, ctrl, alt, esc, meta, meta-meta
20:44 tokuhiro_ joined
Teratogen err, correction, seven 20:44
lichtkind masak: lets say i put my name into the syn after the third change :) 20:45
20:45 fglock left
dalek albot: 356641f | moritz++ | / (2 files):
adapt to current realities
20:45
20:46 havenn left
moritz evalbot control restart 20:46
20:46 p6eval left, p6eval joined, ChanServ sets mode: +v p6eval
moritz nqp: say('alive') 20:47
pyrimidine :(
moritz I don't know why, but the first execution after a restart always seems to take ages
p6eval nqp: OUTPUT«alive␤»
20:47 birdwindupbird left
moritz star: use Math::RungeKutta; 20:48
p6eval star 2012.02: ( no output )
moritz \o/
std: 1
p6eval std 1ad3292: OUTPUT«ok 00:00 40m␤»
pyrimidine moritz++
moritz enough p6eval hacking for me. Tomorrow: new HPMoR chapter. 20:49
masak \o/
pyrimidine: did you hear about the guy who wants to work on bioperl6?
pyrimidine have a couple, actually
pyrimidine backlogs to find that... 20:50
ah, yes 20:52
masak: leont was correct, we responded to the interested student and mentioned that focusing on a subset would be best, considering bioperl is ~2000 modules 20:53
20:54 kaare_ joined
pyrimidine not to mention a good chunk of those need significant refactoring ;) 20:55
masak pyrimidine++
lichtkind TimToady: is the a <gb> and <cb> subrule? 20:57
20:59 skids left
masak I can't seem to get Proxy.STORE to work in Rakudo. it's all defined in BOOTSTRAP.pm, but maybe it isn't wired up in other places? 20:59
anyway, I got FETCH to work for vec() 21:00
r: use MONKEY_TYPING; augment class Cool { method vec($size where { .fmt("%b") ~~ /^10*$/ }) { my $v = self; return map -> $p { Proxy.new(FETCH => { ($v +> $p) % 2 }) }, ^self.fmt("%b").chars } }; my @vec = 42.vec(1); say @vec.fmt
p6eval rakudo 4373f0: OUTPUT«0 1 0 1 0 1␤»
masak up until that point, Proxy was a breeze to use. I really like creating up two-way bindings like this. 21:01
21:02 havenn joined
masak 'night, #perl6 21:04
dalek ecs: 6ef69b9 | (Herbert Breunung)++ | S28-special-names.pod:
pod vars are now lowercase as seen in 3e1a9a5a576b90e9eeabdb7083d16431513513f2
21:05
lichtkind good night masak
still not get the rational behind lowercase POD things 21:06
pmichaud 18:46 * [Coke] hopes PerlJam and pmichaud are nowhere near those tornados.
[Coke] I know, texas is huge. ;)
pmichaud actually, one of them was fairly close (< 10 miles)
and one of the key "tracked" storm cells went right over our neighborhood, but no damage. 21:07
huf how wide is a tornado? a couple hundred meters, right?
pmichaud ("tracked" storm cells == covered real-time on local news along with warnings to "seek cover" :)
21:07 chra left, betterworld left
pmichaud anyway, all is well here so far. still some heavy storms aiming at us for the next hour or so 21:08
TimToady huf: can be up to a mile wide
huf TimToady: the funnel? or the really really dangerous area where funnels can form at any time? 21:09
TimToady en.wikipedia.org/wiki/Tornado_recor...mage_width
huf ... which is kinda how i imagine tornados...
pmichaud the really really dangerous area can be a mile wide
huf whoa...
TimToady at some point they turn into a funnel of funnels
pmichaud around here they don't tend to be that wide, though -- ours tend to be F-2 category, which is about 150m 21:10
huf hmm, that just wipes a block or two, not an entire town...
well, or three or four
TimToady the one that was 2.5 miles wide was probably multiple funnels all going 'round together 21:11
huf glad we only get a small one and that only every century or so :)
pmichaud there's some good-quality video of these tornadoes; especially the one that went through a semitrailer park
21:11 havenn left
TimToady the large ones tend to kick up so much debris that you can't actually see whether they're single or multiple from the outside without radar 21:12
spider-mario star: macro test {quasi {say "Hello!"}}; test
p6eval star 2012.02: OUTPUT«===SORRY!===␤Macros are not yet implemented at line 1, near " test {qua"␤»
spider-mario rakudo: macro test {quasi {say "Hello!"}}; test
p6eval rakudo 4373f0: OUTPUT«Hello!␤»
spider-mario pugs: macro test {quasi {say "Hello!"}}; test
p6eval pugs: OUTPUT«Hello!␤»
spider-mario niecza: macro test {quasi {say "Hello!"}}; test 21:13
p6eval niecza v15-6-gefda208: OUTPUT«===SORRY!===␤␤Action method quasiquibble not yet implemented at /tmp/RpuUXwsO29 line 1:␤------> macro test {quasi {say "Hello!"}⏏}; test␤␤Action method quote:quasi not yet implemented at /tmp/RpuUXwsO29 line 1:␤------> …
pmichaud www.nbcdfw.com/video/#!/weather/sto.../145994125
TimToady lichtkind: no, those are not valid names
(anymore) 21:14
[Coke] the semitrailer park footage made national news, watched a bit of it up here.
21:15 fgomez left
huf looks like the end fight from some fantasy movie... 21:15
pmichaud anyway, our weather-warning-radio has been sending off alarms much of the afternoon :) 21:16
lichtkind TimToady: thanks and you know rational behind $=pod in favour of $=POD 21:17
21:22 vlkv joined
TimToady not particularly 21:24
21:25 fgomez joined 21:31 mattp_ left
lichtkind TimToady: so you dont like it too? 21:31
timotimo is there a simplified input routine? like ask, but the other way around? 21:36
Tene rakudo: say (quasi { say "Hello" }).perl 21:38
p6eval rakudo 4373f0: OUTPUT«AST.new()␤»
Tene rakudo: say (quasi { say "Hello" }).^methods
p6eval rakudo 4373f0: OUTPUT«BUILD incarnate is_quasi_ast␤»
spider-mario I’ve not found how to use incarnate and what it does, btw. 21:39
21:44 erkan left 21:45 spider-mario left, erkan joined, spider-mario joined 21:49 spider-mario left 21:50 Araq joined 21:52 thou_ joined
timotimo is there a "deepcopy" function or something? 21:55
21:56 thou left
lichtkind timotimo: you mean of hoh? 22:01
timotimo "hash of hashes"? 22:02
lichtkind y
timotimo well, i have a class with a list and a hash and that hash contains instances of a class that contains a hash that creates "interconnections" among themselves 22:04
names would make it more clear:
22:04 flussence left
timotimo i have a class Room, that has a hash of Tiles, each tile has a hash of neighbouring tiles 22:04
22:04 NamelessTee left
sorear timotimo: No. 22:05
timotimo that's no problem then 22:06
22:06 kaare_ left
timotimo well, my thingie is pretty slow :| 22:06
22:07 flussence joined, leprevost left
sorear moritz: feather1 hosts p6eval now? 22:08
22:10 netstar joined
colomon errr.... should github.com/perl6/specs/commit/6ef6...beb7142eb8 really be $=dATA , or is it $=data ? 22:14
22:14 mattp_ joined 22:24 betterworld joined
lichtkind r: say '\\' 22:28
p6eval rakudo 4373f0: OUTPUT«\␤»
lichtkind shii
22:31 fgomez left 22:33 alester left, lichtkind left 22:35 mattp_ left, mattp_ joined 22:40 mattp_ left, fgomez joined, mattp_ joined 22:41 netstar is now known as netstar_ 22:42 lestrrat left 22:43 lestrrat joined 22:47 PacoAir left 22:58 Chillance left 23:02 vlkv left, benabik left 23:07 lichtkind joined
lichtkind any sugegstions why "say '\\'" doesnt work on my rakudo 23:08
good night 23:22
23:22 lichtkind left 23:28 fgomez left 23:36 fgomez joined 23:39 thou_ left 23:56 fgomez left 23:57 whiteknight joined