»ö« Welcome to Perl 6! | perl6.org/ | evalbot usage: 'p6: say 3;' or rakudo:, or /msg camelia p6: ... | irclog: irc.perl6.org or colabti.org/irclogger/irclogger_logs/perl6 | UTF-8 is our friend!
Set by moritz on 22 December 2015.
00:09 pyrimidine left 00:11 AlexDaniel left 00:13 japhb left 00:20 travis-ci joined
travis-ci Doc build passed. Zoffix Znet 'Trigger doc rebuild 00:20
travis-ci.org/perl6/doc/builds/185931890 github.com/perl6/doc/compare/ed76a...5342ac60ed
00:20 travis-ci left 00:23 rindolf left 00:31 japhb joined 00:32 kaare_ left, kaare_ joined 00:33 TEttinger joined 00:38 mr-fooba_ joined, newbie1 joined 00:39 stanley left 00:41 zoosha_ joined 00:42 nebuchadnezzar left, nebuchadnezzar joined 00:43 dgl joined 00:45 mr-foobar left, camelia left, _28_ria left, zoosha left, yqt left, dg left, cgfbee left 00:46 AndyBotwin left 00:47 camelia joined 00:48 ChanServ sets mode: +v camelia 00:51 AndyBotwin joined 00:57 khw left, SmokeMachine left, timotimo left 01:02 wamba left 01:04 cdg_ left 01:05 cgfbee joined, BenGoldberg joined 01:07 khw joined, SmokeMachine joined, timotimo joined, aborazmeh joined, aborazmeh left, aborazmeh joined 01:09 Ben_Goldberg joined, BenGoldberg left, Ben_Goldberg is now known as BenGoldberg
dalek c: bf79e73 | (Zoffix Znet)++ | html/css/highlights.css:
Do not use underlines in syntax highlights

