Perl 6 - the future is here, just unevenly distributed

IRC log for #perl6, 2011-12-08

Perl 6 | Reference Documentation | Rakudo

| Channels | #perl6 index | Today | | Search | Google Search | Plain-Text | summary

All times shown according to UTC.

Time Nick Message
00:11 sorear random note:
00:12 sorear the draft proposal of UTS18 for Unicode 6.1.0 completely removes the requirement to use "full" case folding in regexes
00:33 Radvendii joined #perl6
00:53 xyvab joined #perl6
00:56 replore joined #perl6
01:15 plutoid joined #perl6
01:16 gfldex joined #perl6
01:27 slavik1 uts18?
01:28 geekosaur http://unicode.org/reports/tr18/
01:38 envi_ joined #perl6
01:38 Vlavv` joined #perl6
01:39 mkramer joined #perl6
01:51 whiteknight joined #perl6
01:52 wolfman2_ joined #perl6
02:13 * sorear wonders what "case conversion" means for a regex engine
02:13 sorear _not_ "case folding"
02:15 ab5tract joined #perl6
02:15 Tene sorear: "replace this with the same thing in lowercase"?
02:16 simcop2387 joined #perl6
02:21 sorear Tene: ...oh.  I'm suprised that that is considered part of the perview of a regex engine
02:24 geekosaur \L, \U
02:24 orafu joined #perl6
02:30 sorear aren't those qq()'s domain?
02:31 geekosaur they're also supported by p5's regex engine.  I admit I don't recall if p6 specced them
02:33 Radvendii b: say <2/6>.perl
02:33 p6eval b 1b7dd1: OUTPUT«"2/6"␤»
02:33 Radvendii according to perlcabal.org the output should be 1/3 has this not been implimented by rakudo yet?
02:33 Radvendii perl6:say <2/6>.perl
02:34 Radvendii perl6: say <2/6>.perl
02:34 p6eval pugs b927740, rakudo 64fd76, niecza v12-6-gb5cc22a: OUTPUT«"2/6"␤»
02:38 sorear Radvendii: this is an area where @Larry is not on the same page
02:39 Radvendii @larry?
02:40 Radvendii is that the guy who makes rakudo?
02:43 packetknife joined #perl6
02:44 Radvendii and why does he disagree?
02:46 Radvendii is there a way to get the equivalent function?
02:46 Radvendii sorear: ?
02:47 awwaiid @larry is the collective of language designers, who often modify their previous views and don't always write the new version down right away
02:47 Ingis joined #perl6
02:47 awwaiid or something like that. I just lurk.
02:48 geekosaur in other words, whether it should reduce to lowest terms or not has not yet been decided
02:48 Radvendii ah
02:48 Radvendii okay
02:48 awwaiid nicely put
02:48 donri left #perl6
02:49 Radvendii is there any function for reducing it now? (besides prime factoring and dividing out)
02:49 * geekosaur is curious
02:51 awwaiid not that I know of
02:51 sorear uhm, it's not an issue of "lowest terms"
02:51 sorear every fractional number is automatically lowest terms
02:51 sorear but
02:51 sorear perl6: say <2/6>.WHAT
02:51 p6eval pugs b927740: OUTPUT«Str␤»
02:51 p6eval ..rakudo 64fd76, niecza v12-6-gb5cc22a: OUTPUT«Str()␤»
02:51 awwaiid perl6: say (2/6).perl
02:52 p6eval pugs b927740, rakudo 64fd76, niecza v12-6-gb5cc22a: OUTPUT«1/3␤»
02:52 sorear _it is not a number at all_
02:52 Radvendii bam
02:52 Radvendii say <2/6>.perl
02:52 Radvendii # 1/3
02:52 sorear Radvendii: there's no consensus on that
02:52 geekosaur thnk you, I was wondering what the angle brackets were about
02:52 Radvendii says perlcabal.com. apparently they were wrong
02:52 awwaiid I'm not sure if that is a language feature or a implementation
02:53 Radvendii b: (2/6).WHAT
02:53 p6eval b 1b7dd1:  ( no output )
02:53 Radvendii b: say (2/6).WHAT
02:53 p6eval b 1b7dd1: OUTPUT«Rat()␤»
02:53 Radvendii ah
02:53 Radvendii i see
02:53 sorear Radvendii: perlcabal.com is run by...
02:53 sorear Radvendii: us right here
02:53 Radvendii haha
02:53 Radvendii so it's not updated yet
02:54 Radvendii should i report that it's not what actually happens in some way?
02:54 sorear Radvendii: it cannot be updated until there is something to update it to
02:54 sorear Radvendii: the specs are not documentation
02:54 sorear Radvendii: they are a description of our _goals_
02:54 Radvendii ah
02:54 sorear sometimes our goals change
02:54 Radvendii okay, so not always reliable. good to know
02:55 sorear sometimes we decide that our goals need to change, but don't change them right away
02:55 sorear this is the latter case
02:55 sorear there are a lot of subtle issues with <2/6> working as original envisioned
02:55 sorear it's not clear if the issues can be resolved, or if we need a different approach
02:56 Radvendii got it
02:56 Radvendii thanks
02:57 sorear Radvendii: the True Perl6 exists in the collective minds of this channel.  Sxx is a bad prose reflection, the implementations are code reflections
02:57 sorear a lot of things are only in Sxx because they are "easier said than done"
02:57 sorear s/code/bad code/
02:58 jaldhar joined #perl6
02:58 Radvendii how can i get involved in the design of the language?
02:58 Radvendii (im probably not a good enough coder to do any of the crazy stuff)
03:01 Radvendii or is it mostly a closed thing...
03:08 colomon Radvendii: talking right here does wonders
03:08 sorear hang out here.  get involved in discussions.  Write Perl 6 programs and don't be shy to point out the rough edges in the language
03:09 sorear get to know well the current language and its immutable philosophical bases
03:10 colomon and you probably *are* a good enough coder to do some very useful stuff -- that's partially the theme of my next Advent post.  (well, not you in particular, though you are mentioned as setting things in motion.)
03:10 sorear but the language design is 90% done; even I came in too late to have much effect on the language per se
03:10 colomon sorear: we've both had some effect on the details of the language, though.
03:11 colomon changes do still happen, if you can convince TimToady something is wrong.  :)
03:12 benabik joined #perl6
03:16 Radvendii so we actually are close to a real release to the public? (i was under the impression this was a long way off, although i dont know why. rakudo has worked for me for everything i want to do...)
03:17 colomon Probably the biggest obstacle right now is performance.
03:17 sorear Radvendii: Rakudo and Niecza both make releases to the public monthl
03:18 sorear Radvendii: the public still haven't caught on, because the system is slow and doesn't have a killer app
03:18 Radvendii haha
03:18 Radvendii fair enough.
03:19 colomon but they are definitely usable -- I've got apps written in both.  :)_
03:19 Radvendii nice.
03:19 sorear right now there's not much point in using Perl 6 for a member of the general public
03:19 Radvendii oh, speaking of which, i can't seem to get panda operational
03:20 colomon Radvendii: is it a bootstrapping issue?  the bootstrap stuff is apparently broken atm
03:20 Radvendii yeah, but even when i use the rakudo-star versoin
03:20 sorear it's a very nice language, much cleaner than Perl 5, but it doesn't have any advantages compelling enough to overcome the speed and library issues
03:20 Radvendii i get a error:imcc:loadlib directive could not find library `nqp_group' error
03:21 Radvendii sorear: i see.
03:21 colomon Radvendii: oh, really?  what platform?
03:21 Radvendii mac os x
03:21 colomon version?
03:21 Radvendii 10.6
03:21 Radvendii snow lepoard.
03:21 Radvendii leopard*
03:21 colomon yeah, that's what I'm running too
03:22 sorear What command do you get the failure during?
03:22 Radvendii in file '~/.perl6/lib/Shell/Command.pir' line 26
03:22 Radvendii with any command
03:23 Radvendii also, why isn't perl6 installed into /usr/bin/? even when i move the entire install/ folder into the respective folders in /usr/ it requires the rakudo-star folder to remain where it was...
03:24 sorear because third-party software should never go into /usr/bin on Unix operating systems
03:24 Radvendii what about /usr/local/bin or whatever
03:24 sorear /usr/bin is reserved for OS-provided software; stuff you install manually goes into /usr/local/bin
03:24 Radvendii oh
03:24 sorear perl6 is installed into whereever you installed Parrot
03:25 Radvendii oops. i probably shouldn't have put perl6 in /usr/bin then :P
03:25 Radvendii oh?
03:25 sorear if you use --gen-parrot, you have to also use --gen-parrot-prefix
03:25 Radvendii good to know...
03:25 Radvendii OH!
03:25 Radvendii that's what it is!
03:25 Radvendii thanks.
03:25 sorear it's not possible to have Rakudo in /usr/local/bin unless you also have Parrot there
03:25 Radvendii now back to the panda failiure?
03:26 sorear true story: I've never used panda
03:26 sorear presumably you didn't run lib/Shell/Command.pir manually
03:26 Radvendii no
03:26 colomon which rakudo was the failure with?
03:26 sorear I'm interested in the command _you_ ran to cause that failure
03:26 Radvendii when i type panda install SDL6 at the command line it gives that error
03:26 Radvendii or just panda
03:26 Radvendii or panda install
03:26 Radvendii or anything with panda at the beginning
03:27 Radvendii it was with rakudo 2011.07
03:30 * colomon is trying to figure out how he can test that version locally....
03:32 Radvendii sorry for the trouble, it's not really that big of a deal...
03:32 colomon actually, first question probably should be, are you using the latest panda?
03:33 Radvendii i dont know, i just installed rakudo-star and it installed panda for me...
03:34 colomon ah, hmmm.
03:34 mkramer joined #perl6
03:35 Radvendii like you said, bootstrap.sh doesnt work
03:38 colomon okay, I'm going to try it quick on my linux box just to see what happens.
03:38 Radvendii okay
03:41 Radvendii also, why does perl6 support new characters like »? isn't that hard to type for some people (not that im complaining, just wondering)
03:42 colomon >> works just the same
03:42 Radvendii ah. that would make sense.
03:42 Radvendii i thought perl had gone APL-style :P
03:43 Radvendii although i read about someone making all of the APL functions in perl6
03:43 colomon it can... you can define all the unicode operators you want.  ;)
03:45 geekosaur the "presentation form" uses Unicode but there are reasonable ASCII alternatives for everything
03:46 geekosaur and it's not APLish silliness like lamp or quote-quad
03:46 geekosaur but stuff that makes reasonable and readable sense to mortals
03:52 sorear afaik the only non-ASCII characters that are used in core Perl 6 are the French quotes
03:52 sorear Radvendii: every self-respecting language now supports non-ASCII identifiers
03:55 am0c joined #perl6
03:55 colomon Radvendii: ooooo, ===SORRY!===
03:55 colomon error:imcc:loadlib directive could not find library `nqp_group'
03:55 colomon happens on linux, too.
03:56 colomon actually appears quite a few times in the "make install" output.
03:57 colomon with other errors too.  :(
03:57 Radvendii yikes
03:58 Radvendii sorear: okay. i assume that doesn't include java :( :P
03:58 colomon not sure if there's any point in trying to debug it; it's an evolutionary dead end.  but it certainly sucks that it's happening.
03:58 Radvendii mhmm what do you mean evolutionary dead end?
03:59 colomon the next rakudo star will be based on a completely different code base
04:00 Radvendii oh. okay.
04:00 Radvendii i guess i'll wait till then ;)
04:00 Radvendii no biggy
04:00 colomon big thing is trying not to make the same mistakes again
04:01 Radvendii ah
04:01 Radvendii that would be good
04:01 Radvendii why is it called panda, by the way?
04:01 colomon ask tadzik.  :)
04:02 colomon I've got to go to bed now.
04:02 Radvendii okay
04:02 Radvendii thanks for the help
04:02 colomon afk # sleep, perchance dream
04:02 sorear Radvendii: actually I think Java does support non-ASCII identifiers
04:02 Radvendii wow. java doing something right. im impressed.
04:02 Radvendii (im a java hater, in case you hadn't noticed ;P)
04:02 sorear When Java was released, Unicode was the hip new technology
04:03 sorear Java is, unfortunately, still stuck in the time of Unicode 1.0
04:03 Radvendii hahaha.
04:03 sorear especially when Unicode was widened from 16 to 21 bits
04:04 Radvendii im so happy it's suported though, i tried to write a program using it in perl5 and i remember i had to keep using weird notation to get things to work correctly.
04:04 sorear Java still doesn't handle characters above 64K that well
04:04 sorear buubot_backup: eval: use utf8; my $万 = 1e4; say $万
04:04 buubot_backup sorear: ERROR: Can't call method "say" without a package or object reference at (eval 20) line 1.
04:04 sorear buubot_backup: eval: use utf8; my $万 = 1e4; $万
04:05 buubot_backup sorear: 10000
04:05 Radvendii wha?
04:05 TimToady perl6: constant 万 = 1e4; say 万
04:05 p6eval pugs b927740: OUTPUT«decodeUTF8': bad data: '\19975'␤decodeUTF8': bad data: '\19975'␤*** ␤    Unexpected "="␤    expecting ":" or "("␤    at /tmp/Nd01MS5ugE line 1, column 12␤»
04:05 p6eval ..rakudo 64fd76, niecza v12-6-gb5cc22a: OUTPUT«10000␤»
04:05 Radvendii 1) what's buubot_backup?
04:05 TimToady p5
04:05 sorear buubot_backup: eval: use utf8; $Foo::万 = 1e4; print (keys %Foo::)[0]
04:05 buubot_backup sorear: ERROR: syntax error at (eval 20) line 1, near ")["
04:06 sorear buubot_backup: eval: use utf8; $Foo::万 = 1e4; print ((keys %Foo::)[0])
04:06 buubot_backup sorear: 万1
04:06 sorear buubot_backup: eval: use utf8; $Foo::万 = 1e4; print length((keys %Foo::)[0])
04:06 buubot_backup sorear: 31
04:06 Radvendii oh? p5 can use unicode? i dont know what my problem was then...
04:06 Radvendii what's le4?
04:06 TimToady 1, not l
04:06 sorear 1e4 is scientific notation
04:06 TimToady does your font not distinguish 'one' from 'ell'?
04:06 Radvendii oh. those letters need to look more different
04:07 Radvendii yeah
04:07 Radvendii what's a good font to use? courier clearly isn't
04:07 Radvendii :P
04:07 * sorear likes Bitstream Vera Sans Mono
04:07 * Radvendii doesnt have that one
04:08 * Radvendii has, in terms of fixed-width fonts, andale mono, courier, menlo, and monaco
04:08 * sorear wonders if Radvendii can see the character used in the buubot example
04:08 * Radvendii can indeed
04:09 * Radvendii decides he likes andale mono
04:09 sorear it's called "buubot_backup" because buu disappeared taking buubot with em
04:09 TimToady so now it's back up? :)
04:09 Radvendii what's buu?
04:10 sorear buu was a #perl bigshot and MAGnet oper in ages past
04:10 Radvendii isn't 1e4 just 1?
04:10 sorear no
04:10 sorear 1e4 is 1 * 10 ** 4
04:10 Radvendii oh right
04:10 Radvendii x10^
04:10 Radvendii can one use superscript in a perl program?
04:10 sorear no
04:11 Radvendii that would be cool.
04:11 sorear Perl accepts a sequence of characters
04:11 TimToady well, sure you can, for certain values of superscript
04:11 sorear the vast majority of programming languages use plain text
04:11 sorear is ColorForth still alive?
04:12 ab5tract joined #perl6
04:13 TimToady perl6: sub postfix:<²>($x) { $x * $x }; say 42²;
04:13 p6eval pugs b927740: OUTPUT«decodeUTF8': bad data: '\178'␤decodeUTF8': bad data: '\178'␤1764␤»
04:13 p6eval ..niecza v12-6-gb5cc22a: OUTPUT«Potential difficulties:â�¤  &postfix:<²> is declared but not used at /tmp/VhIbw8jKsk line 1:â�¤------> [32msub postfix:<²>[33mâ��[31m($x) { $x * $x }; say 42²;[0mâ�¤â�¤Unhandled exception: System.Exception: invalid digit in 42²â�¤  at Niecza.EmitUnit.ExactNum (Int3…
04:13 p6eval ..rakudo 64fd76: OUTPUT«1764␤»
04:13 Radvendii so it works in rakudo?
04:13 TimToady yes
04:14 Radvendii how did you do the superscript in the command line though?
04:14 sorear that's not _real_ superscript
04:14 Radvendii what is it?
04:14 sorear .u ²
04:14 phenny U+00B2 SUPERSCRIPT TWO (²)
04:14 TimToady I typed COMPOSE ^ 2
04:14 sorear it's a separate character
04:14 Radvendii COMPOSE ^ 2
04:14 sorear Unicode has a few "superscript" versions of existing characters
04:14 Radvendii oh. but it's not a generic thing?
04:14 sorear Radvendii: you need to press the Compose key on your keyboard
04:15 sorear correct
04:15 Radvendii i dont have a compose key.. :'(
04:15 TimToady what OS?
04:15 Radvendii mac os x
04:15 Radvendii
04:15 sorear .u SUPERSCRIPT MINUS
04:15 phenny U+207B SUPERSCRIPT MINUS (⁻)
04:15 sorear TimToady: does that have a compose sequence?
04:16 TimToady ¯
04:16 JimmyZ joined #perl6
04:16 TimToady apparently so
04:16 sorear compose ^ - does nada for me
04:16 sorear .u ⁺
04:16 phenny U+207A SUPERSCRIPT PLUS SIGN (⁺)
04:16 sorear yet I have that
04:16 TimToady
04:17 * sorear thinks this compose file may be insane
04:17 sorear but I have my macros back so I'm not too annoyed
04:17 TimToady most of 'em are
04:17 JimmyZ TimToady: how do I know whether it's a trap or not ? re: yesterday's wrap issue
04:18 sorear er. macroNs
04:18 sorear completely different
04:19 Radvendii is there a keyboard layout for typing perl?
04:19 Radvendii also: can you redefine the sigils? ($, @, %, &, etc)
04:20 JimmyZ TimToady: there is not DWIM and no any tips
04:20 sorear afaik all of the important latin keyboard layouts (qwerty, azerty, dvorak, etc) work fine
04:21 TimToady I'd like to have the vim digraphs as compose sequences...
04:21 Radvendii yeah, but to have quick access to the $ key for example
04:22 mkramer joined #perl6
04:22 mkramer left #perl6
04:23 sorear Radvendii: what keyboard layout do you use?
04:23 Radvendii 2⁽⁴⁺⁵⁾
04:23 Radvendii hee hee
04:23 Radvendii primarily us extended
04:24 Radvendii but that was with the unicode hex font, where i have to type in the entire unicode value to type the character.
04:24 * sorear wonders what Radvendii's languages and/or culture of origin are
04:26 * Radvendii My family is from europe (poland, germany) and a little bit from israel from way back when (most of my grandparents went through israel at some point). im jewish, and i speak english, understand some hebrew, and am working on german and learning spanish at school. im also making a conlang of my own
04:26 Radvendii oops. i forgot about the /me :P
04:27 geekosaur joined #perl6
04:28 geekosaur glurf
04:31 sorear hello geekosaur
04:32 TimToady JimmyZ: I don't understand: "no any tips"
04:33 sorear Radvendii: grandparents from isreal, you must be quite young
04:33 sorear Radvendii: you will find there is quite a lot of linguistics interest here
04:33 JimmyZ TimToady: I mean, if it doesn't DWIM, it should outputs some message.
04:33 JimmyZ TimToady:  so I know why it doesn't work
04:34 Radvendii i should say palestine (as it was at the time)
04:34 TimToady it's not always possible to detect what the user means
04:34 Radvendii but yes, i'm also still in high-school
04:34 JimmyZ TimToady: and how do I fix it
04:34 Radvendii TimToady: Dwim?
04:35 TimToady well it needs to be possible to pass a routine as a parameter without cloning it somehow
04:35 sorear Radvendii: the community is scattered over a large area, I would say mostly central/northern Europe and the US but we've got people everywhere
04:35 sorear Radvendii: for some reason quite a few of us know East Asian languages
04:35 TimToady Radvendii: DWIM == Do What I Mean
04:35 JimmyZ rakudo: sub cached(Routine &r) { my %cache; &r.wrap(-> |$c {say 'process';my $key := $c.gist;%cache.exists($key) ??%cache{$key} !!(%cache{$key} = callsame)});}; cached sub foo($a) {return 2 * $a;}; say foo(1);say foo(2);
04:35 p6eval rakudo 64fd76: OUTPUT«Nominal type check failed for parameter '&r'; expected Callable but got Sub instead␤  in sub cached at /tmp/_lS2XLKPEV:1␤  in block <anon> at /tmp/_lS2XLKPEV:1␤  in <anon> at /tmp/_lS2XLKPEV:1␤»
04:35 JimmyZ rakudo: sub cached(&r) { my %cache; &r.wrap(-> |$c {say 'process';my $key := $c.gist;%cache.exists($key) ??%cache{$key} !!(%cache{$key} = callsame)});}; cached sub foo($a) {return 2 * $a;}; say foo(1);say foo(2);
04:35 p6eval rakudo 64fd76: OUTPUT«2␤4␤»
04:35 Radvendii yeah, i'm on the #conlang channel too, and they talk about programming :P it's a really diverse community on the IRC. not.
04:36 sorear Radvendii: not diverse?
04:36 TimToady niecza: sub cached(&r) { my %cache; &r.wrap(-> |$c {say 'process';my $key :=  $c.gist;%cache.exists($key) ??%cache{$key} !!(%cache{$key} = callsame)});}; cached sub foo($a)  {return 2 * $a;}; say foo(1);say foo(2);
04:36 p6eval niecza v12-6-gb5cc22a: OUTPUT«Unhandled exception: Unable to resolve method wrap in class Sub␤  at /tmp/rHmx8_wxkG line 1 (cached @ 2) ␤  at /tmp/rHmx8_wxkG line 1 (mainline @ 1) ␤  at /home/p6eval/niecza/lib/CORE.setting line 2225 (ANON @ 2) ␤  at /home/p6eval/niecza/lib/CORE.setting l…
04:36 TimToady pugs: sub cached(&r) { my %cache; &r.wrap(-> |$c {say 'process';my $key :=  $c.gist;%cache.exists($key) ??%cache{$key} !!(%cache{$key} = callsame)});}; cached sub foo($a)  {return 2 * $a;}; say foo(1);say foo(2);
04:36 p6eval pugs b927740: OUTPUT«*** ␤    Unexpected "foo"␤    expecting "=", subroutine parameters, trait or block␤    at /tmp/f3TH_6nnca line 1, column 158␤»
04:37 Radvendii if the #perl6 channel is into linguistics and the #conlang channel talks about programming?
04:37 TimToady note that Routine &r is just wrong
04:37 Radvendii everyone's into the same stuff. :P not a bad thing, since i'm into it also, just interesting.
04:37 sorear I would not say overlap is the same as lack of diversity
04:37 TimToady that means a routine that *returns* a Routine
04:38 JimmyZ oh ...
04:38 sorear we like linguistics but very few of us are that involved with conlangs
04:38 TimToady the & already implies Callable
04:38 Radvendii mhmm.
04:38 JimmyZ I thought it's  &r type
04:39 sorear you're not our only high school student
04:39 Radvendii im not _so_ surprised
04:39 sorear TimToady has designs to get people really young, but so far it hasn't quite worked out
04:40 Radvendii convert them to perl before their minds fully form. buahahah. :P
04:40 TimToady well, someone needs to subvert all the grade-school teachers first :)
04:40 molaf joined #perl6
04:41 JimmyZ rakudo: sub cached($r is rw) { my %cache; $r.wrap(-> |$c {say 'process';my $key := $c.gist;%cache.exists($key) ??%cache{$key} !!(%cache{$key} = callsame)});}; cached sub foo($a) {return 2 * $a;}; say foo(1);say foo(2);
04:41 p6eval rakudo 64fd76: OUTPUT«2␤4␤»
04:41 sorear Camelia is our secret weapon
04:41 Radvendii yeah, perl6 is gonna be the new python
04:41 Radvendii why?
04:42 JimmyZ butterfly effect?
04:42 Radvendii what's camelia? a person?
04:43 sorear https://raw.github.com/perl6​/mu/master/misc/camelia.txt
04:44 sorear Radvendii: camelia is the logo
04:45 Radvendii ah
04:45 Radvendii nice
04:50 Radvendii »ö« :D
04:50 Radvendii that's going to be my new signature for emails
04:50 mkramer1 joined #perl6
04:58 eviltwin_b joined #perl6
05:26 ponbiki joined #perl6
05:29 replore_ joined #perl6
05:36 mathw joined #perl6
05:37 jnthn joined #perl6
05:37 wolverian joined #perl6
05:38 bonsaikitten joined #perl6
05:38 ilogger2 joined #perl6
05:38 mkramer joined #perl6
05:38 arlinius joined #perl6
05:39 jan joined #perl6
05:40 _sri joined #perl6
05:41 Gothmog_ joined #perl6
05:41 avar joined #perl6
05:41 broquaint joined #perl6
05:41 avar joined #perl6
05:41 literal joined #perl6
05:46 kaleem joined #perl6
05:48 _sri joined #perl6
05:48 bonsaikitten joined #perl6
06:17 mkramer joined #perl6
06:25 rafl joined #perl6
06:34 hundskatt joined #perl6
06:39 JimmyZ joined #perl6
06:40 alc joined #perl6
06:50 koban joined #perl6
06:56 tadzik good morning
07:00 kfo joined #perl6
07:09 wtw joined #perl6
07:28 Vlavv joined #perl6
07:32 moritz \o
07:41 jnthn o-
07:41 jnthn ...oh...surprise keyboard layout causes funny greeting
07:46 jnthn moritz: what was the % and :s issue you mentioned yesterday? got a test/simple example?
08:18 mj41 joined #perl6
09:04 eiro joined #perl6
09:04 eiro hello world
09:05 eiro jnthn, you wrote the best doc on perl6 i read: programmer heaven perl6 faq
09:06 eiro is it still up to date? (we plan to translate it in french)
09:11 cognominal joined #perl6
09:23 jnthn eiro: no, it's very out of date...I should probably update it, though I don't work there anhy more :)
09:23 jnthn think it's a wiki based thing though so I should be able to do it.
09:26 eiro jnthn, would be nice to have a git based version of it: up to date translation would be easy
09:30 moritz jnthn: there's a test file, let me dig it up for you...
09:30 jnthn eiro: There's the slight unfortunate situation that I did it for PH while as an employee there, so I don't own the copyright on it.
09:30 jnthn eiro: So it's not really mine to just take and show in a git repo.
09:31 jnthn *shove
09:31 eiro jnthn, sad! perhaps we can do better one?
09:31 eiro ;)
09:31 jnthn yes, I think so :)
09:31 moritz eiro: feel free to contribute to faq.perl6.org
09:31 jnthn moritz++ has started a new Perl 6 faq effort. Maybe we should contribute to that ratehr thaqn start another thing.
09:32 moritz it's on github, perl6/faq
09:32 jnthn argh, ahte this keyboard
09:32 moritz eiro: you should have commit access already; if not, please tell me so
09:33 moritz jnthn: t/spec/S05-metasyntax/repeat.t search for 'nom regression'
09:33 jnthn moritz: (test file) ok, thanks. If you have ICU, please can you also build/test my :i patch from last night?
09:33 moritz jnthn: sure
09:33 jnthn And if it works, bump NQP version in Rakudo
09:34 jnthn (the patches were in NQP)
09:36 jnthn moritz: Oh, that repeat.t fix is probably easy. Can do it this evening.
09:37 ab5tract joined #perl6
09:41 eiro moritz, ok thanks
09:41 dakkar joined #perl6
09:47 moritz nom: say so 'a b' ~~ /:s\w \w/
09:47 p6eval nom 64fd76: OUTPUT«Bool::True␤»
09:47 moritz nom: say so 'a b' ~~ /\w \w/
09:47 p6eval nom 64fd76: OUTPUT«Bool::False␤»
09:56 ab5tract joined #perl6
09:58 moritz jnthn: fwiw the :i implementation has a bug that b also had for a while: it doesn't apply :i to variables
09:59 moritz $ ./perl6 -e 'my $x = "A"; say "a" ~~ /:i $x /;'
09:59 moritz #<failed match>
09:59 moritz jnthn: but the case with literals seems to work
10:00 skangas joined #perl6
10:01 jnthn moritz: ah...that may be a slightly trickier fix :)
10:02 jnthn But perhaps not so bad.
10:03 renormalist joined #perl6
10:03 jnthn moritz: Did it get fixed in b?
10:03 jnthn b: my $x = "A"; say "a" ~~ /:i $x /
10:03 p6eval b 1b7dd1: OUTPUT«␤»
10:04 moritz $ ./perl6 -e 'say "aA" ~~ /:i (.)$0/'
10:04 moritz #<failed match>
10:04 moritz jnthn: might need a fix in LITERAL
10:04 jnthn b: say "aA" ~~ /:i (.)$0/
10:04 p6eval b 1b7dd1: OUTPUT«␤»
10:04 jnthn heh, all b bugs too
10:04 jnthn moritz: yes
10:04 jnthn I suspect it needs to be passed :i
10:05 jnthn and then made to dtrt
10:07 dalek rakudo/nom: d9890fb | moritz++ | t (2 files):
10:07 dalek rakudo/nom: bump to a NQP revision which implements :i
10:07 dalek rakudo/nom:
10:07 dalek rakudo/nom: also mark some tests as #icu that now need it
10:07 dalek rakudo/nom: review: https://github.com/rakudo/rakudo/commit/d9890fb582
10:07 jnthn moritz: btw, the take bug is easy enough to fix, but it's masking another bug that is then harder to fix :(
10:10 moritz :/
10:11 jnthn there's a comment in take about it
10:11 jnthn you could always try what it suggests and see if the other issue is gone, though
10:12 * moritz will try later on
10:24 kfo joined #perl6
10:32 dalek roast: a054084 | moritz++ | / (4 files):
10:32 dalek roast: :i unfudges for rakudo
10:32 dalek roast: review: https://github.com/perl6/roast/commit/a054084e10
11:00 kfo joined #perl6
11:13 pochi joined #perl6
11:16 dalek rakudo/take-recont: 2453985 | moritz++ | src/core/Num.pm:
11:16 dalek rakudo/take-recont: return integers from rounders
11:16 dalek rakudo/take-recont: review: https://github.com/rakudo/rakudo/commit/2453985d22
11:16 dalek rakudo/take-recont: 8c38b99 | moritz++ | / (2 files):
11:16 dalek rakudo/take-recont: use nqp::p6recont_ro in &take
11:16 dalek rakudo/take-recont: review: https://github.com/rakudo/rakudo/commit/8c38b9932d
11:26 lutok joined #perl6
11:31 * moritz hopes to get around to write an advent post in the next few hours
11:47 jnthn moritz: Did 8c38b99 regress any spectests?
11:48 ab5tract joined #perl6
11:48 flussence bah, I have to go redo a bunch of data points for my spectest graphs because I set `ulimit -t` too low...
11:58 jnthn moritz: oh, only just noticed you did it in a branch :)
12:05 Alias joined #perl6
12:27 mkramer left #perl6
12:29 drbean joined #perl6
12:31 flussence (that screwup gave me an interesting take on rakudo's speed though: 10-15% of the spectest files don't finish in under 30 seconds on a desktop CPU yet...)
12:34 moritz jnthn: it causes an infinite loop in t/spec/integration/99problems-01-to-10.rakudo
12:49 jimmy1980 joined #perl6
12:54 kfo joined #perl6
12:55 imarcusthis joined #perl6
13:10 molaf joined #perl6
13:10 drbean joined #perl6
13:12 jnthn moritz: ugh. sounds familiar.
13:13 moritz two nested gather/takes
13:13 moritz not sure if that's the real issue though
13:14 jimmy1980 joined #perl6
13:15 jnthn i suspect the comment in take is accurate about what's the real issue, or at least close
13:16 cognominal joined #perl6
13:18 koban left #perl6
13:24 moritz http://moritz.faui2k3.org/tmp/le​xicality-and-optimizability.pod
13:25 moritz any comments before I post it as today's advent calendar?
13:26 simcop2387 joined #perl6
13:26 kfo joined #perl6
13:29 ixxvil joined #perl6
13:29 ixxvil hi
13:29 ixxvil did you guys get a logo for rakudo?
13:29 moritz you mean besides http://rakudoperl.org/wp/wp-conten​t/uploads/2011/04/rakudo-1001.png ? :-)
13:32 moritz ok, posted http://perl6advent.wordpress.com/2011​/12/08/lexicality-and-optimizability/
13:32 [Coke] hey, did aloha stop karma-replying? bacek++
13:33 moritz I'll be gone rather soon... everybody feel free to edit the post to corect errors, typos, grammeros etc.
13:34 jimmy1980 joined #perl6
13:35 jnthn moritz++
13:36 dalek mu: 35a45b6 | moritz++ | misc/perl6advent-2011/schedule:
13:36 dalek mu: fill out todays schedule
13:36 dalek mu: review: https://github.com/perl6/mu/commit/35a45b659c
13:38 [Coke] moritz++
13:48 colomon joined #perl6
13:52 ribasushi left #perl6
13:57 colomon moritz++
13:58 * moritz sometimes thinks his post are too far away from application, and too abstract for many readers
13:59 [Coke] weird. on feather, I have changes in my roast directory that I don't think I made.
13:59 * [Coke] glares at moritz.
13:59 [Coke] (many of them are in tests relating to :i)
14:00 moritz yes, I made such changes in roast
14:00 moritz but not in [Coke]'s copy of the roast repo :-)
14:00 [Coke] very weird.
14:00 moritz [Coke]: you mean, uncommitted changes?
14:01 sftp joined #perl6
14:01 [Coke] perl6: say +Match
14:01 p6eval niecza v12-6-gb5cc22a: OUTPUT«Unhandled exception: System.FormatException: Invalid format.␤  at System.Double.Parse (System.String s, NumberStyles style, IFormatProvider provider) [0x00000] in <filename unknown>:0 ␤  at System.Double.Parse (System.String s, IFormatProvider provider) [0x…
14:01 p6eval ..rakudo d9890f: OUTPUT«Use of uninitialized value in numeric context␤0␤»
14:01 p6eval ..pugs b927740: OUTPUT«0␤»
14:01 [Coke] moritz: yes, the files are edited.
14:02 moritz [Coke]: maybe a  git pull --rebase  that resulted in a conflict?
14:02 moritz [Coke]: or a git reset maybe?
14:04 [Coke] moritz: Perhaps I was coding in my sleep.
14:04 [Coke] std: say +Match
14:04 p6eval std be1f10e: OUTPUT«ok 00:01 119m␤»
14:05 tokuhirom joined #perl6
14:06 dalek roast: e05e9cc | coke++ | S (2 files):
14:06 dalek roast: niecza fudging
14:06 dalek roast: review: https://github.com/perl6/roast/commit/e05e9cc3aa
14:07 dalek niecza: 6243435 | coke++ | t/spectest.data:
14:07 dalek niecza: run fudged test.
14:07 dalek niecza: review: https://github.com/sorear/niecza/commit/6243435cb1
14:11 dalek roast: fba1e39 | moritz++ | S02-names-vars/perl.t:
14:11 dalek roast: (un)fudge perl.t for rakudo
14:11 dalek roast: review: https://github.com/perl6/roast/commit/fba1e393ec
14:12 [Coke] So, I'm on the (non-hague) grants committee. Haven't seen many submissions from p5 folk, and virtually none from p6 folk lately.
14:12 [Coke] also, masak++ for getting the web.pm stuff as far along as he did.
14:12 * moritz already has one grant running, and won't consider a second until the first is finished
14:12 [Coke] Very reasonable.
14:13 dalek rakudo/take-recont: a7eed04 | moritz++ | t/spectest.data:
14:13 dalek rakudo/take-recont: run perl.t
14:13 dalek rakudo/take-recont: review: https://github.com/rakudo/rakudo/commit/a7eed04b7c
14:13 [Coke] Just mentioning here in case other folks want to apply for a grant.
14:13 moritz [Coke]++
14:15 * moritz -> afk
14:21 gebe joined #perl6
14:22 drbean joined #perl6
14:29 PerlJam [Coke]: perhaps a blog post to re-educate people on what is available, how to submit, what the typical grant looks like, etc. would spur some interest?
14:29 [Coke] "what is available" that information is available only to the treasurer. ;)
14:30 [Coke] and alberto did that some months back to drum up interest again.
14:30 pochi joined #perl6
14:30 [Coke] so I mention it here to people who I KNOW can handle applying. ;)
14:30 [Coke] whoops, meetings.
14:30 PerlJam I mean that more in terms of grant parameters ... "we typically give grants between $X and $Y"
14:34 gebe left #perl6
14:34 dalecooper joined #perl6
14:37 colomon [Coke]: looking at the +Match thing -- should that work?  I believe Niecza is complaining that "" (ie empty string) is not a valid number, which seems kind of reasonable for an undefined Match.
14:40 alvis joined #perl6
14:41 kaleem joined #perl6
14:50 PerlJam moritz: you're infecting Parrot with adventitis?
14:51 PerlJam moritz++
14:53 [Coke] colomon: again, I'm highlighting things that are already in spec tests here. ;)
14:53 [Coke] I don't know if that's a reasonable thing to ex-spec-t.
14:53 colomon yeah, I know, and with any luck your work will help improve the tests.  ;)
14:53 [Coke] for now I'm doing the least amount of work possible. :)
14:54 [Coke] niecza: say +""
14:54 p6eval niecza v12-7-g6243435: OUTPUT«Unhandled exception: System.FormatException: Invalid format.␤  at System.Double.Parse (System.String s, NumberStyles style, IFormatProvider provider) [0x00000] in <filename unknown>:0 ␤  at System.Double.Parse (System.String s, IFormatProvider provider) [0x…
14:54 [Coke] niecza: say +Match
14:54 p6eval niecza v12-7-g6243435: OUTPUT«Unhandled exception: System.FormatException: Invalid format.␤  at System.Double.Parse (System.String s, NumberStyles style, IFormatProvider provider) [0x00000] in <filename unknown>:0 ␤  at System.Double.Parse (System.String s, IFormatProvider provider) [0x…
14:54 [Coke] so, yah, that seems like the same error.
14:55 colomon yes, I've seen it quite a few times myself.  :)
14:56 colomon perl6: say +Failure
14:56 p6eval rakudo d9890f: OUTPUT«Use of uninitialized value in numeric context␤0␤»
14:56 p6eval ..niecza v12-7-g6243435: OUTPUT«[31m===[0mSORRY![31m===[0mâ�¤â�¤Undeclared name:â�¤ 'Failure' used at line 1â�¤â�¤Unhandled exception: Check failedâ�¤â�¤  at /home/p6eval/niecza/boot/lib/CORE.setting line 880 (die @ 2) â�¤  at /home/p6eval/niecza/src/STD.pm6 line 1139 (P6.comp_unit @ 32) â�¤  at /home/…
14:56 p6eval ..pugs b927740: OUTPUT«*** No such subroutine: "&Failure"␤    at /tmp/Z4sn5VQ2Qc line 1, column 5 - line 2, column 1␤»
14:56 colomon ah, not such a good test
14:56 [Coke] it does seem reasonable to expect rakudo's error, though, rather than an underlying VM issue.
14:57 [Coke] s/issue/exception/
14:57 [Coke] (just like a NullPMCAccess is never right.)
15:01 colomon rakudo's is just a warning
15:02 colomon but yeah, for sure the Niecza error message is inelegant!
15:12 Radvendii joined #perl6
15:13 mkramer joined #perl6
15:14 hrj joined #perl6
15:23 Woodi Parrot++ is quite fast... 10k Redis pings in 1.03s where PP Perl5 Redis module do 1.38s. and 10k pipelined pings into one send/receive operation is 0.07s where the best Perl5 XS module do 0.06s. all numbers on *that* box but % difference should be same on others
15:23 rsimoes joined #perl6
15:27 Woodi however it probably is little apple to pear comparison becouse modules do function calls...
15:28 mkramer joined #perl6
15:29 tadzik wow anyway
15:29 [Coke] I imagine you'll see a lot more slowdowns when starting to invoke functions, but it's nice that the basics are working.
15:29 ixxvil moritz: checking
15:29 tadzik so Parrot's faster than Perl 5 in _something_ :)
15:30 domidumont joined #perl6
15:30 ixxvil moritz: thats the old logo
15:30 ixxvil moritz: i thought you guys wanted sometihng new
15:30 donri joined #perl6
15:30 * [Coke] has his mono-space inspired 可口可乐 on his whiteboard critiqued.
15:31 [Coke] ixxvil: I hadn't seen any chat about a new logo on the channel; where are you seeing this?
15:31 Psyche^ joined #perl6
15:31 ixxvil [Coke]: this was like last yr
15:32 mkramer joined #perl6
15:50 olaf joined #perl6
15:54 snearch joined #perl6
15:54 snearch_ joined #perl6
15:54 snearch joined #perl6
15:59 murker joined #perl6
16:00 ab5tract joined #perl6
16:01 kaare_ joined #perl6
16:05 sorear good * #perl6
16:06 colomon \o
16:08 TimToady greetings, earthlings
16:08 tadzik hello
16:08 jnthn phew, day's teaching done :)
16:08 * jnthn -> hotel etc
16:11 mkramer joined #perl6
16:26 murker left #perl6
16:29 hundskatt joined #perl6
16:29 jimmy1980 joined #perl6
16:34 kaleem joined #perl6
16:38 45PAAC234 Is there a way to make those "Use of uninitialized value" messages tell you where it happened?
16:39 lumi___ Sorry, that was me. There's a lot of lumis around I guess
16:39 tadzik lumi___: not that I know of
16:39 tadzik I'd like that fixed though :)
16:40 lumi___ I tried running Panda, it prints out a couple of those in various places...
16:40 tadzik yeah, I know
16:40 tadzik if you can find those, I'd be happy to accept a pull request :)
16:41 * jnthn back
16:42 PerlJam making those messages print the line, column and variable (if applicable) that the uninitialized value came from would be awesome.
17:01 jimmy1980 joined #perl6
17:04 ab5tract joined #perl6
17:06 dalek rakudo/nom: a2f3f46 | jonathan++ | t/spectest.data:
17:06 dalek rakudo/nom: S13-overloading/metaoperators.t passes entirely, so turn it on.
17:06 dalek rakudo/nom: review: https://github.com/rakudo/rakudo/commit/a2f3f46c54
17:07 mkramer joined #perl6
17:10 Woodi I removed messages "Use of uninitialized value in string context" by change "is $re, Any, '8 ok';" to "ok(!$re.defined, '8 ok');" becouse I need "return Any;" :)
17:12 ixxvil left #perl6
17:13 MayDaniel joined #perl6
17:23 fsergot joined #perl6
17:24 fsergot hi 0/
17:25 jnthn o/
17:30 drbean joined #perl6
17:32 japhb joined #perl6
17:33 benabik joined #perl6
17:34 japhb jnthn, I'd like to start tackling 'Failure outside of Any'.  Step one was easy: making Failure inherit from Mu.  You had said the next task was to make Failure have the same kind of dispatch magic as Junction.  Can that be done entirely in Perl 6, or do I need to start looking in the C code?
17:54 fsergot joined #perl6
17:55 jnthn japhb: Dispatch stuff at least partly needs some C hacking
17:56 japhb Dang
17:56 jnthn You're not a C-er? :)
17:56 jnthn japhb: See bind.c and multidispatch.c. Just search for "junction"
17:56 japhb Not that I can't do C, but that there's a whole other world of Rakudo/Parrot/NQP stuff I need to learn to not just make a mess of things.
17:56 japhb Just as I was beginning to get a feel for the Setting ...  ;-)
17:57 jnthn japhb: Well, I think what you'd need to do in C would be (a) small and (b) quite contained.
17:57 japhb Well, won't hurt to have a look and see if I can cult my way to success.
17:57 japhb That's good to hear
17:57 jnthn japhb: I've tried to comment it decently to explain what's going on.
17:58 japhb jnthn++ for that!
18:01 japhb jnthn, OOC, in bind.c near the top, why do ACCEPTS and HOW not have the _str suffix of all the other static string names?
18:03 jimmy1980 joined #perl6
18:04 hrj joined #perl6
18:06 japhb_ joined #perl6
18:07 jnthn japhb_: Well, HOW isn't even used any more...
18:07 jnthn japhb_: No good reason though.
18:07 jnthn Just a consistency fail.
18:07 japhb_ fair enough
18:09 drbean joined #perl6
18:09 japhb joined #perl6
18:17 Chillance joined #perl6
18:21 japhb Rakudo needs an illguts doc.  ;-)
18:24 jnthn "illguts...really sick code"
18:25 japhb http://search.cpan.org/~gaas/illguts-0.09/
18:26 japhb woah, old link
18:26 japhb http://search.cpan.org/~rurban/illguts-0.38/
18:27 japhb That's more like it.
18:28 jnthn oh, *ill*ustrated
18:28 jnthn Not "unwell" :)
18:28 japhb Right.  :-)
18:29 japhb A lot of stuff I vaguely understood about perl5 from reading code got a LOT clearer when I read an early edition of that doc.
18:30 benabik jnthn: Having sat through a talk about making natives more native in P5 guts, I think it qualifies as both.
18:31 jnthn Sounds like a good idea. I did some diagrams in http://jnthn.net/papers/2011-tcpw-optimization.pdf and also (older) http://jnthn.net/papers/2010-osdc.fr-rakudo.pdf
18:31 jnthn the latter has some 6model ones
18:31 jnthn which are still largely accurate, it seems :)
18:32 jnthn hunger strikes! I'm off to find dinner
18:32 nornagest joined #perl6
18:32 jnthn bbl
18:32 japhb joy
18:32 japhb *enjoy
18:56 * [Coke] just finished a late lunch. stupid time zones.
18:57 japhb_ Y'all are making me hungry.
18:57 * japhb_ wanders off to hunt food.
18:59 [Coke] anyone have any comments on http://news.perlfoundation.org/2011/1​2/testbuilder-2-final-grant-repo.html ?
19:17 PerlJam [Coke]: schwern++ ?
19:19 [Coke] PerlJam: heh. good enough.
19:23 PerlJam [Coke]: ooc, what was the proposed award amount?
19:25 PerlJam (why does the grant report not link to the original proposal?)
19:26 [Coke] PerlJam: it's so old, it's probably not on the site.
19:26 [Coke] we just closed down the last remaining stalled grants this month.
19:29 PerlJam just found it.
19:29 [Coke] ah, then alberto is just muito preguiçoso
19:31 PerlJam The funniest part is (now) this:  Duration: about five months
19:31 PerlJam .oO(Note to self: take time estimates from Schwern with a huge grain of salt ;)
19:31 pat_js joined #perl6
19:34 ab5tract joined #perl6
19:35 japhb .oO( The waterbed theory of grant completion )
19:36 drbean joined #perl6
19:37 PerlJam [Coke]: can the grants committee award more than was requested?
19:38 [Coke] I don't think that's possible, no.
19:39 [Coke] We could suggest someone resubmit their grant before it's approved, I suppose.
19:39 [Coke] (but in general, I'd expect that to go the OTHER way.)
19:39 PerlJam indeed.  I was just curious.
19:40 [Coke] rules for GC operations are on the tpf site, somewhere.
19:43 birdwindupbird joined #perl6
19:43 birdwindupbird left #perl6
19:43 PerlJam wow, the grant for Web.pm is still open.  (also from 2008)
19:43 [Coke] not for long.
19:45 colomon getting closed, or getting finished?
19:49 jnthn on nom :)
19:50 jnthn And dang, my patch for :s and % bug didn't work :(
19:50 jnthn Well, it did and it didn't :)
19:52 [Coke] colomon: closed.
19:52 [Coke] expect a writeup soon (I thought one was out there already)
20:10 japhb jnthn, is the order of elements in the STable structure meant to be cache-optimal?
20:10 * japhb has decided to just jump in and try to understand the binder in general ...
20:11 jnthn japhb: I can't say I've profiled it, but I did try to group things that are likely to be accessed temporally close together and aligned such that they should land on the same cache line.
20:13 japhb jnthn, gotcha, that's what it kinda looked like
20:13 jnthn japhb: the binder in a nutshell: one routine is a loop over the parameters, and another is called per parameter.
20:13 jnthn japhb: The rest are mostly "utility" stuff
20:14 japhb jnthn, also, it looks to my eyes like the complex if condition at bind.c:311-314 could be simplified if the BIND_VAL_* constants followed a bit shift progression like SIG_ELEM_* does, so it falls to just a shift/mask/compare.  Is this a hot path?
20:15 japhb Yeah, I've read some of the utilities, I'm working my way through Rakudo_binding_bind_one_param at the moment.
20:18 jnthn japhb: the BIND_VAL values are currently set to align with some constants in Parrot, which is mostly why they're the way they are.
20:18 jnthn The binder is decidedly a hot path.
20:18 japhb Ah, I get it.
20:19 jnthn It can be tweaked, but it also takes a lot of decisions dynamically that it could take once statically.
20:19 jnthn I expect it to become more of a "signature compiler" than a "signature interpreter".
20:19 * japhb wonders then if a quick static array lookup to convert BIND_VAL_* to SIG_ELEM_NATIVE_* would work for that if condition.
20:20 japhb Ah, interesting.
20:20 takadonet joined #perl6
20:20 takadonet left #perl6
20:22 jnthn The binder's aggregate time in a profile does stand out. However, once you factor out the time it spends sticking stuff in lexpads, creating scalar containers, creating any Capture of Array objects for slurpies, etc, it isn't such a pig.
20:22 jnthn so/of/or
20:23 japhb nodnod
20:24 jnthn My notebook has some sketches on how to optimize away the need for some of those scalar containers, and we can probably figure out how to store in the lexpad by index, not by name.
20:25 jnthn Just didn't get to those yet :)
20:29 japhb Well, can't do *everything* at once, I guess.  Only 20 or 30 things.  :-)
20:30 ab5tract joined #perl6
20:30 Woodi can exceptions bring some computations savings vs code like "$r = $socket.get() or return False;" ? Assuming a lot of line parsing in loops
20:34 japhb What is 'whence' again (in the context of containers)?
20:37 localhost joined #perl6
20:43 drbean joined #perl6
20:44 jnthn japhb: It's to do with auto-viv.
20:47 jnthn (something I need to figure out Real Soon if Pm doesn't get tuits to hack on the remaining bits of...)
20:47 japhb Ah, OK
20:48 zby_home joined #perl6
20:50 PerlJam japhb: my understanding (albeit poor) is that whence is a closure-ish thing that makes other things.
20:50 japhb PerlJam, hmmm
20:51 * japhb files that info
20:51 jnthn yes, I believe $!whence holds a closure
20:51 jnthn See in Hash.pm for example.
20:51 PerlJam japhb: so, when you need to autovivify a hash element, you call the hash's whence to closure to get what an "empty" hash element should be
20:52 PerlJam er, s/to closure/closure/
20:54 japhb Ah, so allows the REPR to handle it's own autoviv magic.
20:55 japhb s/autoviv/vivification/
20:56 Lorn joined #perl6
20:57 jnthn container, not repr
20:57 jnthn REPRs are very low level things
20:57 jnthn In Perl 6 the b
20:57 jnthn vast majority of things are P6opaque.
20:58 jnthn A container is just a normal object that happens to also have a container spec entry in is STable.
20:58 jnthn *its
20:59 japhb Wait, I thought the container had the container descriptor directly in the container object
20:59 kmwallio joined #perl6
20:59 japhb Or is a container descriptor different from a container spec?
20:59 jnthn different. :)
20:59 jnthn container desciptor is something Perl 6 specific.
20:59 * japhb rolls his eyes overdramatically
20:59 jnthn the container spec thing is much more low level
20:59 japhb OK
20:59 jnthn You almost never thing about the cs.
20:59 jnthn *think
21:00 japhb Ah, OK, a ContainerSpec has an AttributeIdentifier and a fetch_method ...
21:01 japhb And fetch_method doesn't appear anywhere else in the source tree
21:02 japhb Oh, typo: line 22 of bind.h
21:02 japhb 'DEFINEDNES'
21:03 PerlJam is that latin? :)
21:11 cooper joined #perl6
21:15 jnthn heh :)
21:15 jnthn Missing "s"
21:18 simcop2387 joined #perl6
21:20 ab5tract joined #perl6
21:26 japhb bind.c:431-448 looks wrong in the face of objects that override .defined ... or are :D and :U really only supposed to check for concreteness?
21:30 jnthn yes
21:30 jnthn well
21:30 jnthn they were at the time that this was implemented, then I think the spec changed to :A and :C instead.
21:32 japhb Ah, OK, so now the binder needs to support both :A/:C and :D/:U?  What's the syntax for 'concrete but undefined'?  '$param:C:U' with no spaces?
21:36 benabik Binding based on a method call seems like it will add much slowness.
21:36 hrj1 joined #perl6
21:37 japhb benabik, unless I'm reading this wrong, there are already ways that can happen
21:37 moritz \o
21:37 jnthn Yes, we really don't want to go doing the method call there
21:37 jnthn o/ moritz
21:37 jnthn Not in the common case.
21:38 japhb benabik, for example, instantiating a generic type, coercing an arg,  binding a sub-signature, etc.
21:38 japhb jnthn, yes, sure, these are all unusual cases.
21:38 benabik That said, looking at S12…  It seems like :D and :U are defined based on DEFINITE (concrete), not .defined
21:38 jnthn Right, it's the common cases that need to be cheap
21:39 jnthn benabik: Oh, then it's already correct.
21:39 jnthn iiuc .DEFINITE is just the concreteness check we're already doing.
21:39 benabik jnthn: That's what I'm seeing.
21:39 japhb benabik, link?
21:39 japhb (To the lines in question, I mean)
21:40 benabik japhb: http://perlcabal.org/syn/S12.h​tml#Abstract_vs_Concrete_types
21:40 jnthn I think there was once some speculation that :D and :U may also do something interesting with regard to Failure, but I suspect now we're moving Failure outside of Any then that is redundant.
21:40 drbean joined #perl6
21:41 benabik I guess :U and :D used DEFINITE and // and the like use .defined?
21:41 jnthn oh, I musta been wildly wrong at :A and :C then :)
21:41 jnthn benabik: believe so, yes
21:41 japhb jnthn, well for example in the first table in the section benabik listed, :U is listed as "Allow only undefined (abstract or failure) ..."
21:42 jnthn oh, no
21:42 benabik japhb: But the table below says Int:U is Int:_ where not(DEFINITE($_))
21:42 jnthn yeah
21:42 jnthn just saw that
21:42 jnthn japhb: I'm not sure that makes sense these days
21:42 japhb Right ... I was about to say, the spec seems confused.
21:42 jnthn It predates the Failure changes
21:43 jnthn I got the impression form TimToady++'s commit on moving Failure out that it was the first of several.
21:43 japhb I guess the Failure change kills :T as well ...?
21:43 japhb or maybe :T is still useful for Mu?
21:43 PerlJam :T ?
21:43 jnthn mebbe :)
21:44 japhb PerlJam, ":U where none(Failure)"
21:44 PerlJam ah
21:47 japhb FWIW, It feels to me like :_/:D/:U/:T are oblique to the independent axes.
21:47 japhb (At least in their current definition)
21:47 benabik Huh?
21:48 PerlJam japhb: I've never quite known what to think of them, so I'm letting it stew for a while
21:48 jnthn OK, I'm too tired to do anything useful, so getting an early night.
21:48 jnthn o/
21:48 benabik o/ jnthn
21:48 japhb benabik: By which I mean, "definedness" and "type-constraintedness" seem like the wrong axes.  It feels cleaner to me to use "concreteness" and "failness"
21:48 japhb Good night, jnthn
21:49 tadzik o/
21:51 colomon \o
21:53 ggoebel joined #perl6
21:53 jeffreykegler joined #perl6
21:55 ab5tract joined #perl6
21:57 japhb phenny, ask TimToady Would you mind taking a look at http://perlcabal.org/syn/S12.h​tml#Abstract_vs_Concrete_types in the context of the discussion starting at http://irclog.perlgeek.de/​perl6/2011-12-08#i_4808300 and clarifying your current intent?
21:57 phenny japhb: I'll pass that on when TimToady is around.
21:57 fridim_ joined #perl6
22:01 jeffreykegler left #perl6
22:02 Moukeddar joined #perl6
22:03 Moukeddar good evening folks
22:04 colomon o/
22:04 Moukeddar how are you doing?
22:06 colomon bit tired at the moment.
22:08 Moukeddar ah, you need some rest
22:09 colomon got band rehearsal tonight, then a long weekend with my wife away (snow permitting), which probably means days of hanging out with my three-year-old and evenings with bad movies and perl hacking.  :)
22:09 Moukeddar sounds cool and lovely
22:11 colomon you?
22:12 drbean joined #perl6
22:13 Moukeddar preparing for the exams, the same boring stuff
22:17 Chillance joined #perl6
22:21 Moukeddar where is masak ?
22:22 PerlJam Moukeddar: vacation
22:23 Moukeddar ah, good for him, he deserves it
22:28 jimmy1980 joined #perl6
22:32 s1n joined #perl6
22:51 fridim_ joined #perl6
22:52 REPLeffect joined #perl6
23:01 am0c joined #perl6
23:07 Radvendii joined #perl6
23:07 Radvendii is it just me, or does the interactive shell version of perl6 not accept unicode characters?
23:07 tadzik works for me
23:08 tadzik you probably need some external libs for that, not sure
23:08 Radvendii oh hey! it's the famous tadzik of panda!
23:09 Radvendii (just because i've had some issues installing it and everyone was like "oh, talk to tadzik when he gets on")
23:09 tadzik I fell unprepared for the fame
23:09 Radvendii haha
23:09 tadzik :)
23:09 tadzik so, what's up?
23:10 Radvendii well, the bootstrap.sh doesn't work, as im sure you know because it seems to be common knowledge. but the other issue arises when using the panda installed via rakudo star.
23:10 tadzik hmm
23:10 Radvendii i get the error:
23:10 Radvendii ===SORRY!===
23:10 Radvendii error:imcc:loadlib directive could not find library `nqp_group' in file '~/.perl6/lib/Shell/Command.pir' line 26
23:11 tadzik bootstrap.sh fails due to Test::Mock test failures, which are beyond my comprehension :)
23:11 Radvendii fair enough.
23:11 Radvendii i was told that this error would most likely be resolved in the next rakudo-star update, so i
23:11 Radvendii i'll await that ;)
23:11 tadzik I suppose so
23:11 tadzik to be honest, I didn't use Star for a few months now
23:12 tadzik the error looks odd-ish however
23:12 Radvendii mhmm...
23:13 Radvendii anyways, i had another question pertaining to unicode
23:14 Radvendii if i define the • infix opperator to be the exact same as *, can i then redefine * to be exactly the same as **?
23:14 Radvendii without loosing • as times?
23:16 tadzik I don't know, honestly, and I don't want to guess :0
23:16 tadzik :)
23:16 Radvendii okay. fair enough
23:18 hundskatt joined #perl6
23:25 whiteknight joined #perl6
23:25 tadzik oh, and panda is named after my dog :)
23:26 djanatyn okay, time for an epic perl hacking session
23:26 djanatyn perl5, though :(
23:26 djanatyn but after that, perl6 :D
23:26 tadzik :)
23:27 djanatyn i've got mountain dew, pizza, emacs, and Dancer
23:28 Radvendii tadzik: oh. nice.
23:33 djanatyn http://a8.sphotos.ak.fbcdn.net/hphoto​s-ak-ash4/388167_316758271687052_1000​00586461912_1170885_1771322448_n.jpg -- making good progress so far
23:33 djanatyn it's completely perl, which is nice.
23:34 tadzik what a mess in tabs :)
23:34 djanatyn tadzik: heh. I take an ADHD approach to web-browsing
23:38 tadzik oh, right, I'm the weird one who closes his web browser :)
23:44 tokuhirom joined #perl6
23:47 ab5tract joined #perl6
23:47 wolfman2000 joined #perl6
23:56 drbean joined #perl6

| Channels | #perl6 index | Today | | Search | Google Search | Plain-Text | summary

Perl 6 | Reference Documentation | Rakudo