»ö« Welcome to Perl 6! | perl6.org/ | evalbot usage: 'p6: say 3;' or /msg camelia p6: ... | irclog: irc.perl6.org or colabti.org/irclogger/irclogger_log/perl6 | UTF-8 is our friend! 🦋
Set by Zoffix on 25 July 2018.
00:04 mcmillhj joined 00:05 p6bannerbot sets mode: +v mcmillhj 00:07 rindolf left 00:09 mcmillhj left 00:14 escherlat joined, p6bannerbot sets mode: +v escherlat 00:15 [particle] left 00:18 [particle] joined, p6bannerbot sets mode: +v [particle] 00:21 sotona joined 00:22 p6bannerbot sets mode: +v sotona 00:24 [particle] left 00:25 mcmillhj joined 00:26 p6bannerbot sets mode: +v mcmillhj 00:27 jcallen is now known as jcallen_, jcallen_ is now known as jcallen 00:30 mcmillhj left 00:37 [particle] joined 00:38 fake_space_whale joined, p6bannerbot sets mode: +v [particle], p6bannerbot sets mode: +v fake_space_whale 00:48 mcmillhj joined 00:49 p6bannerbot sets mode: +v mcmillhj 00:52 sotona left 00:53 mcmillhj left 00:57 [particle] left 01:02 mcmillhj joined 01:03 p6bannerbot sets mode: +v mcmillhj, huh joined, p6bannerbot sets mode: +v huh 01:04 huh left 01:05 Guest27871 left 01:07 mcmillhj left 01:11 Guest27871 joined 01:12 p6bannerbot sets mode: +v Guest27871 01:31 mcmillhj joined, p6bannerbot sets mode: +v mcmillhj 01:35 mcmillhj left 01:44 [particle] joined, silug left, p6bannerbot sets mode: +v [particle] 01:51 [particle] left, [particle] joined 01:52 p6bannerbot sets mode: +v [particle] 01:55 silug joined 01:56 p6bannerbot sets mode: +v silug 01:57 silug left 02:00 john_parr left, sotona joined 02:01 p6bannerbot sets mode: +v sotona 02:04 john_parr joined, p6bannerbot sets mode: +v john_parr 02:18 mcmillhj joined 02:19 p6bannerbot sets mode: +v mcmillhj 02:20 silug joined, p6bannerbot sets mode: +v silug 02:23 mcmillhj left 02:24 escherlat left 02:33 sotona left, mcmillhj joined 02:34 p6bannerbot sets mode: +v mcmillhj 02:38 mcmillhj left
Geth doc: 7913c42fd7 | Coke++ | doc/Language/typesystem.pod6
whitespace
02:39
synopsebot Link: doc.perl6.org/language/typesystem
02:42 silug left 02:45 Kaiepi joined 02:46 p6bannerbot sets mode: +v Kaiepi, Kaiepi left, Kaiepi joined 02:47 mcmillhj joined, p6bannerbot sets mode: +v Kaiepi, p6bannerbot sets mode: +v mcmillhj 02:51 mcmillhj left 02:53 silug joined 02:54 p6bannerbot sets mode: +v silug 03:16 mcmillhj joined, kybr joined, p6bannerbot sets mode: +v mcmillhj 03:17 p6bannerbot sets mode: +v kybr 03:20 mcmillhj left 03:40 mcmillhj joined 03:41 p6bannerbot sets mode: +v mcmillhj 03:45 Kaiepi left, mcmillhj left, Kaiepi joined, Kaypie joined 03:46 p6bannerbot sets mode: +v Kaiepi, Kaiepi left, p6bannerbot sets mode: +v Kaypie, Kaypie is now known as Kaiepi 03:49 graphene left 03:50 graphene joined 03:51 p6bannerbot sets mode: +v graphene 03:54 mcmillhj joined 03:55 p6bannerbot sets mode: +v mcmillhj 03:59 mcmillhj left 04:13 MasterDuke left 04:25 mcmillhj joined, p6bannerbot sets mode: +v mcmillhj 04:29 mcmillhj left 04:39 quester joined, p6bannerbot sets mode: +v quester 04:48 avar left 04:49 curan joined, p6bannerbot sets mode: +v curan 04:55 sotona joined 04:56 p6bannerbot sets mode: +v sotona 05:12 mcmillhj joined, avar joined, avar left, avar joined, p6bannerbot sets mode: +v avar, p6bannerbot sets mode: +v mcmillhj 05:13 p6bannerbot sets mode: +v avar 05:16 mcmillhj left 05:20 gregf_ left 05:28 sauvin joined, p6bannerbot sets mode: +v sauvin 05:29 Ven` joined 05:30 p6bannerbot sets mode: +v Ven` 05:32 sotona left 05:33 Ven` left 05:36 graphene left 05:38 graphene joined, p6bannerbot sets mode: +v graphene 05:48 mcmillhj joined 05:49 p6bannerbot sets mode: +v mcmillhj 05:51 graphene left 05:53 mcmillhj left 05:58 mcmillhj joined 05:59 Xliff joined, p6bannerbot sets mode: +v mcmillhj, p6bannerbot sets mode: +v Xliff
Xliff \o 05:59
If I wanted a command line switch to act like the traditional verbosity count, would I have to use @*ARGS? 06:00
So -v -> 1
And -vvvvv -> 5
for @*ARGS { when /^ '-v' / { $verbosity = $_.chars -1 } } 06:01
06:03 mcmillhj left
AlexDaniel (Bool :$v, Bool :$vv, Bool :$vvv, Bool :$vvvv) :S 06:09
Xliff: maybe one of the getopt modules can help 06:10
06:11 robertle joined 06:12 p6bannerbot sets mode: +v robertle
TimToady (*%rest) { my $verbosity = %rest.keys.grep(/^ v+ $/).chars; 06:12
Xliff TimToady++ 06:13
06:20 faraco joined, faraco left, faraco joined, p6bannerbot sets mode: +v faraco 06:21 p6bannerbot sets mode: +v faraco 06:22 faraco left
quester Xliff: the first thing that you should think of for parsing arguments is the sub MAIN feature, see stackoverflow.com/questions/297041...-in-perl-6 for an example and docs.perl6.org/routine/MAIN for details. But its convention is to use -v=5, rather than -vvvvv, so you may not want to use it for this particular problem. 06:23
TimToady quester: I just gave Xliff a solution for that
quester Hi TimToady. Sorry, I just thought casual readers would get the impression that command line arguments are usually parsed ad-hoc, rather than using built-in tools. 06:26
TimToady AlexDaniel & I were just being lazy and leaving out the 'sub MAIN' before the sig
but yes, it's good to think of the innocent bystanders :) 06:27
quester Oh, I see. 06:28
06:29 mcmillhj joined, troys left 06:30 p6bannerbot sets mode: +v mcmillhj
TimToady I suspect we both took "would I have to use @*ARGS?" to indicate a preference for using MAIN if possible 06:32
06:34 mcmillhj left 06:43 hami joined, p6bannerbot sets mode: +v hami, renormalist joined 06:44 p6bannerbot sets mode: +v renormalist
Xliff TimToady: Yes, that was the intention. Thanks for deciphering it with the meager scraps I left. 06:47
06:49 saki joined, saki left 06:53 fake_space_whale left 06:56 domidumont joined 06:57 p6bannerbot sets mode: +v domidumont 06:59 mcmillhj joined, p6bannerbot sets mode: +v mcmillhj 07:02 saki joined, saki left 07:03 mcmillhj left 07:04 xinming left 07:05 xinming joined 07:06 p6bannerbot sets mode: +v xinming 07:17 zakharyas joined 07:18 mcmillhj joined, p6bannerbot sets mode: +v zakharyas 07:19 p6bannerbot sets mode: +v mcmillhj 07:22 mcmillhj left 07:30 hami left, Ven` joined, saki joined 07:31 p6bannerbot sets mode: +v Ven`, p6bannerbot sets mode: +v saki 07:34 dakkar joined 07:35 p6bannerbot sets mode: +v dakkar 07:38 spycrab0 joined, p6bannerbot sets mode: +v spycrab0 07:39 quester left 07:47 mcmillhj joined, p6bannerbot sets mode: +v mcmillhj 07:51 rindolf joined, mcmillhj left 07:52 p6bannerbot sets mode: +v rindolf 08:09 masak left 08:10 mcmillhj joined, statisfiable6 left, evalable6 left, p6bannerbot sets mode: +v mcmillhj, masak_ joined, p6bannerbot sets mode: +v masak_, mcmillhj left 08:18 HaraldJoerg joined 08:19 p6bannerbot sets mode: +v HaraldJoerg 08:34 kerframil left 08:40 mcmillhj joined 08:41 p6bannerbot sets mode: +v mcmillhj
buggable New CPAN upload: Trait-Env-0.3.3.tar.gz by SCIMON modules.perl6.org/dist/Trait::Env:cpan:SCIMON 08:43
08:45 mcmillhj left 08:51 mcmillhj joined 08:52 statisfiable6 joined, ChanServ sets mode: +v statisfiable6, p6bannerbot sets mode: +v mcmillhj 08:53 p6bannerbot sets mode: +v statisfiable6 08:56 mcmillhj left 09:01 araujo left 09:10 woolfy joined 09:11 p6bannerbot sets mode: +v woolfy 09:16 mcmillhj joined 09:17 p6bannerbot sets mode: +v mcmillhj 09:18 scimon joined 09:19 p6bannerbot sets mode: +v scimon, xinming left, xinming joined 09:20 p6bannerbot sets mode: +v xinming 09:21 mcmillhj left 10:02 marcusramberg left, marcusramberg joined 10:03 kini left, p6bannerbot sets mode: +v marcusramberg 10:10 kini joined, p6bannerbot sets mode: +v kini, x[LGWs4x4i]uG2N0 left 10:11 Ven` left 10:14 x[LGWs4x4i]uG2N0 joined 10:15 p6bannerbot sets mode: +v x[LGWs4x4i]uG2N0 10:18 spycrab0 left 10:27 lizmat joined 10:28 p6bannerbot sets mode: +v lizmat 10:53 MasterDuke joined 10:54 p6bannerbot sets mode: +v MasterDuke, MasterDuke left, MasterDuke joined, herbert.freenode.net sets mode: +v MasterDuke, p6bannerbot sets mode: +v MasterDuke 10:55 jeromelanteri joined 10:56 p6bannerbot sets mode: +v jeromelanteri 10:57 pmurias joined 11:10 eliasr joined, p6bannerbot sets mode: +v eliasr 11:11 Ven` joined, p6bannerbot sets mode: +v Ven` 11:33 pmurias left 11:37 zakharyas left, pmurias joined, p6bannerbot sets mode: +v pmurias 11:39 sena_kun joined 11:40 p6bannerbot sets mode: +v sena_kun 11:41 jeromelanteri left, pmurias left 11:42 pmurias joined, p6bannerbot sets mode: +v pmurias 11:50 angelds joined 11:51 p6bannerbot sets mode: +v angelds 11:52 pecastro joined 11:53 p6bannerbot sets mode: +v pecastro, pmurias left, pmurias joined 11:54 p6bannerbot sets mode: +v pmurias 12:00 MasterDuke left 12:03 MasterDuke joined, p6bannerbot sets mode: +v MasterDuke 12:04 MasterDuke left, MasterDuke joined, herbert.freenode.net sets mode: +v MasterDuke, p6bannerbot sets mode: +v MasterDuke 12:06 Zoffix joined, p6bannerbot sets mode: +v Zoffix, p6bannerbot left, p6bannerbot joined, ChanServ sets mode: +o p6bannerbot 12:07 Zoffix left 12:12 ilmari left
Geth doc: MorayJ self-assigned named capture using non-capturing group confusion github.com/perl6/doc/issues/1634
MorayJ++ created pull request #2286: Clarifies capturing properties of square brackets in regex
12:12
12:12 ilmari joined, ilmari left, ilmari joined, p6bannerbot sets mode: +v ilmari, _nipc joined 12:13 p6bannerbot sets mode: +v ilmari, p6bannerbot sets mode: +v _nipc 12:24 pmurias left 12:30 pmurias joined 12:31 p6bannerbot sets mode: +v pmurias
DrForr .tell bbkr Hi, I was looking at your JSONRPC server for implementing microsoft.github.io/language-serve...cification - It uses request names like 'textDocument/didOpen' which obviously don't map to Perl method names. Do you have any thoughts on how to implement these? I'm thinking either a separate Route argument or a forwarding method that picks off the last part of a route name, handing it off to another class. Or a way to de 12:34
yoleaux DrForr: I'll pass your message to bbkr.
12:39 angelds left 12:55 DracoChartin joined, p6bannerbot sets mode: +v DracoChartin 12:56 spycrab0 joined, p6bannerbot sets mode: +v spycrab0
DracoChartin i'm having some trouble with basic case insensitive matching "GTcGGCTCCG" ~~ m:i:global/CG/; returns (「cG」 「CG」) but "GTcGGCTCCG".match("CG",:i,:global); returns (「CG」). what am i missing? 13:02
timotimo oh, that's interesting
m: "GTcGGCTCCG".match("CG", :i, :global).say 13:03
camelia (「CG」)
timotimo m: "GTcGGCTCCG".match(/CG/, :i, :global).say
camelia (「CG」)
timotimo m: "GTcGGCTCCG".match(/:i CG/, :global).say
camelia (「cG」 「CG」)
timotimo let's have a look at the code
s: Str, "match", \("CG", :i, :global)
oh, bot's not here
oh, huh, method match doesn't seem to have support for :i 13:05
13:06 avar left
DracoChartin hmm yess the :i adverb is not listed for match in the docs: docs.perl6.org/routine/match - Do you know why match does not support :i 13:07
timotimo it should definitely be possible to implement it 13:10
jnthn It's because rules are compiled, and :i is a compilation option
timotimo jnthn: but if you supply a Str, it'll just make it / "$to-match" / anyway! 13:11
which ... we could do it faster for Str than that
jnthn timotimo: True, though it's probably more confusing to have .match accept :i only in some cases
timotimo mhh
tbrowder_ can someone please help with my git problem with perl6/roast? 13:18
timotimo what's happening? 13:19
13:20 kerframil joined
tbrowder_ my setup for both roast and rakudo are the same as far as i can tell: git remote -v shows origin to my repo on github and upstream to perl6/roast and rakudo/rakudo. 13:21
13:23 p6bannerbot left
timotimo OK 13:23
13:23 zakharyas joined 13:24 faraco joined, faraco left, faraco joined
tbrowder_ i start a new branch on each with "git checkout master; git pull upstream master". update origin "git push origin master". "git checkout -b new-branch" 13:24
work...work... "git commit -a -m'msg'"; "git push origin new-branch". 13:25
got to github in browser and start the PR... on rakdo all looks fine, but on my last several roast pr's it looks like some of the commits are not getting merge or are getting merged twi\ce. 13:26
13:26 inbioz joined
timotimo git log --graph --pretty=format:'%Cred%h%Creset -%C(yellow)%d%Creset %s %Cgreen(%cr) %Cblue<%an>%Creset' --abbrev-commit --date=relative --all 13:27
^- this is my alias for "git lg"
it shows stuff with nice lines that tell you how the commits relate
maybe that can tell you what's wrong
it could be that you have a merge commit in there that pulls master into your branch or something
13:27 faraco left, pmurias left
tbrowder_ *twice. also, only with roast, i always get an automatic merge msg template when updating from upstream but not with rakudo. 13:27
timotimo ah, yes, that's when you've based your branch on a remote branch that has changed in the mean time, when your branch also had changes 13:29
tbrowder_ timotimo: your theory sounds likely, thanks for the git code!
timotimo since "git pull" is basically "git fetch + git merge"
(and "git pull --rebase" is "git fetch + git rebase")
13:30 pmurias joined
tbrowder_ so, in general, should i alway be rebasing when i "update" from master? 13:31
13:31 AlexDani` joined
timotimo not necessarily 13:32
it's basically personal preference 13:33
though the git history can become really weird when you have a really big amount of merges
well, only weird when looking at it with one of the graphical things like the git log command i had above or gitk
13:34 AlexDaniel left
Geth doc: f596e218f4 | MorayJ++ | doc/Language/regexes.pod6
Clarifies capturing properties of square brackets in regex

Also clarifies how round brackets work in name capture.
Also take the mystery out of what we are going to see in subrules.
13:35
synopsebot Link: doc.perl6.org/language/regexes
doc: 198f0ac55e | MorayJ++ (committed using GitHub Web editor) | doc/Language/regexes.pod6
Merge pull request #2286 from MorayJ/regex-clarity

Clarifies capturing properties of square brackets in regex
13:37 aborazmeh joined, aborazmeh left, aborazmeh joined 13:43 AlexDani` is now known as AlexDaniel 13:44 squashable6 joined, squashable6 left 13:46 sauvin left 13:58 aborazmeh left 14:00 mcmillhj joined 14:01 kerframil left, Ven` left 14:07 pecastro_ joined 14:08 skids joined, pecastro left 14:11 Ven` joined 14:16 curan left 14:17 avar joined, avar left, avar joined 14:18 inbioz_ joined 14:19 DracoChartin left 14:21 inbioz left 14:22 faraco joined, faraco left, faraco joined 14:24 faraco left 14:26 Ven` left 14:27 pmurias left 14:29 pmurias joined 14:32 Ven` joined 14:33 inbioz_ left 14:34 inbioz joined 14:36 lizmat left 14:39 inbioz left, inbioz joined 14:49 molaf joined 14:51 saki left 14:52 saki joined 14:59 inbioz_ joined 15:01 abraxxa1 left 15:02 inbioz left
Geth doc: 5954ab03db | (JJ Merelo)++ | doc/Language/syntax.pod6
Reflow and hashtag correction