On web, it's very confusing, as they make stuff look like links.
01:18
notviki The code highlight on docs is so pale :/ 01:19
.oO( has it always been that way?.. )
01:22 japhb_ joined
tony-o Xliff: it *should* work with mysql, it did prior to me updating for joins - i'll update that README too 01:22
01:24 rburkholder joined 01:30 newbie1 left 01:31 imcsk8 left
samcv looks like the new highlighter on the docs is working ^_^ 01:32
tony-o Xliff: updated the readme with similar text to my response in that gist, i hope that clears up how that works a little bit
Xliff: i also updated the example to make that '-and' relevant 01:33
01:33 imcsk8 joined, dayangkun joined, Actualeyes joined
samcv everyone can feel free to tweak the CSS as they wish, should be pretty easy going into developer tools on the browser and see what they are marked as 01:33
and if you want it named better (possibly more specific) just ask me or make a issue on the repo for the highlighter 01:34
regarding other things though.. Need to ask, with uniprop, there are some values that have multiple values
like Script_Extensions 01:35
basically uniproperty "Script" tells you what script it is, often times it may be "Common", but the script extensions tell you which languages use it, in case it's more than one language
so for things like regex we probably should use those values when matching scripts maybe? Or what are peoples thoughts 01:36
i have other things about other properties, but this is the most important one that I have noticed we don't have support for
01:37 pyrimidine joined 01:39 cpage left 01:43 Ben_Goldberg joined, BenGoldberg left 01:44 Ben_Goldberg is now known as BenGoldberg, cdg joined, pyrimidine left 01:49 cpage joined
dalek c: fa493eb | (Zoffix Znet)++ | html/css/highlights.css:
Tweat new syntax highlights styles
01:51
samcv zoffix++ 01:52
notviki perl6.wtf update failed again: Attempt to divide by zero using div 01:53
in block at nqp/MoarVM/tools/parse_coverage_report.p6 line 167
in sub MAIN at nqp/MoarVM/tools/parse_coverage_report.p6 line 137
in block <unit> at nqp/MoarVM/tools/parse_coverage_report.p6 line 491
:(
01:53 cdg left 01:55 espadrine left
notviki heh.... Now I wish it had died where the division happens and now where it prints the result :/ 01:55
SmokeMachine I'm sorry, I published too early... that wasn't on purpose...
I was trying to schedule... 01:56
notviki SmokeMachine: when was it supposed to be published?
huggable: mu
huggable notviki, nothing found
notviki huggable: advent
huggable notviki, github.com/perl6/mu/blob/master/mi...6/schedule
SmokeMachine notviki: tomorrow...
01:57 Ben_Goldberg joined
notviki SmokeMachine: um.. you're 2 hours late 01:57
01:57 BenGoldberg left
notviki :) 01:57
01:57 Ben_Goldberg is now known as BenGoldberg
notviki From what I've seen everyone publishes close to midnight UTC 01:57
m: DateTime.now.utc.say
camelia rakudo-moar c42b6b: OUTPUT«2016-12-22T01:57:25.959344Z␤»
01:57 dayangkun left
SmokeMachine notviki: I thought I was 2 hours early... 01:57
notviki :) 01:59
02:00 pyrimidine joined
SmokeMachine notviki: thanks! 02:01
notviki wooo.. finally updated \o/ perl6.wtf/ 02:04
timotimo cool, all files are 0% covered :) 02:07
notviki Are they?
timotimo and the links aren't working because the :: make sit look like SETTING is the protocol
and it's suggesting to xdg-open the url instead of navigating to it
timotimo has to go to bed very now
notviki Oh crap 02:08
timotimo it shows 100% ignored for every file :)
but yeah. sleep.
notviki Stupid Chrome was showing me the old version :(
02:09 Ben_Goldberg joined, BenGoldberg left, Ben_Goldberg is now known as BenGoldberg 02:22 Ben_Goldberg joined, BenGoldberg left, Ben_Goldberg is now known as BenGoldberg
BenGoldberg notviki, The links on perl6.wtf point to things like "setting::src_core_AST.pm.coverage.html" ... 02:39
02:46 teksteiner joined 02:50 kalkin- joined
dalek c: 7c4af12 | samcv++ | html/css/highlights.css:
Make variable names a little darker in the CSS
02:54
02:54 kalkin-_ left, kent\n joined
[Coke] samcv: that is probably cached, no? probably need to add a ?v=1 or whatever to the layout template (like we did for JS) 02:57
03:16 BenGoldberg left 03:19 BenGoldberg joined
samcv [Coke], where do I need to add that? 03:28
it may be cached. though refreshing after 15 minutes i saw the changes
in the template that includes the css right
03:30 pyrimidi_ joined, pyrimidine left
dalek c: 82b5daf | samcv++ | .gitignore:
Add highlights/node_modules and **/npm-debug.log to .gitignore
03:31
[Coke] template/head.html:<link type="text/css" href="/css/highlights.css?v=1" rel="stylesheet" /> 03:32
I'd bump that to 2.
samcv ok so bump it for every change?
cool.
dalek c: 24d71c9 | samcv++ | .gitignore:
Add highlights/atom-language-perl6 to .gitignore
03:34
c: 2e6bf88 | samcv++ | template/head.html:
Bump css version to 2
[Coke] samcv++ 03:37
[Coke] has a twitch stream up where they spent 45 minutes trying to get to the point where the host could play the PS4 game with his teammates.
samcv looks like pod isn't highlighted. we can add that to the stylesheet later i guess
why so long 03:38
[Coke] "who is the bigger fool, the streamer? or the fool who follows him?"
samcv oh looks like some pod is already highlighting i guess
just not all of it
hahah
[Coke] need update. connect. need DLC. switch to wife's account, reconnect. tripping over stuff all the way. 03:39
samcv nice
[Coke] .... and it's basically a pod-racing game. ugh. why am I subscribed to this? :) 03:40
samcv haha
hmm not sure why this here: docs.perl6.org/language/objects#Type_Objects is highlighting as pod block code 03:42
maybe i should look at the source file. maybe something weird is in there
that i don't see on the website
[Coke] Did zoffix remove the underscoreds?
samcv yeah
this is only being wrong because it somehow thinks it's pod
[Coke] samcv: the heading itself? or something under it? 03:43
samcv so i'm going to check the pod6 file
to see if there's anything weird it may be passing to the parser
the whole block
that isn't highlighted both of those i can check the dev tools on chrome and shows it's pod block code
ohh yepppp! 03:44
it uses =for code :allow<B L> there. 03:45
it must be passing some of it through to the highlighter
i think so at least
i mean all the other parts that don't have pod directly above them are rendering fine
notviki samcv: the code with bolds/italics had that glitch for ages before. It wasn't highlighted 03:48
samcv so has it always been this way? 03:49
notviki Since I was here, yes
samcv i will try to change it from =for to be begin and end
idk if it will make a difference. not sure what it's actually passing through though
it's passing through some pod `=whatever` though. that's the only signal the highlighting grammar recognizes pod 03:50
dalek c: f3c7089 | samcv++ | doc/Language/objects.pod6:
Change =for to =begin and =end code to try and get parts working

  viki says that this was not working before either. The highlighting
grammar is recognizing these sections as being Pod code blocks, which should only happen if it's sending part of the pod declaring lines to it.
03:52
synopsebot6 Link: doc.perl6.org/language/objects
samcv well this may not do anything then
i'm not sure what magic it is trying to signal it's highlighted a certain way. maybe passing through pod, and then taking out the =for section? 03:53
could probably just remove those bold or whatever sections
not sure why it's using L< > parts inside the code though 03:54
when we have links for the same things before the code
notviki, did pygments highlight twigils differently than the rest of the variable? i don't remember 03:56
03:58 noganex joined 03:59 skids joined 04:01 noganex_ left
dalek c: fcaad4c | samcv++ | / (2 files):
Highlight traits like `rw`, `copy` etc. differently in CSS
04:01
samcv This is so nice 04:02
being able to tweak individual elements of syntax on the site :D
dalek c: 4178d6e | samcv++ | / (2 files):
Make the type traits not bold. Also forgot the semicolons in the CSS
04:09
04:09 dantia joined
dalek c: 0ffb783 | samcv++ | / (2 files):
CSS: Make quoted strings darker in color
04:19
04:28 aborazmeh left 04:36 rburkholder left, mr-fooba_ left
dantia Is there a clean way to get the inode (number) of a file? (such as $inode = $datafile.IO.inode for example). Currently I have to spawn the "stat" command to achieve this. 04:43
04:45 khw left
MasterDuke dantia: don't think so. at least the string 'inode' isn't in the source anywhere 04:46
geekosaur think stuff like that that is POSIX specific was deferred to the ecosystem. (and still missing there) 04:47
MasterDuke github.com/cspencer/perl6-posix, but it's not very complete 04:48
TimToady m: use nqp; say nqp::stat(".", nqp::const::STAT_PLATFORM_INODE) 04:49
camelia rakudo-moar c42b6b: OUTPUT«273␤»
TimToady is one way 04:50
samcv TimToady, what do you think of what I just said in #perl6-dev? Curious about your input
TimToady 1-to-many mappings are always hard, especially when unexpected 04:52
samcv yeah
TimToady some way of returning the most obvious one, then some way to get all of them explicitly, maybe 04:53
where "obvious" may not be obvious
samcv most obvious one... the Extensions script one... some have like 8
characters used in 8 different scripts 04:54
err actually the max is 17 04:55
just counted
04:58 BenGoldberg left
dantia nqp::stat is a good enough workaround. Thanks. 04:58
samcv the Script category is basically the Primary, well some of them the script is 'Common' but it has a script extension designation 04:59
And I need to look more into it, but this bug i found rt.perl.org/Ticket/Display.html?id=130384 may need to be fixed by looking at the script property to make sure that we only combine them if they are the same script/script extension 05:00
where combining characters consume the ones they are next to, they consume quoting delimiters and things
cannot even compile because it thinks they are the same character 05:01
05:09 r3m left 05:14 r3m joined 05:19 Cabanossi left 05:21 Cabanossi joined, Actualeyes left 05:36 Actualeyes joined, bwisti left 05:42 mrbrklyn left 05:48 bwisti joined 06:00 skids left 06:03 bwisti left 06:05 dugword joined 06:13 tardisx joined 06:14 pierre_ joined 06:18 Tonik joined, perlawhirl joined 06:19 pierre_ left 06:20 perlawhirl left 06:23 tardisx left 06:25 LeCamarade joined 06:26 bwisti joined
LeCamarade Hello, #perl6. I have, in the past, had a problem when I load Web::App::Context. It has some old code in the library itself, not compatible with 6.Christmas. But I edit the file in Linux and continue in peace. Now I am on a Mac, and editing that file does not work. 06:26
It seems that it runs off the precompiled version or something.
However, I have deleted that precompiled file, and it still does not pick up the new library (whose line 11 I have modified). 06:27
06:27 cibs left
LeCamarade Moreover, it keeps referring to a problematic line 11 even when I have moved that line. So clearly the script is not picking up the file in the library, but some pre-compiled version. If I knew how to get it to reload, I could probably proceed from here. 06:28
Short version: can I get my script to load the modified files instead of some precompiled ones of the library, which I think is the problem at present?
06:29 cibs joined
dugword Hey all, I'm brand new to perl6. Do I need to do something to get p6doc working? I have the p6doc command, but I get the same error every time I try to run it. I've installed with homebrew, the .dmg from rakudo.org and from source. Error: Use of Nil in string context 06:31
in sub locate-curli-module at /Applications/Rakudo/share/perl6/site/resources/C3A18C4AD5209A1B226E53B2C22A5347E5AC4790
samcv what command are you running to run p6doc? 06:33
just plain `p6doc`?
LeCamarade, what library
dugword just `p6doc` brings up the help on how to use it. But if I try to look at docs for a module I get the error. E.g. p6doc p6doc 06:34
samcv oh Web::App::Context
try for another thing dugword
than p6doc
dugword Same error with p6doc JSON::Tiny
samcv try for a module, not an application name
ok that one works for me hm 06:35
i get the same error you had for trying p6doc p6doc
how did you install p6doc?
dugword with panda
panda install p6doc
samcv kk 06:36
LeCamarade The p6doc is normal; a call of `p6doc p6doc` gives me that error.
samcv LeCamarade, so you force installed the module yes? did you install it, or is it in some directory somewhere 06:37
if you installed it, I would try to download the repository for it into a folder called 'lib', then at the start of the perl 6 script, add `use lib 'lib'`
dugword, are you sure you have JSON::Tiny 06:38
dugword Yes, I have a script that is using it
samcv ok
well.
06:38 holli left
samcv you can use to-json even if you don't have it installed due to uh. things 06:39
dugword lol
samcv because it's in rakudo but you're not supposed to use it anymore
dugword I have: use JSON::Tiny at the top of the script if that matters
samcv ok. that could error if it can't find it
dugword is there a known working module I can install
to test p6doc against
samcv uh try URL::Find 06:40
06:40 thayne joined
LeCamarade samcv I panda-installed it. This is what I always do. Then it predictably fails (the library has pre 6.c syntax). Then I modify the library file. Then it works on other systems. On this one, it does not even notice the mods. 06:40
samcv ok
this is what you nede to do LeCamarade 06:41
dugword Yeah, that one works. Thank you
samcv yay
i made that module so i know it works, i don't use p6doc that much
also dugword and LeCamarade, Welcome to Perl 6 :D 06:42
LeCamarade samcv Thanks!
dugword I tried to install JSON::Tiny but it says it is already installed. I am assuming because panda/rakudo uses it? Is there I way I can re-install it so I have the docs?
samcv ok you have git LeCamarade yes?
dugword Yes thank you! Very excited. I <3 perl
LeCamarade I have been working with P6 for a some months. My first Christmas with it is coming up.
samcv git clone github.com/supernovus/perl6-web.git
LeCamarade samcv So you are supernovus?
samcv go into that folder and edit that file you want
no i didn't make that module
i made URL::Find 06:43
LeCamarade Ah, okay. Only p6doc. Okay ...
dugword I might have a lot of perl5 assumptions to unlearn though...
samcv ok so clone that folder, go into it. and edit how you wish
then run `panda install .` and it will install from that folder as a module
LeCamarade, it can get tricky with perl 6 and modules, because it works with hashes 06:44
so you edit the file and i think unexpected things could happen since that's what it uses to refer to modules
the reason it uses hashes is because perl 6's module system was designed to allow multiple versions being used at once and also multiple module authors
dugword, the docs are generally pretty nice, or just ask and people here are usually nice :) 06:45
LeCamarade The hashes are fine, since it points out which hashed name is to blame. However, it does not look at that file itself after it has pointed it out. If I move the offending line, it does not change the line count. 06:46
Anyway, now I have done the above.
Cloned and modified. I think panda install path/to/dir is what follows, right?
LeCamarade should run panda --help ...
Hmm ... I do not see how to install from the cloned repo. 06:47
samcv Oh, so if I run panda install from this directory everything will work? 06:48
Hmm ... no workee.
samcv LeCamarade, just type "panda install ."
if you are on linux
or mac
LeCamarade runs panda install . 06:49
It seems to be working ...
samcv . will install from the directory you are currently in
LeCamarade samcv++ for that, so far ...
Right.
samcv you can specify other directories
06:49 RabidGravy joined
samcv interesting fun fact 06:49
perl 6 autogenerates help messages
and command line options
LeCamarade Right. From MAIN's signature. 06:50
samcv yea :)
is that cool or WHAT?
LeCamarade I have a kinda-old web app I am trying to get running again.
Cool indeed. But, you know, it is just Perl 6 being sane. Everything else is just _stupid_.
Unfortunately, the Internet these days is touchy about such facts. But, yes, the other scripting languages are just stupid. Perl 6 is sane. The rest are not. 06:51
samcv yes :)
i love Perl 6 :) 06:52
LeCamarade Crap, samcv ! It works now. Yes!
samcv yay
LeCamarade samcv++
teksteiner Good morning everyone
samcv good morning
teksteiner Another day of peeking a bit into Perl 6 :) wanted to learn a bit about Promises and concurrency, are there any sources with very basic examples you can recommend? 06:54
Besides the docs 06:55
06:55 darutoko joined
teksteiner docs.perl6.org/type/Promise I mean, not the docs as a whole 06:56
LeCamarade There is a video by Jonathan that I highly recommend.
samcv kuhm
i wrote some articles teksteiner that are pretty simple
i think they're a good intro
06:56 bwisti left
samcv and then you can see other things to learn more 06:56
here cry.nu/perl6/multithreading-in-perl6/ and cry.nu/perl6/multithreading-in-perl6-part2/
they're not very long, and get you introduced well I think without being really wordy 06:57
LeCamarade These things, the concurrency primitives, are some of the best-designed pieces of _engineering_ currently available to mere mortals.
www.youtube.com/watch?v=JpqnNCx7wVY
www.jnthn.net/papers/2015-yapcasia-...rrency.pdf
teksteiner Thank you! Gonna look at them 06:58
samcv i would recommend both of them, and then i'm sure Jonathan goes more into detail about it
cool :)
let me know if you have any questions or i should explain something better
LeCamarade The thing is that concurrency should be approached with a sound education. Most people (especially if they are not using Perl 6 or Haskell) have no option but to do it all wrong.
samcv yeah
in my pt2 of concurrancy i show some ways it can go wrong, and such 06:59
like with variables and stuff
LeCamarade So that talk is a very good intro to how to do it well; it is a a good edoucation on the cheap (free).
samcv which i stumbled into
i should watch that video since i haven't seen it
teksteiner Yeah the system looks pretty neat
samcv will do :) 07:00
samcv i have been meaning to do a part 3 about Proc::Async but haven't gotten around to it quite yet
LeCamarade In Perl 6 you have these good, good primitives that, very importantly, compose very well together both syntactically and semantically. You almost cannot go wrong if you let the syntax rope you in.
07:01 Tonik left
samcv i also really like the object system 07:02
other languages I really don't like… with that
LeCamarade The object system is good because it did it right, like Smalltalk did. It is not about the objects, in Perl 6 and Smalltalk, it is about their messages. And that is doubleplusgood. 07:03
I just love Perl 6.p 07:04
samcv 6.p :P
someday
LeCamarade 6.c more-likely. :-) It really is an excellent achievement. I am glad to 07:05
have it.
You can tell I am typing on dvorak. The . is next to p.
teksteiner How long have you been using dvorak?
LeCamarade I really doubt that Perl 6 can be improved in my lifetime. That is why I am dragging this web app around, and fixing Web::App::Context on every computer where I want to run it. 07:06
Because I am done re-writing my things, and now I have this one bunch of code that I will maintain forever. I am happy with that. If I am not coding Perl 6, I am coding Haskell. That's it.
07:07 pierre_ joined
samcv i type with dvorak too 07:07
LeCamarade Now, the few places you mentioned where Perl 6's concurrency can go wrong, like with variables and stuff, those things are not even legal in Haskell. If you code Perl 6 like it is a more-lenient Haskell, you never ever go wrong.
samcv Yay! aoeui!
samcv :D 07:08
LeCamarade Plus, in Haskell you get things like Software Transactional Memory, which, together with constructs that work a bit like Promises and the like, give you a most-robust way to do something like variables, but safely, so that they _will not_ go wrong. 07:09
07:09 xtreak joined 07:10 domidumont joined
samcv perl 6 also has really good unicode support. I have been working the last week or so on trying to increase our test coverage for unicode properties. but it is a young language still 07:10
LeCamarade Oh, that is the best part! 07:11
samcv so most of the ones we don't have yet are kind of obscure. but everything else is pretty good :)
and sometimes it does it TOO good, (sorta)
while working on tests i find a weird bug :P
because it sees graphemes as seperate from characters,
m: say q<ୈ> 07:12
camelia rakudo-moar c42b6b: OUTPUT«5===SORRY!5=== Error while compiling <tmp>␤Couldn't find terminator <ୈ (corresponding <ୈ was at line 1)␤at <tmp>:1␤------> 3say q<ୈ>7⏏5<EOL>␤ expecting any of:␤ <ୈ␤»
samcv m: say q<ୈtest<ୈ
camelia rakudo-moar c42b6b: OUTPUT«test␤»
LeCamarade Look, most programs that will be written are yet to be written. The sooner we all realise that Perl 6 is the minimum acceptable (now that it has been born), the sooner we will all get to actually dealing with real problems. I actually do not tolerate working with other crap languages. I left my former job last week for that among other reasons.
samcv that weird symbol is usually used on the right side of something else
LeCamarade What I like most is the way quotes work just like they should. 07:13
And superscripts!
samcv and so we may need to do something where we check if they are the same script before saying 'yes these are the same 'character'
:D
yeah
i've also been working hugely on the perl 6 syntax highlighter, i'm maintining it (from being unmaintained for a long time)
LeCamarade I forget the name for that, which you describe; TimToady mentioned it in one of his talks in the last year. 07:14
samcv just got the site switched over to using that highlighter for the docs site
so if you use atom and don't have it yet, you should download it ;) shameless plug
but it's really great
07:14 domidumont left 07:15 domidumont joined, CIAvash joined
samcv supports like every fancy quotation mark :D 07:15
and most of the q/qq/Q delimiters
LeCamarade Actually, I am back to using a Mac now, and I have forgotten how to type the Unicode symbols, or I would be using the right quotes and things like diaereses ... I was used to dead keys with X' compose.
samcv
LeCamarade Yes, the quote marks really had me sold.
samcv yeah i have that compose key
what editor do you use?
LeCamarade Mac does not do compose keys, and I already rush to hit my CAPS for compose before I realise that it will not work on this Mac. 07:16
samcv there must be something like it?
i mean
i remember somebody asking about it
LeCamarade Mac has it, but I do not know it. I will learn it slowly, perhaps, but I intend to just not use Macs too long. 07:20
samcv what editor do you use though. i'm curious
LeCamarade I use vim. 07:21
And you know the new Macs do not even have an escape key.
samcv kk. the highlighting for that is not too bad
what
insane
LeCamarade Oh, no. I cannot have to use the editor to get Unicode. Not right.
samcv what? 07:22
LeCamarade I used to be very effective with a Mac, but I have had the last two years on Linux and I forgot.
No, I should have system-wide escapes of some sort. I mean, I am in BitchX now, for instance.
Not in Vim. So how would I type? :-(
RabidGravy yes, the way of typing the characters should be the same in all applications, not editor specific 07:23
samcv yeah
07:23 cowens left
RabidGravy right off to the code mines, last big push before Christmas! 07:24
samcv :D
well i guess i found out what unicode says about how te seperate things 07:30
Ignore degenerates. No special provisions are made to get marginally better behavior for degenerate cases that never occur in practice, such as an A followed by an Indic combining mark.
need to keep reading though, since < is not a letter character 07:31
LeCamarade Right. Having got my Perl 6 app up and running, off for dinner! Yay! (Sometimes this means no dinner ... ) 07:34
samcv++
jnthn++
samcv Enjoy! 07:35
07:38 LeCamarade left
CIAvash samcv++ # syntax highlighting on docs 07:41
samcv does it look better?
i think it looks pretty good, but i thought it looked good before too, so 07:43
CIAvash Colors probably need some tweaking, but overall it's better. Previous highlighter had some incorrect highlighting in some places 07:44
samcv kk cool
yeah our new CSS doesn't have as many things defined, so we may need to add more things to color some thing sdifferently and also tweak the colors
dalek c/fix_for_#1062: 7f87d5e | Altai-man++ | htmlify.p6:
Replace random .pick with File::Temp usage.
07:46
c: 3faff50 | samcv++ | / (2 files):
Remove old pygments code. Issue #1070
07:50
07:54 wamba joined
TEttinger samcv: I should just say thank you for paying attention to highlighting in editors; I don't actually use perl 6 right now but I know that dealing with IDEs and editors is an exercise in frustration, so I'm glad you're giving it good attention 07:55
samcv thanks :) 07:56
it is important to me too
and it's super duper awesome we can use the same thing with the docs as well
two for one
CIAvash samcv: Do you consider requests(for things other than Atom)? Since you're our new syntax highlighter maker :) 07:57
samcv like what? vim?
CIAvash No, github.com/jneen/rouge/
samcv or other things
oh
CIAvash It's being used by Gitlab and Jekyll
samcv i use pygments with jekyll 07:58
if you want to know how to
i have a blog post ;P
CIAvash it's written in ruby though
samcv what else is it used for? I know gitlab and jekyll other things too probably though? 07:59
i know github used it and pygments until they switched
and i'm trying to get the learnxinyminutes.com site to switch to pygments. i already got their rouge updated and some tests for the docs portion of the site for file encoding and yaml validity… so hmm 08:00
i won't rule it out CIAvash
here is the post on using pygments with jekyll btw: cry.nu/tutorials/syntax-highlighting-in-jekyll/ 08:01
CIAvash I only know of those two. Yeah, syntax highlighter can be set in jekyll
08:01 travis-ci joined
travis-ci Doc build failed. Altai-man 'Replace random .pick with File::Temp usage. 08:01
travis-ci.org/perl6/doc/builds/185999760 github.com/perl6/doc/commit/7f87d5ec84cc
08:01 travis-ci left
samcv also who uses windows 08:02
08:03 xtreak left
samcv i want the highlighting to work with windows and linux/mac, i know it can do linux and mac after i didn't rely on shebang in my script to interface the highlighter with the builder. need to get somebody to test on windows 08:03
samcv isn't sure what happens when you specify a file with ./ on windows
probably breaks it?
or is perl 6 smart and just removes it for windows 08:04
when doing proc async
08:05 xtreak joined, travis-ci joined
travis-ci Doc build failed. Samantha McVey 'Remove old pygments code. Issue #1070' 08:05
travis-ci.org/perl6/doc/builds/186000445 github.com/perl6/doc/compare/0ffb7...aff505f165
08:05 travis-ci left
samcv waaah 08:05
08:07 dugword left 08:08 gregf_ left
dalek c: e5d6a5a | samcv++ | htmlify.p6:
Fix not passing using :$no-proc-async in the signature of a sub
08:09
samcv CIAvash, should have jekyll add support for highlights ;P 08:16
also why the hell did github name it highlights. i guess they are lazy
and can't think of a better name 08:17
CIAvash :)
samcv probably because they have things seperated into so many repos
first-mate uses onigumura regex engine and parses the grammar files etc, and highlights converts stuff to html
for atom or github
so they just kind of gave up. first-mate to parse textmate grammars, highlights for highlighter, idk atom has so many diferent repos for it. which is probably good 08:18
then therea's this node package called marky-markdown 08:22
www.npmjs.com/package/marky-markdown
also the top left corner you click it and it changes
like made up definitions for NPM 08:23
"Nectar of the Programming Masses" "Neatly Positioned Magazines" idk
github seemed to be into ruby but now are really into node. Not sure why or if it was just so they could use things between both the site and atom
08:28 xtreak left 08:29 xtreak joined
teksteiner samcv your introduction to Promises was what I was looking for, thank you 08:40
08:41 dakkar joined, ufobat joined
ufobat is $<foo> the same as $/<foo>? 08:44
teksteiner Gonna experiment a little bit now, and then watch the talk by Jonathan Worthington 08:45
lizmat ufobat: yes
just like $0 is the same as $/[0]
08:46 domidumont left
ufobat okay, :) ty 08:46
08:47 travis-ci joined
travis-ci Doc build passed. Samantha McVey 'Fix not passing using :$no-proc-async in the signature of a sub' 08:47
travis-ci.org/perl6/doc/builds/186003420 github.com/perl6/doc/compare/3faff...d6a5a8f524
08:47 travis-ci left
dalek c: dccec0e | (Siavash Askari Nasr)++ | doc/Language/typesystem.pod6:
Add missing quotes
08:47
synopsebot6 Link: doc.perl6.org/language/typesystem
samcv CIAvash, where are the semicolons tho? 08:48
08:48 wamba left
ufobat okay, :) ty 08:49
CIAvash samcv: I don't think they are necessary there. Unless we have a style guide for that? 08:51
samcv well no they aren't needed, but 08:52
this is fine: method from-b(){ 'B::from-b ' } 08:53
this i don't think is: has $.delegate handles /m\d/ = A.new()
it doesn't end in braces
it's optional obviously but
it is nice to end lines with semicolons or brackets
CIAvash yeah 08:54
samcv A semicolon is used when an author could've chosen to end their sentence, but chose not to. The author is you and the sentence is your life 08:57
09:04 xtreak left, mawkish_ left
moritz should be more careful about ending sentences in the future, maybe :-) 09:09
samcv :P 09:11
09:15 ufobat left 09:19 rindolf joined 09:24 Actualeyes left 09:50 xtreak joined 09:56 wamba joined 10:08 wamba left 10:10 pmurias joined 10:14 wamba joined 10:23 wamba left 10:33 andrzejku left 10:42 xtreak left 10:45 xtreak joined 10:48 cibs left 10:49 cibs joined
CIAvash Is it possible to destructure ranges and sequences in signatures? 11:19
11:20 domidumont joined
DrForr I know that constants can be, so ranges and sequences aren't *that* far of a stretch. 11:20
CIAvash I mean can we currently do it in Perl 6? I wanted to see if I can do what this haskell code does: let (x:xs) = [1..] 11:30
11:30 g4 joined, g4 left, g4 joined
timotimo of course 11:30
m: sub test(@ [$x, *@xs]) { say "head is $x"; test(@xs) }; test([1, 2, 3, 4, 5])
camelia rakudo-moar 96f5fb: OUTPUT«head is 1␤head is 2␤head is 3␤head is 4␤head is 5␤Too few positionals passed; expected at least 1 argument but got only 0 in sub-signature␤ in sub test at <tmp> line 1␤ in sub test at <tmp> line 1␤ in sub test at <tmp> line 1␤ in sub …»
timotimo m: multi sub test(@ [$x, *@xs]) { say "head is $x"; test(@xs) }; multi sub test(@ [$x]) { say "only $x left now" }; test([1, 2, 3, 4, 5]) 11:31
camelia rakudo-moar 96f5fb: OUTPUT«head is 1␤head is 2␤head is 3␤head is 4␤head is 5␤Cannot resolve caller test(Array); none of these signatures match:␤ (@ (Any $x, *@xs))␤ (@ (Any $x))␤ in sub test at <tmp> line 1␤ in sub test at <tmp> line 1␤ in sub test at <t…»
timotimo ah, of course
m: multi sub test(@ [$x, *@xs]) { say "head is $x"; test(@xs) }; multi sub test(@ []) { say "done!" }; test([1, 2, 3, 4, 5])
camelia rakudo-moar 96f5fb: OUTPUT«head is 1␤head is 2␤head is 3␤head is 4␤head is 5␤done!␤»
CIAvash with a infinite range or sequence? 11:32
timotimo m: multi sub test(@ [$x, *@xs]) { say "head is $x"; test(@xs) }; multi sub test(@ [$x]) { say "only $x left now" }; test(1 .. *) 11:33
camelia rakudo-moar 96f5fb: OUTPUT«Cannot resolve caller test(Range); none of these signatures match:␤ (@ (Any $x, *@xs))␤ (@ (Any $x))␤ in block <unit> at <tmp> line 1␤␤»
timotimo m: multi sub test(@ [$x, *@xs]) { say "head is $x"; test(@xs) }; multi sub test(@ [$x]) { say "only $x left now" }; test(1 ... *)
camelia rakudo-moar 96f5fb: OUTPUT«Cannot resolve caller test(Seq); none of these signatures match:␤ (@ (Any $x, *@xs))␤ (@ (Any $x))␤ in block <unit> at <tmp> line 1␤␤»
timotimo not as easily, clearly
DrForr Prancer introspects constants, maybe look at my code? 11:36
Also I have to do some ugly things because they're implemented as junctions, so it may not be the best model to follow. 11:37
CIAvash should the [$x, *@xs] syntax work? or is it just for lists and arrays?
DrForr That's destructuring of argument lists. 11:38
11:39 nowan joined 11:40 TEttinger left
timotimo m: multi sub test($ ($x, *@xs)) { say "head is $x"; test(@xs) }; multi sub test($ ($x)) { say "only $x left now" }; test(1 ... *) 11:44
camelia rakudo-moar 96f5fb: OUTPUT«Cannot resolve caller test(Seq); none of these signatures match:␤ ($ (Any $x, *@xs))␤ ($ (Any $x))␤ in block <unit> at <tmp> line 1␤␤»
11:48 labster left 11:54 cyphase left, Actualeyes joined 11:59 cyphase joined, sena_kun joined 12:03 rindolf left 12:04 lukaramu joined 12:12 rindolf joined
lizmat ugexe.com/adding-on-to-channels-and...-in-perl6/ # ugexe++ 12:30
12:39 Actualeyes left
moritz ugexe++ indeed 12:43
but is the order on a channel really not guaranteed?
I thought it was a queue, aka FIFO
IMHO the second difference between supply and channel is that a channel is optimized for blocking consumers 12:44
(also, if Event::Emitter simply uses smart matching under the hood, you can pass True instead of { True; } for an always-matching matcher) 12:45
12:53 Actualeyes joined
DrForr Wowsers. Safari webinar compensation is loads better than honoraria. 12:55
13:00 Vasyl joined
notviki watches DrForr make a donation to TPF's Perl 6 fund :P 13:05
huggable: donate 13:07
huggable notviki, We invite you to make a donation to The Perl Foundation to sponsor Perl 6 development: donate.perlfoundation.org/ (put "Perl 6 Core Development Fund" in the 'Purpose' text field)
13:16 obfusk_ joined, obfusk left
notviki moritz: but that would trigger warning 13:19
m: my $x where True = 42
camelia rakudo-moar 660b0b: OUTPUT«Potential difficulties:␤ Smartmatch against True always matches; if you mean to test the topic for truthiness, use :so or *.so or ?* instead␤ at <tmp>:1␤ ------> 3my $x where 7⏏5True = 42␤»
13:19 salva0 left
moritz notviki: only for the literal case 13:19
my $matcher = True; say 'thing' ~~ $matcher; 13:20
m: my $matcher = True; say 'thing' ~~ $matcher;
camelia rakudo-moar 660b0b: OUTPUT«True␤»
notviki Ah. Cool.
m: my $m = True; my $x where $m = 42
camelia ( no output )
notviki neat 13:21
m: my $x where $ =True = 42 13:22
camelia rakudo-moar 660b0b: OUTPUT«Cannot modify an immutable Bool␤ in block <unit> at <tmp> line 1␤␤»
notviki aw
13:31 AndyBotwin left 13:36 wamba joined
notviki m: DateTime.new(:second(59)).say 13:39
camelia rakudo-moar 660b0b: OUTPUT«Cannot call DateTime.new with these named parameters: second␤ in block <unit> at <tmp> line 1␤␤Actually thrown at:␤ in block <unit> at <tmp> line 1␤␤»
notviki m: DateTime.new(:year(2016), :second(59)).say
camelia rakudo-moar 660b0b: OUTPUT«2016-01-01T00:00:59Z␤»
notviki :/
m: DateTime.new(:year(2016), :second(60)).say 13:40
camelia rakudo-moar 660b0b: OUTPUT«Second out of range. Is: 60, should be in 0..^60; a leap second can occur only at 23:59␤ in block <unit> at <tmp> line 1␤␤»
notviki m: DateTime.new(:year(2016), :second(59.9999999999999999)).say
camelia rakudo-moar 660b0b: OUTPUT«2016-01-01T00:00:60.000000Z␤»
notviki m: printf "%.100f", DateTime.new(:year(2016), :second(59.9999999999999999)).second 13:41
camelia rakudo-moar 660b0b: OUTPUT«60.0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000»
perlpilot DateTime sure is weird.
notviki Temporal programming is always painful IME 13:42
13:42 stmuk_ joined
notviki s: DateTime, 'new', \(:year(2016), :second(59.9999999999999999)) 13:42
SourceBaby notviki, Sauce is at github.com/rakudo/rakudo/blob/660b...me.pm#L107
13:43 stmuk left, go|dfish left 13:47 go|dfish joined, CIAvash left 13:49 wamba left, Praise left
notviki m: DateTime.new(:year(2016), :timezone(4.75*3600)).say 13:52
camelia rakudo-moar 660b0b: OUTPUT«This type cannot unbox to a native integer: P6opaque, Rat␤ in block <unit> at <tmp> line 1␤␤»
notviki
.oO( why do I always have annoying issues when I try to use Perl 6 for actual programming :/ )
13:53
14:01 ponbiki left 14:06 grondilu joined
grondilu m: constant google = 10e100; say (^google).pick 14:06
^not sure if this should hang or not 14:07
camelia rakudo-moar 660b0b: OUTPUT«(timeout)»
notviki google? :)
grondilu m: say ^10e100
camelia rakudo-moar 660b0b: OUTPUT«0..^1e+101␤»
notviki m: m: constant google = 10e100; say (^(google.Int)).pick 14:08
camelia rakudo-moar 660b0b: OUTPUT«42690429563095562001090706821744116065123100095517728956919086536914973392602368184914015276687593920␤»
14:08 splitcells joined
notviki m: constant googol = 10e100; say (0e0..googol).pick 14:10
14:10 finanalyst joined
camelia rakudo-moar 660b0b: OUTPUT«(timeout)» 14:10
14:11 pierre_ left, pierre_ joined
notviki hum 14:11
grondilu it's kind of LTA that we don't have notation for such large literal integers
notviki Well, for some reason the non-int ranges reify themselves :S 14:12
14:12 finanalyst left
notviki Sure we do. say EVAL 1 ~ '0' x 100 14:12
m: say EVAL 1 ~ '0' x 100
camelia rakudo-moar 660b0b: OUTPUT«5===SORRY!5=== Error while compiling <tmp>␤EVAL is a very dangerous function!!! (use the MONKEY-SEE-NO-EVAL pragma to override this error,␤but only if you're VERY sure your data contains no injection attacks)␤at <tmp>:1␤------> 3say EVAL 1 ~ '…»
14:12 rightfold joined
notviki dude, it's SAFE! do it! 14:12
m: say EVAL 1 ~ '0' x 100:
camelia rakudo-moar 660b0b: OUTPUT«10000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000␤»
rightfold Is there a tool that automatically translates Perl 5 regexes to Perl 6 regexes? 14:13
14:13 ufobat joined
notviki rightfold: none that I know of 14:13
rightfold: you can use :P5 adverb tho 14:14
m: say 'foo' ~~ m:P5/[of]+/
camelia rakudo-moar 660b0b: OUTPUT«「foo」␤»
rightfold oh rad
notviki It's not 100% the same thing, but will do in a pinch
rightfold guess I'll do it manually though
notviki (like we don't support 100% of Perl 5 regexes)
rightfold it's pretty short: sub process_module { shift =~ s/\[query\|(.*?)\|\]/process_query($1)/egrs } 14:15
perlpilot rightfold: you could make such a tool. That would be neat and helpful to some people :-)
timotimo oh rightfold is back \o/
rightfold :3
notviki
.oO( and it'd be error prone and usually produce crappy code )
timotimo don't we have like two translators?
rightfold I'm rewriting some Perl 5 code in Perl 6 so it actually works on Windows :F 14:16
14:16 xtreak left, grondilu left
notviki rightfold: sub process-module { /'[query|' (.*?) '|]'/process-query($0)/ given $^s } 14:17
#Untested
timotimo github.com/drforr/Perl-Mogrify - this is one
rightfold notviki: missing e flag
timotimo hmm
doesn't seem to have regex support
perlpilot Are auto-declared parameters read-write?
notviki rightfold: nope 14:18
14:18 grondilu joined
timotimo github.com/Util/Blue_Tiger - here's another 14:18
notviki rightfold: oh, but missing S. It should be S///
m: say S/(.+)/uc(~$0)/ given "foos"
camelia rakudo-moar 660b0b: OUTPUT«uc(~foos)␤»
notviki :o 14:19
Right, leave it to me to give bad advice :)
rightfold eval (e), global (g), return (r) and single-line (s)
notviki m: say S/(.+)/&uc(~$0)/ given "foos"
camelia rakudo-moar 660b0b: OUTPUT«FOOS␤»
notviki m: say S:g/(.+)/&uc(~$0)/ given "foos"
camelia rakudo-moar 660b0b: OUTPUT«FOOS␤»
notviki rightfold: sub process-module { S:g/'[query|' (.*?) '|]'/&process-query($0)/ given $^s }
rightfold Does Perl 6 have __DATA__? 14:20
notviki Nope
But IIRC you can use =pod or something or other
m: say $=␤=pod␤Look, ma! __DATA__! 14:21
camelia rakudo-moar 660b0b: OUTPUT«5===SORRY!5=== Error while compiling <tmp>␤Missing required term after infix␤at <tmp>:3␤------> 3Look, ma! __DATA__!7⏏5<EOL>␤ expecting any of:␤ prefix␤ term␤»
notviki m: say $=␤=begin pod␤Look, ma! __DATA__!␤=end pod
camelia rakudo-moar 660b0b: OUTPUT«5===SORRY!5=== Error while compiling <tmp>␤Missing required term after infix␤at <tmp>:4␤------> 3=end pod7⏏5<EOL>␤ expecting any of:␤ prefix␤ term␤»
notviki Well, there's some sort of way using that, I'm sure :)
timotimo: Perl-Mogrify doesn't do jack for regexes, from what I see in its docs 14:22
neither does Blue Tiger
rightfold oh thanks
=finish
timotimo but blue tiger has a translate_regex.pl
notviki OK. 14:23
timotimo hits the road for a couple of hours
notviki I was just going off what it says is implemented in the docs
14:23 pyrimidi_ left
notviki :o what did the road do to you! 14:23
14:24 pyrimidine joined
timotimo it separated me from my family 14:24
toodles
rightfold yesh, it works :3 old: glot.io/snippets/elfrcxm11y new: glot.io/snippets/elh0t13ey6 14:25
14:26 cdg joined
rightfold thanks notviki 14:28
notviki Any time 14:29
rightfold Writing a preprocessor to get type errors in SQL queries at compile time :P 14:30
14:31 finanalyst joined, finanalyst left
notviki grondilu: I'd say it can be made not to hang 14:34
14:34 finanalyst joined, finanalyst left
notviki grondilu: from what I understand from code, a Num range would just call .succ, which merely increments by 1e0. So instead of reifing all googol elements to pick one, we can generate a random Int inside the range and then just stick the fractional part from the Num onto it to get the actual number 14:35
???
14:35 bwisti joined
notviki Profit! 14:35
At least that works in my head 14:36
m: say eager 1e100 .. 1e100+1
rightfold does Native work on Windows?
notviki rightfold: you mean NativeCall? Yes.
camelia rakudo-moar 660b0b: OUTPUT«(timeout)»
rightfold thanks 14:37
notviki m: say (1e100 .. 1e100+1)[^10]
camelia rakudo-moar 660b0b: OUTPUT«(1e+100 1e+100 1e+100 1e+100 1e+100 1e+100 1e+100 1e+100 1e+100 1e+100)␤»
notviki :S
m: say [==] (1e100 .. 1e100+1)[^10]
camelia rakudo-moar 660b0b: OUTPUT«True␤»
notviki :o
Or at least it should... I tried a few things but it keeps telling me "canno0t locate blah in native library ''" 14:39
rightfold I want to call a few functions from libpq, I'll try it tonight :) 14:40
notviki m: say 1e10 == 1e10.succ 14:41
camelia rakudo-moar 660b0b: OUTPUT«False␤»
notviki m: say 1e100 == 1e100.succ
camelia rakudo-moar 660b0b: OUTPUT«True␤»
notviki m: say 1e100 == 1e100.succ == 1e100.pred 14:42
camelia rakudo-moar 660b0b: OUTPUT«True␤»
notviki nothing we can do about it, I guess
14:42 jkva joined 14:43 splitcells left 14:44 newbie1 joined, colomon left
notviki m: say (1 ~ '0'x100) 14:44
camelia rakudo-moar 660b0b: OUTPUT«5===SORRY!5=== Error while compiling <tmp>␤Two terms in a row␤at <tmp>:1␤------> 3say (1 ~ '0'7⏏5x100)␤ expecting any of:␤ infix␤ infix stopper␤ statement end␤ statement modifier␤ statement …»
notviki m: say 1e99.Int.chars 14:46
camelia rakudo-moar 660b0b: OUTPUT«99␤»
notviki m: say 1e100.Int.chars
camelia rakudo-moar 660b0b: OUTPUT«101␤»
notviki m: say 1e101.Int.chars
camelia rakudo-moar 660b0b: OUTPUT«101␤»
notviki wtf? :/
Oh, fp noise :( it's all 999999 at the start 14:47
14:51 cdg left 14:52 colomon joined 15:02 ufobat left
notviki .ask AlexDaniel so what were the 20 regressions you said you could probably reproduce? I'm looking for tickets to hack on during the Holiday Season 15:02
yoleaux notviki: I'll pass your message to AlexDaniel.
15:07 Actualeyes left 15:20 wamba joined, colomon left 15:22 pyrimidi_ joined, pyrimidine left, thayne left 15:25 Actualeyes joined
notviki m: given DateTime.new(:year(2017), :month(1)).utc { dd [ .year, .month, .year + (1 if .month => 6)]; } 15:31
camelia rakudo-moar 660b0b: OUTPUT«[2017, 1, 2018]␤»
notviki m: dd [ 1 + (1 if 0 >= 6) ]
camelia rakudo-moar 660b0b: OUTPUT«[1]␤»
notviki Why does it become 2018? :/ 15:32
oh christ 15:33
15:33 khw joined
notviki => ne >= 15:33
M-Illandan notviki: have some coffee :-) 15:34
notviki That wouldn't have happened if we had ≥ :P 15:35
M-Illandan Only if you had Fira Code Sans :P 15:36
notviki I'm too poor to afford it.
perlpilot
.oO( Why *don't* we have ≥ ? )
notviki perlpilot: IIRC TimToday wanted to first make it possible to do that in userspace... and then we'd just create an operator in core 15:37
M-Illandan notviki: No, it's free. github.com/tonsky/FiraCode
15:43 grondilu left
notviki I could've swore there was a "Fira" font that the author was charging like $200-$400 for. 15:43
rightfold PragmataPro is expensive
notviki Still cheap for a font, but for a programming font, screw that.
15:44 zakharyas joined
notviki Ah, maybe it was pragmata :) 15:44
15:45 grondilu joined 15:46 colomon joined 15:47 g4 left
notviki M-Illandan: do you have Fira installed right now? How does it render $foo.?bar ? 15:48
I'm looking at this Issue and it seems the ligature they went with is backwards to Perl 6's one it looks like "?.": github.com/tonsky/FiraCode/issues/...-245434571 15:49
15:51 holli joined
pmurias notviki: do you expect a programming font to be cheaper? ;) 15:51
15:51 cyphase left
notviki pmurias: a programming font doesn't have the same aesthetic requirements as a font I'd use in a 10,000-copy job that goes to customers. 15:53
I don't have any expectations about what they should cost, but I see no benefit in shelling out $400 for a font when there are plenty of good-enough free alternatives 15:54
15:56 cyphase joined 15:57 colomon left
notviki ugh, this installation is too complex 15:57
notviki gives up
M-Illandan matrix.org/_matrix/media/v1/downlo...emoeHCBSsi - Screenshot_20161222_212249.png (4KB) 15:58
notviki: ^^
notviki: Not sure if you can see it. Let me know and I'll try to upload it to imgur or something like that 15:59
15:59 colomon joined
notviki Gives me "No Such Resource" 15:59
M-Illandan: I turned it on for a second and it's really ugly
I don't think I'd want to uglify everything for the sake of an occasional ligature 16:00
M-Illandan shrug
Not for everyone, I suppose
notviki Unless I'm doing something wrong :/
M-Illandan I don't use it all that often. I do it only if my eyes demand "well spaced characters" :D 16:01
notviki It works!
I like how the => looks 16:03
notviki gives it a chance
M-Illandan notviki: Sorry, what worked? Are you able to see my upload now?
notviki M-Illandan: installation of the font worked :) I had to poke Atom's settings all over the place but figured it out. 16:04
And I can see the .? op now.
Well, I don't see any difference in it actually, so I guess that's good :P 16:05
M-Illandan notviki: ha ha ha, cool
notviki Oh "Beware that in some syntaxes selected ligatures might not work. This is usually a syntax parser/tokenization issue" 16:06
Prolly that's why
M-Illandan Yeah, it's a work in progress
notviki: If you'd like to see how it's rendered on my screen, click on the link here: irclog.perlgeek.de/perl6/2016-12-22#i_13785311 16:07
notviki Ah. Thanks. 16:08
Instead of clicking the link I copied the " - Screenshot" thing too
16:12 zakharyas left 16:17 troys joined 16:18 cibs left 16:19 grondilu_ joined, cibs joined 16:21 grondilu left, AlexDaniel joined
notviki goes back to DejaVu Sans Mono 16:27
Fira is too... crunchy-gothiky... for my tastes
16:28 colomon left 16:30 pierre_ left, colomon joined 16:31 pierre_ joined
AlexDaniel Hey. Please don't freak out if the post is a bit late today (by an hour or two), I'm working on it. 16:31
yoleaux 21 Dec 2016 11:50Z <jnthn> AlexDaniel: You'll over time end up with hundreds or thousands of threads sat doing nothing. :-) Create one ThreadPoolScheduler to share among your Proc::Async instances. :)
15:02Z <notviki> AlexDaniel: so what were the 20 regressions you said you could probably reproduce? I'm looking for tickets to hack on during the Holiday Season
notviki (side by side: i.imgur.com/c7BVZja.png Fira Code on left and DejaVu Sans Mono on right) 16:32
AlexDaniel notviki: I said that I can find them (in a semi-automated way), not reproduce. I'm not sure when is your holiday season, by I'm hoping to work on it this weekend
16:34 skids joined 16:35 pierre_ left
notviki AlexDaniel: well, I'm a Pastafarian and we don't have a specific day for the Holiday, it's a season... But in 24 hours I'm off work for 108 hours, followed by three days of light work, followed by 3 days of moar days off 16:38
and by light work I mean I have to come to office, but there's nothing to do, so I can hack on Perl 6.... 16:39
AlexDaniel \o/
notviki: sounds great, I love your work
notviki \o/
16:47 colomon left 16:53 colomon joined 16:56 colomon left
notviki m: my Int() \Δ = now - 42 16:57
camelia rakudo-moar 660b0b: OUTPUT«Type check failed in binding; expected Int(Any) but got Instant (Instant.from-posix(<7...)␤ in block <unit> at <tmp> line 1␤␤»
16:57 colomon joined
notviki :'( 16:57
16:58 dalek left 16:59 dalek joined, ChanServ sets mode: +v dalek 17:00 brrt left
japhb m: Instant.^mro.say 17:01
camelia rakudo-moar 660b0b: OUTPUT«((Instant) (Cool) (Any) (Mu))␤»
japhb m: my Int() $Δ = now - 42
camelia rakudo-moar 660b0b: OUTPUT«5===SORRY!5=== Error while compiling <tmp>␤Coercion Int(Any) is insufficiently type-like to qualify a variable␤at <tmp>:1␤------> 3my Int() $Δ7⏏5 = now - 42␤ expecting any of:␤ constraint␤»
japhb m: my Int() $Δ := now - 42 17:02
camelia rakudo-moar 660b0b: OUTPUT«5===SORRY!5=== Error while compiling <tmp>␤Coercion Int(Any) is insufficiently type-like to qualify a variable␤at <tmp>:1␤------> 3my Int() $Δ7⏏5 := now - 42␤ expecting any of:␤ constraint␤»
japhb m: my Int() $Δ ::= now - 42
camelia rakudo-moar 660b0b: OUTPUT«5===SORRY!5===␤Coercion Int(Any) is insufficiently type-like to qualify a variable␤at <tmp>:1␤------> 3my Int() $Δ7⏏5 ::= now - 42␤"::=" not yet implemented. Sorry. ␤at <tmp>:1␤------> 3my Int() $Δ ::= now - 427⏏5<EOL>␤␤»
japhb m: :(Int() $Δ) := now - 42 17:03
camelia rakudo-moar 660b0b: OUTPUT«Too few positionals passed; expected 1 argument but got 0␤ in block <unit> at <tmp> line 1␤␤»
japhb m: :(Int() $Δ) := \(now - 42)
camelia rakudo-moar 660b0b: OUTPUT«Lexical with name '$Δ' does not exist in this frame␤ in block <unit> at <tmp> line 1␤␤»
17:03 kurahaupo joined
japhb m: :(Int() my $Δ) := \(now - 42) 17:04
camelia rakudo-moar 660b0b: OUTPUT«5===SORRY!5=== Error while compiling <tmp>␤Malformed parameter␤at <tmp>:1␤------> 3:(Int()7⏏5 my $Δ) := \(now - 42)␤ expecting any of:␤ constraint␤ formal parameter␤»
japhb Oh this just keeps getting funnier ...
m: my $Δ; :(Int() $Δ) := \(now - 42)
camelia ( no output )
japhb m: my Int() $Δ := now - 42; 17:05
camelia rakudo-moar 660b0b: OUTPUT«5===SORRY!5=== Error while compiling <tmp>␤Coercion Int(Any) is insufficiently type-like to qualify a variable␤at <tmp>:1␤------> 3my Int() $Δ7⏏5 := now - 42;␤ expecting any of:␤ constraint␤»
japhb m: my $Δ; :(Int() $Δ) := \(now - 42); say $Δ;
camelia rakudo-moar 660b0b: OUTPUT«1482426311␤»
notviki heh
japhb Well, that was fun.
notviki m: my $Δ; :(Int() $Δ) := \("x") say $Δ;
camelia rakudo-moar 660b0b: OUTPUT«5===SORRY!5=== Error while compiling <tmp>␤Two terms in a row␤at <tmp>:1␤------> 3my $Δ; :(Int() $Δ) := \("x")7⏏5 say $Δ;␤ expecting any of:␤ infix␤ infix stopper␤ statement end␤ statement modifie…»
notviki m: my $Δ; :(Int() $Δ) := \("x"); say $Δ;
camelia rakudo-moar 660b0b: OUTPUT«Cannot convert string to number: base-10 number must begin with valid digits or '.' in '3⏏5x' (indicated by ⏏)␤ in block <unit> at <tmp> line 1␤␤Actually thrown at:␤ in block <unit> at <tmp> line 1␤␤»
17:06 HNYBot joined 17:07 HNYBot left 17:09 kurahaupo left
notviki again makes the mistake of using $*ENV<HNY_HOST> // instead of %*ENV<HNY_HOST> // and it silently failing :( 17:09
17:10 dakkar left
tony-o lizmat: moritz: thank you 17:13
moritz: according to the docs, a Channel's receiver isn't guaranteed order with more than one sender 17:15
17:16 TEttinger joined
moritz tony-o: ok, I wasn't aware of that 17:16
tony-o I don't know if that's true and i haven't tested it, fwiw
17:18 pierre_ joined 17:23 lluchs left, kurahaupo joined, kurahaupo left 17:24 kurahaupo joined
notviki Huh. And now as icing on a cake I'm hitting a precomp bug :o 17:24
17:24 pyrimidi_ left 17:25 pyrimidine joined
notviki I'm guessing precomp in CURF doesn't check whether a module CURI was updated? 17:26
gist.github.com/zoffixznet/1a10ec1...ed4200a0db
17:27 colomon left
notviki A module's no longer even installed but somehow the scrpt manages to load it :/ 17:27
ugexe fwiw precomp files don't get uninstalled. Not sure how they would still be discovered though 17:28
17:28 colomon joined
notviki I nuked lib/.precomp and now it did complain the module's not installed 17:29
17:29 dantia_ joined
notviki And originally, I uninstalled the module and installed a newer version and it was still using the old version 17:29
dalek Iish: f63d2c3 | titsuki++ | examples/mysql.p6:
mysql: Use .dispose instead of .disconnect
Iish: 37b55cb | titsuki++ | examples/mysql.p6:
Merge pull request #79 from titsuki/use-dispose

mysql: Use .dispose instead of .disconnect
17:29 HNYBot joined
notviki but, bugs aside... 17:30
HNYBot: hny torontor
HNYBot notviki, New Year will happen in Toronto, ON in 1 week, 2 days, 6 hours, 29 minutes, and 8 seconds
notviki woooo
Most shocking is just how little code there is in this bot: gist.github.com/zoffixznet/9238fc5...e3b77e4463 17:31
Just 34 lines...
ugexe its possible that although you uninstalled the old version and installed a new one that the consuming module had already built its CURF precomp against the uninstalled module. But since precomps aren't uninstalled it was still able to link against it
notviki ugexe: yeah, that's what happened. I didn't make any changes to the CURF module, so it never updated its precomp 17:32
But it checks for changes in files, so I kinda expected it to check its deps from the CURI
HNYBot: somalia 17:33
HNYBot: hny somalia
HNYBot notviki, New Year will happen in Somalia in 1 week, 2 days, 6 hours, 26 minutes, and 47 seconds
notviki \o/
moritz HNYBot: hny russia 17:35
HNYBot moritz, New Year will happen in Moscow, Russia in 1 week, 2 days, 6 hours, 24 minutes, and 49 seconds
notviki :D
japhb But ... but ... timezones! 17:36
notviki well, it did say in *Moscow* :)
moritz hence Moscow, Russia, I think :-)
17:36 lluchs joined, Actualeyes left
notviki HNYBot: hny kamchatka 17:36
japhb Yes, but we should be seeing different numbers for hours remaining
HNYBot notviki, New Year will happen in Kamchatka Krai, Russia in 1 week, 2 days, 6 hours, 23 minutes, and 35 seconds
notviki oh 17:37
oh, right... there's a bug in the bot :D
It's my Holiday Tradition. Writing a HNY bot and then finding bugs in it.
japhb Heh
As long as you find the bugs before the new year. :-) 17:38
TimToady m: my (Int() $Δ) := \(now - 42); say $Δ
camelia rakudo-moar 660b0b: OUTPUT«1482428307␤»
japhb TimToady with the win again .... 17:40
Of course, he has an unfair advantage. ;-) 17:41
notviki japhb: no, half the bugs are usually found at #freenode-newyears party and I usually get too drunk to fix them and leave them for next year 17:42
Except this year I quit drinking 17:43
17:47 HNYBot left, HNYBot joined, HNYBot left 17:48 HNYBot joined
notviki HNYBot: hny Toronto 17:48
HNYBot: hny Russia
HNYBot notviki, New Year will happen in Brampton, ON L6V in 1 week, 2 days, 11 hours, 11 minutes, and 51 seconds
notviki, New Year will happen in Brampton, ON L6V in 1 week, 2 days, 11 hours, 11 minutes, and 43 seconds
17:49 HNYBot left
notviki Riiight.... $/ does not get passed on to start {} blocks -_- 17:49
17:49 dantia left, dantia_ left 17:50 dantia joined, zilti joined, HNYBot joined 17:51 HNYBot left, cdg joined, HNYBot joined
notviki HNYBot: hny Toronto 17:51
HNYBot: hny Russia
HNYBot notviki, New Year will happen in Toronto, ON in 1 week, 2 days, 11 hours, 8 minutes, and 35 seconds
notviki, New Year will happen in Moscow, Russia in 1 week, 2 days, 3 hours, 8 minutes, and 30 seconds
notviki yey 17:52
17:53 colomon left
dalek c: 6e276ed | titsuki++ | doc/Language/nativecall.pod6:
Fix DBIish examples
17:53
c: 4a2553b | titsuki++ | doc/Language/nativecall.pod6:
Merge pull request #1073 from titsuki/fix-dbiish

