Perl 6 - the future is here, just unevenly distributed

IRC log for #perl6, 2015-11-21

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:00 psch m: my $x; $x++ = 5
00:00 camelia rakudo-moar : OUTPUT«Cannot modify an immutable Int␤  in block <unit> at /tmp/QvTRPVk_PG:1␤␤»
00:00 psch so it would behave like that
00:00 AlexDaniel m: my $x; $x**25 = 5
00:00 camelia rakudo-moar : OUTPUT«Use of uninitialized value of type Any in numeric context  in block <unit> at /tmp/3ncEDgJwHy:1␤Cannot modify an immutable Int␤  in block <unit> at /tmp/3ncEDgJwHy:1␤␤»
00:01 AlexDaniel same error though
00:04 nowan_ joined #perl6
00:30 Psyche^ joined #perl6
00:39 psch well, almost vOv
00:39 Skarsnik night here
00:40 psch .tell hahainternet https://gist.github.com/peschwa/7202b9f622de517cd881 is what i hacked around a bit with re: superscript.  the only things that's missing is proper integration, afaict.  as in, the nqp internals complain that the lhs isn't there...
00:40 yoleaux psch: I'll pass your message to hahainternet.
00:41 psch .tell hahainternet line 27 is just a debugging aid...
00:41 yoleaux psch: I'll pass your message to hahainternet.
00:48 * psch is pretty sure there's only a minor oversight hidden somewhere
00:48 psch unfortunately it's hidden in EXPR and that thing's scary :P
00:49 psch m: say "\x[E0100]".codes
00:49 camelia rakudo-moar : OUTPUT«1␤»
00:49 psch j: say "\x[E0100]".codes
00:49 camelia rakudo-jvm 0b6328: OUTPUT«2␤»
00:51 psch r: sub foo (@a) { say @a.WHAT }; my $a = Seq.new((1..2).iterator); foo($a)
00:51 camelia rakudo-jvm 0b6328: OUTPUT«Type check failed in binding @a; expected Positional but got Seq␤  in sub foo at /tmp/tmpfile:1␤  in block <unit> at /tmp/tmpfile:1␤␤»
00:51 camelia ..rakudo-moar: OUTPUT«(List)␤»
00:51 psch r: use nqp; sub foo (@a) { say @a.WHAT }; my $a = Seq.new((1..2).iterator); foo(nqp::decont($a))
00:51 camelia rakudo-moar, rakudo-jvm 0b6328: OUTPUT«(List)␤»
01:05 geraud joined #perl6
01:20 tokuhiro_ joined #perl6
01:25 kid51 joined #perl6
01:32 aborazmeh joined #perl6
01:32 aborazmeh joined #perl6
01:36 n0tjack joined #perl6
01:36 timotimo huh, newlines on osx aren't \r?
01:37 konobi nope
01:37 konobi good ol' unix
01:49 arnsholt Yeah, \r newlines are MacOS Classic
01:49 arnsholt That's possibly the best part about OS X: It's pretty much all Unix underneath
01:50 arnsholt But BSD rather than GNU userland, which can trip you up every so often if you're not used to it
01:50 kid51_ joined #perl6
01:52 Hotkeys if only windows had jumped on the unix train
01:53 arnsholt MS actually sold a Unix for a long time. Think it's dead now, though
01:54 psch solaris was the one with the surprising killall, wasn't it?
01:54 arnsholt But the Windows kernel is based on a completely different approach from Unix. Apparently the NT kernel is super-solid though
01:54 arnsholt Most of the problems with Windows are due to crap third-party software or crap hardware, I think
01:55 pink_mist psch: what did the solaris killall do? 0_o
01:56 psch pink_mist: i'm not sure it was solaris, but i remember a story of some fresh sysadmin being used to gnu/linux killall and finding himself on a server where killall literally meant kill all
01:56 pink_mist ohlord
01:57 pink_mist wonder who thought that was a good idea :P
01:57 psch https://tehtable.wordpress.com/2009/12/07/note-to-self-solaris-linux/ fits my memory :)
01:57 konobi arnsholt: it's an _actual_ unix... it was even certified at one point
01:58 psch pink_mist: aparently i was right in remembering it as solaris, cf. the link
01:58 konobi psch: iirc, it was solaris
01:58 skids joined #perl6
01:58 konobi but i think it was pre-10.0
01:59 arnsholt konobi: OS X, you mean? Yeah, that's exactly it. Only atypical thing is pretty much the GUI stuff not being X11
02:00 konobi arnsholt: yup.
02:00 psch konobi: i've never actually spent time with solaris, i just remembered the story...
02:01 konobi psch: kicked me in the ass a couple of times =0)
02:01 TimToady pink_mist: the $ in $ = stuff is not a declaration, it's more like (state $) = stuff, so the = is just ordinary assignment
02:02 pink_mist TimToady: ahhh, I see
02:02 mst pink_mist: solaris killall is a famous trap
02:02 konobi now that I think about it... SDC would be a good platform to do infrastructure support for builds/testing/dev
02:02 konobi mst: o/
02:03 mst konobi: \o
02:04 BenGoldberg joined #perl6
02:04 konobi mst: long time no chats
02:06 johan joined #perl6
02:06 mst yar, last time was the nix related discussion on #catalyst IIRC
02:07 * mst is still iterating slowly towards having a working version of the thing in question
02:07 mst (which is eventually going to force me to work with Inline::Perl6, which I'm rather looking forward to ;)
02:08 zengargoyle joined #perl6
02:11 konobi mst: oh?
02:12 colomon joined #perl6
02:14 mst konobi: my plan for handling config files will require grammars
02:15 konobi ah ha... as i suspected.
02:15 konobi then you could use another grammar to use nix config files and just steal the project... *mwuahahaha*
02:16 mst yes. yes, I could. that's ... actually a rather interesting idea.
02:16 * mst tries to forget it to avoid being distracted from the core ;)
02:16 lab_ joined #perl6
02:18 xenu_ joined #perl6
02:18 Juerd_ joined #perl6
02:18 BinGOs_ joined #perl6
02:18 zoosha_ joined #perl6
02:18 ab5tract joined #perl6
02:18 f3ew_ joined #perl6
02:18 bhm_ joined #perl6
02:18 btyler_ joined #perl6
02:18 leedo_ joined #perl6
02:18 metasin_ joined #perl6
02:18 maddingu1 joined #perl6
02:18 jojotus_ joined #perl6
02:18 Upasaka_ joined #perl6
02:18 [Coke]_ joined #perl6
02:18 yubimusubi joined #perl6
02:18 tony-o joined #perl6
02:19 jnthn_ joined #perl6
02:19 sftp joined #perl6
02:19 arnsholt mst: Why Inline::Perl6 for grammars, instead of something like Regexp::Grammars, if I may ask?
02:20 MadcapJake joined #perl6
02:21 dalek doc: 58e9172 | skids++ | doc/Type/X/AdHoc.pod:
02:21 dalek doc: Add some cultural guidance
02:21 dalek doc: review: https://github.com/perl6/doc/commit/58e9172a87
02:21 grondilu joined #perl6
02:22 konobi mst: indeed... core project first!
02:22 Zoffix joined #perl6
02:22 mst arnsholt: because, generally, when something is that important to one of my plans, I end up bending it -very- hard
02:22 konobi and the ability to just use it in perl6
02:23 mst the only thing that seems like an advantage of Regexp::Grammars is "not needing to manage a rakudo install"
02:23 mst and the codebase in question is going to have to do that anyway
02:23 mst because one of the things I'm going to build is a carton-like thing designed to manage hybrid p5/p6 projects
02:23 psch skids: i'd rephrase that to "in some cases using the string returned might be preferable, but tests usually want to check against Exception if no subclass is known." or somesuch
02:24 mst at which point I may's well use the real thing
02:24 mst plus, every time I discuss my full plans, people give me confused looks, with the exception of jnthn and pmichaud who said "yeah, that's not going to be trivial, but I've done something like it before and I totally think it should be possible"
02:25 psch still, skids++ for culturally applicable documentation
02:26 telex joined #perl6
02:26 konobi i think i was pretty thumbs up about it
02:27 arnsholt mst: That sounds pretty cool, TBH. I think you're right that hybrid 5/6 applications are going to be a thing, and a tool to manage those is definitely going to be awesome
02:27 skids Well, you'd probably want to ensure you have an Exception before trying to call .message.
02:27 arnsholt And with a bit of luck it might help cross-pollinate the five and six worlds a bit
02:27 mst that's pretty much what I have in mind
02:27 mst plus the fact that people working on such apps are going to be a lot more willing to try something new
02:27 mst seems like a positive sum game to me
02:27 arnsholt Indeed
02:28 n0tjack joined #perl6
02:28 konobi mst: now you just gotta start a repo!
02:28 dalek modules.perl6.org: 4377db9 | (Zoffix Znet)++ | web/templates/layouts/default.html.ep:
02:28 dalek modules.perl6.org: Use title() helper in <title> element
02:28 dalek modules.perl6.org: review: https://github.com/perl6/modules.perl6.org/commit/4377db9293
02:28 psch skids: oh, right.  i didn't check the surroundings of the patch, if it's clear that this specifically about checking for Exceptions and their message it's probably fine
02:29 mst konobi: core algorithm first. then the perl5 client. then the hybrid client. then grammar support. then C dependencies. then I take on puppet/chef/etc.
02:29 arnsholt And I agree that the Perl 6 grammars are pretty awesome. Even parsing Python turned out to be pretty straightforward (once I stopped being completely obtuse)
02:30 konobi arnsholt: think... a parser for ansible that isn't just a plain ol' YAML loader
02:31 mst augeas
02:31 dalek modules.perl6.org: ae688d0 | (Zoffix Znet)++ | web/templates/root/index.html.ep:
02:31 dalek modules.perl6.org: Add explicit dimensions to camelia's image
02:31 dalek modules.perl6.org:
02:31 dalek modules.perl6.org: Google cries we load non-critical CSS/JS and based on screenshots it is actually due to camelia changing layout on load and not actual CSS/JS
02:31 dalek modules.perl6.org: review: https://github.com/perl6/modules.perl6.org/commit/ae688d0829
02:31 mst great idea
02:31 mst the lens file format is horrific
02:32 mst grammars will be way way way way nicer
02:33 konobi mst: also the ability to extend the grammars for "modules" or what not
02:33 mst however. burn that bridge when I come to it.
02:36 konobi got the core algo into notes yet?
02:36 edehont joined #perl6
02:38 mst I'm implementing as I go.
02:38 mst each prototype then gets beaten up until I manage to break it utterly, and then I start a new git repository and try again
02:40 * mst is optimising for having a working implementation, I'll backfill the algo into the docs
02:40 mst but I can't motivate myself to do that until I know it actually works
02:41 konobi ah... probably no re-useable tests then
02:45 BenGoldberg joined #perl6
02:45 dalek modules.perl6.org: 0c3b817 | (Zoffix Znet)++ | web/ (3 files):
02:45 dalek modules.perl6.org: Show Perl 6-ish error pages instead of Mojolicious's default (Closes #30)
02:45 dalek modules.perl6.org: review: https://github.com/perl6/modules.perl6.org/commit/0c3b817fa4
02:46 edehont joined #perl6
02:49 mst not any time soon, I'm afraid. I am aware that making it possible to re-implement it is a worthwhile goal, but right now everything is secondary to either proving the current algo works or breaking it and figuring out the next attempt
02:50 kid51_ joined #perl6
02:52 mst konobi: being right at the edge of my capabilities is both fun, and somewhat restricting :)
03:00 dalek modules.perl6.org: 0fb8a2f | (Zoffix Znet)++ | / (3 files):
03:00 dalek modules.perl6.org: Document and improve handling of META.list.local
03:00 dalek modules.perl6.org: review: https://github.com/perl6/modules.perl6.org/commit/0fb8a2f28b
03:08 konobi mst: =0P
03:08 majid joined #perl6
03:08 konobi mst: yeah... just thinking that someone might know of some smart math that can be applied
03:08 dalek modules.perl6.org: 1d97568 | (Zoffix Znet)++ | web/lib/ModulesPerl6/Model/ (2 files):
03:08 dalek modules.perl6.org: Fix Unicode handling in db (Closes #34)
03:08 dalek modules.perl6.org: review: https://github.com/perl6/modules.perl6.org/commit/1d97568907
03:11 psch m: IO::Notification.watch-path(".")
03:11 camelia rakudo-moar : ( no output )
03:11 psch m: IO::Notification.watch-path(".").tap( -> $f { say $f }); sleep 10
03:11 camelia rakudo-moar : ( no output )
03:11 psch well, it compiles at least...
03:11 mst konobi: I want the initial implementation to be only as smart as strictly necessary, anyway, in the names of being able to explain it
03:12 psch i guess that means dying with an NYI is preferable to what r-j currently does...
03:12 psch j: IO::Notification.watch-path(".").tap( -> $f { say $f });
03:12 camelia rakudo-jvm 0b6328: ( no output )
03:12 aindilis joined #perl6
03:12 psch ...that doesn't match my local output o.o
03:12 zengargoyle .oO( should user's module install dir be XGD_DATA_HOME vs ~/.perl6 )
03:13 psch zengargoyle: XDG, no?
03:13 zengargoyle gah, XDG_DATA_HOME/perl6 that is :)
03:14 psch m: say %*ENV<XDG_DATA_HOME>
03:14 camelia rakudo-moar : OUTPUT«(Any)␤»
03:14 psch camelia doesn't know about any of that vOv
03:14 zengargoyle defaults to $HOME/.local/share
03:14 psch or well, camelia only knows Any about that, maybe...
03:15 zengargoyle i initially didn't like the XDG stuff, but have grown acustomed to .config .cache .local/share with non-hidden directories per app.
03:15 psch zengargoyle: so you're saying something like < %*ENV<XDG_DATA_HOME> // "$HOME/.perl6".IO > for module installation path?
03:16 psch zengargoyle: 'cause clearly XDG_DATA_HOME isn't set everywhere, camelia and windows as two examples
03:16 dalek modules.perl6.org: f41ff22 | (Zoffix Znet)++ | web/ (2 files):
03:16 dalek modules.perl6.org: Improve log messages for db generation/app restart (Closes #28)
03:16 dalek modules.perl6.org: review: https://github.com/perl6/modules.perl6.org/commit/f41ff22f0d
03:17 zengargoyle more like < (%*ENV<XDG_DATA_HOME> // "$HOME/.local/share") ~ '/perl6'
03:18 zengargoyle no more new .foo files/dirs in $HOME
03:18 psch that leaves windows
03:18 zengargoyle http://standards.freedesktop.org/basedir-spec/basedir-spec-0.6.html
03:18 psch there we probably want %appdata& or however that is called
03:18 psch s/\&/%/
03:19 zengargoyle yeah, i totally have never used windows.
03:20 zengargoyle .oO( slight lie, never have used windows of my own accord )
03:22 tokuhiro_ joined #perl6
03:23 dalek nqp: b5008ad | peschwa++ | src/vm/jvm/QAST/Compiler.nqp:
03:23 dalek nqp: Correct types for op nqp::watchfile.
03:23 dalek nqp:
03:23 dalek nqp: Previously this would complain about not being able to unbox a str to int.  Now
03:23 dalek nqp: we at least get the NYI error.
03:23 dalek nqp: review: https://github.com/perl6/nqp/commit/b5008ad0fd
03:23 noganex_ joined #perl6
03:23 psch zengargoyle: fwiw, i'd prefer something that works with a simple substitution
03:24 psch zengargoyle: as in "if you're on something *nixy it's in $HOME/$path, on something doze-y it's in %appdata%\$path"
03:24 psch zengargoyle: i recognize that following XDG here might mean its adoption increases, but i'm not sure it's our responsibility to push it
03:26 zengargoyle well it's a nice way to let people store it where they want without resorting to making symlinks or something.  the ability to override that environment variable.
03:28 zengargoyle most more-popular linux desktops use the XDG stuff (probably falling back to the defaults for some).  that's where all the Documents and Videos and Music type folders come from.
03:28 psch yeah, that's what came to mind, and i agree with it
03:29 psch if we want to allow overriding of where to store installed stuff going with the (even if not 100% adopted) standard is the best choice
03:29 psch and if we don't want to allow it we might as well bundle local::lib in CORE...
03:30 psch well, an equivalent anyway
03:31 zengargoyle like me, running bare X+openbox, i only have some that X or systemd sets up... XDG_RUNTIME_DIR=/run/user/1001 and SESSION_ID / SESSION_COOKIE
03:31 mst adding XDG support to File::HomeDir was a huge mistake that has made it a complete disaster to deal with
03:32 zengargoyle care to elaborate?
03:32 mst I would strongly recommend an old-school "use $HOME" approach by default
03:32 mst it's un-unixy and oriented around shiny desktops
03:32 mst so it completely fails POLS for anybody who expects unix
03:33 zengargoyle true, but dotfiles were an accident.
03:33 mst yes, and now they're a well understood standardised accident that people actually like
03:33 mst following XDG by default is largely a recipe for "where the fsck did you put my files?!" moments for your users
03:33 * psch actually remembers that from trying to customize awesomewm
03:34 mst XDG support is absolutely a nice thing to have. but let the people who want it turn it on explicitly.
03:34 psch i did resort to < find . -iname 'rc.lua' >
03:34 mst *snrk*
03:34 mst psch: which is precisely what I don't want to do to perl6 users :)
03:35 zengargoyle but once you know, i find it easier/nicer to just ls .config and see stuff.
03:35 zengargoyle each app with it's own nice directory
03:35 mst sure. and anybody who already knows, will turn on the option
03:35 mst I know it's nicer for you. it's just the failure modes are horrible for people who aren't you.
03:36 psch FSVO "horrible"
03:36 psch it is inconvenient if you don't expect it, yes
03:36 mst confusing the heck out of a new user is more than inconvenient
03:36 zengargoyle maybe true, but still everything else is moving that way already.
03:37 zengargoyle so it's not like we'd be protecting them from anything.
03:37 mst and GUI distros are welcome to package it with the option turned on by default
03:38 mst but dotdirs are still fundamentally the standard for terminal programs designed to be used in a unixish environment
03:38 mst the only thing in my .config/ on my main development system is Qt related
03:39 mst so I think your 'everything else' assertion is optimistic :)
03:39 zengargoyle Perl 6 is for 7 year old girls! :P
03:39 zengargoyle think of the future.. :)
03:39 zengargoyle where i have 65 dirs in .config
03:40 mst in the future, the distros will probably have invented yet another standard and moved to that
03:40 zengargoyle and that's 65 things not cluttering my $HOME
03:40 zengargoyle true that.
03:40 psch for reference, i have 43 non-dot dirs in my $HOME on my linux partition
03:41 psch probably twice as many dot dirs, one of them .config which might have like 7 or so..?
03:41 zengargoyle 62 :)
03:41 psch not sure how to teach explorer.exe to show dot dirs :P
03:42 mst psch: 'ls -la' in your cygwin install :D
03:42 psch right, i *did* install cygwin somewhen...
03:43 mst zengargoyle: basically, I don't think defaulting to something that, as yet, most things don't default to, is a good idea
03:43 mst also I bet the things in .config are largely GUI apps
03:43 mst which I -would- expect to default to that
03:48 zengargoyle mine are sort of a mix, depends on where you draw the line between desktopy, guiy, graficy, texty.
03:53 zengargoyle i count it as something i got used to the same way i got used to ls -a mixing dot and regular and upper and lower cases all together.
03:53 geekosaur LC_COLLATE=C
03:54 zengargoyle yeah, just too much trouble to keep fighting the change.
03:54 xpen joined #perl6
03:55 zengargoyle like textfiles not being latin1 any more.
03:56 zengargoyle and \r\n being a single thing!  the horrors!
03:58 zengargoyle i'm still all inner-ragey about newer input methods not bringin in good old XCompose functionality.
04:00 molaf joined #perl6
04:25 herby_ joined #perl6
04:25 herby_ Good evening, everyone!
04:28 konobi like ldap/nis+
04:34 herby_ I asked yesterday about parsing html and someone gave me a link to an example but I can't seem to find it
04:34 herby_ Any recommendations for parsing a web page after I've retrieved it using HTTP::Client?
04:35 geekosaur someone still uses nis+?!
04:36 konobi geekosaur: you'd be surprised
04:36 geekosaur my condolences
04:36 konobi haven't had to deal with it myself for a while
04:38 hankache joined #perl6
04:39 * geekosaur doesn't see anything from you yesterday. or about HTTP::Client for that matter
04:41 herby_ geekosaur, no?
04:41 geekosaur not in this channel
04:42 herby_ not sure how you're searching, are you able to see back to wednesday?
04:42 geekosaur previous time you said anything in my log was about a week ago
04:42 herby_ whaaat
04:42 geekosaur unles syou were using a different nick (I dropped the underscore for the search)
04:43 herby_ i was some version of herby :)
04:43 geekosaur 2015 Nov 12 03:47:58 <herby_>now it works!
04:43 herby_ i'm not loco, I swear
04:43 herby_ skarnsik, or skarnskik or something gave me the link
04:44 geekosaur last thing in my log from anyone whose nick contained "herby" in #perl6, before you joined a few minutes ago
04:45 herby_ in your log, do you see anything about rosettacod from yesterday?
04:45 herby_ because that was a response to my question
04:45 geekosaur ahhh. I didn't do case independent search
04:46 Ben_Goldberg joined #perl6
04:47 geekosaur closest thing I see is 2015 Nov 20 02:12:40 <Skarsnik> Herby_, parse-html is from the Gumbo module if you are wondering, not in perl6 x)
04:47 herby_ yesss. skarsnik replied with a link to hit github
04:47 herby_ as a parsing example
04:47 psch herby_: the topic has a link to the public log for this channel, in case you want to search yourself
04:48 rigsby joined #perl6
04:48 herby_ perfect, i'll give that a shot. thanks!
04:48 psch not that i don't admire geekosaur++ for helping with that... :)
04:48 geekosaur 2015 Nov 20 02:00:44 <Skarsnik> Herby_, if you want an example https://gist.github.com/Skarsnik/cc6a997fe72b1caae73d
04:48 herby_ that's it! thanks geeko!
04:48 rigsby copied "words from file" code from perl6.org . getting the following error; No such method 'words' for invocant of type 'IO::Handle'
04:50 psch rigsby: does dict.txt exist?
04:50 Ben_Goldberg m: IO::Handle.^methods.say
04:50 camelia rakudo-moar : OUTPUT«(FALLBACK gist new)␤»
04:50 psch m: say $*IN.WHAT; say $*IN.can('words')
04:50 camelia rakudo-moar : OUTPUT«(Handle)␤(words)␤»
04:50 rigsby dict.txt is there
04:50 psch m: say $*IN ~~ IO::Handle
04:50 camelia rakudo-moar : OUTPUT«False␤»
04:50 Ben_Goldberg m: Handle.^methods.say
04:50 camelia rakudo-moar : OUTPUT«5===SORRY!5=== Error while compiling /tmp/PyAh9SP7qk␤Undeclared name:␤    Handle used at line 1␤␤»
04:51 Ben_Goldberg m: say $*IN
04:51 camelia rakudo-moar : OUTPUT«IO::Handle<<STDIN>>(opened, at octet 0)␤»
04:51 Ben_Goldberg m: Handle.can('words').say
04:51 camelia rakudo-moar : OUTPUT«5===SORRY!5=== Error while compiling /tmp/UqeqCbCMV2␤Undeclared name:␤    Handle used at line 1␤␤»
04:51 Ben_Goldberg m: IO::Handle.can('words').say
04:51 camelia rakudo-moar : OUTPUT«()␤»
04:51 psch rigsby: it works locally... what's your perl6 --version?
04:52 geekosaur m: 'dict.txt'.IO.^can('words').say
04:52 camelia rakudo-moar : OUTPUT«(words words)␤»
04:52 rigsby This is perl6 version 2013.12 built on parrot 5.9.0 revision 0
04:52 rigsby hmm
04:52 rigsby my bad
04:52 geekosaur oh. trather old
04:52 psch yes
04:52 rigsby did apt-get inst rakudo just now -- but maybe not using that
04:53 psch that's a bit old indeed
04:53 rigsby yea looked at IO:handle.^methods.say and there was no words
04:53 geekosaur rakudo has changed a lot just in the past couple months, let alone compared to 2013
04:53 psch rigsby: the recommended way of installing currently is rakudobrew, from https://github.com/tadzik/rakudobrew
04:53 geekosaur winding toward release
04:53 rigsby alrightey will try that psch
04:54 psch rigsby: feel free to ask any questions that might pop up, there's usually someone around who can at least point in a direction that might help
05:04 xpen joined #perl6
05:11 rigsby joined #perl6
05:12 n0tjack joined #perl6
05:13 rigsby got rakudobrew added init to .zshrc ran build moar.. still no new perl6 yet will look at rakudobrew github page a bit more
05:14 rigsby guess i have to get rid of my /usr/bin/perl6 , or link to wherever rakudobrew puts things
05:15 geekosaur if you're in a shell that you didn't start after adding that, you'd need to run the same command in that shell
05:15 rigsby though my .rakudobrew/bin is prior to /usr/bin so if it's in there shouldn't it prefer the rakudo version?
05:15 geekosaur also: hash -r
05:16 geekosaur shells remember where they saw things
05:16 rigsby ahh hash -r did it
05:16 rigsby niiice
05:16 rigsby thxx!!
05:17 geekosaur I'd still remove the package managfer one just to avoid confusion
05:17 zengargoyle rigsby: which distro was that with the old perl6?
05:18 rigsby but the package manager one is the shiny new one that allows for method like IO::words
05:18 rigsby xubuntu
05:18 rigsby one sec and ill be more specific
05:19 rigsby Ubuntu 14.04.3 LTS
05:19 konobi ugh... i miss namespaces
05:19 zengargoyle ah, older LTS release
05:21 rigsby zengargoyle: were you suggesting getting rid of the .rakudobrew?
05:22 zengargoyle no, your ubuntu is a year and a half old, and one of the Long Term Stable releases, so isn't likely to get new updated packages.
05:23 zengargoyle you should probably uninstall the old package you installed...: apt-get purge rakudo
05:24 zengargoyle most everybody here uses the rakudobrew'd version... you're good to go.
05:24 tokuhiro_ joined #perl6
05:25 zengargoyle if your system were Ubuntu 15.something non-LTS we could complain about the old rakudo package. :)
05:26 zengargoyle like Debian sid had the 2015.09 version now... probably newer Ubuntu also has a fresher version in the repositories.
05:26 kaare_ joined #perl6
05:28 * geekosaur just wouldn't rely on distro packages for something that changes as quickly as rakudo has been
05:28 geekosaur likewise I don't rely on calibre packages from a package manager since there's a new version ~ every Friday
05:51 awwaiid can someone explain .+ and .* to me?
05:52 awwaiid m: say <5 6 7 8 23>.*roll
05:52 camelia rakudo-moar : OUTPUT«(7 6)␤»
05:53 awwaiid m: say 23.*is-prime
05:53 camelia rakudo-moar : OUTPUT«(True)␤»
05:53 awwaiid m: say <5 6 7 8 23>.roll
05:53 camelia rakudo-moar : OUTPUT«5␤»
05:55 llfourn joined #perl6
05:55 geekosaur foo.meth calls the most applicable method for the object, foo.?meth calls if it exists (without failing if it doesn't), foo.+meth calls all applicable methods instead of the most applicable one, foo.*meth like foo.?meth does that without failing if there aren't any
05:56 awwaiid ya. that's the doc that I want to update because I have no idea what the junk after .? means :)
05:56 geekosaur <5 6 7 8 23>.^can('roll')
05:56 geekosaur er
05:57 geekosaur m: <5 6 7 8 23>.^can('roll').say
05:57 camelia rakudo-moar : OUTPUT«(roll Method+{<anon|61865648>}.new)␤»
05:57 awwaiid maybe rakudo isn't doing what it is supposed to, but in the above you can see that .roll and .*roll are returning different things; also .* gives back a list instead of a single value
05:57 geekosaur there are two applicable methods returned by "can" there; I don't know what the second one is...
05:57 geekosaur anyway .* or .+ will call all of them and return a list of the results
05:58 awwaiid ahhh... interesting
05:58 awwaiid why in the world would anyone want to do that?
05:58 awwaiid those other methods come from like inheritance or roles or some such thing, ya?
05:59 geekosaur tbh I don't know why you'd need that
06:00 geekosaur http://design.perl6.org/S12.html#Multisub_Resolution might be enlightening
06:01 awwaiid oh, you think it is applicable 'multi' methods rather than overridden inherited ones? interesting
06:01 geekosaur I think inheritance is just a special case of that
06:01 awwaiid even better
06:03 awwaiid m: 23.^can('floor').perl.say
06:03 camelia rakudo-moar : OUTPUT«(method floor (Int:D $: *%_) { #`(Method|43504952) ... }, method floor (Cool $: *%_) { #`(Method|43535808) ... })␤»
06:03 geekosaur so anyway .+ calls all applicable methods instead of just the "best" one; .* is to .+ as .? is to plain .
06:03 geekosaur (not failing if no methods are considered applicable)
06:03 awwaiid gotchya
06:03 awwaiid ok. Not clear on the value, but that helps me understand the mechanics
06:04 awwaiid thanks!
06:11 redhands joined #perl6
06:22 karim32 joined #perl6
06:23 karim32 I have code in Python which makes an http post request and works well. The same code returns 400 Bad Request in Perl 6. Could anyone help me?
06:23 karim32 It's very simple, a couple of lines of code.
06:23 karim32 http://pastebin.com/DapXdVMt
06:23 awwaiid can you post it in a gist or something?
06:23 awwaiid ah, you beat me to it
06:24 karim32 I'm using this lib https://github.com/sergot/http-useragent It seems to be de-facto for Perl 6 at the moment
06:24 awwaiid interesting. do you own the server as well? It'd be interesting to see the different log entries
06:24 konobi awwaiid: oh... long time no see.
06:24 karim32 No, it's not mine server
06:24 awwaiid greetings konobi
06:25 karim32 Or if there's a better http library, please share its name
06:26 redhands why does you $http-client variable have a dash in it?
06:26 awwaiid redhands: that is the perl6ish way to name things
06:26 redhands ah I see
06:26 awwaiid lisp-style (kabob)
06:27 redhands neat
06:27 awwaiid interestingly, you're not allowed to put the dash at the beginning or end, and can't have two in a row
06:27 awwaiid makes it very much a word-separator
06:28 redhands ah I suppose that makes sense
06:29 awwaiid karim32: I'm checking this lib out, see if anything jumps out at me
06:30 karim32 ok, thanks
06:31 karim32 I'm going offline, I don't get along with irc, how can I get back to you? Or will you ping me?
06:31 karim32 email?
06:31 polettix joined #perl6
06:31 karim32 I've opened an issue at the "issue" section at that library
06:31 karim32 at github
06:32 awwaiid karim32: maybe try HTTP::Request.new(POST => 'https://api.some_website.org/some_params', var1 => 1234, var2 => 'some text')
06:32 awwaiid ah cool -- I'll watch the issue on that lib
06:32 awwaiid and reply there if I learn anything useful
06:34 karim32 not working
06:34 karim32 ok
06:34 awwaiid my guess is still that there is some encoding issue going on that the server doesn't like
06:35 awwaiid I should go to sleep anyway though :)
06:35 * awwaiid &
06:36 redhands tempted to boot up a test webserver with one post endpoint to recreate/confirm the issue
06:40 gfldex m: my $b = 1; my Int $a := Proxy.new(FETCH => { $b * 2}, STORE => -> $, $new { $b = $new + 1 } ); say $a; $a = 4; say $a; $a.VAR.^name.say; $a.WHAT.say; $a.^name.say;
06:40 camelia rakudo-moar : OUTPUT«2␤10␤Proxy␤(Int)␤Int␤»
06:41 gfldex m: my Int $a := 1.2;
06:41 camelia rakudo-moar : OUTPUT«Type check failed in binding; expected Int but got Rat␤  in block <unit> at /tmp/TJ0TvR5RB3:1␤␤»
06:42 gfldex is Proxy magic when it comes to type checks when binding?
06:43 konobi probably no more than anything else
06:49 gfldex m: my \r = Proxy.new(FETCH => -> {Nil}, STORE => -> $,$ {}); my $a := r; $a = 1;
06:49 camelia rakudo-moar : ( no output )
06:49 gfldex m: my \r = Proxy.new(FETCH => -> {Nil}, STORE => -> $,$ {}); my $a := r; $a = 1; say $a;
06:49 camelia rakudo-moar : OUTPUT«Too many positionals passed; expected 0 arguments but got 1␤  in block <unit> at /tmp/o_WdlmrS2q:1␤␤»
06:49 gfldex m: my \r = Proxy.new(FETCH => -> {2}, STORE => -> $,$ {2}); my $a := r; $a = 1; say $a;
06:49 camelia rakudo-moar : OUTPUT«Too many positionals passed; expected 0 arguments but got 1␤  in block <unit> at /tmp/18_f7g9aEd:1␤␤»
06:49 konobi gfldex: multimethods, no?
06:50 gfldex there are no multies involved
06:51 gfldex m: my \r = Proxy.new(FETCH => -> {2}, STORE => method ($name) {2}); my $a := r; $a = 1; say $a;
06:51 camelia rakudo-moar : OUTPUT«Too many positionals passed; expected 0 arguments but got 1␤  in block <unit> at /tmp/ylKkfOMNSq:1␤␤»
06:51 konobi gfldex: um... isn't that more mop worthy?
06:51 gfldex i'm not trying to implement anything
06:52 gfldex i'm trying to break rakudo, what is getting hard lately :)
06:52 konobi so a proxy that does nothing?
06:53 gfldex i doubt it would change if it wouldn't be a black hole
06:55 gfldex m: my $b = 1; my \r := Proxy.new(FETCH => { $b * 2}, STORE => -> $, $new { $b = $new + 1 } ); my $a := r; say $a; $a = 4; say $a; $a.VAR.^name.say; $a.WHAT.say; $a.^name.say;
06:55 camelia rakudo-moar : OUTPUT«2␤10␤Proxy␤(Int)␤Int␤»
06:56 gfldex m: my $b = 1; my \r := Proxy.new(FETCH => {}, STORE => -> $, $new { $b = $new + 1 } ); my $a := r; say $a; $a = 4; say $a; $a.VAR.^name.say; $a.WHAT.say; $a.^name.say;
06:56 camelia rakudo-moar : OUTPUT«Cannot find method 'CALL-ME'␤  in block <unit> at /tmp/n8ZHpgdfHh:1␤␤»
06:56 gfldex m: my $b = 1; my \r := Proxy.new(FETCH => sub {}, STORE => -> $, $new { $b = $new + 1 } ); my $a := r; say $a; $a = 4; say $a; $a.VAR.^name.say; $a.WHAT.say; $a.^name.say;
06:56 camelia rakudo-moar : OUTPUT«Too many positionals passed; expected 0 arguments but got 1␤  in sub  at /tmp/nwvDmZ8hTl:1␤  in block <unit> at /tmp/nwvDmZ8hTl:1␤␤»
06:57 gfldex technically LTA, but i guess if you are in Proxy territory you stand on quicksand anyways
07:00 gfldex m: https://gist.github.com/gfldex/a45c8c592ff963ba53bc
07:00 camelia rakudo-moar : OUTPUT«Too many positionals passed; expected 0 arguments but got 1␤  in sub  at /tmp/ILpByKKREm:3␤  in block <unit> at /tmp/ILpByKKREm:7␤␤»
07:00 gfldex the line number is helpful so it's all good
07:02 TEttinger joined #perl6
07:07 rurban joined #perl6
07:12 gfldex m: my \a = Proxy.new(FETCH => { state $b; print 'fetched '; $b++ }, STORE => method ($new) { self } ); say a,' ',a;
07:12 camelia rakudo-moar : OUTPUT«fetched fetched fetched fetched fetched fetched fetched fetched fetched fetched fetched fetched fetched fetched fetched fetched fetched fetched 8 17␤»
07:14 gfldex what explains whay a Proxy that does nothing wont work. Rakudo really likes to call FETCH.
07:16 moritz well, it has to multi-dispatch, type check, coerce, ...
07:17 gfldex m: my \a = Proxy.new(FETCH => { state $b; print 'fetched '; $b++ }, STORE => method ($new) { self } ); say q{I ain't do nothing!};
07:17 camelia rakudo-moar : OUTPUT«I ain't do nothing!␤»
07:22 Woodi m: my $a = Proxy.new(FETCH => { state $b; print 'fetched '; $b++ }, STORE => method ($new) { self  } ); say $a,' ',$a;
07:22 camelia rakudo-moar : OUTPUT«fetched 0 0␤»
07:23 Woodi that's surprising to me...
07:23 gfldex m: my $a = Proxy.new(FETCH => { state $b; print 'fetched '; $b++ }, STORE => method ($new) { self  } ); $a = 'changed'; say $a;
07:23 camelia rakudo-moar : OUTPUT«fetched changed␤»
07:23 gfldex m: my $a := Proxy.new(FETCH => { state $b; print 'fetched '; $b++ }, STORE => method ($new) { self  } ); $a = 'changed'; say $a;
07:23 camelia rakudo-moar : OUTPUT«fetched fetched fetched fetched fetched fetched fetched fetched fetched fetched 9␤»
07:23 gfldex \a forces binding
07:25 gfldex m: my Int $a := Proxy.new(FETCH => { state $b; print 'fetched '; $b++ }, STORE => method ($new) { self } ); $a = 'changed'; say $a;
07:25 camelia rakudo-moar : OUTPUT«fetched fetched fetched fetched fetched fetched fetched fetched fetched fetched fetched 10␤»
07:26 tokuhiro_ joined #perl6
07:26 gfldex what gets me back to my original quesion, how Proxy binding and type checks work together
07:27 Woodi looks current Proxy is very volatile-like...
07:28 gfldex m: my $b=0; my Int $a := Proxy.new(FETCH => { print 'fetched '; $b++ }, STORE => method ($new) { $b = $new; } ); $a = 'changed'; say $a;
07:28 camelia rakudo-moar : OUTPUT«fetched fetched fetched fetched fetched fetched changeh␤»
07:28 soshi18 joined #perl6
07:28 soshi18 I need to uninstall/install or upgrade a Perl 6 package using Panda, I did this:
07:28 soshi18 panda uninstall package1
07:28 soshi18 but it ran the tests for some reason. How can I do that properly?
07:32 gfldex m: sub silently-returns-a-proxy () is rw { my $b = 10; Proxy.new(FETCH => { print '.'; $b++ }, STORE => method ($new) { $b = $new; } )}; my Int $a := silently-returns-a-proxy(); say $a; $a = q{that's bad}; say $a;
07:32 camelia rakudo-moar : OUTPUT«...........20␤.....that's bah␤»
07:33 gfldex m: sub silently-returns-a-proxy () is rw { my $b = 10; Proxy.new(FETCH => { print '.'; $b++ }, STORE => method ($new) { $b = $new; } )}; my Int $a = silently-returns-a-proxy(); say $a; $a = q{that's bad}; say $a;
07:33 camelia rakudo-moar : OUTPUT«.10␤Type check failed in assignment to $a; expected Int but got Str␤  in block <unit> at /tmp/svlSVcVwWS:1␤␤»
07:33 gfldex so if you suspect some sub in module might return a proxy, never ever mix type checks with bindings.
07:39 gfldex m: sub silently-returns-a-proxy () is rw { my $b = 10; return-rw Proxy.new(FETCH => { print '.'; $b++ }, STORE => method ($new) { $b = $new; } )}; my Int $a = silently-returns-a-proxy(); say $a; $a = 'bad'; say $a;
07:39 camelia rakudo-moar : OUTPUT«.10␤Type check failed in assignment to $a; expected Int but got Str␤  in block <unit> at /tmp/hGdl_C13em:1␤␤»
07:39 gfldex m: sub silently-returns-a-proxy () is rw { my $b = 10; return-rw Proxy.new(FETCH => { print '.'; $b++ }, STORE => method ($new) { $b = $new; } )}; my $a = silently-returns-a-proxy(); say $a; $a = 'bad'; say $a;
07:39 camelia rakudo-moar : OUTPUT«.10␤bad␤»
07:40 gfldex m: sub silently-returns-a-proxy () is rw { my $b = 10; return-rw Proxy.new(FETCH => { print '.'; $b++ }, STORE => method ($new) { $b = $new; } )}; my $a = silently-returns-a-proxy(); say $a; $a = 'bad'; say $a, $a.VAR.^name;
07:40 camelia rakudo-moar : OUTPUT«.10␤badScalar␤»
07:44 gfldex as I understand it Proxies are ment to be used as lvalues with state. If I asign that lvalue to a variable (and don't use :=) the bahaviour changes. If I do use binding, the behaviour changes back.
07:44 Woodi m:  my Int $a = Proxy.new(FETCH => { state $b; print 'fetched '; $b++ }, STORE => method ($new) { self  } ); $a = 1; say $a;
07:44 camelia rakudo-moar : OUTPUT«fetched 1␤»
07:44 gfldex I don't think I like this.
07:44 japhb .tell timotimo Thanks for taking care of perl6-bench; much appreciated!
07:44 yoleaux japhb: I'll pass your message to timotimo.
07:45 gfldex On top of that, if I use binding, type checks vanish.
07:47 domidumont joined #perl6
07:51 rindolf joined #perl6
07:52 domidumont joined #perl6
07:54 CIAvash joined #perl6
07:56 polettix_ joined #perl6
07:56 Woodi gfldex: if you assign Proxy somewhere then it is not used anymore...
08:04 dwarring joined #perl6
08:10 polettix joined #perl6
08:24 darutoko joined #perl6
08:24 arnsholt_ joined #perl6
08:24 dalek ecosystem: 23139e0 | (David Warring)++ | META.list:
08:24 dalek ecosystem: Add PDF-Tools
08:24 dalek ecosystem:
08:24 dalek ecosystem: This is an intermediate modules for the reading and writing of PDF data.
08:24 dalek ecosystem:
08:24 dalek ecosystem: It builds on PDF::Grammar adding serialization functions such as compression filters, encryption and indirect object fetching via index and writing of PDF files. It is capable of reading, editing and creation or incremental update of PDF files. Hopefully this will provide a useful set of classes and utilities for implementing higher level PDF modules.
08:24 dalek ecosystem: review: https://github.com/perl6/ecosystem/commit/23139e0041
08:26 johan joined #perl6
08:29 dalek ecosystem: 32d73f5 | (David Warring)++ | META.list:
08:29 dalek ecosystem: Update META.list
08:29 dalek ecosystem:
08:29 dalek ecosystem: Correct just added PDF::Tools
08:29 dalek ecosystem: review: https://github.com/perl6/ecosystem/commit/32d73f5020
08:38 redhands left #perl6
09:11 dalek roast: 4a5edf7 | usev6++ | S02-types/array-shapes.t:
09:11 dalek roast: Unfudge and adjust tests for array shapes RT #124502
09:11 dalek roast: review: https://github.com/perl6/roast/commit/4a5edf73db
09:11 synbot6 Link:  https://rt.perl.org/rt3/Public/Bug/Display.html?id=124502
09:27 tokuhiro_ joined #perl6
09:30 domidumont joined #perl6
09:37 dalek roast: 0dd18f4 | usev6++ | S (3 files):
09:37 dalek roast: Unfudge tests for JVM RT #126679, psch++
09:37 dalek roast: review: https://github.com/perl6/roast/commit/0dd18f4f8d
09:37 synbot6 Link:  https://rt.perl.org/rt3/Public/Bug/Display.html?id=126679
09:42 diana_olhovik_ joined #perl6
09:43 dalek roast: e2174a8 | usev6++ | S0 (3 files):
09:43 dalek roast: Unfudge tests for JVM RT #126673, psch++
09:43 dalek roast: review: https://github.com/perl6/roast/commit/e2174a8adf
09:43 synbot6 Link:  https://rt.perl.org/rt3/Public/Bug/Display.html?id=126673
09:45 Peter_R joined #perl6
09:53 nmp joined #perl6
09:54 diana_olhovik joined #perl6
09:55 xfix joined #perl6
09:59 xpen joined #perl6
10:04 sprocket joined #perl6
10:06 Begi11111 joined #perl6
10:10 kjs_ joined #perl6
10:14 BinGOs joined #perl6
10:18 dalek rakudo/curli: 1ca7b51 | (Stefan Seifert)++ | src/core/CompUnit/Repository/Installation.pm:
10:18 dalek rakudo/curli: Do not load a module twice from Repository::Installation
10:18 dalek rakudo/curli:
10:18 dalek rakudo/curli: Repository::FileSystem already had the check and the infrastructure was actually
10:18 dalek rakudo/curli: in place, so just use it.
10:18 dalek rakudo/curli: review: https://github.com/rakudo/rakudo/commit/1ca7b5138a
10:28 znpy joined #perl6
10:35 vendethiel joined #perl6
10:39 dalek roast: dd9eda9 | usev6++ | S32-str/index.t:
10:39 dalek roast: Fudge tests for JVM RT #126700
10:39 dalek roast: review: https://github.com/perl6/roast/commit/dd9eda9423
10:39 synbot6 Link:  https://rt.perl.org/rt3/Public/Bug/Display.html?id=126700
10:41 noganex joined #perl6
10:42 bartolin r: say index("xxy", "y", -1)
10:42 camelia rakudo-moar: OUTPUT«Nil␤»
10:42 camelia ..rakudo-jvm 0b6328: OUTPUT«2␤»
10:43 bartolin neither docs nor design documents seem to say how a negative start position should be handled
10:43 bartolin perl -E 'print index("xxy", "y", -1), "\n"'
10:43 bartolin 2
10:50 hankache joined #perl6
10:51 moritz ß
10:51 moritz 0''''''
10:51 moritz o
10:52 nine .tell jnthn I have an experimental patch for panda that makes it install into a CompUnit::Repository::Installation and successfully installed 87 distributions :) Startup time of perl6 -e 'use Test' is 0.239s
10:52 yoleaux nine: I'll pass your message to jnthn.
10:57 dalek roast: 2c9f42e | usev6++ | / (2 files):
10:57 dalek roast: Fudge tests for FIRST phase on JVM, RT #126701
10:57 dalek roast: review: https://github.com/perl6/roast/commit/2c9f42e5ee
10:57 synbot6 Link:  https://rt.perl.org/rt3/Public/Bug/Display.html?id=126701
10:57 bartolin nine++
11:04 hunterzeroxxx joined #perl6
11:06 dalek roast: a80e467 | usev6++ | S32-str/tc.t:
11:06 dalek roast: Fudge tests for .tc on JVM
11:06 dalek roast: review: https://github.com/perl6/roast/commit/a80e467433
11:06 xfix_ joined #perl6
11:07 edehont joined #perl6
11:07 diana_olhovik_ joined #perl6
11:07 zhmylove joined #perl6
11:15 rindolf joined #perl6
11:17 tokuhiro_ joined #perl6
11:18 g4 joined #perl6
11:20 Actualeyes joined #perl6
11:20 xpen joined #perl6
11:24 loren joined #perl6
11:25 domidumont joined #perl6
11:26 Woodi joined #perl6
11:30 rgrau joined #perl6
11:40 pmurias joined #perl6
11:44 zhmylove joined #perl6
11:50 dalek rakudo/curli: 3c814de | (Stefan Seifert)++ | src/core/CompUnit/Repository/Installation.pm:
11:50 dalek rakudo/curli: Use the precomp repository of the head of the chain on installation
11:50 dalek rakudo/curli:
11:50 dalek rakudo/curli: The need method is passed the precomp repository by its predecessor in the
11:50 dalek rakudo/curli: chain. The install method is called directly but it still needs to use the
11:50 dalek rakudo/curli: head's precomp repository as the full chain is used to resolve
11:50 dalek rakudo/curli: dependencies during precompilation and we want to install into the store
11:50 dalek rakudo/curli: that is actually used for loading.
11:50 dalek rakudo/curli: review: https://github.com/rakudo/rakudo/commit/3c814dea6d
11:54 dalek roast: 498ede8 | usev6++ | S (2 files):
11:54 dalek roast: Fudge tests for IN.nl-in for JVM
11:54 dalek roast: review: https://github.com/perl6/roast/commit/498ede8d65
11:55 dalek rakudo/curli: 4291711 | (Stefan Seifert)++ | / (4 files):
11:55 dalek rakudo/curli: Clean up default INC paths and install CORE distribution
11:55 dalek rakudo/curli:
11:55 dalek rakudo/curli: We install the modules that come with rakudo itself as a CORE distribution
11:55 dalek rakudo/curli: into a CompUnit::Repository::Installation. No more need to manually precompile
11:55 dalek rakudo/curli: modules in the Makefile
11:55 dalek rakudo/curli: review: https://github.com/rakudo/rakudo/commit/42917116db
11:56 Skarsnik joined #perl6
11:59 jnthn nine++ \o/
11:59 yoleaux 10:52Z <nine> jnthn: I have an experimental patch for panda that makes it install into a CompUnit::Repository::Installation and successfully installed 87 distributions :) Startup time of perl6 -e 'use Test' is 0.239s
11:59 jnthn nine: What's perl6 -e '' for you, ooc?
12:01 xpen joined #perl6
12:01 kid51 joined #perl6
12:03 FROGGS joined #perl6
12:06 black_ant joined #perl6
12:07 dalek roast: b4b4dfa | usev6++ | S32-basics/xxKEY.t:
12:07 dalek roast: Fudge tests for typename in X::Assignment::RO on JVM
12:07 dalek roast: review: https://github.com/perl6/roast/commit/b4b4dfa58c
12:11 xpen joined #perl6
12:22 dalek rakudo/bool_enum: 40cba58 | (Stefan Seifert)++ | src/ (3 files):
12:22 dalek rakudo/bool_enum: Turn Bool into a proper enum
12:22 dalek rakudo/bool_enum: review: https://github.com/rakudo/rakudo/commit/40cba589bc
12:22 dalek rakudo/bool_enum: 444b8cb | (Stefan Seifert)++ | src/core/operators.pm:
12:22 dalek rakudo/bool_enum: Fix SEQUENCE not expecting Bool ~~ Real to be true
12:22 dalek rakudo/bool_enum: review: https://github.com/rakudo/rakudo/commit/444b8cb8ae
12:22 dalek rakudo/bool_enum: e4af648 | (Stefan Seifert)++ | src/Perl6/Metamodel/EnumHOW.nqp:
12:22 dalek rakudo/bool_enum: Fix type check for binding parameters
12:22 dalek rakudo/bool_enum:
12:22 dalek rakudo/bool_enum: EnumHOW just needed an is_composed method like many other HOWs.
12:22 dalek rakudo/bool_enum: Fixes regression in t/spec/S06-signature/optional.t
12:22 dalek rakudo/bool_enum: review: https://github.com/rakudo/rakudo/commit/e4af648c50
12:22 dalek rakudo/bool_enum: 6d0ca40 | (Stefan Seifert)++ | src/ (2 files):
12:22 dalek rakudo/bool_enum: Bool improvements
12:22 dalek rakudo/bool_enum: review: https://github.com/rakudo/rakudo/commit/6d0ca4082f
12:22 jnthn I just rebased that on top of latest, fixing a conflict or two.
12:23 tokuhiro_ joined #perl6
12:23 * jnthn spectests it to figure out the bustage that's blocking its merge :)
12:24 black_ant joined #perl6
12:24 TimToady joined #perl6
12:26 xpen joined #perl6
12:28 black_ant joined #perl6
12:34 nine jnthn: about 140mss
12:35 jnthn nine: OK :)
12:35 jnthn nine: I'm looking into that weird BEGIN/add_method thing in bool_enum
12:35 nine jnthn: bool is blocking on a Bool.pick(*) segfault
12:35 nine as far as I remember
12:36 jnthn Well, the SEGV in Moar got patched, so it's now an error
12:36 nine Visiting relatives right now
12:36 jnthn Enjoy :)
12:36 nine Thanks :)
12:45 eliasr joined #perl6
12:46 black_ant joined #perl6
12:47 dalek modules.perl6.org: ad03cd7 | (Zoffix Znet)++ | / (3 files):
12:47 dalek modules.perl6.org: Toss module we no longer use form prereqs
12:47 dalek modules.perl6.org: review: https://github.com/perl6/modules.perl6.org/commit/ad03cd7127
12:49 xfix joined #perl6
12:55 dalek modules.perl6.org: 4639c48 | (Zoffix Znet)++ | web/t/01-models/03-site-tips (2 files):
12:55 dalek modules.perl6.org: Added tests for site tips
12:55 dalek modules.perl6.org: review: https://github.com/perl6/modules.perl6.org/commit/4639c486bf
12:58 telex joined #perl6
13:06 Begi11112 joined #perl6
13:14 johan joined #perl6
13:26 stmuk hmm the perl6 bigint performance seems a lot faster than perl5
13:28 leont joined #perl6
13:29 rindolf stmuk: even when using the Math::GMP module?
13:29 dalek rakudo/bool_enum: 94385dd | jnthn++ | src/Perl6/ (2 files):
13:29 dalek rakudo/bool_enum: Fix BEGIN/CHECK block scoping precomp bug.
13:29 dalek rakudo/bool_enum:
13:29 dalek rakudo/bool_enum: This in turn unbusts .pick and friends in Bool after the changes to
13:29 dalek rakudo/bool_enum: make it a real enum.
13:29 dalek rakudo/bool_enum: review: https://github.com/rakudo/rakudo/commit/94385ddca8
13:29 pmurias nine's work will allow automatic precompilation?
13:29 jnthn pmurias: s/will allow/allows/ :)
13:30 pmurias that's really great, nine++
13:30 jnthn Indeed
13:31 stmuk rindolf: I imagine if I use a C lib then perl5 would be faster
13:31 jnthn stmuk: Perl 6's bigint operations are implemented in C, so... :)
13:31 stmuk an external C library :)
13:32 jnthn nine: So, 94385dd hopefully unblocks thing
13:32 jnthn *thing
13:32 jnthn *thing*s*!
13:32 stmuk I can use the same script under perl5 and perl6 :D
13:32 stmuk well with -Mbigint in the perl5 case
13:32 timotimo urgh, it's so frustrating to watch people struggle with some rakudo/perl6 concept in the backlog and not being able to help them
13:32 yoleaux 07:44Z <japhb> timotimo: Thanks for taking care of perl6-bench; much appreciated!
13:32 arnsholt jnthn: Here's a question: Let's say I pass a Perl 6 sub as a callback off into C land, and a *different* thread invokes it. I'm gonna have a bad time, aren't I?
13:33 jnthn arnsholt: Uh...
13:33 jnthn arnsholt: Probably.
13:33 jnthn arnsholt: We're not doing anything special to cope with that case
13:33 arnsholt Yeah, that's what I thought
13:33 hankache joined #perl6
13:33 jnthn arnsholt: I believe it's a solvable problem, but it's not an easy one. :)
13:34 jnthn I think we do already handle it on JVM
13:34 arnsholt Oh, neat
13:34 dalek modules.perl6.org: 70c9ef5 | (Zoffix Znet)++ | / (3 files):
13:34 dalek modules.perl6.org: ModulesPerl6::Model::SiteTips is complete
13:34 dalek modules.perl6.org: review: https://github.com/perl6/modules.perl6.org/commit/70c9ef5183
13:34 jnthn On Moar it'll need some effort
13:34 jnthn Though I can imagine not crazily much
13:34 arnsholt Reason I'm asking is because I suspect that's what happens in ZMQ when it's done with data passed into the library
13:35 jnthn ah
13:35 arnsholt There's an intermittent bug in the IPerl6 stuff where data gets corrupted, which I'm reasonably sure is because the GC tampers with data before ZMQ is done sending it
13:36 timotimo jnthn: something i saw in the backlog is that Proxy has no clue about typechecks; should it learn about types?
13:36 timotimo jnthn: because currently you can my Int $foo := Proxy.new(...) and then the proxy is allowed to willy-nilly return a Str instead
13:36 jnthn timotimo: Dunno. I'm not sure how to make that happen.
13:36 timotimo me neither
13:37 jnthn Well, maybe we can refuse to bind an untyped container or so
13:37 timotimo i'm also not sure if we can detect a Proxy being :='d into ... yeah
13:37 timotimo something that occupied my mind before i could fall asleep is: how do hyperops handle shaped arrays when shapes mismatch and the pointies are pointed at one of the shaped arrays?
13:38 timotimo will an element just get the value at the position modulo the size of the small array?
13:38 timotimo i'd like to put tests into roast for this if there's already a consensus about this
13:38 Skarsnik arnsholt, even with setting explicitly-manage on the data?
13:39 jnthn timotimo: I'm...not sure, and I don't know that we get them right on shaped arrays at all yet.
13:39 jnthn timotimo: That'd certainly be a good thing to make happen.
13:39 timotimo i'm sure we're not getting that right yet at all
13:39 jnthn Aye
13:39 timotimo after the tests exist, someone can go ahead and build hyperop candidates for shaped arrays
13:40 timotimo and when that exists, more thought can be put into how moar would be able to vectorize that
13:40 jnthn Feel free to work on it. ;) I'd say that for now we can just handle shaped
13:40 jnthn uh
13:40 jnthn Just handle identail shapes
13:40 jnthn *identical
13:40 pmurias jnthn: re my closures question from yesterday, it turns out that the block without captured lexicals is used when reseting the regex instead of the closure
13:41 jnthn pmurias: "oops" :)
13:42 jnthn pmurias: In Rakudo too, or just in NQP?
13:42 dalek doc: 14fbd17 | (Steve Mynott)++ | doc/Language/faq.pod:
13:42 dalek doc: remove claims about slower and faster
13:42 dalek doc: review: https://github.com/perl6/doc/commit/14fbd17ee9
13:43 jnthn timotimo: An slightly looser way to go would be to just handle upgrade in the (shaped, scalar) and (scalar, shaped) case
13:43 timotimo ah, sure
13:43 timotimo that's a very useful thing in many cases
13:43 jnthn And if we see two different shapes or a shaped and unshaped then we die
13:43 pmurias jnthn: not sure about Rakudo, will check and try to exploit it to create a failing test after family visit & lunch
13:43 dalek roast: 9aa4c45 | usev6++ | S14-roles/mixin.t:
13:43 dalek roast: Fudge test for '0 but True' on JVM, RT #100782
13:43 dalek roast: review: https://github.com/perl6/roast/commit/9aa4c452c4
13:43 synbot6 Link:  https://rt.perl.org/rt3/Public/Bug/Display.html?id=100782
13:44 jnthn Then we reserve it for when we've got a better idea of what, if anything, we should do
13:44 jnthn (I suspect it's the kind of area PDL-using folks might have some input on)
13:44 timotimo jnthn: i've also considered we could maybe annotate an assign metaop like += or -= so that the hyper sub could recognize it, unpack the inner operator and just work on the LHS instead of cloning
13:44 timotimo as in, the assign metaop would mix in a role that tells us what's up
13:45 jnthn Hm, could be an interesting optimization also
13:45 timotimo or perhaps a special case in the grammar that only triggers when an assign metaop is inside a hyperop already
13:45 jnthn OK, lunch time here... :)
13:45 timotimo it's an optimization i suspect most people will expect
13:45 arnsholt Skarsnik: Yeah, explicitly-manage works around it, mostly. But only by extending the lifetime of the variable, making it almost inevitable that the data is transmitted before the GC gets around to it
13:45 arnsholt But I wouldn't bet on that holding in a lossy enviroment, for example
13:46 Zoffix joined #perl6
13:51 dalek nqp: 0d93c7c | (Pawel Murias)++ | src/vm/js/nqp-runtime/code-ref.js:
13:51 dalek nqp: [js] Add a hack to allow calling a codeRef whose closure hasn't been captured yet.
13:51 dalek nqp:
13:51 dalek nqp: This replaces the hack which twisted the closure model.
13:51 dalek nqp: This should be done properly but is a step in the right direction.
13:51 dalek nqp: review: https://github.com/perl6/nqp/commit/0d93c7cca1
13:51 dalek nqp: d44de00 | (Pawel Murias)++ | src/vm/js/QAST/Compiler.nqp:
13:51 dalek nqp: [js] Avoid emitting js for closures in void context. This reduces the size of code a lot.
13:51 dalek nqp: review: https://github.com/perl6/nqp/commit/d44de00f30
13:54 dalek roast: 28cafa5 | usev6++ | S14-roles/basic.t:
13:54 dalek roast: Fudge test for role mixin on JVM
13:54 dalek roast: review: https://github.com/perl6/roast/commit/28cafa513c
13:54 dalek roast: 5ab83b7 | usev6++ | S14-roles/basic.t:
13:54 dalek roast: Unfudge test for RT #120919 on JVM
13:54 synbot6 Link:  https://rt.perl.org/rt3/Public/Bug/Display.html?id=120919
13:54 dalek roast: review: https://github.com/perl6/roast/commit/5ab83b7e18
13:54 dalek doc: 59616f6 | (Steve Mynott)++ | doc/Language/faq.pod:
13:54 dalek doc: an example program using bigints which runs under 5 and 6
13:54 dalek doc: review: https://github.com/perl6/doc/commit/59616f6512
13:56 timotimo updating some rakudo
13:56 timotimo gfldex: are you awake right now?
14:05 dalek roast: a8e5644 | usev6++ | S12-subset/subtypes.t:
14:05 dalek roast: Fudge another test for role mixin on JVM
14:05 dalek roast: review: https://github.com/perl6/roast/commit/a8e56445ad
14:05 stmuk is there a name for perl which runs under both perl 5 and perl 6 (apart from "very basic")!
14:05 stmuk universal perl maybe
14:06 timotimo Michael McDoesn'texist?
14:06 moritz poloyglot
14:06 pink_mist perlyglot? :P
14:08 lab_ joined #perl6
14:08 zengargoyle good * #perl6
14:09 dalek modules.perl6.org: e2f4cbc | (Zoffix Znet)++ | / (7 files):
14:09 dalek modules.perl6.org: Implement Site Tips (Closes #32)
14:09 dalek modules.perl6.org: review: https://github.com/perl6/modules.perl6.org/commit/e2f4cbcf3a
14:12 stmuk perlygot++
14:12 timotimo zoffix is working on the site but not on irc? :(
14:13 dalek roast: 6fb9b12 | usev6++ | S06-multi/subsignature.t:
14:13 dalek roast: Fudge test for JVM, RT #126702
14:13 dalek roast: review: https://github.com/perl6/roast/commit/6fb9b128c3
14:13 synbot6 Link:  https://rt.perl.org/rt3/Public/Bug/Display.html?id=126702
14:15 znpy joined #perl6
14:15 dalek modules.perl6.org: ebfcfd7 | (Zoffix Znet)++ | web/t/ (2 files):
14:15 dalek modules.perl6.org: Fix failing sprite tests
14:15 dalek modules.perl6.org: review: https://github.com/perl6/modules.perl6.org/commit/ebfcfd741e
14:17 xpen joined #perl6
14:18 dalek roast: 3583fd3 | usev6++ | S06-multi/proto.t:
14:18 dalek roast: Fudge tests for JVM, wrong multi candidate called
14:18 dalek roast: review: https://github.com/perl6/roast/commit/3583fd3794
14:18 Zoffix joined #perl6
14:19 Zoffix timotimo, I'm more productive that way. Why did you want anything?
14:19 timotimo will there be an author:* search thingie?
14:20 Zoffix eventually yeah
14:20 timotimo neat :)
14:20 stmuk ewww did .cn DOS github by moving things around
14:21 Zoffix stmuk, no, it's the "new and more streamlined" look they went with
14:21 stmuk or worse still a "Designer" change it
14:21 pink_mist stmuk: they've made updates to the interface, yes
14:21 Zoffix I find I have to move my mouse farther to get to Issues/PRs now, so I'm not sure what's "streamlined" about that
14:21 Zoffix It also looks much uglier
14:22 timotimo i prefer the tabs on top rather than the little icons to the right, tbh
14:22 Zoffix Traitor! :)
14:22 Skarsnik what is GitLike configuration in https://github.com/perl6/perl6-most-wanted/blob/master/most-wanted/modules.md ?
14:22 sprocket joined #perl6
14:23 * Zoffix goes back into the shadows
14:23 timotimo Skarsnik: how the .git/config and ~/.gitconfig files look
14:24 tokuhiro_ joined #perl6
14:24 Skarsnik oh it's kinda like ini x)
14:26 jnthn timotimo: (tabs on top) me too, fwiw :)
14:26 timotimo jnthn: we can already @a >>+>> 1, but the result isn't shaped
14:29 hankache joined #perl6
14:36 sprocket joined #perl6
14:37 jnthn timotimo: Yeah, .iterator on a shaped just gives you the values.
14:38 timotimo m: my Int @a[10;10] = (0 xx 10) xx 10; say @a # isn't this how you're supposed to initialize a shaped array like that?
14:38 camelia rakudo-moar : OUTPUT«Type check failed in assignment to ; expected Int but got List␤  in block <unit> at /tmp/pMaPButpx3:1␤␤»
14:39 jnthn Not sure if Larry'll agree, but I think hypermap is probably where we want to put shape-retaining mapping, and .map is just over the values
14:40 timotimo how about mapping and modifying values inside the map?
14:40 jnthn m: say ((0 xx 10) xx 10).perl
14:40 camelia rakudo-moar : OUTPUT«((0, 0, 0, 0, 0, 0, 0, 0, 0, 0), (0, 0, 0, 0, 0, 0, 0, 0, 0, 0), (0, 0, 0, 0, 0, 0, 0, 0, 0, 0), (0, 0, 0, 0, 0, 0, 0, 0, 0, 0), (0, 0, 0, 0, 0, 0, 0, 0, 0, 0), (0, 0, 0, 0, 0, 0, 0, 0, 0, 0), (0, 0, 0, 0, 0, 0, 0, 0, 0, 0), (0, 0, 0, 0, 0, 0, 0, 0, 0, 0), (0, 0…»
14:40 jnthn m: say ((0 xx 10) xx 10).WHAT
14:40 camelia rakudo-moar : OUTPUT«(List)␤»
14:41 jnthn Curious...
14:41 timotimo how do you initialize the lists in your multidim tests? :)
14:41 jnthn Curious...I'd kinda have expected that to be a Seq...
14:42 jnthn m: my @a[3;3] = <a b c>, <d e f>, <g h i>; say @a
14:42 camelia rakudo-moar : OUTPUT«[[a b c] [d e f] [g h i]]␤»
14:42 timotimo mhh
14:42 jnthn m: my @a[3;3] = <a b c> xx 3; say @a
14:42 camelia rakudo-moar : OUTPUT«[[a b c] [a b c] [a b c]]␤»
14:42 timotimo m: my Str @a[3;3] = <a b c>, <d e f>, <g h i>; say @a
14:42 camelia rakudo-moar : OUTPUT«Type check failed in assignment to ; expected Str but got List␤  in block <unit> at /tmp/XObUYCKoZZ:1␤␤»
14:42 jnthn m: my @a[3;3] = ('a' xx 3) xx 3; say @a
14:42 camelia rakudo-moar : OUTPUT«[[a a a] [a a a] [a a a]]␤»
14:42 jnthn Oh...
14:42 timotimo it's really the type annotation; the type check seems to happen in a/the wrong place
14:42 jnthn Yes, looks like it.
14:42 jnthn Please RT
14:43 timotimo sure
14:43 jnthn Hm, I think I totally undertested typed shaped object arrays. :/
14:43 jnthn Natively typed shaped ones got some hundred plus tests.
14:43 timotimo my first instinct was to use those %)
14:43 psch jnthn: ooc, what was the hint to fix bool_enum by changing the QAST that has to be compiled instead of the compilation process itself?
14:45 jnthn psch: I first reduced it to a pre-comp bug, which showed it was about BEGIN and blocks inside them. Then was like "wait, but role bodies are BEGIN-time and things work there." Then went and looked at roles and...ooh. :)
14:46 psch ah, so the issue was that BEGIN blocks were missing the same fixup roles already got?
14:46 jnthn Yeah
14:46 jnthn I fixed CHECK ones while I was at it too
14:46 lab joined #perl6
14:47 jnthn Should probably add precomp regression tests, but I was getting lunch, and getting food/beer delivered. :)
14:47 lizmat jnthn; re xx 10 not being a Seq: it's not because of performance
14:47 jnthn lizmat: ?
14:47 lizmat jnthn: if someone asks for a finite repeat, they clearly know how much they want
14:47 lizmat xx Whatever is a Seq
14:47 psch jnthn: thanks for the explanation :)
14:48 stmuk_ joined #perl6
14:48 jnthn lizmat: for foo() xx 100000 { } # this will retain all the results of the foo() calls
14:48 lizmat yes, it would
14:48 lizmat but how often would you do that?
14:48 jnthn That's not good...we'll lose a bunch on GC
14:49 jnthn What benchmark showed a faster result?
14:49 jnthn I can quite easily imagine people using xx in benchmarking...
14:49 lizmat most uses I've seen of xx N have way lower values for N
14:49 jnthn It's also uncomfortable that xx has an inconsistent return type
14:50 jnthn my @a = foo() xx 10; # I'd still expect this to work out faster with the Seq than List
14:50 jnthn 'cus it'd avoid the intermediate list creation
14:50 jnthn So even for lower values I'm still not quite seeing it.
14:51 lizmat jnthn: pretty sure it didn't, but let me double check
14:51 timotimo RT #126703
14:51 synbot6 Link:  https://rt.perl.org/rt3/Public/Bug/Display.html?id=126703
14:51 moritz m: for 1 xx * { .say; last }
14:51 camelia rakudo-moar : OUTPUT«1␤»
14:51 jnthn Of course, I'm assuming that push-exactly was implemented :)
14:51 jnthn m: for 1 xx 1000000 { last }
14:51 camelia rakudo-moar : ( no output )
14:51 jnthn oh, duh
14:51 jnthn wtf, brain :)
14:52 jnthn Oh, but no, that was what I wanted to try
14:52 jnthn m: dd (1 xx 1000000)
14:52 camelia rakudo-moar : OUTPUT«List $var = $(1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,…»
14:52 jnthn ah :)
14:52 jnthn m: say nqp::elems nqp::getattr((1 xx 1000000), List, '$!reified')
14:52 camelia rakudo-moar : OUTPUT«1000000␤»
14:52 jnthn hah, so it is just fast at doing that :)
14:53 timotimo m: my @a[4;4] = (1 xx *) xx *;
14:53 camelia rakudo-moar : OUTPUT«Index 4 for dimension 2 out of range (must be 0..3)␤  in block <unit> at /tmp/0sPnTSvfbc:1␤␤»
14:53 timotimo it would be cool if that could work, jnthn
14:53 timotimo agree/disagree?
14:53 vendethiel joined #perl6
14:54 lizmat jnthn: if you think  the xx N case should be turned into a Seq again, then I'll do that
14:54 jnthn Disagree, the * isn't something the shaped array store can know about.
14:54 timotimo OK
14:54 loren joined #perl6
14:54 timotimo so i'll always have to copy-paste the dimensions from the LHS to the RHS
14:54 lizmat jnthn: but later today, now in the middle of packing
14:54 loren Hi, evening , #perl6
14:55 timotimo heyo loren
14:55 oceanpollen joined #perl6
14:55 jnthn lizmat: Yes, please. I can appreciate it may have been faster with List, but from a design point of view the List return type there worries me.
14:55 jnthn lizmat: Whenever it's comfortable :)
14:55 jnthn timotimo: Well, what we're trying to do is tell people about things like:
14:55 loren em, timotimo
14:55 jnthn m: my @a[2] = 0, 1, 2;
14:55 camelia rakudo-moar : OUTPUT«Index 2 for dimension 1 out of range (must be 0..1)␤  in block <unit> at /tmp/rt3Uon2tl2:1␤␤»
14:55 jnthn Which is a clear thinko.
14:55 loren I got some problem with new version rakudo
14:56 timotimo ah. right.
14:56 loren Is method ins deprecated in IO::Handle ?
14:56 timotimo will we have a way to assign a flat list of $x * $y values into a shaped array at some point?
14:56 jnthn loren: Yes
14:56 loren What should i use instead of it .
14:57 jnthn We could perhaps look at .is-lazy and decide not to complain on lazy things
14:57 timotimo loren: you can use .lines.kv for example
14:57 jnthn loren: If you're reading line by line, then for $handle.lives.kv -> $line-number, $line { }
14:57 loren Oh, the 'key' is line number ..
14:57 loren great !
14:58 loren thks help .timotimo jnthn
14:58 timotimo that'll start you at 0, btw
14:58 lab joined #perl6
14:58 loren Em, i see.
14:59 jnthn timotimo: The .is-lazy would make your example work out with xx *; I wonder what the WAT of that DWIM is :)
14:59 timotimo i wonder, too
14:59 jnthn Can't think of one right away, so maybe it would be OK, and helpful.
15:01 jnthn lizmat: BTW, about the .lines de-optimization: losing 60% is rather sad, but it occurred to me we can still cheat perfectly fine if self.WHAT === IO::Handle - that is, there're no mixins. So we can have our cake and eat it there.
15:01 jnthn Again, no hurry. :)
15:01 * jnthn gotta go for a bit
15:01 jnthn bbl
15:04 lizmat jnthn: on that note, I was also thinking of removing the $!chomp test in .get
15:04 lizmat and mixin a different .get if $!chomp is not set
15:05 lizmat would that make sense ?
15:14 bartolin lizmat: earlier today I found this differing behaviour for moar and jvm:
15:14 bartolin r: say index("xxy", "y", -1)
15:14 camelia rakudo-moar: OUTPUT«Nil␤»
15:14 camelia ..rakudo-jvm 0b6328: OUTPUT«2␤»
15:14 bartolin do you think moar is right here?
15:15 * lizmat looks into it
15:16 bartolin lizmat++
15:16 lizmat r: use nqp; say nqp::index("xxy","y",-1)
15:17 camelia rakudo-jvm 0b6328: OUTPUT«2␤»
15:17 camelia ..rakudo-moar: OUTPUT«-1␤»
15:17 lab joined #perl6
15:17 lizmat looks like a difference in implementation of nqp::index
15:17 hankache hello everyone
15:17 timotimo hey there
15:17 raiph joined #perl6
15:17 lizmat r: use nqp; say nqp::index("xxy","y",0)
15:18 camelia rakudo-moar, rakudo-jvm 0b6328: OUTPUT«2␤»
15:18 lizmat bartolin: seems worthy of an NQP ticket
15:18 lizmat or perhaps just a rakudobug  :-)
15:19 bartolin lizmat: and what do you think is the "better" answer? Perl 5 allows negative start positions, if I'm not mistaken.
15:19 lizmat yes, but P5 also allows to use -1 to indicate from end
15:19 hankache In the process of learning Perl 6 (still learning) I managed to write an introductory document. The primary motive being to have an entry point for newcomers.
15:19 hankache https://github.com/hankache/perl6intro
15:19 lizmat so perhaps it should just fail on a negative position
15:19 hankache http://perl6intro.com
15:20 bartolin I see. I'll open a RT for this (probably a bit later).
15:20 bartolin thanks for looking!
15:20 hankache i would be more than happy if anyone/someone/everyone take a look at it and give me their feedback
15:21 hankache PS: This is the first time I write anything
15:21 hankache and the first time I use github :)
15:23 dalek rakudo/nom: 72110bd | (Steve Mynott)++ | tools/CREDITS.pl6:
15:23 dalek rakudo/nom: import of CREDITS.p6 script output
15:23 dalek rakudo/nom: review: https://github.com/rakudo/rakudo/commit/72110bd347
15:23 dalek rakudo/nom: 0128437 | (Steve Mynott)++ | CREDITS:
15:23 dalek rakudo/nom: start all records with N: for ease of parsing
15:23 dalek rakudo/nom: review: https://github.com/rakudo/rakudo/commit/0128437820
15:23 dalek rakudo/nom: 66d46d4 | (Steve Mynott)++ | CREDITS:
15:23 dalek rakudo/nom: import of result of CREDITS.p6 run
15:23 dalek rakudo/nom: review: https://github.com/rakudo/rakudo/commit/66d46d4ad7
15:23 dalek rakudo/nom: 12b6564 | (Steve Mynott)++ | CREDITS:
15:23 dalek rakudo/nom: some manual deduplication
15:23 dalek rakudo/nom: review: https://github.com/rakudo/rakudo/commit/12b6564cb9
15:23 dalek rakudo/nom: b235717 | (Steve Mynott)++ | CREDITS:
15:23 dalek rakudo/nom: more dedup vendethiel++
15:23 dalek rakudo/nom: review: https://github.com/rakudo/rakudo/commit/b235717c68
15:23 dalek rakudo/nom: a8812c0 | lizmat++ | / (2 files):
15:23 dalek rakudo/nom: Merge pull request #595 from stmuk/nom
15:24 dalek rakudo/nom:
15:24 dalek rakudo/nom: Import a new CREDITS based on a new script CREDITS.p6
15:24 dalek rakudo/nom: review: https://github.com/rakudo/rakudo/commit/a8812c0f14
15:24 lab joined #perl6
15:24 Zoffix joined #perl6
15:25 Skarsnik hankache, damn nice work
15:26 hankache thank you Skarsnik. this is draft 1 :)
15:27 Begi11112 joined #perl6
15:27 hankache please do not hesitate to send me your feedback if any (corrections/additions)
15:28 Zoffix hankache, looks very nice :) I've bookmarked and will read it in full soon
15:28 hankache Thank you Zoffix. This is my personal notes evolved.
15:28 xfix joined #perl6
15:29 hankache Zoffix my main motive is to facilitate the lives of newcomers to Perl 6. Something like an entry point
15:30 timotimo did you read learnperl6inyminutes yet?
15:30 skids joined #perl6
15:30 hankache timotimo yes
15:31 hankache maybe if my doc is good enough we can put a link for it in http://perl6.org/documentation/
15:31 timotimo :)
15:31 timotimo surely can
15:31 hankache I am counting on your feedback though
15:31 hankache This is the first time i write
15:33 zengargoyle hankache: looks nice.
15:33 hankache thank you zengargoyle
15:34 timotimo i'm juggling like three different things right now %)
15:35 zengargoyle how picky are we going to be re: use vs need distinction
15:35 [Tux] test             50000    21.301    21.188
15:35 [Tux] test-t           50000    17.995    17.882
15:35 [Tux] csv-parser       50000    28.538    28.426
15:35 [Tux] FWIW I was at the universaty Utrecht today, and motivated the head teacher to have a look at perl6 (after he was very negative about perl5) \o/
15:36 diakopter where can I find a reference for what those numbers mean
15:36 [Tux] all the reasons he mentioned for not liking perl5 do not count for perl6 and native concurrency and laziness were quite a motivation for him to bite
15:36 [Tux] http://tux.nl/Talks/CSV6/speed4.html
15:37 [Tux] diakopter, look at those graphs
15:37 diakopter ok, they don't explain those numbers
15:37 diakopter there are 6 numbers there and 4 graphs
15:37 diakopter all four of those graphs say test-t
15:37 timotimo Juerd: your mqtt foo.pl script doesn't work on my machine; the connection never goes through ... do i have to do something to make it actually do something?
15:38 [Tux] just look at the middle number column. 50000 is a check (the number of fields parsed)
15:38 diakopter okay, but all those graphs say test-t
15:38 [Tux] test is my reference script (no features whatsoever), test-t is full-features Text::CSV, CSV::Parse is tony-o's module
15:38 [Tux] yep
15:39 [Tux] it is the performance of perl6 on Text::CSV over time
15:39 lab joined #perl6
15:39 timotimo Juerd: wireshark just shows a SYN and multiple retransmissions ... ?!?
15:39 [Tux] if that 17.995 I just posted was say 35, there would have been several people very unhappy
15:40 diakopter okay, but what differentiates the 4 graphs
15:40 timotimo i think just scale
15:40 timotimo both horizontally and vertically
15:46 diakopter [Tux]: I don't understand what's different about those 4 graphs?
15:46 [Tux] they zoom in on the vertical axis
15:46 [Tux] horizontal axis is the same for all
15:46 diakopter ok, thanks
15:53 timotimo is there some environment variable or something that'd prevent things from trying to ipv6?
15:53 timotimo i'll probably just hard-code the ipv4
15:54 timotimo now i receive messages
15:55 dalek rakudo/nom: fa3ce11 | lizmat++ | src/core/Cool.pm:
15:55 dalek rakudo/nom: Disallow positions < 0 on index/rindex, bartolin++
15:55 dalek rakudo/nom: review: https://github.com/rakudo/rakudo/commit/fa3ce116e3
15:56 zengargoyle timotimo: depends on system, but basically: no.  on linux you can tweak some files and set some preferences, all in all it's still a bit PITA.
15:56 gtodd joined #perl6
15:56 lizmat commute to MIA&
15:56 zengargoyle IPv6 that is.
15:57 zengargoyle many programs have taken to adding a -4/-6 option to force things.
15:59 gtodd sometimes I think it would be fun to be able to load/use a module that lets me substitute math and symbolic logic characters for bits perl6 builtins :-P   (unicode  ∀ -> for etc.)
15:59 gtodd is there such a thing?
16:01 hankache see you later everyone
16:01 DrForr There can be, just write a bunch of 'multi prefix' operators.
16:02 zengargoyle gtodd: i think somebody is working on one.  things like $x² for $x**2 etc.
16:02 * skids will likely be working on https://github.com/skids/perl6-Proc-Screen over turkey days, anyone with an interactive terminal module they need to test may want to star it.
16:02 timotimo where the F does this script spend its time?!
16:03 flussence gtodd: I tried writing one for setops on arrays years ago, but then we got real Set objects with their own infix ops :)
16:04 timotimo mqtt's foo.pl only spends 5% cpu time :|
16:04 flussence would be nice to have unambiguous ops for some existing things though...
16:04 flussence .u 2212
16:04 yoleaux U+2212 MINUS SIGN [Sm] (−)
16:04 flussence .u ×÷
16:04 yoleaux U+00D7 MULTIPLICATION SIGN [Sm] (×)
16:04 yoleaux U+00F7 DIVISION SIGN [Sm] (÷)
16:05 gtodd hee cool
16:05 flussence (can I combine those on one line?)
16:05 flussence .u 2212 ×÷
16:05 yoleaux U+0020 SPACE [Zs] ( )
16:05 zengargoyle m: say 5 − 3;
16:05 camelia rakudo-moar : OUTPUT«5===SORRY!5=== Error while compiling /tmp/S0vfVloved␤Confused␤at /tmp/S0vfVloved:1␤------> 3say 57⏏5 − 3;␤    expecting any of:␤        infix␤        infix stopper␤        postfix␤        statement end␤        statement modifier␤ …»
16:05 yoleaux U+0031 DIGIT ONE [Nd] (1)
16:05 yoleaux U+0032 DIGIT TWO [Nd] (2)
16:05 flussence guess not.
16:06 zengargoyle i think there are some unicode ops, probably just ones TT thought of at the time.
16:07 zengargoyle m: my &safelog = &log ∘ &abs; say safelog -e;
16:07 camelia rakudo-moar : OUTPUT«1␤»
16:08 timotimo flussence: why GNU screen and not tmux?
16:08 zengargoyle that's U+2218 \x[RING OPERATOR]
16:09 timotimo er
16:09 flussence timotimo: ww?
16:09 timotimo skids: why screen and not tmux
16:09 flussence oh, wrong tab :)
16:09 timotimo sorry :)
16:09 flussence np
16:11 kjs_ joined #perl6
16:12 zengargoyle the usual argument for screen is that it's more likely to already be installed.
16:12 CIAvash joined #perl6
16:12 timotimo pff.
16:13 timotimo so just stop working on perl6 then? :)
16:13 zengargoyle it's been around and in use fo much longer than tmux.
16:13 Skarsnik what tmux add to screen?
16:13 zengargoyle lol
16:13 Skarsnik *have over
16:13 timotimo working vertical splits
16:13 flussence I use tmux, but screen's useful for connecting to serial consoles
16:13 * zengargoyle arguing yesterday to use XDG paths for module installation...
16:13 gtodd better name :-)
16:14 * pink_mist never uses splits anyway
16:14 timotimo oooooh
16:14 flussence zengargoyle: I'd like that a lot, but I'm keeping my mouth shut until module installation *works* again...
16:14 timotimo i didn't know about synchronize-panes
16:14 zengargoyle think screen does xyz modem also. useful for flashing devices.
16:15 gtodd does screen have "zooming" ?  C-b z
16:15 zengargoyle i use screen for a few things... generally see no problem with multiple xterms.... why split/tab a termnal?
16:16 gtodd :-D
16:17 gtodd when you really trick out tmux + zsh + vim + emacs it starts to look like ... errm a bunch of Xterms  :-D
16:18 Skarsnik I only use screen on my dedicated servers x)
16:18 colomon joined #perl6
16:19 zengargoyle i use it for mutt 'cause my mailbox is so big it takes a *long* time to start.  and i can grab the same screen from home/work
16:21 * zengargoyle still needs to read the man page and figure out how to fix ESC key handling so vim/nvim isn't painful to use.
16:21 zed_ joined #perl6
16:23 gtodd screen/tmux ++ ....  you can run important applications inside separate console windows so "when root logs out they keep running" :-D
16:23 gtodd haha
16:25 zacts joined #perl6
16:26 tokuhiro_ joined #perl6
16:27 * zengargoyle wonders if proc-screen could be replaced with an Expect module...
16:27 zengargoyle which will eventually be really handy to have...
16:27 zed_ left #perl6
16:28 z8_ joined #perl6
16:29 Skarsnik https://github.com/perl6/perl6-most-wanted/blob/master/most-wanted/bindings.md Can I add at the start something "A tool to generate part of the binding code"?
16:29 zengargoyle though the whole TTY thing is another *NIX thing who's time should have passed by now.
16:30 Juerd timotimo: I have no idea why it wouldn't work... It should work on ipv4 and ipv6, and I've tried it on several systems.
16:31 zengargoyle usually the problem is DNS lookup over IPv4 can return AAAA IPv6 records which the client will then try to use even if IPv6 isn't working on the client side.
16:34 timotimo ipv6 was broken somewhere on the way
16:34 zengargoyle problematic if IPv6 works on the local network via auto configuration but is not routed.
16:35 zengargoyle you can tweak /etc/gai.conf on linux to prefer v4 addresses.
16:37 pink_mist 0_o I don't think I have an /etc/gai.conf
16:37 pink_mist on any of my linux systems
16:37 colomon joined #perl6
16:38 zengargoyle try man getaddrinfo and see if it's mentioned under FILES.  your distro might have moved it.
16:39 gtodd camelia: my %thing.push: <q w e r t y>; say "it us there" if "q" ~~ %thing ;
16:40 gtodd oops
16:43 timotimo gtodd: don't forget "push" is for pushing a single thing; we have .append, too now, which appends a list to the end of another list
16:44 timotimo zengargoyle: the thing is, my ISP gives me v6
16:47 autarch if I have a method with a signature like this - sub foo (Str $thing, Str %attrs) { ... } - how do I pass the second param like I would in Perl 5 with this - foo( 'thing', { hash => 'ref' } )
16:47 autarch basically, how do I construct an anonymous hash?
16:47 timotimo i don't really know how to debug my ipv6 stuff
16:47 Zoffix joined #perl6
16:48 timotimo you'll need Hash[Str].new(...) for that i believe
16:48 autarch m: sub foo (Str $thing, Str %attrs) { dd $thing; dd %attrs; } foo( 'thing', { 'I have' => 'no clue' } )
16:48 camelia rakudo-moar : OUTPUT«5===SORRY!5=== Error while compiling /tmp/rwGzttfBqR␤Strange text after block (missing semicolon or comma?)␤at /tmp/rwGzttfBqR:1␤------> 3g, Str %attrs) { dd $thing; dd %attrs; }7⏏5 foo( 'thing', { 'I have' => 'no clue' }␤    expecting any of:…»
16:48 zengargoyle timotimo: do you know the v6 address of the other side and have ping6 / traceroute6 ?
16:48 timotimo yes and yes
16:48 zengargoyle m: sub foo (Str $thing, Str %attrs) { dd $thing; dd %attrs; } foo( 'thing', %('I have' => 'no clue') )
16:48 camelia rakudo-moar : OUTPUT«5===SORRY!5=== Error while compiling /tmp/k6MydD9BVb␤Strange text after block (missing semicolon or comma?)␤at /tmp/k6MydD9BVb:1␤------> 3g, Str %attrs) { dd $thing; dd %attrs; }7⏏5 foo( 'thing', %('I have' => 'no clue') ␤    expecting any of:…»
16:48 autarch Type check failed in binding %attr; expected Associative[Str] but got Hash
16:48 autarch m: sub foo (Str $thing, Str %attrs) { dd $thing; dd %attrs; } foo( 'thing', { 'I have' => 'no clue' } );
16:48 camelia rakudo-moar : OUTPUT«5===SORRY!5=== Error while compiling /tmp/fozvtJdDHs␤Strange text after block (missing semicolon or comma?)␤at /tmp/fozvtJdDHs:1␤------> 3g, Str %attrs) { dd $thing; dd %attrs; }7⏏5 foo( 'thing', { 'I have' => 'no clue' }␤    expecting any of:…»
16:49 autarch m: sub foo (Str $thing, Str %attrs) { dd $thing; dd %attrs; }; foo( 'thing', { 'I have' => 'no clue' } );
16:49 camelia rakudo-moar : OUTPUT«Type check failed in binding %attrs; expected Associative[Str] but got Hash␤  in sub foo at /tmp/qg3QjLgO8m:1␤  in block <unit> at /tmp/qg3QjLgO8m:1␤␤»
16:49 timotimo autarch: yeah, you're asking for a Hash[Str] to be passed, but you pass just a Hash
16:49 timotimo autarch: the pain point here is that you defined "Str %attrs"
16:49 autarch I see
16:49 timotimo zengargoyle:  6  * 100ge7-2.core1.fra1.he.net (2001:7f8::1b1b:0:1)  23.750 ms  23.733 ms
16:49 timotimo that's the last one i see
16:49 autarch m: sub foo (Str $thing, %attrs) { dd $thing; dd %attrs; }; foo( 'thing', { 'I have' => 'no clue' } );
16:49 camelia rakudo-moar : OUTPUT«Str $var = "thing"␤Hash $var = {"I have" => "no clue"}␤»
16:49 jnthn .tell lizmat (mixin if no chomp) maybe, but otoh most folks use lines, I think...so maybe not worth the complexity.
16:49 yoleaux jnthn: I'll pass your message to lizmat.
16:50 timotimo jnthn: i didn't get many tests written as i got massively sidetracked %)
16:50 zengargoyle timotimo: he, wonder if Hurricane Electric....  what's the address of the place you're trying to get to?
16:51 zacts yo, lot's of chats this AM
16:51 timotimo test.mosquitto.org (2001:ba8:1f1:f271::2)
16:51 timotimo and yeah, that's hurricane electric
16:52 Zoffix left #perl6
16:52 rangerprice joined #perl6
16:56 zengargoyle timotimo: can you curl -6 test.mosquitto.org and get their web page?
16:56 timotimo doesn't look like it
16:57 zengargoyle my tracerouts stop at urquell.bitfolk.com and i can get to the web page.
16:58 zengargoyle via jump.net.uk on one path, and probably jump on the other (they don't name their interfaces well...)
16:58 flussence I can't get there from my desktop either, but I can ssh -6 to my remote server and get it from there just fine. I guess someone in the middle screwed up.
16:59 zengargoyle i go through he on one path and att + globalcrossing the other.
16:59 timotimo beh.
16:59 timotimo a friend of mine could reach my machine via v6
17:00 * geekosaur can ping6 it from irc host (a linode in .tx.us)
17:02 timotimo so ... basically a netsplit
17:05 zengargoyle around 2001:7f8: land.  2001:7f8:4::22ef:1 is hop before bitfolk.com and 2001:7f8:: is hop where you stop.
17:06 timotimo hop where you stop
17:06 timotimo tee hee
17:08 zakharyas joined #perl6
17:15 dalek modules.perl6.org/new-db-builder: d87f592 | (Zoffix Znet)++ | web/ (4 files):
17:15 dalek modules.perl6.org/new-db-builder: Added DbBuilder::Log and its docs/tests
17:15 dalek modules.perl6.org/new-db-builder: review: https://github.com/perl6/modules.perl6.org/commit/d87f592c3d
17:15 zengargoyle between fra1.he.net (france?) and London Internet Exchange (LINX) if you wan't to call them. :P
17:16 timotimo jnthn: would X::HyperOp::NonDWIM be the right exception type for arrays with different shapes being >>+<<'d? if so, the type will ikely have to learn to speak of shapes properly.
17:19 timotimo alternatively, a NonDWIM::Shaped could be built
17:19 dalek modules.perl6.org/new-db-builder: d9f62a2 | (Zoffix Znet)++ | web/t/02-app/0 (2 files):
17:19 dalek modules.perl6.org/new-db-builder: Git is too stupid to figure out renamed files are not new on its own
17:19 dalek modules.perl6.org/new-db-builder: review: https://github.com/perl6/modules.perl6.org/commit/d9f62a28ff
17:20 Begi11113 joined #perl6
17:20 khw joined #perl6
17:21 Begi11114 joined #perl6
17:23 nine I wonder where panda will install its bin files to in the new CompUnit::Repository world
17:23 lab joined #perl6
17:26 SunilJoshi joined #perl6
17:26 thowe joined #perl6
17:27 SunilJoshi left #perl6
17:28 lucasb joined #perl6
17:32 hoelzro o/ #perl6
17:34 DrForr \o @oelzro
17:35 * DrForr glares at keyboard.
17:38 hahainternet 'oelzro' is how hoelzro's name is said in the north
17:38 yoleaux 00:40Z <psch> hahainternet: https://gist.github.com/peschwa/7202b9f622de517cd881 is what i hacked around a bit with re: superscript.  the only things that's missing is proper integration, afaict.  as in, the nqp internals complain that the lhs isn't there...
17:39 yoleaux 00:41Z <psch> hahainternet: line 27 is just a debugging aid...
17:39 hahainternet thanks yoleaux :)
17:39 hoelzro o/ DrForr, hahainternet
17:44 jnthn timotimo: Could work well as a subclass of the existing X::HyperOp::NonDWIM
17:45 zengargoyle timotimo: funny, can ping 2001:ba8:1f1:f271::2 from he.net routers in france. :)
17:45 * zengargoyle sorta bored.
17:45 ugexe joined #perl6
17:46 lucasb psch: ^^ about that gist, potentiation is another name for exponentiation? :)
17:47 hahainternet zengargoyle: what's so shocking about that?
17:47 eliasr joined #perl6
17:47 zengargoyle ah, frankfurt...
17:47 zengargoyle core1.fra1.he.net> ping ipv6 2001:ba8:1f1:f271::2 numeric count 5: 100% 5/5 22ms 36ms 44ms
17:48 hahainternet frankfurt? more like london :)
17:50 zengargoyle going by last point on his traceroute: core1.fra1.he.net.  that device can reach test.mosquitto.org
17:50 * DrForr would mutter something about tetration but even the smallest powers quickly run out of room in the observable universe.
17:52 hahainternet oh i guess i missed scrollback :)
17:52 geekosaur joined #perl6
17:54 zengargoyle that narrows it down to London not being able to determine the route back to his IPv6 address.
17:54 Begi11114 I've a list of different values. Is there a module to trace a graph ?
17:57 tudorconstantin joined #perl6
17:57 * DrForr waves at tudorconstantin.
17:58 ugexe http://rosettacode.org/wiki/Topological_sort#Perl_6
17:58 diakopter nine: well, if you make the lib/include system intelligent enough, they can be installed any old place, so that they can be symlinked to some bin dir on the path if necessary, and invoked from anywhere (and they can find their real home themselves)
17:59 * tudorconstantin waves DrForr
18:00 tudorconstantin joined #perl6
18:00 psch lucasb: uh, actually probably not... i think it was just a case of "i don't remember the english word, let's anglofy the german one"... :)
18:01 timotimo jnthn: if i throws-like X::HyperOp::NonDWIM, that'll refuse a subtype, won't it?
18:02 psch m: use Test; throws-like '0 + "f"', Exception
18:02 camelia rakudo-moar : OUTPUT«    1..2␤    ok 1 - '0 + "f"' died␤    ok 2 - right exception type (Exception)␤ok 1 - did we throws-like Exception?␤»
18:02 timotimo ah, neat
18:02 timotimo so i can write that test right away, eh?
18:02 colomon joined #perl6
18:04 dj_goku who would I contact about testers.perl6.org issues?
18:06 timotimo depending on whether it's a code issue or a server issue: FROGGS or any of the admins listed on p6c.org
18:06 dj_goku timotimo: ok, I am not sure what it is. re-building moar right now. No new reports since 2015-11-16.
18:07 ugexe well, before that it was just marking *everything* as pass
18:07 bartolin psch: I tried to look at one of those UnwindExceptions we have on JVM. Does, perchance, the following ring a bell with you?
18:07 bartolin j: my $a := gather do for 1 { take 4; last; }; $a.cache.elems; say $a.gist
18:07 camelia rakudo-jvm fa3ce1: OUTPUT«(4)␤»
18:07 bartolin j: my $a := gather do for 1 { take 4; last; }; $a.cache; say $a.gist
18:07 camelia rakudo-jvm fa3ce1: ( no output )
18:08 bartolin ^^ that was one of those UnwindExceptions
18:08 bartolin j: my $a := gather do for 1 { take 4; last; }; say $a.perl
18:08 ugexe i have bartolin
18:08 camelia rakudo-jvm fa3ce1: OUTPUT«(4,).Seq␤»
18:08 ugexe and camelia has always mocked me the same way when trying to show it here heh
18:08 bartolin \o/
18:08 dj_goku timotimo: I forgot it might be an issue with Panda. Going to jump in and try to diagnose it.
18:08 ugexe it seems if you can get the first run of some types of code it will actually show the unwind exception. after that, it will show nothing
18:09 bartolin j: my $a := gather do for 1 { take 4; last; }; say $a.gist # also UnwindException
18:09 camelia rakudo-jvm fa3ce1: ( no output )
18:09 psch bartolin: gather/last as a combination is definitely broken, yes
18:09 psch bartolin: i think it's related to CX in general, we have a few hiccups there on r-j
18:10 psch j: O: for ^2 { for ^2 { last O } } # like this one
18:10 camelia rakudo-jvm fa3ce1: OUTPUT«===SORRY!===␤control exception without handler␤»
18:10 psch bartolin: i have a hunch that the unwinder has a similar problem as that bit, which is about not finding the right handler
18:10 bartolin yeah, we have this pre-GLR ticket about gather/last: RT #124279
18:10 synbot6 Link:  https://rt.perl.org/rt3/Public/Bug/Display.html?id=124279
18:11 bartolin I wondered, how adding that .elem avoided the UnwindException. but probably it does not help to pin the problem :-/
18:11 dj_goku any idea how I can debug with perl6-debug-m or something else because I get this: Unhandled exception: ctxlexpad needs an MVMContext
18:12 nine dj_goku: you know about --ll-exception?
18:12 dj_goku nine: I do not.
18:13 nine dj_goku: perl6 --help
18:13 psch also, camelia actually should show UnwindExceptions since nqp 19a7c2e0d...
18:13 bartolin m: my $a := gather { take 4; last; }; say $a.gist # something I stumbled above -- looks like an LTA error to me
18:13 camelia rakudo-moar : OUTPUT«===SORRY!===␤Can only resume an exception object␤»
18:13 nine dj_goku: --ll-exception may point at where exactly in the core things go wrong
18:13 psch j: my $a := gather { take 4; last; }; say $a.gist
18:13 camelia rakudo-jvm fa3ce1: ( no output )
18:14 psch heh, also unwinds...
18:14 * bartolin nods
18:14 dj_goku nine: ok cool, it is just a wall of text to me: https://gist.github.com/djgoku/4b4d45062ba39043b6dc
18:15 colomon joined #perl6
18:15 psch bartolin: fwiw, the "control exception without handler" above happens because r-j doesn't seem to automatically register a handler for a labeled block, while moar somehow does
18:16 psch i *think* that's probably related to gather/take+last, because take is a CX and last is a CX
18:17 dalek modules.perl6.org/new-db-builder: 1b637f1 | (Zoffix Znet)++ | web/ (5 files):
18:17 dalek modules.perl6.org/new-db-builder: Add Build ID to ::Dists model
18:17 dalek modules.perl6.org/new-db-builder:
18:17 dalek modules.perl6.org/new-db-builder: This will allow us to rebuild modules database right into the live database and keep in RAM info for just one dist at a time instead of (potentially) thousands... MILLIONS!... of dists.
18:17 dalek modules.perl6.org/new-db-builder: review: https://github.com/perl6/modules.perl6.org/commit/1b637f18db
18:17 dj_goku I had to resort to adding print statements to debug a module last week in Perl6. :(
18:18 dj_goku oh wait, panda is perl5?!
18:19 ugexe no
18:19 dj_goku uh
18:20 timotimo rakudobrew is perl5
18:20 psch m: O: for ^2 { for ^2 { last O }; CONTROL { default { .perl.say } } } # this is also a bit interesting...
18:20 camelia rakudo-moar : OUTPUT«chars requires a concrete string, but got null␤  in block  at /tmp/pcxUUi7pj9:1␤  in block  at /tmp/pcxUUi7pj9:1␤  in block <unit> at /tmp/pcxUUi7pj9:1␤␤»
18:21 dj_goku well this is confusing. which panda shows ~/.rakudobrew/bin/panda is a p5 script
18:21 ugexe thats just a shim
18:21 dj_goku oh
18:21 lucasb yes, I think rakudobrew links every executable to itself, a perl5 script
18:21 ugexe it invokes panda depending on whatever directory rakudobrew is pointed at
18:22 dj_goku so am I doing this right: PANDA_SUBMIT_TESTREPORTS=1 perl6-debug-m --ll-exception ~/.rakudobrew/bin/panda install IDNA::Punycode
18:22 gfldex timotimo: i'm awake now and do not struggle with binding anymore
18:23 ugexe dj_goku: adding a `use trace;` might help point you to the correct line as well
18:23 dalek modules.perl6.org/new-db-builder: 93db555 | (Zoffix Znet)++ | web/ (2 files):
18:23 dalek modules.perl6.org/new-db-builder: Update instead of croaking when adding existing dist
18:23 dalek modules.perl6.org/new-db-builder: review: https://github.com/perl6/modules.perl6.org/commit/93db5556ef
18:24 timotimo gfldex: ah, so you're no longer surprised by what proxies do and why things seemed so strange?
18:25 gfldex timotimo: indeed. However, I do believe now that the docu sucks :)
18:25 bartolin psch: that stuff is way over my head, unfortunately. I hoped to get some insights by golfing the bugs, but it didn't help much ...
18:25 leont Right. I still need to finish my PR to make panda not use prove, it's still indirectly using p5.
18:26 timotimo ah. well, docs are improvable :)
18:26 dj_goku ugexe: so is that a p5 or p6 use?
18:26 dj_goku ugexe: searched cpanm didn't find trace.
18:26 ugexe dj_goku: `use trace;` is p6. your error mentions MVM context so i was guessing your problem was in p6 land
18:27 dalek modules.perl6.org/new-db-builder: 06592a8 | (Zoffix Znet)++ | web/lib/ModulesPerl6/Model/Dists/Schema/Result/BuildId.pm:
18:27 dalek modules.perl6.org/new-db-builder: Fix incorrect ModulesPerl6::Model::Dists::Schema::Result::BuildId docs
18:27 dalek modules.perl6.org/new-db-builder: review: https://github.com/perl6/modules.perl6.org/commit/06592a80de
18:27 psch bartolin: well, stepping through org.perl6.nqp.runtime.ExceptionHandling.handlerDynamic showed me (a few weeks back) that we do have a handler for the "last OUTER", but it's always the one we're already in
18:27 dj_goku ugexe: ahh well the script is panda that I am trying to debug why reports are getting through
18:27 psch bartolin: which is what makes me think there should be another one...
18:27 dj_goku going through*
18:27 psch bartolin: but yes, in general this stuff seems pretty complicated and i don't quite get it either... :)
18:27 tokuhiro_ joined #perl6
18:28 ugexe dj_goku: probably related to newlines. but your error is certainly in the perl6 panda script that the perl5 panda shim points to
18:28 dj_goku lol
18:29 * dj_goku wonders why it isn't all just perl6
18:29 ugexe because the perl5 is not panda, its generated by rakudobrew. rakudobrew is perl5 because you would otherwise need perl6 installed to install rakudobrew...
18:30 dj_goku ahh. ok that makes sense.
18:30 diana_olhovik_ joined #perl6
18:31 ugexe it used to just generate 1 line bash shims
18:32 rindolf joined #perl6
18:33 raiph joined #perl6
18:34 dj_goku ugexe: ok so added `use trace;` to the p6 panda, but no luck any getting more output.
18:35 ugexe the `use trace;` has to be in the correct scope, so either added to all modules or where you suspect it might be happening. So i would put it in Panda::Reporter
18:35 ugexe s/modules/submodules/
18:35 hoelzro .seen cygx
18:35 dj_goku ahh I was just wondering that too.
18:35 yoleaux I saw cygx 20 Nov 2015 18:53Z in #perl6: <cygx> bye again o/
18:36 dj_goku ugexe: I put it in moar-nom/panda/bin/panda
18:37 ugexe while you are inside Panda::Reporter, you might as well print debug output to show the raw http request and response to determine if its panda or testers.perl6.org
18:37 just_thanks joined #perl6
18:39 colomon joined #perl6
18:40 dalek modules.perl6.org/new-db-builder: ffb04ac | (Zoffix Znet)++ | / (4 files):
18:40 dalek modules.perl6.org/new-db-builder: Initial prototype of DbBuilder class and its supporting script
18:40 dalek modules.perl6.org/new-db-builder: review: https://github.com/perl6/modules.perl6.org/commit/ffb04ac729
18:41 dalek roast: 6936a23 | usev6++ | S04-statements/for.t:
18:41 dalek roast: Fudge test not throwing X::Multi::NoMatch on JVM
18:41 dalek roast: review: https://github.com/perl6/roast/commit/6936a23ee6
18:42 just_thanks ilogger2:
18:42 ilogger2 just_thanks: I am a logger bot. Lines starting with [off] won't be logged. Extra help available at http://colabti.org/irclogger/irclogger_logs.
18:43 just_thanks dalek:
18:43 just_thanks yoleaux:
18:45 just_thanks hankache - great work on this your perl6Intro, I'd like how succinct it is at least for me( non-native English speaker)
18:46 dalek modules.perl6.org/new-db-builder: 6c8bd64 | (Zoffix Znet)++ | web/lib/DbBuilder.pm:
18:46 dalek modules.perl6.org/new-db-builder: Improve log messages when fetching META.list
18:46 dalek modules.perl6.org/new-db-builder: review: https://github.com/perl6/modules.perl6.org/commit/6c8bd64362
18:51 yqt joined #perl6
18:52 dj_goku ugexe: yay: 500 error is being thrown.
18:53 dalek roast: 71cbee5 | usev6++ | S04-declarations/will.t:
18:53 dalek roast: Fudge tests for 'will first' on JVM
18:53 dalek roast: review: https://github.com/perl6/roast/commit/71cbee5527
18:56 dalek modules.perl6.org/new-db-builder: 4ec675f | (Zoffix Znet)++ | web/lib/DbBuilder.pm:
18:56 dalek modules.perl6.org/new-db-builder: Do not use line separator var
18:56 dalek modules.perl6.org/new-db-builder: review: https://github.com/perl6/modules.perl6.org/commit/4ec675f01c
18:56 zengargoyle joined #perl6
18:57 dj_goku FROGGS: I am not sure the dancer app is accepting reports. Still trying to figure out more.
18:59 hankache joined #perl6
19:00 dalek roast: 3dbdc11 | usev6++ | S05-modifier/counted.t:
19:00 dalek roast: Fudge test for match with *-1 index on JVM
19:00 dalek roast: review: https://github.com/perl6/roast/commit/3dbdc118df
19:03 dalek rakudo/curli: 9104866 | (Stefan Seifert)++ | src/core/CompUnit/Repository/Installation.pm:
19:03 dalek rakudo/curli: Have Repository::Installation's id change when installing a module
19:03 dalek rakudo/curli:
19:03 dalek rakudo/curli: The repository's identity needs to depend on its content so installation of
19:03 dalek rakudo/curli: a module into this repo can automatically invalidate precomp files of repos
19:03 dalek rakudo/curli: nearer the head of the repo chain. Those precomp ids contain the ids of all
19:03 dalek rakudo/curli: repos in the chain.
19:03 dalek rakudo/curli: review: https://github.com/rakudo/rakudo/commit/910486644e
19:03 dj_goku ugexe: thanks btw!
19:05 dalek roast: 3e28ff4 | usev6++ | S16-io/supply.t:
19:05 dalek roast: Fudge test for .Supply(:size(1)) on JVM
19:05 dalek roast: review: https://github.com/perl6/roast/commit/3e28ff45ff
19:11 ugexe dj_goku: sure. fwiw the test server has choked like this a few other times and FROGGS fixed it
19:13 FROGGS ahh
19:13 FROGGS the P5 app on www does not like reboots on hack
19:13 FROGGS it looses connection to the database
19:17 jnthn MadcapJake: Nice job on the Atom highlighter! src/Perl6/Grammar.nqp is quite a stress test for the grammars rendering. For some reason token quibble ends up totally unhighlighted, and then sometime before token longname it gets confused and thinks it's still in a string literal; seems it misses that \} is an escaped } a few lines before.
19:18 hoelzro Linenoise now works on Windows! \o/
19:19 jnthn MadcapJake: Only other thing I immediately note is that the yellow for twigils feels a little "loud" for me.
19:21 jnthn MadcapJake: Oh, and I've love it if the supply/react were highlighted, like the gather on gather blocks are. And emit took.
19:21 jnthn *too
19:22 FROGGS dj_goku / ugexe: should work now again and should probably not fail anymore in future
19:22 jnthn MadcapJake: Examples in S17-supply/syntax.t.
19:22 vendethiel o/
19:23 vendethiel jnthn: on the other hand, you might want the twigil to be loud? I've always found e.g. "!$!a" to be hard on the eyes
19:24 FROGGS hoelzro: \o/
19:24 FROGGS hoelzro: what was it?
19:24 * ilmari always misparses $!foo as !$foo if he's not careful
19:24 ilmari s/always/often/
19:24 jnthn vendethiel: I think it's fine to pick it out, but it's a bit too bright, imho
19:24 hoelzro FROGGS: amazingly, I didn't run into any of the linker issues we saw at SPW
19:24 FROGGS O.o
19:24 FROGGS hmmm
19:25 hoelzro it was mostly a matter of not using fcntl on Windows, and using the right libc DLL for the environment
19:25 FROGGS maybe another build patch solved it
19:25 hoelzro yeah, I don't know
19:26 hoelzro hopefully I got the DLL logic right; it works for Mingw32
19:27 FROGGS I can test it on MSVC later
19:27 hoelzro that would be much appreciated =)
19:27 dj_goku FROGGS: hmm still not working: https://gist.github.com/djgoku/85ead2d6f8e5c2107745
19:28 hoelzro if no one is opposed, I would like Linenoise to be included in Star: https://github.com/rakudo/star/pull/54
19:29 tokuhiro_ joined #perl6
19:29 ilmari Linenoise has no utf-8 support, though :(
19:30 hoelzro should .dll files for modules be installed to a bin directory instead of a lib one? or is it up to our Windows setup to make sure that the lib directory is in PATH?
19:30 hoelzro ilmari: unfortunately not; I should probably work on Readline integration
19:30 hoelzro but that brings certain questions about licensing up
19:30 jnthn hoelzro: Please check that we're clean with licensing stuff in the MSIs if you ship the readline DLL
19:30 dalek roast: 9817537 | usev6++ | S16-io/comb.t:
19:30 dalek roast: Fudge test for .comb with large buffer on JVM
19:30 dalek roast: review: https://github.com/perl6/roast/commit/9817537b1a
19:30 jnthn hoelzro: Other than that, no objections
19:31 hoelzro jnthn: for the readline integration, I would only add "if Readline is available, use it" to Perl6::Compiler
19:31 hoelzro as far as linenoise is concerned, it's MIT/X, I think, so it should be safe
19:31 DrForr Which means that I need to take some time to fill out the test sute...
19:32 jdv79 jnthn: you're from yorkshire?
19:33 jnthn jdv79: No, but grew up there
19:34 jdv79 that sounds like from to me
19:34 jdv79 what do you think of ilkley brewing?
19:36 ifim joined #perl6
19:36 kjs_ joined #perl6
19:43 FROGGS dj_goku: I think it works now
19:43 FROGGS silly typo -.-
19:43 jnthn jdv79: Ah, that's west Yorkshire; I was in North Yorkshire :)
19:44 jnthn jdv79: I've certainly had a couple of those, though...don't have any strong memories
19:44 vmbrasseur joined #perl6
19:44 FROGGS which might be a good sign? :o)
19:44 domidumont joined #perl6
19:44 jnthn ;-)
19:45 vmbrasseur Hey, gang. I just heard from the OSCON community manager that there are almost no Perl talks in the 2016 OSCON CFP right now and NO Perl6.
19:45 vendethiel- joined #perl6
19:45 vmbrasseur The CFP closes on Tuesday at midnight Pacific time.
19:45 jnthn My local pub did Black Sheep. :)
19:45 dj_goku FROGGS: HTTP/1.1 200 OK +++++++
19:45 FROGGS \o/
19:45 vmbrasseur Could we, maybe, get some talks in? Please?
19:46 FROGGS vmbrasseur: did you talk with woolfy? she organizes the CFP
19:46 jnthn FROGGS: That's...FOSDEM, no? :)
19:47 vmbrasseur FROGGS Yeah, that's not OSCON.
19:47 FROGGS ohh, ups
19:47 vmbrasseur :)
19:47 FROGGS all those SHOUTS :o)
19:47 vmbrasseur We have a Perl6 release coming up. It's a big deal. We need to talk about it.
19:47 jdv79 i had no idea yorkshire was so big.  nice
19:47 vmbrasseur I'm currently not qualified to talk about Perl6.
19:47 vmbrasseur But y'all are. :)
19:47 DrForr If I could get reimbursed I'd do it. But work won't pay for YAPC::NA, so I doubt OSCON is even on the books.
19:48 grondilu m: sub foo (Str $thing, Str %attrs) { dd $thing; dd %attrs };  foo ( 'stuff', my % = why => "not this?");
19:48 camelia rakudo-moar : OUTPUT«Too few positionals passed; expected 2 arguments but got 1␤  in sub foo at /tmp/ZyIyKQ2hbA:1␤  in block <unit> at /tmp/ZyIyKQ2hbA:1␤␤»
19:48 vmbrasseur DrForr OSCON provides speaker assistance for international speakers.
19:48 DrForr Oo. Hrm.
19:48 dj_goku FROGGS: thanks again. I didn't know if it was a problem I was causing. But I saw the issue on 11/17 just never got back to trying to figure it out until today
19:48 grondilu oops I did not scroll
19:48 DrForr When does the CFP close?
19:48 vmbrasseur DrForr Tuesday at midnight Pacific time.
19:49 DrForr I've got an intro to perl6 regex that I just did at Cluj.
19:49 FROGGS vmbrasseur: OSCON is out of reach for me :S
19:49 vmbrasseur DrForr That would be amazing.
19:49 vmbrasseur FROGGS OSCON will give you financial assistance as a speaker.
19:49 vmbrasseur This is a big event with a lot of attendance. It would be a shame to miss the opportunity to get Perl6 in front of so many people so soon after its release.
19:50 DrForr Ya talked me into it :)
19:50 vmbrasseur If we could get at least 2 Perl6 talks accepted for OSCON it would be AMAZING
19:50 FROGGS vmbrasseur: there are better speakers, and my wife is not so fond of me travelling around :/
19:50 vmbrasseur DrForr <3!
19:50 vmbrasseur FROGGS I can't help with the travel thing, but ANY speaker is better than the NO speaker we have right now.
19:50 DrForr Besides, having "Speaker at OSCON" on the ol' CV doesn't hurt.
19:50 vmbrasseur DrForr  True dat ;)
19:51 vmbrasseur If nothing else, FROGGS, could you and others help by talking to others to get THEM to CFP to OSCON?
19:51 FROGGS vmbrasseur: will do
19:52 vmbrasseur FROGGS <3
19:52 jdv79 DrForr: how is the hip?
19:52 DrForr Right now, I'm convincing myself that spending 880 lei.... fck it, buying.
19:52 FROGGS .tell lizmat are you going to OSCON? CFP is closing on Tuesday midnight Pacific time
19:52 yoleaux FROGGS: I'll pass your message to lizmat.
19:52 DrForr Let me buy this flght first...
19:54 DrForr I'll be the first to admit that I'm not the world's most dynamic speaker though, I think I saw a field where they ask you to submit URLs to previous YouTubed talks and I sort of shied away...
19:56 dj_goku ahh OSCON is in austin.
19:56 diana_olhovik joined #perl6
19:56 jdv79 oscon is too expensive and ive heard its all suits now
19:57 kjs_ joined #perl6
19:57 DrForr All the more reason :)
20:00 s_kilk joined #perl6
20:01 s_kilk joined #perl6
20:05 TimToady .tell hankache re - and ' in names, alpha is only required to the right; to the left can be numeric; think of it as a sequence of identifiers separated by - or '
20:05 yoleaux TimToady: I'll pass your message to hankache.
20:06 vmbrasseur jdv79 If you're speaking, you get in for free & O'Reilly can give you financial assistance.
20:07 kjs_ joined #perl6
20:07 s_kilk joined #perl6
20:07 vmbrasseur jdv79 As well, it's not all suits. And if that WERE the case it wouldn't get any better by communities avoiding the conference. ;)
20:10 dalek modules.perl6.org/new-db-builder: 107e84a | (Zoffix Znet)++ | / (5 files):
20:10 dalek modules.perl6.org/new-db-builder: Initial work on Dist::Source base class and GitHub dist source
20:10 dalek modules.perl6.org/new-db-builder: review: https://github.com/perl6/modules.perl6.org/commit/107e84a00f
20:10 FROGGS $ perl6 -I. -e 'say (require Bar).new'
20:10 FROGGS Bar.new(a => 42)
20:10 FROGGS \o/
20:11 * FROGGS spectests
20:11 jnthn .oO( everyone requirs the bar now and then... )
20:12 bbkr joined #perl6
20:15 jdv79 vmbrasseur: speaking gets you in for free at a bunch of confs i thought
20:16 vmbrasseur jdv79 Most, but some (Pycon, for instance) have everyone (even organizers) pay to get in.
20:16 jdv79 vmbrasseur: the ticket priceis a pretty string detractor to normal folfk
20:17 st_iron joined #perl6
20:17 Skarsnik FROGGS, when you have time can you check the patch in RT #126645 work on win32?
20:17 synbot6 Link:  https://rt.perl.org/rt3/Public/Bug/Display.html?id=126645
20:17 st_iron good afternoon my friends
20:17 psch jnthn: what would be needed to get signature compilation ported to r-j?  as in, which bits of (i assume) BOOTSTRAP.nqp do i need to understand? :S
20:17 Skarsnik fun bot x)
20:17 jdv79 i will personally never pay 1k+ for a conf
20:17 psch ('cause there's at least one ticket that happens due to one of those magic deconts...)
20:18 jnthn psch: It's actually in Actions.nqp that it happens
20:19 jnthn psch: Search for lower_signature
20:19 psch ah, okay
20:19 jnthn I think it needs some QAST compiler updates
20:19 jnthn For the thing that falls back to the slow-path binder on error.
20:19 jdv79 its fairly clear that oreilly is trying to milk its conf attendees
20:20 FROGGS Skarsnik: will do
20:20 Skarsnik basicly it should do nothing x)
20:21 Skarsnik but thx!
20:22 tokuhiro_ joined #perl6
20:25 jnthn Updated version of the course slides from the Swiss Perl Workshop, fixing a couple of bugs: http://jnthn.net/papers/2015-spw-perl6-course.pdf
20:25 dalek roast: 9e99d8c | usev6++ | S04-statements/with.t:
20:25 dalek roast: Fudge tests for JVM: Failures not handled as expected
20:25 dalek roast:
20:25 dalek roast: Had to duplicate code in order to fudge for JVM.
20:25 dalek roast: Please revert if there is a better way to do the fudging.
20:25 dalek roast: review: https://github.com/perl6/roast/commit/9e99d8c497
20:25 jnthn (Same URL as before)
20:25 jnthn Think it got included into R*
20:25 jnthn So that copy may want updating
20:26 jnthn .tell lizmat Updated SPW slides, since I think you were going to use 'em: http://jnthn.net/papers/2015-spw-perl6-course.pdf
20:26 yoleaux jnthn: I'll pass your message to lizmat.
20:27 lizmat joined #perl6
20:27 * lizmat waves from MIA
20:27 yoleaux 16:49Z <jnthn> lizmat: (mixin if no chomp) maybe, but otoh most folks use lines, I think...so maybe not worth the complexity.
20:27 yoleaux 19:52Z <FROGGS> lizmat: are you going to OSCON? CFP is closing on Tuesday midnight Pacific time
20:27 yoleaux 20:26Z <jnthn> lizmat: Updated SPW slides, since I think you were going to use 'em: http://jnthn.net/papers/2015-spw-perl6-course.pdf
20:28 jnthn Oh noes, lizmat is Missing In Action!
20:28 FROGGS /o\
20:28 lizmat hehe
20:29 lizmat from a business lounge that reminds me of the worst times at JFK during the late eighties
20:29 lizmat aka, packed with people, noisy , smelly, no room to sit
20:29 lizmat grrr....  :-)
20:29 FROGGS eww
20:29 lucasb I did a 'diff src/QAST/Stmt{,s}.nqp' in nqp and saw that the difference between QAST::Stmt and QAST::Stmts is just some int type annotation on the 'my int $i' counter. If those int types were added to QAST::Stmts, would it improve something?
20:31 dj_goku say (2 ** 99999).chars # 30103
20:31 dj_goku lol
20:31 lizmat ah, woolfy found a place for us to sit!
20:34 diakopter MIA is the woooooooooorst
20:35 dj_goku FROGGS: uh, /report isn't accept reports again. :(
20:38 cdg joined #perl6
20:38 FROGGS O.o
20:38 diana_olhovik_ joined #perl6
20:39 dj_goku FROGGS: I promise I didn't do it on purpose. :D
20:39 FROGGS dj_goku: works for me: ==> Test report submitted as: http://testers.perl6.org/reports/85170.html
20:40 dj_goku FROGGS: I got a 404 opening that link
20:41 FROGGS dj_goku: that's okay, it takes up to five minutes to show up
20:41 dj_goku ahh
20:41 FROGGS dj_goku: it is there now
20:41 FROGGS dj_goku: but I see 500's for some reports...
20:42 dj_goku FROGGS: weird, so JSON::Fast worked, but Readline failed, and is sending a failure report.
20:44 FROGGS there was something wonky in the P5 script which I fixed now again
20:47 dj_goku FROGGS: so it should work now? I just tried to install readline and got a 500 still.
20:47 avar /w 6
20:49 FROGGS dj_goku: any the valid you send is valid?
20:49 dj_goku FROGGS: this was worked: ==> Test report submitted as: http://testers.perl6.org/reports/85171.html (JSON::Fast)
20:49 quietfanatic joined #perl6
20:50 FROGGS I'm trying readline as well now
20:50 dj_goku FROGGS: that was before you said you fixed it again (14:44)
20:50 dj_goku ok
20:53 quietfanatic Hey, forgive me if this has been asked before, because it seems kind of obvious, but
20:53 quietfanatic is there a way to get a grammar to tell me where it failed parsing?
20:54 quietfanatic I'm getting kinda tired of seeing "Method 'made' not found for invocant of class 'Any'"
20:54 dalek rakudo/nom: 95558bb | FROGGS++ | src/Perl6/Actions.nqp:
20:54 dalek rakudo/nom: make "require PAKAGE/STRING" return said PACKAGE/STRING
20:54 dalek rakudo/nom:
20:54 dalek rakudo/nom: Previously it returned True on success which is not that helpful. Now we can use
20:54 dalek rakudo/nom: the return value as specified by S11: my $foo = (require Foo).new;
20:54 synbot6 Link: http://design.perl6.org/S11.html#my
20:54 dalek rakudo/nom:
20:54 dalek rakudo/nom: Fixes RT #126100
20:54 synbot6 Link:  https://rt.perl.org/rt3/Public/Bug/Display.html?id=126100
20:54 dalek rakudo/nom: review: https://github.com/rakudo/rakudo/commit/95558bb58e
20:55 dalek roast: ff452eb | FROGGS++ | S11-modules/require.t:
20:55 dalek roast: add tests for RT #126100
20:55 dalek roast: review: https://github.com/perl6/roast/commit/ff452eb56a
20:55 synbot6 Link:  https://rt.perl.org/rt3/Public/Bug/Display.html?id=126100
20:57 FROGGS quietfanatic: there exists a hack with setting $*HIGH_WATER or some such, also, sometimes it helps to call .subparse for debugging
20:59 quietfanatic Hmm, it just seems like there ought to be a standard way of doing this.
20:59 FROGGS aye
20:59 quietfanatic besides attaching "| <fail: blah>" on every failable token
20:59 FROGGS though I dunno how to expose that information
21:00 lizmat gate&
21:00 FROGGS maybe TimToady has a good idea on how to expose the highwater?
21:01 quietfanatic Perhaps.
21:03 FROGGS dj_goku: something in the test output is invalidating the json it seems
21:03 quietfanatic I'll be honest, I'm pretty annoyed.  If I have to laboriously intuit every cause of parse failure, it'd be faster to write my own parser in standard C++.
21:03 dj_goku FROGGS: oh sweet. /me starts searching
21:04 FROGGS dj_goku: either that or it is about the size of the post data
21:04 ugexe FROGGS: it saves the last test report somewhere right? he could run that through a json linter probably
21:04 raiph joined #perl6
21:06 dj_goku I just testing the JSON in two linters and they both say valid json
21:06 FROGGS ugexe: it is just recording the result
21:06 FROGGS but yeah, I also did that and it says it is valid
21:07 Begi11115 joined #perl6
21:11 dj_goku FROGGS: is the dancer code on github?
21:12 ugexe theres a fork me ribbon with a link on testers.perl6.org upper right corner anyway
21:14 FROGGS dj_goku: here it is: https://gist.github.com/FROGGS/cd2f1b94b3bd77609971
21:14 FROGGS invalid character encountered while parsing JSON string, at character offset 13758 (before "\x{1b}[32m  my ( $of...") at...
21:14 dj_goku FROGGS: is there a reason this isn't being used: https://github.com/perl6/cpandatesters.perl6.org/blob/master/app.pl#L233
21:15 FROGGS so, it does not like colors
21:15 FROGGS dj_goku: that's the very old site
21:15 dj_goku oh
21:15 FROGGS dj_goku: which delivered dynamic pages and was too lsow
21:15 FROGGS slow*
21:16 dj_goku FROGGS: ahh.
21:17 dj_goku FROGGS: so parts of that is used to generate some pages.
21:17 FROGGS aye
21:17 FROGGS the jobs/
21:17 FROGGS hmmm, and when I disable colors, it chokes on the eject sign
21:17 dj_goku when was the last time it was run dynamically with p6?
21:18 FROGGS malformed UTF-8 character in JSON string, at character offset 13795 (before "\x{fffd}src-offset )...") at...
21:18 FROGGS almost exactly a year ago I think
21:19 dj_goku FROGGS: ahh, a lot has changed since then! :D
21:19 FROGGS I know :o)
21:21 jferrero m: my $IP = "10.113.125.8"; say ($IP.split(".").cache.[0^..*].map: { 999 - $_ }).join("").flip
21:21 camelia rakudo-moar : OUTPUT«199478688␤»
21:26 dj_goku FROGGS: is there anything I can help with?
21:27 FROGGS dj_goku: no, I'm working at a patch atm
21:28 lab joined #perl6
21:30 dj_goku FROGGS: so is the issue unicode? because I see you have a "raw" column that is of type JSON in postgres.
21:30 dalek rakudo/curli: ef03668 | (Stefan Seifert)++ | src/core/CompUnit/Repository/Installation.pm:
21:30 dalek rakudo/curli: Fixup for previous id change
21:30 dalek rakudo/curli:
21:30 dalek rakudo/curli: The previous commit went to far. While the precomp ids may not depend on the
21:30 dalek rakudo/curli: ever changing id of this repo, they still have to depend on the changing ids of
21:30 dalek rakudo/curli: the repos down the chain.
21:30 dalek rakudo/curli: review: https://github.com/rakudo/rakudo/commit/ef03668121
21:31 FROGGS dj_goku: it is failing when decoding the JSON before we hit the database
21:33 dj_goku FROGGS: ahh fun. :(
21:34 vendethiel joined #perl6
21:34 jferrero m: my $IP = "10.113.125.8"; say $IP.split(".").cache.[1..3].map({999 - $_}).join("").flip
21:34 camelia rakudo-moar : OUTPUT«199478688␤»
21:37 jferrero m: my @IP = <10.113.125.8 10.96.3.8>; say $IP.split(".").[1..3].map({999-$_}).join("").flip for @IP
21:37 camelia rakudo-moar : OUTPUT«5===SORRY!5=== Error while compiling /tmp/2_kdzvuACE␤Variable '$IP' is not declared. Did you mean '@IP'?␤at /tmp/2_kdzvuACE:1␤------> 3my @IP = <10.113.125.8 10.96.3.8>; say 7⏏5$IP.split(".").[1..3].map({999-$_}).join␤»
21:37 jferrero m: my @IP = <10.113.125.8 10.96.3.8>; say $_.split(".").[1..3].map({999-$_}).join("").flip for @IP
21:37 camelia rakudo-moar : OUTPUT«199478688␤199699309␤»
21:41 TEttinger joined #perl6
21:42 black_ant joined #perl6
21:53 cibs joined #perl6
22:02 diana_olhovik joined #perl6
22:02 Ven joined #perl6
22:04 rindolf joined #perl6
22:12 FROGGS leont: is it possible that prove outputs a BEL character?
22:14 xargs joined #perl6
22:18 Ven .tell zoffix seems like everything is "fixed" here :) ty
22:18 yoleaux Ven: I'll pass your message to zoffix.
22:18 FROGGS leont: that character seems to be at the beginning of this line: https://gist.github.com/FROGGS/4e2ce3d1f3f93bd49f46#file-does_it_ring-pl-L12
22:21 abaugher joined #perl6
22:21 nine quietfanatic: I guess you do know about Grammar::Debugger?
22:22 quietfanatic nine: seems like overkill for such a simple feature
22:23 nine quietfanatic: well I'd say the feature is just not that simple :) However Grammar::Debugger actually is
22:24 tokuhiro_ joined #perl6
22:24 quietfanatic How is getting the line and character number of where a parse failed not simple?
22:26 nine quietfanatic: Backtracking. A failure for some subrule to match doesn't mean that the whole grammar fails. If there are 3 different changes to the input that would all individually make the parse succeed, which one should it flag?
22:26 quietfanatic Okay, it wouldn't be simple in the general case, I guess
22:26 diana_olhovik_ joined #perl6
22:28 quietfanatic Perhaps Perl 6 grammars are not as suited to parsing as I thought.
22:29 nine FWIW I'd love to see that feature in Perl 6. I guess the people who would be able to come up with a somewhat useful solution are just busy with other things right now. Like getting our 1.0 out of the door :)
22:29 quietfanatic yeah
22:31 Ven_ joined #perl6
22:32 BenGoldberg joined #perl6
22:32 Ven_ nine: how are the messages provided using :dba() (and maybe commit?)
22:34 Ben_Goldberg joined #perl6
22:35 Ben_Goldberg m: class Test is Iterator { sub pull-one { return 42 } }; say 'ok';
22:35 camelia rakudo-moar : OUTPUT«5===SORRY!5=== Error while compiling /tmp/UhflGUfaE4␤Method 'pull-one' must be implemented by Iterator because it is required by a role␤at /tmp/UhflGUfaE4:1␤»
22:35 Ben_Goldberg What am I doing wrong here?
22:35 Ben_Goldberg Ooops, I see ;)
22:35 Ben_Goldberg m: class Test is Iterator { method pull-one { return 42 } }; say 'ok';
22:35 camelia rakudo-moar : OUTPUT«5===SORRY!5=== Error while compiling /tmp/aU8m4I6LLL␤Method 'pull-one' must be implemented by Iterator because it is required by a role␤at /tmp/aU8m4I6LLL:1␤»
22:35 Ben_Goldberg :(
22:36 stux|RC-only joined #perl6
22:37 frew joined #perl6
22:37 nine Ven_: ???
22:38 masak nine: ¿¿¿
22:38 Ven_ nine: whoops, it seems I had a *very* stale backlog
22:38 Zoffix joined #perl6
22:39 gfldex m: class Test does Iterator { method pull-one { return 42 } }; say 'ok';
22:39 camelia rakudo-moar : OUTPUT«ok␤»
22:39 gfldex Ben_Goldberg: ^^^
22:40 Ben_Goldberg Thanks! :)
22:42 Zoffix Fun fact: 382 out of 462 (83%) are missing the required `perl` key from their META file :)  https://gist.github.com/zoffixznet/2c56fa8071ecd6c47085
22:42 yoleaux 22:18Z <Ven> Zoffix: seems like everything is "fixed" here :) ty
22:42 Zoffix Ven_, awesome :D
22:42 Zoffix Anyone's up for making 382 PRs? :P
22:43 stmuk_ what should the value be?
22:43 Zoffix .oO( we can probably make a robot that does this stuff )
22:43 Zoffix stmuk_, http://design.perl6.org/S22.html#perl
22:43 Zoffix "The minimal perl version for which this distribution can be installed. Specified as a version string."
22:46 stmuk_ $*PERL.version doesn't resemble that string
22:47 Zoffix 1 is missing `description` and 16 are missing `provides`, but I believe all of them already have PRs
22:48 Zoffix m: say $*PERL.version
22:48 camelia rakudo-moar : OUTPUT«v6.b␤»
22:48 Zoffix stmuk_, ?
22:48 Zoffix m: say v6.b before v6.0.1
22:48 camelia rakudo-moar : OUTPUT«True␤»
22:48 Zoffix m: say v6 before v6.0.1
22:48 camelia rakudo-moar : OUTPUT«True␤»
22:49 stmuk_ I thought that would be v6.c not v6.0.0 as shown in the example
22:50 Zoffix m: say v6.0.0 before v6.0.1
22:50 camelia rakudo-moar : OUTPUT«True␤»
22:50 Zoffix stmuk_, the example says specifying `perl` as v6.0.1 won't allow installation on earlier Perl versions, of which v6.0.0 is one.
22:51 sprocket joined #perl6
22:51 Zoffix It's a spec. It doesn't care that currently we're planning to release a particular implementation of Perl 6 with version of v6.c
22:52 Ben_Goldberg joined #perl6
22:52 stmuk_ it's not very clear to anyone reading the spec what to put for a version
22:53 Zoffix A version string http://doc.perl6.org/type/Version
22:55 Zoffix m: say $*PERL.version.WHAT
22:55 camelia rakudo-moar : OUTPUT«(Version)␤»
22:56 stmuk_ so what do we put now and on Dec 25?
22:56 BenGoldberg_ joined #perl6
22:57 Zoffix stmuk_, you can put { ...  perl: "v6.b" ... }
22:58 Zoffix On Dec 25, if your code no longer works with v6.b, after fixing it up for v6.c, you'd put it as perl: "v6.c"
22:59 stmuk_ if I had set v6.b for code that worked with niceville it could have broken in quite a few ways by bent
23:00 cdg joined #perl6
23:02 lab joined #perl6
23:03 dalek modules.perl6.org/new-db-builder: 5f76c8b | (Zoffix Znet)++ | web/ (6 files):
23:03 dalek modules.perl6.org/new-db-builder: First working Dist Source plugin pipeline with a dummy GitHub plugin
23:03 dalek modules.perl6.org/new-db-builder: review: https://github.com/perl6/modules.perl6.org/commit/5f76c8b474
23:05 stmuk_ maybe I will just put v6.* and hope for the best :)
23:05 Zoffix methinks that's be "v6"
23:05 Zoffix m: say v6.* before v6.c
23:05 camelia rakudo-moar : OUTPUT«True␤»
23:05 Zoffix Oh.. It works
23:05 Zoffix Perl6++
23:05 Zoffix m: say v6.* after v6.c
23:05 camelia rakudo-moar : OUTPUT«False␤»
23:05 Zoffix m: say v6 before v6.c
23:05 camelia rakudo-moar : OUTPUT«False␤»
23:06 BenGoldberg_ m: my @a; push @a[2]: 'test'; say @a; if @a.shift -> $head { say "head is $head" } else { say "headless" }
23:06 camelia rakudo-moar : OUTPUT«[(Any) (Any) [test]]␤headless␤»
23:06 BenGoldberg_ m: my @a; push @a[2]: 'test'; say @a; if @a.shift -> $head { say "head is $head" } else { say "headless" }; say @a;
23:06 camelia rakudo-moar : OUTPUT«[(Any) (Any) [test]]␤headless␤[(Any) (Any) [test]]␤»
23:06 Zoffix Oh
23:06 Zoffix weird
23:06 Zoffix m: say v6 before v6.0.0
23:06 camelia rakudo-moar : OUTPUT«False␤»
23:06 Zoffix m: say v6 after v6.0.0
23:06 camelia rakudo-moar : OUTPUT«False␤»
23:06 stmuk_ m: say v6.a after v6.*
23:06 camelia rakudo-moar : OUTPUT«True␤»
23:06 stmuk_ m: say v6.a ~~ v6.*
23:06 camelia rakudo-moar : OUTPUT«True␤»
23:07 BenGoldberg_ Could someone tell me what I'm doing wrong?  Why does my @a not get turned into [(Any) [test]] ?
23:09 Zoffix m: my @a; push @a[2]: 'test'; say @a; @a.shift;
23:09 camelia rakudo-moar : OUTPUT«[(Any) (Any) [test]]␤Cannot shift from an empty Array␤  in block <unit> at /tmp/fC34N2sl4U:1␤␤Actually thrown at:␤  in block <unit> at /tmp/fC34N2sl4U:1␤␤»
23:09 masak um.
23:10 masak ...but it has three elements...
23:10 BenGoldberg_ Replacing the push with an assignment produces the same result:
23:10 BenGoldberg_ m: my @a; @a[2] ='test'; say @a; shift @a; say @a;
23:10 camelia rakudo-moar : OUTPUT«[(Any) (Any) test]␤Cannot shift from an empty Array␤  in block <unit> at /tmp/cKxBG_Mzb0:1␤␤Actually thrown at:␤  in block <unit> at /tmp/cKxBG_Mzb0:1␤␤»
23:11 Zoffix m: my @a = 1; push @a[2]: 'test'; say @a.shift
23:11 camelia rakudo-moar : OUTPUT«1␤»
23:11 Zoffix m: my @a = Any; say @a.shift
23:11 camelia rakudo-moar : OUTPUT«(Any)␤»
23:11 Zoffix weird
23:11 BenGoldberg_ m: my @a = Any; say @a.shift; say @a.shift;
23:11 camelia rakudo-moar : OUTPUT«(Any)␤Cannot shift from an empty Array␤  in block <unit> at /tmp/b204AD5eF3:1␤␤Actually thrown at:␤  in block <unit> at /tmp/b204AD5eF3:1␤␤»
23:12 masak gentlemen, I think you have found a bug.
23:12 arnsholt m: my @a = Any, Any, 1; say @a; say @.shift; # What about this?
23:12 camelia rakudo-moar : OUTPUT«5===SORRY!5=== Error while compiling /tmp/01OZ1Kry8D␤Variable @.shift used where no 'self' is available␤at /tmp/01OZ1Kry8D:1␤------> 3my @a = Any, Any, 1; say @a; say @.shift7⏏5; # What about this?␤    expecting any of:␤        argument list…»
23:12 BenGoldberg_ m: my @a; @a[0] = Any; @a[1] = 42; say @a; shift @a; say @a;
23:12 camelia rakudo-moar : OUTPUT«[(Any) 42]␤[42]␤»
23:12 arnsholt m: my @a = Any, Any, 1; say @a; say @a.shift; # What about this?
23:12 camelia rakudo-moar : OUTPUT«[(Any) (Any) 1]␤(Any)␤»
23:12 arnsholt Weeeird.
23:12 masak arnsholt: ok, so the Anys produced by making holes are special somehow?
23:12 arnsholt Might look like it...
23:14 masak m: my @a; @a[1] = 42; @a.shift
23:14 camelia rakudo-moar : OUTPUT«Cannot shift from an empty Array␤  in block <unit> at /tmp/N7HgBgUm0E:1␤␤Actually thrown at:␤  in block <unit> at /tmp/N7HgBgUm0E:1␤␤»
23:14 masak m: my @a = Any, 42; @a.shift
23:14 camelia rakudo-moar : ( no output )
23:14 BenGoldberg_ m: my @a; @a[1] = 42; splice @a, 0, 1; say @a;
23:14 camelia rakudo-moar : OUTPUT«[42]␤»
23:14 masak looks like it to me.
23:15 Zoffix m: my @a; @a[1] = 42; say @a[0].WHAT, Any.WHAT; say @a; @a.shift
23:15 camelia rakudo-moar : OUTPUT«(Any)(Any)␤[(Any) 42]␤Cannot shift from an empty Array␤  in block <unit> at /tmp/jiN73UKf6P:1␤␤Actually thrown at:␤  in block <unit> at /tmp/jiN73UKf6P:1␤␤»
23:17 Zoffix Why is Mu class called that way?
23:18 TimToady m: my @a = 1,2; @a[0]:delete; @a.shift
23:18 camelia rakudo-moar : OUTPUT«Cannot shift from an empty Array␤  in block <unit> at /tmp/0mfbGccsyT:1␤␤Actually thrown at:␤  in block <unit> at /tmp/0mfbGccsyT:1␤␤»
23:19 Zoffix It's weird that it doesn't die on this:
23:19 Zoffix m: my @a = 1,2; @a[0]:delete; say @a.shift ?? @a !! @a
23:19 camelia rakudo-moar : OUTPUT«[(Any) 2]␤»
23:20 BenGoldberg_ m: my @a; @a[1] = 42; so shift @a; say @a;
23:20 camelia rakudo-moar : OUTPUT«WARNINGS:␤Useless use of "so " in expression "so shift @a" in sink context (line 1)␤[(Any) 42]␤»
23:20 BenGoldberg_ m: my @a; @a[1] = 42; say so shift @a; say @a;
23:20 camelia rakudo-moar : OUTPUT«False␤[(Any) 42]␤»
23:21 TimToady obviously return a failure that throws lazily
23:21 TimToady but the message is a bit off
23:21 TimToady actually, the shift should work, but return Nil
23:30 telex joined #perl6
23:31 BenGoldberg_ m: https://gist.github.com/BenGoldberg1/467dff5994d16fb4af23
23:31 camelia rakudo-moar : OUTPUT«(signal SEGV)ok 1␤»
23:31 BenGoldberg_ Ouch.
23:32 BenGoldberg_ Locally, it works without the segv.
23:34 TimToady testing a patch fro shift
23:34 BenGoldberg_ j: say 'jakudo?'
23:34 camelia rakudo-jvm 95558b: OUTPUT«jakudo?␤»
23:34 BenGoldberg_ j: https://gist.github.com/BenGoldberg1/467dff5994d16fb4af23
23:34 camelia rakudo-jvm 95558b: OUTPUT«ok 1␤(2 3 5 7 11 13 17 19 23 29 31 37 41 43 47 59 71 77 83 89 101 107 113 119 143 149 161 167 191 203)␤ok 2␤»
23:35 Zoffix neat
23:35 timotimo moar does what jakudon't
23:35 BenGoldberg_ And vice versa?
23:36 metasin primes?
23:36 BenGoldberg Yup.
23:37 Zoffix Next step: factor ones that are 200 digits long... ??? PROFIT!
23:37 flussence I'm trying to figure out how exactly ".return" behaves, but there's almost nothing in the obvious places (specs, doc, roast)
23:38 BenGoldberg It's not a prime factorizer, it's juse an unbounded list of primes.
23:39 BenGoldberg OTOH, it's a unusual algorithm for the task, very cool :)
23:40 timotimo multi-dim array access is significantly slower here than array-of-arrays used to be :S
23:40 TimToady yes, that's been true from the start
23:40 TimToady hasn't been optimized yet
23:41 timotimo mhm
23:42 timotimo oh damn
23:42 timotimo --profile crashed!
23:42 diakopter it does when there's a signal handler
23:42 timotimo KnowHOW methods must be called on object instance with REPR KnowHOWREPR
23:43 timotimo diakopter: that's just because that introduces a second thread, i think
23:43 timotimo can't get --ll-exception from that :o
23:44 TimToady profiling forest, are we?
23:45 BenGoldberg Profiling my gist, perhaps.
23:45 TimToady doesn't have a single handler that I can see
23:45 BenGoldberg Well, no, but it produced a signal!
23:49 leont .tell FROGGS I don't think so, though the interactive output uses \r a lot
23:49 yoleaux leont: I'll pass your message to FROGGS.
23:49 dalek rakudo/nom: 888ef1b | TimToady++ | src/core/Array.pm:
23:49 dalek rakudo/nom: sparse array should not act empty on shift
23:49 dalek rakudo/nom: review: https://github.com/rakudo/rakudo/commit/888ef1bbc2
23:54 TimToady BenGoldberg++ for the shift bug
23:54 BenGoldberg You're welcome :)
23:56 BenGoldberg Hmm, looking at the fix though... just returning Nil isn't going to move the other elements closer to the front, I don't think.
23:58 sprocket joined #perl6

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

Perl 6 | Reference Documentation | Rakudo