Can't figure out what the TODO refers to, so it's just eliminated. Refs #2277
15:06
synopsebot Link: doc.perl6.org/language/syntax
15:18 zakharyas left 15:19 squashable6 joined 15:20 AlexDaniel left, AlexDaniel joined 15:21 robertle left 15:26 ChanServ sets mode: +o AlexDaniel, AlexDaniel sets mode: -z
AlexDaniel onehu 15:26
squashable6: help
15:26 AlexDaniel sets mode: -m
AlexDaniel squashable6: help 15:26
squashable6 AlexDaniel, Available commands: status, log, quiet, loud # See wiki for more examples: github.com/perl6/whateverable/wiki/Squashable
AlexDaniel I mean… talking to yourself is not that fun…
p6bannerbot is gone for some reason
15:27 ChanServ sets mode: -o AlexDaniel 15:28 Geeky_Bear joined
Geeky_Bear A fascinating blog where freenode staff member Matthew mst Trout recounts his experiences of eye-raping young children MattSTrout.com/ 15:28
I thought you guys might be interested in this blog by freenode staff member Bryan kloeri Ostergaard bryanostergaard.com/
With our IRC ad service you can reach a global audience of entrepreneurs and fentanyl addicts with extraordinary engagement rates! williampitcock.com/
AlexDaniel ooooooooooh crap
Geeky_Bear Read what IRC investigative journalists have uncovered on the freenode pedophilia scandal encyclopediadramatica.rs/Freenodegate
15:28 ChanServ sets mode: +o AlexDaniel, AlexDaniel sets mode: +m
tadzik :D 15:30
leaving a gate to hell open for 3 seconds and immediately this happen
AlexDaniel OK for anyone wondering why am I doing all that – the bot is gone, and with +z you can be talking to yourself without realizing that the channel is +z +m
15:31 Geeky_Bear left
AlexDaniel so someone earlier said that the attack got quieter… 15:31
15:31 troys joined
AlexDaniel and I assumed we can try it out while we're looking for the bot, but yeah, you see 15:31
15:34 Guest36103 joined 15:35 AlexDaniel is now known as timewasteable6, timewasteable6 is now known as AlexDaniel
AlexDaniel I'll fix it all in a minute 15:36
15:36 FiendKing04 joined 15:37 timewasteable6 joined, timewasteable6 left 15:38 timewasteable6 joined, timewasteable6 left 15:39 timewasteable6 joined, FiendKing04 left 15:40 ChanServ sets mode: -o AlexDaniel 15:41 ChanServ sets mode: +o AlexDaniel, Guest36103 left 15:43 timewasteable6 left, timewasteable6 joined, timewasteable6 left 15:44 timewasteable6 joined, ChanServ sets mode: +o timewasteable6
AlexDaniel SUCCESS 15:44
15:44 AlexDaniel sets mode: +z
tadzik . o O ( the child doesn't want to swear! ) 15:44
15:45 undersightable6 joined, pmurias left 15:46 timewasteable6 sets mode: +v undersightable6 15:47 ChanServ sets mode: +vvvv troys squashable6 inbioz_ saki, ChanServ sets mode: +vvvv molaf Ven` avar skids, ChanServ sets mode: +vvv pecastro_ mcmillhj zxcvz
AlexDaniel ok I think we're now back to normal 15:48
the only issue is that I'm running that bot from my own laptop, which is LTA 15:49
scimon So. Freenode has pissed some people off then? 15:52
15:53 domidumont left 15:55 saki left 15:56 nirel6 joined 15:57 timewasteable6 sets mode: +v nirel6, nirel6 left 16:03 fake_space_whale joined, timewasteable6 sets mode: +v fake_space_whale 16:05 nesthib joined, timewasteable6 sets mode: +v nesthib
El_Che the spammers are back 16:06
damn
16:08 sena_kun left, nesthib left 16:09 sena_kun joined, molaf left 16:10 timewasteable6 sets mode: +v sena_kun, mcmillhj left, mcmillhj joined 16:11 timewasteable6 sets mode: +v mcmillhj
Summertime hmm, a perl6bannerbotbannerbot is needed, who will watch the watchbots? 16:12
timotimo undersightable6
16:13 saki joined 16:14 timewasteable6 sets mode: +v saki
Summertime jeez AD really does have a bot for everything 16:14
16:15 HaraldJoerg left, mcmillhj left
TimToady suspects that some of the spam is just mainland hackers trying to score brownie points for infowarfare on a certain non-mainland area 16:16
16:20 saki left
Summertime I'm just dreading the day they start adding 1+ minute delays before each message, what then? captchas!? x-x 16:21
also guessing by the amount of ping timeouts and other issues, maybe DDoS too? 16:22
16:26 inbioz_ left
[Coke] makes me wonder if IRC is the right platform long term. 16:27
16:27 robertle joined 16:28 timewasteable6 sets mode: +v robertle
Altreus I'm getting a bit swamped in Promise hell 16:29
How do I know when to stop promising stuff and start awaiting? :s
I don't know whether I should continue the Promise paradigm in what I'm writing, or rely on the fact that, because the user is going to be in a tap, I can start blocking 16:30
16:31 dakkar left, mcmillhj joined 16:32 timewasteable6 sets mode: +v mcmillhj 16:34 ChanServ sets mode: -o AlexDaniel 16:35 scimon left, kerframil joined, timewasteable6 sets mode: +v kerframil 16:36 mcmillhj left
timotimo it's definitely a question of API design 16:37
El_Che it seems they are attacking clients that use the pango rendering lib 16:38
timotimo fonts are always a very big problem
i don't remember where it was, but didn't something have font rendering in kernel space? 16:39
16:39 mcmillhj joined
El_Che timotimo: Windows iirc 16:40
timotimo no way!
16:40 timewasteable6 sets mode: +v mcmillhj 16:41 zakharyas joined
El_Che timotimo: googleprojectzero.blogspot.com/201...-1_27.html :) 16:41
16:42 timewasteable6 sets mode: +v zakharyas, UncleSamuel22 joined
timotimo randomascii.wordpress.com/2018/08/...-part-one/ - it has hardly anything to do with that, but i like this blog 16:43
16:43 timewasteable6 sets mode: +v UncleSamuel22, UncleSamuel22 left, Zx32 joined, Zx32 left
El_Che timotimo: yes, I remember that post :) 16:43
timotimo the next post in that series just landed a few days ago
oh, yesterday 16:44
16:44 GuntherDW9 joined
El_Che timotimo: not relared but it reminds me of the last problem I had 16:44
16:44 mcmillhj left, timewasteable6 sets mode: +v GuntherDW9
El_Che timotimo: word in a VM suddenly (after an update) started consuming 100% of the cpu of the VM. 16:45
timotimo does it already browse the internet?
El_Che timotimo: it tuns out, MS phones home even if it's disabled in the settings, and the domain was blocked by my pihole
timotimo: needed a group policy to really disable it and the machine was fine
grr
timotimo because my chrome gets to 100% of one core every now and then, and the chrome-internal task manager shows the "Browser" process taking the ~100% and the individual tasks below that add up to like 20% 16:46
16:46 inbioz joined
timotimo hah, so it was trying to connect over and over without back-off? 16:46
El_Che indeed
every sec according to my dns logs
timotimo how did you find out? network dump?
ah, mhm
16:46 GuntherDW9 left
El_Che timotimo: yes 16:46
16:47 timewasteable6 sets mode: +v inbioz
El_Che it was too weird, because I have a similar setup at work and there it was fine 16:47
that phoning home is getting really annyoing 16:48
must be worse for people running native windows 16:49
timotimo well, the market better vote with their wallets
El_Che lossing a cpu just to that
16:49 Kaiepi left
timotimo except if nobody actually cares enough about that to run away from microsoft office :) 16:49
El_Che timotimo: it's a captive market
16:50 inbioz left 16:51 of joined
timotimo i'm glad i don't have to do the kind of stuff you would use MS Office for very often 16:52
LibreOffice is ... also not terribly good
16:52 timewasteable6 sets mode: +v of 16:53 Ven` left
El_Che timotimo: I wrote a thesis on Star Office, it was okayish 16:54
16:54 of left
El_Che timotimo: problem is when people need your document in word formats for commenting :( 16:55
16:55 mcmillhj joined
El_Che timotimo: the word export is not good enough yet 16:55
when possible I send pdf and that's the end of it :)
16:56 timewasteable6 sets mode: +v mcmillhj 16:58 molaf joined
Altreus it's almost like if you're in the tap you can await it and if you're not you want to promise it :s 16:58
hmm
this is going to require a lot of sleep since I'm not fluent in async yet :D
16:58 timewasteable6 sets mode: +v molaf
timotimo did you know LO lets you embed the ODT inside the PDF? 16:59
17:00 mcmillhj left 17:07 egos11 joined, mcmillhj joined, egos11 left 17:08 timewasteable6 sets mode: +v mcmillhj 17:10 sauvin joined, timewasteable6 sets mode: +v sauvin
stmuk libreoffice isn't too bad for my purposes 17:21
I've done accounts on it for 7 years and edited the odd PDF using it 17:22
I'm sure it's not 100% compatible with modern office but modern office has such an awful UI I've never used it
17:26 lizmat joined 17:27 timewasteable6 sets mode: +v lizmat 17:28 drakythe joined, timewasteable6 sets mode: +v drakythe 17:35 zakharyas left, drakythe left
timotimo well, microsoft was so nice as to open up the specification of their file formats!! 17:46
17:50 Netham4520 joined 17:51 timewasteable6 sets mode: +v Netham4520 17:55 Netham4520 left
El_Che stmuk: you're are right. But the problems are with non-technical people. They don't know/care what you used, but wonder why your document is so badly formatted. 18:01
it sucks
libre office + pdf works fine most of the time
the problem arrives when you have to collective edit the same document
18:02 _nipc left
timotimo that's not easy in general 18:02
though with google docs it's not so difficult
El_Che my work laptop does not have word, it's a linux machine :)
but I have small windows laptop around in case when I really need it :)
not very often, I use it as a spotify player :)
though remote desktop :) 18:03
18:04 Sgeo left 18:28 beeman joined, timewasteable6 sets mode: +v beeman 18:30 ttkp6 joined 18:31 timewasteable6 sets mode: +v ttkp6 18:32 skids left 18:43 HaraldJoerg joined 18:44 timewasteable6 sets mode: +v HaraldJoerg 18:45 mcmillhj left, Kaiepi joined 18:46 timewasteable6 sets mode: +v Kaiepi 18:47 zakharyas joined 18:48 lichtkind joined, timewasteable6 sets mode: +v zakharyas, timewasteable6 sets mode: +v lichtkind, mcmillhj joined 18:49 zakharyas left, timewasteable6 sets mode: +v mcmillhj 18:53 diakopter left
lichtkind i have question regarding the role Numeric 18:56
so funny here is another user calling himself licht king too :) 19:00
sena_kun lichtkind, please, ask your question, don't ask to ask. :) there are people who are here to help anyway, so with asking the question first you make it easier to help for a number of reasons. 19:02
19:06 xinming_ joined
lichtkind numeric is like mother of all numeric types calling (4.6).Numeric does not change the value only exception to rule is type boolean True.Numeric is 1 is this a design or fully intended? 19:07
19:07 timewasteable6 sets mode: +v xinming_
lichtkind sena_kun, i know it just took a while to formulate the question 19:07
geekosaur lichtkind, that works for all Enums because they're all subclasses of Int 19:08
19:08 mcmillhj left
geekosaur m: say True^.mro 19:09
camelia No such method 'mro' for invocant of type 'Any'
in block <unit> at <tmp> line 1
lichtkind thanks i didn't know Boll is a enum
geekosaur m: say Bool^.mro
camelia No such method 'mro' for invocant of type 'Any'
in block <unit> at <tmp> line 1
geekosaur bah
19:09 xinming left
geekosaur is a bit scerambled today :/ 19:09
sena_kun m: say True.^mro 19:10
camelia ((Bool) (Int) (Cool) (Any) (Mu))
19:10 kerframil left
lichtkind hanks a lot i asked to clarify how implement a feature in my module or if i just found a bug, still im not sure im satisfied with that behaviour 19:11
geekosaur oh, backwards. I did say scrambled : 19:12
19:14 ChanServ sets mode: +v AlexDaniel
AlexDaniel geekosaur: but why .Numeric does not return True? 19:15
lichtkind thanks geekosaur
AlexDaniel m: say True ~~ Numeric
camelia True
Summertime @AlexDaniel, did you update your IRC::Client? there was a change in there to allow for send-cmd to work with freenode's bugs
AlexDaniel Summertime: oh? Oh… I have no idea 19:16
Summertime: I guess I didn't
Summertime sorry for not mentioning earlier!
geekosaur AlexDaniel, not sure, may be related to the way method resolution has a tendency to use the type it knows instead of the one it's derived from, to avoid having to search for the right method? (see also complaints about overriding .gist in subclasses not always being effective because traversing a structure uses the type it knows instead of the actual type) 19:17
geekosaur doesn't recalld etails there except that it's an optimization that is prone to catch people by surpruse
19:18 rfold joined, mcmillhj joined
AlexDaniel m: dd IntStr.new(42, ‘foo’).Numeric 19:18
camelia 42
19:19 timewasteable6 sets mode: +v rfold, timewasteable6 sets mode: +v mcmillhj 19:21 dant joined, timewasteable6 sets mode: +v dant, pukku joined, timewasteable6 sets mode: +v pukku
pukku Out of curiosity, would there be an easy way to use the nqp JavaScript version to parse Perl6 and generate a syntax tree? 19:23
timotimo should be very easy
19:23 mcmillhj left
timotimo if you have access to Perl6::Grammar and Perl6::Compiler (which nqp::getcomp can give you) 19:23
all you need to do is run the eval method with a "target" option of either "parse" or "ast" or "optimize" depending on your needs
dant Can I install modules via zef in an alternate location? I'm trying to package something for distribution but it would be awkard to include a ~/.zef directory in my package 19:25
timotimo zef has a --to option
i don't know how you use it
i mean beyond passing a path to it
pukku OK, so now I just need to figure out which NPM package I should install. 19:27
timotimo you could check if there's a travis file or something
19:34 mcmillhj joined, Celelibi left, timewasteable6 sets mode: +v mcmillhj 19:36 zakharyas joined 19:37 timewasteable6 sets mode: +v zakharyas
dant Thanks timo. I'll investigate zef's "--install-to" option. 19:37
19:37 erry16 joined 19:39 mcmillhj left 19:40 Celelibi joined 19:41 erry16 left, timewasteable6 sets mode: +v Celelibi 19:45 mcmillhj joined, timewasteable6 sets mode: +v mcmillhj
AlexDaniel dant: IIRC something like --to=inst#some-path-here and then PERL6LIB=inst#some-path-here 19:47
AlexDaniel did it a few days ago but can't remember 🤦
pukku I wound up sending an email to P Murias, as suggested on the git repository, because I'm lost. 19:48
However, I also decided to take a look at what the parse target does in the perl6 binary, and it's taking minutes (so far, with no progress) to run over a program that usually executes in seconds. Do you know why this would be taking so long? 19:49
timotimo it's probably spending a whole lot of time constructing the string to print out 19:50
19:50 mcmillhj left
pukku Huh. OK, the moar process is now taking 5G of RAM, so I guess that makes sense. 19:51
That probably doesn't bode well for my plan of using NQP to create a syntax highlighter. That would blow browser memory entirely. 19:52
timotimo it does have a rather big blow-up factor
oh, especially since it indents with two spaces per level 19:53
i'd assume you'll end up with lines starting with multiple kilobytes of spaces at some point
the textual output isn't terribly helpful anyway, you'll want to inspect the match tree manually so that you also get the "from" and "to" values for every single match 19:54
pukku Another issue for my plan is that if I try to just parse a snippet of Perl 6, it won't do it if it can't find the definitions of various functions, so you can't parse it without the context.
timotimo the dumper for parse cuts out the piece of code every node matched, which can sometimes be a whole lot at once (i think it abbreviates?) but it's more difficult to turn that back into location info, especially when the code contains the same thing multiple times in a row, like 1, 1, 1
getting the output of the ast or optimize stages helps with that 19:55
you'll have QAST::WVal nodes where the .value is the object it's refering to, and you have symbol tables available for every QAST::Block as well
19:58 HaraldJoerg left 19:59 HaraldJoerg joined
pukku If I try `perl6 --target=ast -- foo.pl6`, where foo.pl6 contains only some of my program, it still complains about undeclared routines, just like the `parse` target. Back to square 1. 19:59
timotimo yeah, that's a compile-time error
19:59 timewasteable6 sets mode: +v HaraldJoerg
timotimo at the end of the ast stage, references like that are already resolved 19:59
20:00 grumble left, mcmillhj joined 20:01 timewasteable6 sets mode: +v mcmillhj 20:05 mcmillhj left 20:09 DarthGandalf left 20:11 pukku left 20:14 grumble joined, timewasteable6 sets mode: +v grumble 20:17 mcmillhj joined 20:18 timewasteable6 sets mode: +v mcmillhj 20:22 mcmillhj left, irco joined 20:23 rfold left, timewasteable6 left, AlexDaniel left, AlexDaniel joined 20:25 Sgeo joined, p6bannerbot joined, ChanServ sets mode: +o p6bannerbot 20:27 grumble left 20:28 grumble joined, p6bannerbot sets mode: +v grumble 20:29 timewasteable6 joined, p6bannerbot sets mode: +v timewasteable6, ChanServ sets mode: +o timewasteable6, timewasteable6 left 20:30 DarthGandalf joined, p6bannerbot sets mode: +v DarthGandalf 20:31 dct joined, p6bannerbot sets mode: +v dct 20:33 TimToady left 20:36 mcmillhj joined, woolfy left 20:37 p6bannerbot sets mode: +v mcmillhj 20:40 zakharyas left 20:41 SleePy6 joined, mcmillhj left, SleePy6 left 20:42 itaipu joined 20:43 p6bannerbot sets mode: +v itaipu 20:48 Waggie25 joined 20:50 Waggie25 left 20:51 mcmillhj joined 20:52 p6bannerbot sets mode: +v mcmillhj 20:55 TimToady joined 20:56 mcmillhj left, p6bannerbot sets mode: +v TimToady 21:06 mcmillhj joined 21:07 p6bannerbot sets mode: +v mcmillhj, kerframil joined, p6bannerbot sets mode: +v kerframil 21:08 molaf left 21:11 mcmillhj left 21:16 lichtkind left, AlexDaniel left 21:19 Zord2 joined 21:21 Zord2 left 21:22 mcmillhj joined 21:23 p6bannerbot sets mode: +v mcmillhj 21:25 lichtkind joined, lichtkind left, hythm_ joined, p6bannerbot sets mode: +v hythm_ 21:27 xinming_ is now known as xinming
hythm_ p6: my @a1 = 1, 2; my @a2 = 2, 1; say so all(@a1) == one(@a2); 21:28
camelia True
21:28 mcmillhj left
hythm_ Is using junctions to test one to one relation between two arrays effecient 21:28
21:28 lizmat left
timotimo i think it's quadratic 21:29
perhaps better to sort and compare elements from both lists at the same indices
21:29 lizmat joined
hythm_ Thx timotimo, will try that 21:29
timotimo has to be the right sorting function, depending on what you have, of course 21:30
21:30 p6bannerbot sets mode: +v lizmat
hythm_ Noted 21:30
timotimo if two elements are considered the same by the sorting function but not by the comparison function, you'd be in trouble :) 21:31
if your values have a WHICH with a ObjValueAt or what it's called, you can put them into a Set and WHICH them? 21:32
m: say set(1, 2).WHICH; say set(2, 1).WHICH
camelia Set|AEA2F4CA275C3FE01D5709F416F895F283302FA2
Set|AEA2F4CA275C3FE01D5709F416F895F283302FA2
timotimo iirc this also sorts
21:33 poxifide29 joined, poxifide29 left 21:36 HaraldJoerg left, rindolf left, hythm__ joined, p6bannerbot sets mode: +v hythm__, xinming left 21:37 mcmillhj joined, xinming joined, p6bannerbot sets mode: +v mcmillhj 21:38 hythm_ left
hythm__ My understanding is junctions execute in parallel, so would not that make it faster than sorting 21:38
21:38 p6bannerbot sets mode: +v xinming
timotimo they are not implemented to take advantage of parallel execution yet 21:38
and if the individual tasks are so small, like comparing two strings, the overhead from parallelization will be much more costly than what you can gain
hythm__ Makes sense 21:39
timotimo we do have .hyper and .race that parallelize, but they are used differently from junctions 21:40
21:42 mcmillhj left
hythm__ Will check these too, thanks for explaining 21:42
timotimo no prob! 21:43
21:45 hythm__ left 21:52 mcmillhj joined 21:53 p6bannerbot sets mode: +v mcmillhj 21:57 ski_ joined, mcmillhj left 22:02 ski_ left 22:06 mcmillhj joined 22:07 p6bannerbot sets mode: +v mcmillhj 22:11 mcmillhj left 22:15 sena_kun left 22:23 mcmillhj joined 22:24 p6bannerbot sets mode: +v mcmillhj 22:28 mcmillhj left 22:36 dct left 22:37 shreyansh_k26 joined 22:38 mcmillhj joined, shreyansh_k26 left, p6bannerbot sets mode: +v mcmillhj 22:42 mcmillhj left 22:43 Xliff left 22:52 ZofBot left 22:56 mcmillhj joined, p6bannerbot sets mode: +v mcmillhj 23:01 mcmillhj left
vrurg Are there any way to get base type for typed Array/Hash/etc? Like .WHO which returns 'Hash[Typed]' but without []? I could stip the brackets off with a regex but looking for something more reliable. 23:09
23:13 Xliff joined, p6bannerbot sets mode: +v Xliff 23:14 stmuk_ joined 23:15 mcmillhj joined
SmokeMachine m: my Int @a; say @a.of 23:15
camelia (Int)
23:15 p6bannerbot sets mode: +v stmuk_
SmokeMachine vrurg: ^^ 23:15
23:15 p6bannerbot sets mode: +v mcmillhj
SmokeMachine m: my Str %bla{Int}; say %bla.of; say %bla.keyof 23:16
camelia (Str)
(Int)
vrurg SmokeMachine: Sorry, I need 'Array' or 'Hash' for that.
23:16 pecastro_ left
SmokeMachine m: say %.^name 23:17
camelia 5===SORRY!5=== Error while compiling <tmp>
Variable %.^name used where no 'self' is available
at <tmp>:1
------> 3say %.^name7⏏5<EOL>
expecting any of:
argument list
term
23:17 stmuk left
vrurg Not the element type. Sorry for not being clear. 23:17
SmokeMachine m: say m %a.^name
camelia 5===SORRY!5===
Regex not terminated.
at <tmp>:1
------> 3say m %a.^name7⏏5<EOL>
Couldn't find terminator % (corresponding % was at line 1)
at <tmp>:1
------> 3say m %a.^name7⏏5<EOL>
expecting any of:
%
SmokeMachine m: say my %a.^name
camelia Hash
vrurg m: say Array[Int].^namew
camelia No such method 'namew' for invocant of type 'Perl6::Metamodel::ClassHOW+{<anon>}+{<anon>}'. Did you mean any of these?
name
new