Fix DBIish examples
synopsebot6 Link: doc.perl6.org/language/nativecall
synopsebot6 Link: doc.perl6.org/language/nativecall
TimToady reads hny the same as Pooh would
notviki too
17:55 grondilu_ left
notviki TimToady: you have a robo-message in #perl6-dev about ++$i² being different from ++$i**2 and github.com/perl6/roast/issues/200 17:55
17:55 cdg left 18:00 pierre_ left 18:02 grondilu joined 18:03 HNYBot left 18:06 colomon joined, cdg joined 18:07 grondilu left 18:08 AlexDaniel left
dalek Iish: 4d484dd | titsuki++ | examples/sqlite.p6:
sqlite: Use .dispose instead of .disconnect
18:12
Iish: b65a489 | (Salvador Ortiz)++ | examples/sqlite.p6:
Merge pull request #80 from titsuki/use-dispose

sqlite: Use .dispose instead of .disconnect
18:13 grondilu joined
notviki notices bdfoy create a public repo with Preface to LP6 18:24
.... the first code example is broken and has incorrect info for code -_-
rightfold How do I get the null pointer with NativeCall? 18:25
18:26 cibs left
notviki rightfold: dunno.. with a type object? 18:26
like pass Str for strings, or Int for numbers
rightfold ah yeah, Nil works 18:27
notviki hm, OK :)
18:27 cdg left, cibs joined
lizmat notviki: link? 18:37
dalek c: 6b4b850 | (Zoffix Znet)++ | html/css/highlights.css:
Adjust contrast on comments highlights
18:39
18:40 nowan left
notviki .ask samcv is this file still used or can we delete it from the repo? github.com/perl6/doc/blob/master/h...gments.css 18:40
yoleaux notviki: I'll pass your message to samcv.
notviki lizmat: github.com/briandfoy/LearningPerl6...era.p6#L23
18:41 acrussell joined
notviki m: sub MAIN (*@) { say "no args" } 18:41
camelia rakudo-moar 660b0b: OUTPUT«no args␤»
18:42 troys is now known as troys_
samcv .tell notviki that file isn't used anymore. actually i just commented on the ticket "Do we want to remove the CSS or just remove it from the html template? It might be nice being able to look at the old CSS while we are tweaking the new one." 18:43
yoleaux 18:40Z <notviki> samcv: is this file still used or can we delete it from the repo? github.com/perl6/doc/blob/master/h...gments.css
samcv: I'll pass your message to notviki.
18:44 pierre_ joined
samcv I kind of thnk we should just remove it from the html template or something, idk maybe put it in another folder 18:44
but hold onto it for now
18:44 acrussell left
samcv ticket is here github.com/perl6/doc/issues/1070 18:44
mst samcv: why are you using .tell when he's already in here and active two minutes ago? 18:45
samcv i just woke up
18:45 acrussell joined
samcv 1 minute ago 18:45
mst was just weird to see him be the last person to speak before your .tell
dalek c: cd078bf | (Zoffix Znet)++ | assets/sass/style.scss:
Use absolute path for asset