in block <unit> at <tmp> line 1
vrurg say Array[Int].^name
m: say Array[Int].^name
camelia Array[Int]
vrurg m: my Str @a; say @a.^name 23:18
camelia Array[Str]
23:18 stmuk joined
SmokeMachine m: say Array[Int] ~~ Array 23:18
camelia True
SmokeMachine isnt that enougth?
Xliff Is there a way to do something like this: "^3 + (2 xx 3)" and have the result be (2, 3, 4)
m: (^3 + 2 xx 3).say 23:19
camelia (2..^5 2..^5 2..^5)
23:19 p6bannerbot sets mode: +v stmuk, dimi34ka4 joined
Xliff m: ((^3) + 2 xx 3).say 23:19
camelia (2..^5 2..^5 2..^5)
vrurg SmokeMachine: No. I need to manually simulate Perl's type coercion via calling type methods on values.
Xliff m: ((0, 1, 2) + 2 xx 3).say
camelia (5 5 5)
Xliff m: ((0, 1, 2) + |(2 xx 3)).say
camelia 6
vrurg Works fine for simple arrays/hashes but fails for typed.
TimToady m: say ^3 Z+ 2 xx 3
camelia (2 3 4)
23:19 stmuk_ left 23:20 mcmillhj left
Xliff TimToady++ ! 23:20
Saving my but again.
TimToady m: say ^3 »+« 2 xx 3
camelia Lists on either side of non-dwimmy hyperop of infix:<+> are not of the same length
left: 3 elements, right: 1 elements
in block <unit> at <tmp> line 1
TimToady m: say ^3 »+« (2 xx 3)
camelia (2 3 4)
Xliff m: say (1, 2, 3) »+&« (0xffff xx 3) 23:21
camelia (1 2 3)
Xliff \o/
SmokeMachine m: say Array[Int].^mro[1]
camelia (Array)
SmokeMachine m: say Hash[Int].^mro[1]
camelia (Hash)
vrurg Alternatively, is there a method in the core which would do coercing any value in any type? The same which is (presumably) used for =
SmokeMachine: Oh! Exactly! Still a workaround, but that's faster than regexing! Thanks! 23:22
SmokeMachine :)
TimToady m: say ^3 Z+ 2 xx * 23:23
camelia (2 3 4)
TimToady with Z you can just make the right side "whatever" big and it'll shorten to the left side
23:23 dimi34ka4 left
SmokeMachine m: say Hash[Int].^mro.first: Array | Hash | List 23:24
camelia (Hash[Int])
TimToady alternatively, you can use a dwimmy hyper to replicate the right side:
m: say ^3 »+» 2
camelia (2 3 4)
SmokeMachine m: say Hash[Int].^mro.first: { $_ !~~ Hash[Int] && $_ ~~ Array | Hash | List }
camelia (Hash)
SmokeMachine m: say Hash[Int].^mro.first: * === Array | Hash | List 23:25
camelia (Hash)
23:25 Sgeo left
SmokeMachine vrurg: ^^ 23:25
23:25 Sgeo joined
vrurg SmokeMachine: Thanks, but I wouldn't limit myself to these three only. That could be a custom typed class, for example. 23:26
23:26 p6bannerbot sets mode: +v Sgeo 23:31 mcmillhj joined 23:32 p6bannerbot sets mode: +v mcmillhj
SmokeMachine m: say Hash[Int].^parents.head 23:35
camelia (Hash)
23:36 mcmillhj left, avar left
SmokeMachine m: say Hash[Int].^parents: :local # vrurg 23:37
camelia ((Hash))
23:38 avar joined, avar left, avar joined, p6bannerbot sets mode: +v avar 23:39 p6bannerbot sets mode: +v avar
vrurg SmokeMachine: didn't know parents has this param. That's the most elegant one, my biggest thanks! 23:40
23:40 ellipsis left, Sgeo_ joined
SmokeMachine :) 23:40
23:40 p6bannerbot sets mode: +v Sgeo_
SmokeMachine m: say class :: is Hash is Array {}.^parents: :local # vrurg but depending on what you want, this can be a problem... 23:41
camelia ((Hash) (Array))
23:41 Sgeo left 23:42 Sgeo__ joined
vrurg SmokeMachine: coercion isn't possible for an anonymous class anyway. So, this is not a problem. 23:42
23:43 p6bannerbot sets mode: +v Sgeo__
vrurg I only coerce values if $value.^can($type-name) 23:43
SmokeMachine m: say class IfIAddAName is Hash is Array {}.^parents: :local
camelia ((Hash) (Array))
SmokeMachine m: say class IfIAddAName is Hash is Array {method Array{[]}; method Hash {{}}}.^parents: :local 23:44
camelia ((Hash) (Array))
vrurg Understandable. Then there is no IfIAddAName on Cool by default. Or it is there and then I get the class name as $type-name and the rest is not my responsibility.
23:44 Sgeo_ left
vrurg I mean, how would Perl resolve: my IfIAddAName $v = Str; ? 23:44
Str is "something" 23:45
SmokeMachine I dont think it would...
23:45 mcmillhj joined
vrurg Only if "something".^can('IfIAddAName') - i.e. the class developer took care of this coercion. 23:45
23:46 p6bannerbot sets mode: +v mcmillhj
vrurg So, generally, shouldn't be an issue. 23:46
SmokeMachine m: class IfIAddAName is Hash is Array {method Array{[]}; method Hash {{}}}; my IfIAddAName $v = Str
camelia Type check failed in assignment to $v; expected IfIAddAName but got Str (Str)
in block <unit> at <tmp> line 1
vrurg m: class IfIAddAName is Hash is Array {method Array{[]}; method Hash {{}}}; my IfIAddAName $v = "a string";
camelia Type check failed in assignment to $v; expected IfIAddAName but got Str ("a string")
in block <unit> at <tmp> line 1
vrurg But you helped me to avoid a bug because before getting local parents I would have to check if .of() is not Mu. 23:48
m: say Array.^parents: :local
camelia ((List))
SmokeMachine m: class IfIAddAName is Hash is Array {method Array{[]}; method Hash {{}}}; use MONKEY-TYPING; augment class Str {method IfIAddAName { IfIAddAName.new }}; my IfIAddAName $v = Str
camelia Type check failed in assignment to $v; expected IfIAddAName but got Str (Str)
in block <unit> at <tmp> line 1
SmokeMachine m: class IfIAddAName is Hash is Array {method Array{[]}; method Hash {{}}}; use MONKEY-TYPING; augment class Str {method IfIAddAName { IfIAddAName.new }}; my IfIAddAName() $v = Str
camelia 5===SORRY!5=== Error while compiling <tmp>
Coercion IfIAddAName(Any) is insufficiently type-like to qualify a variable
at <tmp>:1
------> 3 IfIAddAName.new }}; my IfIAddAName() $v7⏏5 = Str
expecting any of:
constraint
vrurg Try with a string, not type. 23:49
m: class IfIAddAName is Hash is Array {method Array{[]}; method Hash {{}}}; use MONKEY-TYPING; augment class Str {method IfIAddAName { IfIAddAName.new }}; my IfIAddAName() $v ="a" 23:50
camelia 5===SORRY!5=== Error while compiling <tmp>
Coercion IfIAddAName(Any) is insufficiently type-like to qualify a variable
at <tmp>:1
------> 3 IfIAddAName.new }}; my IfIAddAName() $v7⏏5 ="a"
expecting any of:
constraint
23:50 mcmillhj left
vrurg m: class IfIAddAName is Hash is Array {method Array{[]}; method Hash {{}}}; use MONKEY-TYPING; augment class Str {method IfIAddAName { IfIAddAName.new }}; my IfIAddAName $v = 23:50
camelia 5===SORRY!5=== Error while compiling <tmp>
Malformed initializer
at <tmp>:1
------> 3 IfIAddAName.new }}; my IfIAddAName $v =7⏏5<EOL>
expecting any of:
prefix
term
vrurg m: class IfIAddAName is Hash is Array {method Array{[]}; method Hash {{}}}; use MONKEY-TYPING; augment class Str {method IfIAddAName { IfIAddAName.new }}; my IfIAddAName $v = "a"
camelia Type check failed in assignment to $v; expected IfIAddAName but got Str ("a")
in block <unit> at <tmp> line 1
vrurg Ok, whatever...