So it's insensitive to location of CSS file.
lizmat notviki: fwiw, it looks like a WIP to me 18:46
samcv i agree
i've removed the pygments code from the htmlify.p6 file though. so we have only two code paths, one using proc::async and one just using qx{ } 18:47
which cleans it up a lot compared to supporting 4
err proc async, inline python, qx with python and qx with highlights
notviki FWIW, this weekened I'll add automated SASS converter into doc builds that I promised to do like ages ago
yoleaux 18:43Z <samcv> notviki: that file isn't used anymore. actually i just commented on the ticket "Do we want to remove the CSS or just remove it from the html template? It might be nice being able to look at the old CSS while we are tweaking the new one."
samcv not again. damn it. Now the Inbox in my Kmail is greyed out again. and i can't look into it anymore but will still get mail notifications in my notifications 18:50
notviki hehe
samcv have to re-add my account _again_
notviki not-so-K-mail
samcv i can open any of the subfolders but
ahh
thundergnat \o #perl6 18:52
notviki \o
samcv at least it takes only like 1 minute to re-add it and remove the old one, but :\ kind of annoying
having to download the mail again
thundergnat Is there any easy way to thunk multidim arrays generated with a sequence? 18:53
my $n = 4; my @d = [0, |(Inf xx $n-1)], *.rotate(-1) … !*[*-1]; say @d; @d[1;2] = 'WTF'; say @d;
m: my $n = 4; my @d = [0, |(Inf xx $n-1)], *.rotate(-1) … !*[*-1]; say @d; @d[1;2] = 'WTF'; say @d;
camelia rakudo-moar 660b0b: OUTPUT«[[0 Inf Inf Inf] [Inf 0 Inf Inf] [Inf Inf 0 Inf] [Inf Inf Inf 0]]␤[[0 WTF Inf Inf] [Inf 0 WTF Inf] [Inf Inf 0 WTF] [WTF Inf Inf 0]]␤»
notviki samcv: what do I need to install on a box to build the doc site if I ain't got `npm` command? 18:54
apt-get install node?
PapaChub m: say $*REPO.repo-chain.grep(*.Str.IO.d)>>.installed>>.meta>>.map(*<name>).flat
camelia rakudo-moar 660b0b: OUTPUT«(Nil CORE)␤»
notviki thundergnat: when you say "thunk", what do you mean? 18:55
samcv notviki, yeah just install npm
and npm should pull in node
notviki star: say $*REPO.repo-chain.grep(*.Str.IO.d)>>.installed>>.meta>>.map(*<name>).flat 18:56
camelia star-m 2016.10: OUTPUT«(Nil File::Find Shell::Command JSON::Fast File::Which panda XML::Writer SVG SVG::Plot Terminal::ANSIColor Test::Mock Grammar::Profiler::Simple Grammar::Debugger MIME::Base64 URI LWP::Simple JSON::Tiny Digest::MD5 HTTP::Status Template::Mustache PSGI HTTP::Easy…»
samcv not sure if it's a dependency or not of nodejs. but yeah npm
thundergnat notviki: See above. I want n separate arrays, not four copies pointing to the same array.
PapaChub Neat!
samcv I kind of want this for perl 6's DateTime github.com/golang/go/issues/14595 18:58
unless there's something I don't know we have, but I checked all the methods for DateTime 18:59
would like to get the time difference between two DateTime objects
lizmat m: say now - now
camelia rakudo-moar 660b0b: OUTPUT«-0.0015502␤»
lizmat m: say now - now
camelia rakudo-moar 660b0b: OUTPUT«-0.0012282␤»
lizmat m: say abs(now - now) # samcv ? 19:00
camelia rakudo-moar 660b0b: OUTPUT«0.0015871␤»
samcv m: say DateTime.now - DateTime.now
camelia rakudo-moar 660b0b: OUTPUT«Cannot resolve caller Numeric(DateTime: ); none of these signatures match:␤ (Mu:U \v: *%_)␤ in block <unit> at <tmp> line 1␤␤»
samcv hmm
lizmat m: now.WHAT.say
camelia rakudo-moar 660b0b: OUTPUT«(Instant)␤»
notviki m: say DateTime.now.Instant - DateTime.new(:2017year).Instant
camelia rakudo-moar 660b0b: OUTPUT«-795573.791515␤»
lizmat ah
hmmm...
notviki m: say WHAT DateTime.now.Instant - DateTime.new(:2017year).Instant
camelia rakudo-moar 660b0b: OUTPUT«(Duration)␤»
lizmat you can't get a diff of two DateTime's ? 19:01
samcv unless you know of a a way…
notviki Well, the above is a way >:)
samcv that requires like. only one line
lizmat m: DateTime.now.WHAT.say
camelia rakudo-moar 660b0b: OUTPUT«(DateTime)␤»
lizmat m: say DateTime.now - DateTime.now
camelia rakudo-moar 660b0b: OUTPUT«Cannot resolve caller Numeric(DateTime: ); none of these signatures match:␤ (Mu:U \v: *%_)␤ in block <unit> at <tmp> line 1␤␤»
samcv which one notviki
now - now?
lizmat hmmm... I think this is an oversight ? 19:02
notviki m: &infix:<->.candidates».signature».gist.grep(/DateTime/).say
camelia rakudo-moar 660b0b: OUTPUT«()␤»
lizmat m: say Date.today - Date.today
notviki m: say DateTime.now.Instant - DateTime.new(:2017year).Instant
camelia rakudo-moar 660b0b: OUTPUT«-795458.316804␤»
rakudo-moar 660b0b: OUTPUT«0␤»
samcv that's an instant though, unless you want me to convert to an instant and then subtract and then convert back to datetime? lol.
notviki samcv: erm, why would the difference between two DateTimes be a DateTime? 19:03
samcv i never said it would
notviki You get Duration object in return
samcv m: say DateTime.now - DateTime.now
camelia rakudo-moar 660b0b: OUTPUT«Cannot resolve caller Numeric(DateTime: ); none of these signatures match:␤ (Mu:U \v: *%_)␤ in block <unit> at <tmp> line 1␤␤»
notviki samcv: but what do you mean "convert back to datetime"?
samcv ok forget that part of what i said
notviki OK :) 19:04
mst samcv: I suspect that's a feature.
notviki Is it?
samcv current feature?
mst I mean that the lack of - is a feature
because ... which - did you want, exactly?
samcv i just want to get the difference between two date times
mst samcv: which difference?
you're hiding the important part behind the word 'just' 19:05
that won't make the complexity go away.
samcv yes
the number of seconds between two datetime's would be fine
mst right. but somebody else might want days and hours. somebody else months, days and hours. etc.
samcv ok
mst and depending on timezones and time of year and stuff
those then add differently
lizmat so basically DateTime - DateTime would be DateTime.Instant - DateTime.Instant
samcv i just want the amount of time between them
mst so there isn't really a one true - in datetimes
samcv well. datetimes take timezone into account yes 19:06
mst lizmat: and then people would blow both feet off
notviki mst: how come?
mst: it returns a Duration object.
samcv m: DateTime.now.Instant - DateTime.now.Instant
camelia rakudo-moar 660b0b: OUTPUT«WARNINGS for <tmp>:␤Useless use of "-" in expression ".Instant - DateTime.now.Instant" in sink context (line 1)␤»
samcv m: say DateTime.now.Instant - DateTime.now.Instant
camelia rakudo-moar 660b0b: OUTPUT«-0.00337013␤»
samcv kk
mst notviki: which "it" ?
samcv thank you.
mst please can people please try and be less vague
notviki mst: subtraction
samcv actually i would like seconds minutes days and weeks ;P
notviki mst: of two datetimes
samcv but any way to subtract them is fine
mst m: DateTime.now - DateTime.now 19:07
camelia rakudo-moar 660b0b: OUTPUT«WARNINGS for <tmp>:␤Useless use of "-" in expression ".now - DateTime.now" in sink context (line 1)␤Cannot resolve caller Numeric(DateTime: ); none of these signatures match:␤ (Mu:U \v: *%_)␤ in block <unit> at <tmp> line 1␤␤»
notviki samcv: use Number::Denominate
mst notviki: no it doesn't
lizmat mst: we're allowing > < = <= == != <=> and cmp on DateTime,DateTime
mst lizmat: *that* can work fine.
notviki mst: doesn't what?
mst lizmat: - can't.
moritz well, - can give a Duration
but Durations are generally only in seconds
mst moritz: which would be a footgun
notviki Why is it a footgun? 19:08
moritz if you want to convert them to minutes/hours/days/weeks, you'd need an anchorpoint
notviki The only change is I don't have to go "oh, fuck right, I can't subtract DateTimes, I need to call .Instant on both"
mst notviki: the change would be that people would use -, not think about what moritz just said, and introduce bugs 19:09
samcv i mean since datetime can have different timezone's i think subtracting them is basically ignoring anchors
lizmat I don't see that if we allow < > <= >= == != <=> cmp on DateTime.DateTime, then why we don't allow - (if it's just doing the same as the other ops: use the .Instants
samcv at least for me. otherwise you shouldn't try and subtract datetimes if you don't just want the difference in time between them
notviki samcv: here's some hackety that gives the amount of time until new year: github.com/zoffixznet/perl6-IRC-Cl...m6#L14-L17
mst samcv: yeah, but people always do.
I have spent quite a bit of time un-breaking customers' core systems because they didn't think hard enough about datetime logic 19:10
notviki mst: so you're saying making the user type ".Instant" twice somehow prevents such bugs?
notviki doesn't follow
lizmat fwiw, DateTime.Instant creates an Instant of the DateTime.posix
mst right, and that means you're explicitly saying "I want to go to posix seconds, and THEN subtract"
lizmat yup
samcv ah i could see that being an issue i guess 19:11
mst which means that if what you actually wanted was something else, it'll be obvious skimming the code
notviki OK
lizmat so that timezones are taken into account correctly ?
samcv hmm
but if you want the number of hours between two things, say user one makes a post on a thread, you store it in DateTime, with timezone etc. and user 2 also posts stored in a datetime. you want to display to each user the amount of time elapsed since the other's post
not taking into account calendar days/months/years etc 19:12
notviki mst: so what's the difference between posix seconds and whatever seconds DateTime uses?
mst that's the thing though
samcv so just want the seconds and then can decide what to show each user in relative time not from their timezone, but the lengths of days or weeks
mst there is a conscious decision to be made there 19:13
samcv i mean your own logic can choose what to display, but you only want to know the difference
19:13 troys_ is now known as troys
samcv ok it looks like Go returns a Duration 19:14
when you call .Since
notviki you can subtract two Dates 19:15
m: say Date.today - Date.new(:2017year)
camelia rakudo-moar 660b0b: OUTPUT«-10␤»
notviki -10
?
samcv -10 days
notviki m: say WHAT Date.today - Date.new(:2017year)
camelia rakudo-moar 660b0b: OUTPUT«(Int)␤»
notviki wtf
19:15 grondilu left
samcv haha 19:15
mst this is the thing. any possible return value can be surprising
samcv dates are only by dates right though... not by time
what do we use for > < etc though 19:16
mst I mean, sometimes you'd want the difference to be "35 days", sometimes "1 month 5 days"
and that requires context carried along because months aren't always the same length etc.
notviki Yeah, but Duration is not affected by that.
samcv well then you can use that difference, that duration 19:17
notviki It's an actual object, not a random Int that could mean anything
samcv to calculate the date for each person
mst a Duration is basically a pair of DateTimes?
moritz no, a number of seconds
notviki number of atomic seconds
19:17 grondilu joined
mst ah. well, as I say, that can easily be not-what-you-meant 19:17
samcv but if there's 90000seconds between two datetime's can't you figure out from each original datetime object how many days/weeks/months from each original timezone and datetime object 19:18
mst yes. but my point is that there's more than one possible interpretation
notviki m: say Date.today - Date.new(:201700year) 19:19
camelia rakudo-moar 660b0b: OUTPUT«-72932728␤»
mst and I strongly believe that making people think about which one they want is a good thing
notviki m: say Date.today - 42
camelia rakudo-moar 660b0b: OUTPUT«2016-11-10␤»
notviki um... mkay
samcv XD 19:20
19:20 ponbiki joined
notviki mst: what's your opinion on the Date - 42 above? Is that also a footgun? 19:20
19:20 ponbiki is now known as Guest33965
mst entirely possible, though every time I've seen this screwed up in the wild it's been a screw up using full datetime objects 19:21
then again in p5 usually people are using DateTime which doesn't have a straight up date so
notviki Alright.
mst I'm sorry, I'm trying to unpack an instinctual 'aaaaa' here
I'm conscious I'm not explaining things quite as clearly as I might :/ 19:22
samcv i understand what you mean mst
mst have you played with postgres' interval types?
19:22 grondilu left
notviki Well, I trust your judgement :) 19:22
samcv i have not mst.
mst they have INTERVAL 1 MONTH, INTERVAL 1 DAY, INTERVAL 1 SECOND etc.
lizmat fwiw, Date is timezone agnostic
samcv Date is not compatible with Mars time. 19:23
:(
mst and those are different things and add to a date differently, in the obvious way
19:23 grondilu joined
samcv mst, so they add to the Date, don't add time to it 19:23
am i correct
err by time i mean, interval
mst samcv: well, a date plus an interval in seconds would IIRC return a datetime
a date plus an interval in days would return a date
etc.
moritz Date and DateTime have that as arguments to the .delta method
not as separate objects though 19:24
19:24 pierre_ left
mst but that allows you to specify the units 19:24
*personally* I'd suggest that you could add a - to DateTime that says "you wanted .delta or .Instant" or so
19:24 darutoko left
moritz m: say Date(2016, 1, 31).delta(:month(1)) 19:24
camelia rakudo-moar 660b0b: OUTPUT«Cannot find method 'Date' on object of type List␤ in block <unit> at <tmp> line 1␤␤»
mst and that that would be more likely to cause users to pick the one they actually wanted
moritz m: say Date.new(2016, 1, 31).delta(:month(1))
camelia rakudo-moar 660b0b: OUTPUT«No such method 'delta' for invocant of type 'Date'␤ in block <unit> at <tmp> line 1␤␤»
moritz m: say Date.new(2016, 1, 31).add(:month(1)) 19:25
camelia rakudo-moar 660b0b: OUTPUT«No such method 'add' for invocant of type 'Date'␤ in block <unit> at <tmp> line 1␤␤»
notviki .later
moritz man, what's it called again?
thanks
m: say Date.new(2016, 1, 31).later(:month(1))
camelia rakudo-moar 660b0b: OUTPUT«2016-02-29␤»
mst providing a plain - seems to me like it'd have exactly the same problems as conflating addition and string concat as operators
i.e. it would be a violation of perl6's "operators should not be fuzzy" principle, or so
lizmat moritz: :month cannot change month
mst am I starting to make a bit more sense here?
notviki mst: yeah 19:26
moritz mst: I understand your point of view
samcv in my mind the minus should subtract the times, and though there may be better ways to do it, for some uses it is fine. so should we just call .Instant on it and subtract
chansen_ p6 DateTime represent a date with time of day combined with an optional offset from UTC (it's anchored on the global timeline), subtracting two DateTime's could return a duration of time (with the same precision as DateTime) between the instants of the DateTime's.
samcv mst, yeah i totally get where you are coming from
19:27 labster joined
mst samcv: that's absolutely a valid thing to want to do, I just think explicitly subtracting the instances for that case will be more clear to the next developer to look at it 19:27
aha, we attracted a chansen_. excellent. he understands the footguns here better than I do
I've just had to debug 'em in the wild a few times
moritz I'm not entirely convinced we absolutely need a richer Duraiton object though, or that it allows well-defined semantics for the operations we allow now
mst I'm not really convinced of anything except that "trying to make - dwim is probably going to end up being 'do what I sometimes meant and sometimes introduce subtle bugs'" 19:28
and, if I wanted that, I know where to find perl5 ;)
moritz if somebody prototyped more convincing semantics in a module, and it worked out, I could well imagine it being adopted into core 19:29
rightfold Just wrote my first Perl 6 program since a looooong time :)
notviki \o/
mst moritz: I think more thought is required to know what 'more convincing semantics' is - just I'm not convinced that "just make the .Instant implicit" would be a remotely good idea 19:30
also if it turns out to be a bad idea, it'd be a bad idea that's nontrivial to walk back from later
samcv ^
i totally agree with that part for sure 19:31
mst I wrote shadow.cat/blog/matt-s-trout/your-design-sucks/ to remind me of just how much fun this class of mistakes isn't
rightfold notviki: it has your regex in it :) 19:32
chansen_ moritz: Duration is fine as long it guaranties $duration = $dt1 - $dt2; and $dt1 == $dt2 + $duration;
notviki rightfold: awesome. My part in the annihiliation of the world is complete. 19:33
moritz chansen_: I'm pretty sure that's an invariant that holds in Perl 6 19:34
19:34 lucasb joined
tailgate what does the :x adverb do in a regular expression? 19:36
chansen_ moritz: excellent, then DateTime should provide an overloaded operator for DateTime - DateTime which returns a Duration 19:37
mst and Duration is just seconds? 19:38
notviki s: "".match: /^/, :x
SourceBaby notviki, Something's wrong: ␤ERR: Cannot resolve caller sourcery(List); none of these signatures match:␤ ($thing, Str:D $method, Capture $c)␤ ($thing, Str:D $method)␤ (&code)␤ (&code, Capture $c)␤ in block <unit> at -e line 6␤␤
notviki s: "", 'match', \(/^/, :x)
SourceBaby notviki, Sauce is at github.com/rakudo/rakudo/blob/660b...tr.pm#L990
19:38 grondilu left
notviki oh 19:38
tailgate: like in times 19:39
m: say "ooooooo" ~~ m:3x/./
camelia rakudo-moar 660b0b: OUTPUT«(「o」 「o」 「o」)␤»
notviki m: say "abcdefg" ~~ m:3x/./ # better example
camelia rakudo-moar 660b0b: OUTPUT«(「a」 「b」 「c」)␤»
geekosaur enodoc
tailgate thanks
chansen_ mst: seconds with fractions (Rat or a FatRat) 19:40
notviki I think there's an Issue for .match() so that'd be part of it IMO
19:40 grondilu joined
mst chansen_: ah, yeah, that could probably not be completely unsane 19:40
note that if chansen_ says something isn't a footgun, I'm happy to assume it isn't, for this topic
chansen_: you can see where my paranoia about people not considering their units in date+time math comes from though, right?
notviki OK, then we'll add DateTime - DateTime op 19:41
.oO( DateTime - Duration = DateTime....)
chansen_ mst: as long as $duration = $dt1 - $dt2; and $dt1 == $dt2 + $duration; is guarantied, returning a Duration is fine (moritz said that it holds for p6 ^^)
mst chansen_: I think you have 1 and 2 reversed in the second of those? 19:42
er, wait, no, never mind
notviki .... and you have a degree in maths? :)
mst turns out a degree in maths doesn't prevent one occasionally Being Bloody Stupid 19:43
notviki :}
So we need DateTime - DateTime = Duration; DateTime - Duration = DateTime; DateTime + Duration = DateTime; Duration + DateTime = DateTime 19:44
chansen_ yeah 19:45
notviki Cool. Will take care of it on the weekend unless someone beats me to it.
arnsholt mst: Re: Your design sucks, I'm feeling that at my new job, these days 19:49
Especially the last one, the system having been in production continuously for 20 years
mst arnsholt: right. it's a useful reminder of just how many assumptions you're going to bake in and how even if they're all correct *now*, in a while they probably won't be, so 19:50
arnsholt Definitely
(Smalltalk is kinda cool though) 19:52
notviki Oh yeah, I remember when I thought MooTools was awesome and jQuery was hipster's fad.... Now I have a 100,000 lines of code that uses MooTools I remember nothing about :)
19:54 grondilu left
moritz bet on YUI, before jquery was the clear winner 19:55
luckily it was just 200loc or so
19:55 acrussell left 19:56 grondilu joined
RabidGravy there's a lot of YUI in the front end of the code I'm working with at the moment 19:58
19:59 AlexDaniel joined 20:00 teksteiner left 20:01 grondilu_ joined 20:03 lucasb left, grondilu left 20:05 labster left, pierre__ joined
dalek c: 3a26646 | samcv++ | / (2 files):
Remove old pygments css and reference in head.html

Issue #1070
20:05
notviki \o/ 20:06
20:09 troys is now known as troys_
notviki thundergnat: totally forgot about your thing. Did you figure it out? 20:13
.clone before .rotate is an obvious choice, but it's broken on Arrays :}
thundergnat: oh, .Array before .rotate works in a pinch
well and without pinches, I guess :) 20:14
m: my $n = 4; my @d = [0, |(Inf xx $n-1)], *.Array.rotate(-1) … !*[*-1]; say @d; @d[1][2] = 'WTF'; say @d;
camelia rakudo-moar 0db081: OUTPUT«[[0 Inf Inf Inf] [Inf 0 Inf Inf] [Inf Inf 0 Inf] [Inf Inf Inf 0]]␤[[0 Inf Inf Inf] [Inf 0 WTF Inf] [Inf Inf 0 Inf] [Inf Inf Inf 0]]␤»
notviki m: my $n = 4; my @d = [0, |(Inf xx $n-1)], *.Array.rotate(-1) … !*[*-1]; say @d; @d[1;2] = 'WTF'; say @d;
camelia rakudo-moar 0db081: OUTPUT«[[0 Inf Inf Inf] [Inf 0 Inf Inf] [Inf Inf 0 Inf] [Inf Inf Inf 0]]␤[[0 Inf Inf Inf] [Inf 0 WTF Inf] [Inf Inf 0 Inf] [Inf Inf Inf 0]]␤»
geekosaur didn't read that fully the first time and wondered if WTF was the new NaN 20:16
20:16 bjz joined
notviki it is! 20:16
m: NaN does "WTF"; 20:17
camelia rakudo-moar 0db081: OUTPUT«Cannot mix in non-composable type Str into object of type Num␤ in block <unit> at <tmp> line 1␤␤»
notviki m: NaN does role { method gist { "WTF" } }; say tan Inf
camelia rakudo-moar 0db081: OUTPUT«NaN␤»
notviki aww
samcv m: say Q🇦🇺test🇦🇺 20:19
camelia rakudo-moar 0db081: OUTPUT«test␤»
samcv m: say Q<🇦🇺>.ords
camelia rakudo-moar 0db081: OUTPUT«(127462 127482)␤»
notviki m: say Q< >.ords».base: 16 20:20
camelia rakudo-moar 0db081: OUTPUT«(20 20)␤»
notviki :S
stupid terminal
samcv m: say Q👩‍🎤test👩‍🎤 20:21
camelia rakudo-moar 0db081: OUTPUT«5===SORRY!5=== Error while compiling <tmp>␤Bogus postfix␤at <tmp>:1␤------> 3say Q👩‍🎤test👩‍7⏏5🎤␤ expecting any of:␤ infix␤ infix stopper␤ postfix␤ statement end␤ statement mo…»
20:21 labster joined
samcv ok i found a bug 20:21
notviki cool. What is it?
samcv oh, those are emoji combining sequences
so should be treated as only one character
notviki ZWS?
samcv we don't support emjoi properties in moarvm atm. have a ticket for that
yeah
exactly
notviki I think those are NYI
samcv yep 20:22
the flags worked fine though
but they aren't ZWS
m: say Q<👩‍🎤>.chars
camelia rakudo-moar 0db081: OUTPUT«2␤»
samcv that should be 1 too
uhm where should I add that to roast. hm 20:23
m: say Q<👩‍🎤>.ords
camelia rakudo-moar 0db081: OUTPUT«(128105 8205 127908)␤»
thundergnat notviki: Ah. Cool. Thanks. I had resorted to constructing the array in one statement and then rotating in another, which worked but offended me slightly.
samcv yeah. they have a zero width joiner between them
not sure if we should detect them as one character because of the joiner yet… idk i'm going down the rabbit hole of unicode lately 20:25
notviki Last I recall them being mentioned the ZWS were still not final standard.
samcv nope 20:26
unicode.org/emoji/charts/full-emoji-list.html
it includes zws
zwj i mean 20:27
jdv79 should docs.perl6.org/type/Supplier::Preserving be a 404?
samcv m: say Q<‍🙇🏼‍♀️>.chars
camelia rakudo-moar 0db081: OUTPUT«5===SORRY!5=== Error while compiling <tmp>␤Couldn't find terminator <‍ (corresponding <‍ was at line 1)␤at <tmp>:1␤------> 3say Q<‍🙇🏼‍♀️>.chars7⏏5<EOL>␤ expecting any of:␤ <‍␤»
samcv ahhh
:(
notviki jdv79: where did you get that URL from? 20:28
jdv79 the type graph on the Supplier doc
thundergnat notviki: The code in the wild. rosettacode.org/wiki/Floyd-Warshall...thm#Perl_6
notviki heh
jdv79: it needs to spectested and then documented. 20:29
samcv m: my $emoji-4 = "\x[1F647]\x[1F3FC]\x[200D]\x[2640]\x[FE0F]"; say $emoji-4.chars;
camelia rakudo-moar 0db081: OUTPUT«Use of uninitialized value of type Any in numeric context␤ in block <unit> at <tmp> line 1␤Cannot modify an immutable Int␤ in block <unit> at <tmp> line 1␤␤»
20:29 lichtkind__ joined
samcv what 20:29
RabidGravy I think Supplier::Preserving is just an implementation detail
notviki jesus that emoji page is raping my poor bandwidth 20:30
RabidGravy: nope
RabidGravy: I double checked with jnthn++ and he said it's OK to spectest adn document it
And I said "sweet, I'll do it then"
jdv79 S::P is used in Proc::Async
RabidGravy ah okay
notviki .... and forgot all about it :)
samcv oh duh 20:31
m: my $emoji = "\x[1F647]\x[1F3FC]\x[200D]\x[2640]\x[FE0F]"; say $emoji.chars;
camelia rakudo-moar 0db081: OUTPUT«3␤»
notviki thundergnat: FWIW it's completely unreadable 20:32
Compared to JS and PHP versions, feels like the programmer tried to stuff as many clever Perl 6 features into it as they could :) 20:33
20:33 lichtkind_ left
thundergnat notviki: You aren't completely wrong. 20:34
AlexDaniel samcv: there's something wrong with highlighting here? docs.perl6.org/routine/mkdir 20:35
notviki thundergnat: :)
samcv is there AlexDaniel ?
it looks fine?
AlexDaniel samcv: “mkdir” is highlighted like “sub”
samcv let me check how it's tagging it
notviki sees it too
20:36 domidumont left
notviki Well, I'd rather say `sub` is not highlight the same as `multi` and `method` :) 20:36
samcv yes it is AlexDaniel :)
(incorrect)
ah ok. it's because of the sequence 20:37
20:37 Hooyah joined
samcv it doesn't highlight wrong on its own line 20:38
without the things above it
20:38 Hooyah left, cdg joined
notviki Is it? In my Atom all `multi` blah are not highlighted correctly 20:38
samcv: try this: gist.github.com/zoffixznet/99ef4e7...98b09b46aa 20:39
samcv oh wait
notviki leaves for $work emergency
samcv the bug is in mkdir above it not highlighting rigth
notviki samcv: it highlights the word after `multi` as if it were a name
samcv with 'multi sub' not with the third line
yep
i'll open an issue to the highlighter and fix it sometime today 20:40
20:41 rindolf left, cdg left, cdg joined
samcv i remember fixing a similar issue here with another combination, and adding a test for it to the test units 20:42
but i must have broken this as a side effect :P
20:44 rindolf joined
AlexDaniel I can't believe we have a decent highlighter on docs.perl6.org now! 20:45
notviki \o/ 20:46
AlexDaniel the colors need to be adjusted a little bit, but that's ok
(e.g. comments are gray on gray, not enough contrast) 20:47
samcv: I have a question!
notviki configure your monitor! :?) 20:48
AlexDaniel notviki: or force proper contrast through browser user styles
rightfold Is a submethod a private method?
AlexDaniel no, let's just fix the colors
20:48 grondilu joined
AlexDaniel samcv: here: docs.perl6.org/type/Str#routine_parse-base 20:48
notviki rightfold: nope
AlexDaniel samcv: 「1337.base(32).parse-base(32).say」
notviki rightfold: it's not inherited by subclasses 20:49
rightfold Oh right
notviki private methods are: method !meow {...}
AlexDaniel samcv: “base” is black, “parse-base” is not
samcv: is there any reason for it?
notviki ^ on that topic, I noticed .utc wasn't highlighted as a methiod 20:50
QUICK, EVERYONE! PILE WORK ON SAMCV!
20:50 grondilu_ left
notviki :} 20:50
rightfold I also get VS Code trouble with single quoted strings 20:51
It doesn't highlight correctly
20:56 andrzejku joined
samcv one's tagged as support function and one as routine name 20:57
routine name aka highlighter didn't tag it with anything but 'generic'
but the chrome/firefox developer tools to see what it's tagged as is yoru friend :) 20:58
please open bug reports about everything you find :)
i have to do some holiday things with family but I will fix them all tonight :)
github.com/perl6/atom-language-perl6/issues/new << :D 20:59
just link to the page it's on and say what's not highlighted right that should be fine
colomon samcv++ 21:01
21:06 grondilu left, grondilu_ joined 21:10 cdg_ joined 21:11 cdg left
[Coke] j 21:12
AlexDaniel k
21:13 spider-mario left 21:14 spider-mario joined 21:15 jpc joined
[Coke] saw discussion in backscroll about compose - there's a perl 6 input keyboard mapping for os x. 21:20
21:21 troys_ is now known as troys 21:24 Tonik joined
rightfold can run redirect output to a file? 21:26
moritz rightfold: shell can
21:26 Tonik left, Tonik joined
moritz or wait 21:27
my $out = open :w, 'targetfile.txt'; run 'echo', 'foo', :$out; $out.close
that should also work
21:31 FROGGS joined
jdv79 attr defaults and custom build don't mix, right? 21:35
moritz right 21:36
though if you use TWEAK instead of BUILD, you should be fine
(though TWEAK is a 2016.11+ feature, iirc) 21:37
jdv79 uh, ok
AlexDaniel bisect: class foo { method TWEAK { say ‘hi’ } }; foo.new
bisectable6 AlexDaniel, Bisecting by output (old=2015.12 new=0db0810) because on both starting points the exit code is 0 21:38
RabidGravy in my last contract I wrote a thingy in node.js as a middleware between RabbitMQ and a client browser, it grew to be quite large. I've just made something that does the in Perl 6 with HTTP::Server::Tiny , Net::AMQP and a little something I am working on, in about ten lines of code :)
bisectable6 AlexDaniel, bisect log: gist.github.com/4812a292a460c15336...72d7f46229
AlexDaniel, (2016-11-05) github.com/rakudo/rakudo/commit/94...79aae73698
moritz TWEAK runs after the BUILD chain
RabidGravy: nice! :-)
21:38 Tonik left
perlpilot RabidGravy: you gonna share? :) 21:38
moritz "Perl 6 by Example" now has 6 chapters 21:40
RabidGravy moritz++ # coolio
moritz leanpub.com/perl6
perlpilot moritz++ now *that's* nice! :)
RabidGravy perlpilot, it'll be an example in github.com/jonathanstowe/EventSource-Server when I commit it :) 21:41
moritz and I'm working on the example for chapter 7 and possibly 8 right now
which introduces promises, and a wee bit of channel and supply
perlpilot moritz: heh, I was *just* about to ask if you were going to get to those 21:42
[Coke] moritz++
AlexDaniel yea, moritz++
moritz considers a #perl6 Christmas sale 21:43
perlpilot RabidGravy: btw, I didn't mean to imply that your work was undeserving of moritz's "nice!" because it most certainly is.
RabidGravy++
RabidGravy no, no that's fine, that's basically a hack that I've had sitting in a gist for a year and never got round to doing anything with 21:44
perlpilot moritz: you should have applied for a TPF grant ;)
moritz perlpilot: :-) 21:45
alright, leanpub.com/perl6/c/christmas gives you 66% discount until Christmas 21:46
(and of course free updates whenever a new book version is published)
AlexDaniel It's good to know that there is at least one person writing a book about perl 6 who knows which bug tracker is for rakudo bugs and which one is for docs! I don't mean anybody in particular, of course… just saying… 21:47
sorry, couldn't hold it :P
[Coke] to be fair, it's not like the bug reporting situation isn't confusing.
So I think the snark is misplaced. 21:48
moritz the docs do contain a footer informing about where to report bugs for them
that's not perfect, but it gives people the option to find the right bug tracker 21:49
(provided they put in the effort)
21:49 colomon left, espadrine joined
moritz erm no, the footer doesn't contain a direct link to the issue tracker 21:49
just to the github repo 21:50
we might want to change that
though the footer is already getting full
we could split it up into boxes :-)
one for legal
rightfold does Perl 6 use UTF-16 instead of UTF-8 on Windows for stdout?
AlexDaniel [Coke]: perhaps. But so far most people were able to direct their bug reports into the right bug trackers. There are some infrequent misses, but that's ok
moritz one for finding the sources, one for legal (copyright, cookie notice), one for version information 21:51
jpc Hi, May I ask a question on how to use a Perl6 grammar ?
21:52 colomon joined, bjz left
AlexDaniel jpc: have you seen this? docs.perl6.org/language/grammar_tutorial 21:52
jpc I think .. 21:53
moritz sure, ask
jpc this is smy question :
I'm trying to use perl6 and his grammar feature. The following code works well and help me to recognize instructions starting by '\' and ending by ' ;' : __________________________________________ $ cat test031.pl6 #!/opt/rakudo-star-2016.10/bin/perl6 use v6; grammar SQLP { rule TOP {^^<cmdsqlplist> } rule cmdsqlplist { <cmdsqlp> * } rule cmdsqlp { :r [^^'\\' <ff> ';'] } token ff { <-[\\;]>* } } my $ctl = q
oups ...
moritz jpc: please use a pastebin for pasing more than one line of code
notviki doc.perl6.party/ is now fully built, looks like
jpc No sure you can read it ...
geekosaur use a pastebin, more readable and not interrupted by other irc traffic 21:54
dpaste.de, lpaste.net, pick your poison...
AlexDaniel notviki: what's the trick? What's going to be there?
jpc Sorry, How can I use a pastebin ?
notviki jpc, definitely not. This is why people use a pastebin or gist: m.imgur.com/Uzo3iyQ 21:55
moritz jpc: you go to a pastebin website, copy&paste your code in there, and tell us the URL that the pastebin generated for you
notviki jpc is there a URL in the /topic?
jpc, gist.github.com is good 21:56
RabidGravy can you use that without being logged in?
jpc Ok, many thanks I will do that and i come back.
notviki AlexDaniel, I'm making a hostile fork of the docs. Gonna make a Party edition :)
RabidGravy, I've seem anonymous gist, so probably yes 21:57
[Coke] RabidGravy: yes. you can make anon gists
AlexDaniel notviki: nice. I wonder what would google search think about this
notviki AlexDaniel, Issue 1070
RabidGravy I just don't think I've ever not been logged in to github :) 21:58
notviki AlexDaniel, clearly the Party edition is superior ;)
21:59 FROGGS left
notviki
.oO( that's a long trip to the pastebin )
22:01
22:01 bjz joined
jpc Are you able to see my question at gist.github.com/anonymous/110c2f1b...f034e01d16 ? (again, sorry for my first tentative.) 22:01
22:02 skids left
notviki jpc, try changing 'rule' to 'token' 22:02
jpc I'm checking 22:03
notviki rules insert <ws> tokens in whitespace gaps that eat newlines
moritz right; notviki++ is too fast for /me old man
notviki \o/ 22:04
moritz did I mention that I found the first white hairs in my beard yesterday?
does $$ eat an \n ?
perlpilot no
$$ is zero-width just like $
moritz then you might need an explicit \n? somewhere
jpc token or rule this is the same result ...
moritz m: say "a\nb\n" ~~ /^ [^^.$$]+ $/ 22:05
camelia rakudo-moar 0db081: OUTPUT«Nil␤»
moritz m: say "a\nb\n" ~~ /^ [^^.$$\n?]+ $/
camelia rakudo-moar 0db081: OUTPUT«「a␤b␤」␤»
moritz jpc: ^^ see?
jpc hmmm you write $$\n when I write only $$ 22:06
moritz *something* has to eat the \n character in the input string 22:07
jpc: fwiw Grammar::Tracer can help you find such errors
jpc ok I will have a look on this tracer. Thanks a lot 22:09
moritz btw as a user I'm constantly annoyed that there's no shortcut for { $obj.method($_) } 22:13
so, some way to get a method as a code object, but bound to a specific object already 22:14
22:15 sena_kun left
moritz in python, that's just obj.method 22:15
RabidGravy yeah, I keep wanting to do that
moritz my current use case is: for $proc.stdout, $proc.stderr -> $supply { $supply.tap: { $collector.send($_) } }
I want to write $supply.tap: $collector.&send or something like that 22:16
RabidGravy yeah, those are the kind of places I want to use it tooo
moritz or if we can't come up with a nice syntax, we could at least provide a method in Any or Mu
$collector.bound('send') 22:17
mst in perl5, that's $collector->curry::send
RabidGravy and $obj.^lookup("send").assuming($obj); 22:18
moritz mst: since when? 22:19
perlpilot we could use a cute "curry" keyword like that.
mst moritz: 2012: metacpan.org/pod/curry 22:20
moritz: perl5 is sufficiently powerful it didn't require a core feature, just an unsane mst
s/powerful/bendable/ or whatever, but y'know
moritz mst: ah, I thought it was in core :/
mst moritz: that wouldn't've helped using it for fatpacked apps that support 5.8.x 22:21
if somebody wanted to propose it for core, I wouldn't stop them
but it being a zero-dep single file pure-perl module 22:22
it's hardly a burden
moritz mst: at $work we still deploy Perl packages as separate .deb packages, which means it *is* an extra burden 22:23
mst moritz: I've worked in environments where that was the case and automated the deb building sufficiently it wasn't 22:24
22:24 madjestic joined
mst dunno if debian-perl packaged it for you yet 22:24
moritz run dh-make-perl over it, create a build pipeline to upload it to the repos, update the pipeline whenever there's a new Debian version, add it as a depency to the projects that use it 22:25
not huge, but significant
22:25 cdg_ left
mst generally I'm using sufficient modules across any given platform that adding one is only barely significant 22:25
moritz wants a dh-perlbrew or a dh-carton or something similar
mst especially one with no transitive deps
ah, yeah, I keep meaning to try and write dh-carton
22:26 pyrimidine left
mst thing is, 'carton install --deployment' followed by 'tar czf' followed by 'fpm' already works 22:26
22:29 Exodist joined 22:30 troys is now known as troys_ 22:35 bjz left
[Coke] looks forward to the holidays. 22:36
notviki woooo... Warframe just released a whole bunch of new content \o/ 22:40
So much for my hacking plans :P
AlexDaniel :'(
moritz m: class A { has Str:D $.x } 22:44
camelia rakudo-moar 0db081: OUTPUT«5===SORRY!5=== Error while compiling <tmp>␤Variable definition of type Str:D requires an initializer␤at <tmp>:1␤------> 3class A { has Str:D $.x 7⏏5}␤»
moritz why?
for 'my' variables, I understand that error
but for attributes, the initialization can happen elsewhere (like in .new or BUILD) 22:45
timotimo some of the questions bdf asks on stackoverflow are really very strange to me
22:46 raiph left 22:47 bjz joined 22:49 Praise joined, Praise left, Praise joined
[Coke] Same. 22:50
notviki m: class A { has Str:D $.x is required }
camelia ( no output )
22:50 cpage_ left
notviki timotimo: like what? 22:50
[Coke] is required mucks with the initializer so the check is defered until new is complete. IIRC. 22:51
timotimo stackoverflow.com/questions/412906...-the-value
moritz [Coke]: ah, thanks
AlexDaniel notviki: what was the thing that converted markdown to wordpress format? 22:52
notviki timotimo: well, I don't know. He's an expert Perl 6 programmer who's writing a Perl 6 book. His questions are beyond us mere mortals to ponder. 22:53
[Coke] Again, the snark probably not helpful. :)
timotimo it's good that he's bringin in some more insights as to what might confuse people 22:54
notviki AlexDaniel: gist.github.com/zoffixznet/e8d7d24...b954f72a87 22:55
huggable: wordpress :is: Script to covert a Markdown Gist to HTML for wordpress: gist.github.com/zoffixznet/e8d7d24...b954f72a87
huggable notviki, Added wordpress as Script to covert a Markdown Gist to HTML for wordpress: gist.github.com/zoffixznet/e8d7d24...b954f72a87
notviki AlexDaniel: don't forget to give gist a filename with .md or .markdown extension so it renders it
bdf's confusion is relying on Perl 5 knowledge 22:56
mst timotimo: honestly, that seemed like a pretty reasonable question to me
notviki: well, bdf comes from Ye Olden Days and is probably still thinking of perl6 as a 'next version' rather than a 'complete re-imagination'
timotimo hm, okay. mst is a perl5 guy, too. so if it seems reasonable to him, and it's gibberish-ish to me, that must be the reason 22:57
notviki @_ makes an implicit signature and not just-another-way to get the args
mst notviki: and if he successfully gets out in front of ways new users might be confused because they're thinking in perl5
notviki The question is fine, it's the asker I roll me eyes onto -_-
[Coke] mst: well, hopefully he's not STILL coming from that standpoint.
mst then that seems like a net win
[Coke]: honestly, I don't think it really matters, so long as the end result is accessible to both perl5 and not-perl5 people 22:58
and while brian and I really don't get on, he's a bloody good author
timotimo always having @_ is probably a performance penalty for us
notviki It would be yeah
mst fundamentally: that question seems like one that's well worth having answered explicitly in the book for perl5 people
timotimo so yeah, i didn't expect the thing that perl5 does where arguments are always in @_ from the get-go 22:59
22:59 andrzejku left
notviki I did. And I got a message that I can't override the sig. And that was enough for me :/ 22:59
[Coke] mst: as long as the book works for non-perl5 folks also, i'll be happy.
23:00 bjz left
[Coke] I'm hopeful. 23:00
mst [Coke]: sure. but I'd like it to work for us too :)
[Coke] decided over an hour ago he'd try to fix one perl6 doc ticket.
notviki :)
RabidGravy the most common place I find myself using an anonymous parameter is with a sub-signature
[Coke] is still waiting for the prep work to be done. :|
timotimo smls' answer is very good on that post, imo 23:03
notviki Except the .elems thing will reify everything on many things 23:06
m: sub (*@_ where .elems > 0) {say "got it"; dd @_}(gather { take 1; say "hi"; take 2}) 23:09
camelia rakudo-moar 0db081: OUTPUT«hi␤got it␤[1, 2]␤»
notviki m: sub (*@_ where .so) {say "got it"; dd @_}(gather { take 1; say "hi"; take 2})
camelia rakudo-moar 0db081: OUTPUT«got it␤hi␤[1, 2]␤»
notviki m: sub (*@_ where .so) {say "got it"; dd @_}([])
camelia rakudo-moar 0db081: OUTPUT«Constraint type check failed for parameter '@_'␤ in sub at <tmp> line 1␤ in block <unit> at <tmp> line 1␤␤»
jpc To give a final point to my previous Grammar::tracer helped me to realize I have to use token ff { <-[\\\n]>* } instead of token ff { <-[\\]>* }. So many thanks for your useful help, my code works fine now. :)
notviki \o/ 23:10
23:10 bjz joined 23:11 rburkholder joined 23:13 vendethiel joined 23:15 troys_ is now known as troys 23:18 pierre__ left
RabidGravy is there a bot that searches in the ecosystem 23:18
timotimo searches in what way?
RabidGravy get the url
timotimo like, we could have one that searches through the all-modules repository
RabidGravy bot: Foo::Bar 23:19
timotimo all it'd have to do is write modules.perl6.org/repo/Foo::Bar ;)
RabidGravy ah yes
notviki there could be :)
RabidGravy I forget that
timotimo though it'd probably be nice if it did one step of resolving
notviki but not currently
RabidGravy perlpilot: github.com/jonathanstowe/EventSour...mqp-bridge there 23:22
:)
23:23 pyrimidine joined
RabidGravy I think Net::AMQP needs a more sugary interface at some point 23:23
anyway bedtime for me
timotimo gnite RabidGravy 23:24
pmurias notviki: it's good bdf is asking questions rather then making stuff up ;) IMHO the hard part of writing the book isn't gathering the actual Perl 6 knowledge but describing stuff in a way that's approachable even for someone new to programming 23:26
notviki pmurias: based on the timing of what I saw, he did make stuff up first. 23:28
23:28 RabidGravy left
notviki pmurias: 18:24 irclog.perlgeek.de/perl6/2016-12-22#i_13786114 and 2 hours later the SO question went up 23:29
Anyway. Don't care. 23:30
notviki adds a bot to search ecosystem
Or rather a feature to buggable
23:31 rpburkholder joined 23:32 lukaramu left
AlexDaniel Hey! In case somebody is willing to take a look, the draft for the advent post is now there. 23:34
23:35 rburkholder left
dalek href="https://modules.perl6.org:">modules.perl6.org: 7d29f35 | (Zoffix Znet)++ | lib/ModulesPerl6/Controller/Root.pm:
Remove trailing whitespace
23:36
href="https://modules.perl6.org:">modules.perl6.org: b7a802a | (Zoffix Znet)++ | lib/ModulesPerl6/Controller/Root.pm:
Add JSON API for searches
23:36 MasterDuke left
timotimo neat. 23:37
23:49 jpc left 23:51 bjz left 23:56 PapaChub left, buggable left, buggable joined, ChanServ sets mode: +v buggable
notviki buggable: eco gist 23:56
buggable notviki, Found 2 results: Data::Pretty, Pastebin::Gist. See modules.perl6.org/s/gist.json 23:57
notviki buggable: eco pastebin::gist
buggable notviki, Pastebin::Gist 'Use gist.github.com/ as a pastebin': github.com/zoffixznet/perl6-Pastebin-Gist
notviki buggable: eco the fountain of youth
buggable notviki, Nothing found
23:57 bjz joined
notviki .tell RabidGravy buggable: eco pastebin::gist 23:57
yoleaux notviki: I'll pass your message to RabidGravy.
timotimo notviki: you're quick! :) 23:58
notviki That's what she said!
ayoooo