»ö« 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:00 committable6 joined, unicodable6 joined, greppable6 joined, bisectable6 joined, tardisx_ left, shmibs left, squashable6 left, comborico1611 joined, imcsk8_ left 00:01 aeruder_ left 00:02 tardisx joined, shmibs joined, hobbs joined, hobbs left, hobbs joined, aeruder joined, sftp joined 00:03 cdg left, astronavt left, cdg joined, astronavt joined 00:04 Bucciarati joined 00:08 cdg left 00:10 Altreus joined
lookatme o/ 00:15
El_Che lo 00:22
00:29 epony left
lookatme lol 00:30
00:32 cdg joined 00:34 epony joined 00:36 cdg left
lookatme m: say so 1 ~~ (Int, Str).all; #`(Is < > equal) say so 1 ~~ Int && 1 ~~ Str; 00:45
camelia False
False
00:46 BenGoldberg joined 00:47 wamba left, sena_kun left 00:50 Cabanossi left 00:52 Cabanossi joined 00:54 Actualeyes joined 00:57 troys is now known as troys_
thou I did some more revision on the bug I've been fussing with, and reported it. It's interesting, the problem shows up with type names like Pod::Foo and IO::Foo, but not File::Foo or Test::Foo. So it's a class of built-in types only. gist.github.com/softmoth/c8e90a6e4...9c5931e1b2 01:02
01:04 Zoffix joined
Zoffix thou: I've seen tickets for similar (same?) issues: RT#130794 RT#130200 01:07
synopsebot RT#130794 [new]: rt.perl.org/Ticket/Display.html?id=130794 Cannot import a symbol from precomp if its namespace is occupied
Zoffix There might be more
synopsebot RT#130200 [new]: rt.perl.org/Ticket/Display.html?id=130200 [LTA] Error when attempting to use a package that has one of core namespaces in its name
Zoffix lookatme: yes, those are similar in meaning, except that Junctions are a hint to the compiler that it may use more than one thread to perform the calculation 01:09
lookatme Zoffix, thanks
01:10 margeas left, Zoffix left
lookatme I wonder in this situation, is Perl6 will do short-circuit evaluation in Junction calculation ? like the logical operator && does ? 01:17
01:20 kes joined 01:21 kes is now known as Guest49300, cdg joined 01:24 karlllllllllll joined 01:25 cdg left 01:28 cdg joined 01:29 pilne joined 01:32 cdg left 01:40 rindolf left 01:52 karlllllllllll left 02:00 cdg joined 02:05 cdg left, itaipu left 02:18 mniip left 02:19 comborico1611 left 02:21 Cabanossi left 02:22 Cabanossi joined, mniip joined
bazzaar drat, wordpress ate my array assignment code line in the comment I added to bduggan's advent post, it should have read my @bricks = <ok split ok ok split ==== >; or even my @bricks=['ok', 'split', 'ok', 'ok', 'split', '====']; 02:24
I can't edit it to clean it up :( 02:25
02:29 cdg joined
bazzaar In the words of the Bonzo Dog Doodah Band, 'Sometimes you just can't win ..' :-) 02:30
02:35 cdg left 02:36 piojo joined 02:41 mson left 02:45 ilbot3 left, char_var[buffer] joined 02:48 aborazmeh left 02:49 Cabanossi left, thou_ joined, thou left 02:52 Cabanossi joined 02:53 cdg joined, bazzaar left 02:56 ilbot3 joined, ChanServ sets mode: +v ilbot3 02:57 thou_ is now known as thou 03:02 lizmat left 03:10 astj left 03:11 Guest49300 left, astj joined 03:23 lizmat joined
piojo If I implement .AT-KEY on a container class to allow assignment to empty elements (like @l[1, 3] = 0, 0; or my $elem := %h<x>; $elem = 0;), the right technique is to use a Proxy container for that, right? 03:26
So if the value doesn't exist, .AT-KEY should return a proxy which, if assigned to, will write back into the data structure. 03:27
03:29 astronavt left 03:30 astronavt joined 03:36 Zoffix joined
Zoffix bazzaar, fixed 03:38
Need to use HTML entities: &lt; &gt;
piojo: unsure. In the core it's implemented using a secret mechanism (that will soonish go away) and not a Proxy
03:41 pilne left
Zoffix lookatme: yes, currently it'll shortcurcuit: github.com/rakudo/rakudo/blob/mast...#L190-L197 But you shouldn't rely on it being executed in order or definitely short-circuited. I imagine that code will be more complex when Junctions will actually autothread, since we wouldn't want them to always autothread and there will need to be a thing that figures out when threading is worth 03:42
it, etc.
piojo Zoffix: thanks. If I go ahead with this, I'll try it with Proxy.
lookatme Zoffix, oh, I think all Junction not worth auto thread in most case :) 03:44
03:54 Guest49300 joined 04:05 Cabanossi left 04:06 eliasr left, Cabanossi joined
Zoffix m: my @a = |((^500_000+3).map: * * 2), 2; say 1 == @a.race(:batch(@a/4)).grep(*.is-prime).elems; say now - INIT now 04:07
camelia True
1.26688215
Zoffix m: my @a = |((^500_000+3).map: * * 2), 2; say 1 == @a.grep(*.is-prime).elems; say now - INIT now
camelia True
2.6217620
Zoffix m: say 2.62/1.266
camelia 2.069510
Zoffix 2x boost for a `one` Junction for a half-mil `*.is-prime` computation :) So somecases are worth it 04:08
04:28 troys_ is now known as troys
lookatme hmm, thanks 04:44
04:51 Zoffix left 05:01 wdudz joined 05:03 stmuk joined, Cabanossi left, Cabanoss- joined 05:04 Cabanoss- is now known as Cabanossi 05:05 stmuk_ left 05:12 committable6 left, committable6 joined, ChanServ sets mode: +v committable6
lookatme m: react { whenever supply { emit 123; @ = (< 1 2 3 4 5 6 >.race.map(sub ($x) { emit $x; } ).list) } { .say } } 05:17
camelia 123
An operation first awaited:
in block <unit> at <tmp> line 1

Died with the exception:
A worker in a parallel iteration (hyper or race) initiated here:
in block <unit> at <tmp> line 1

Died at:
emit without…
05:18
lookatme oh its different thread 05:19
05:30 geekosaur is now known as eviltwin_b, eviltwin_b is now known as geekosaur 05:31 aborazmeh joined, aborazmeh left, aborazmeh joined 05:42 astronavt left 05:47 Cabanossi left 05:49 Cabanossi joined 05:50 khw left 05:57 troys is now known as troys_ 06:01 Guest49300 left 06:04 releasable6 left, releasable6 joined 06:08 cdg left, cdg joined 06:12 cdg left 06:20 bazzaar joined
bazzaar Zoffix: thanks for editing the message, I'll try to remember about using the html entities. There's actually still a redundant one line message that ideally could be deleted, but I'm grateful for what you did. 06:28
06:30 bazzaar left 06:31 Cabanossi left 06:32 xinming joined 06:34 Cabanossi joined 06:35 xinming_ left 06:37 domidumont joined, domidumont left 06:38 nightfrog left 06:39 lowbro joined, lowbro left, lowbro joined 06:43 aborazmeh left 06:44 wamba joined 06:51 troys_ is now known as troys 06:57 BenGoldberg left 07:03 domidumont joined 07:08 piojo left 07:10 troys left 07:11 domidumont left 07:12 domidumont joined 07:13 darutoko joined 07:16 Cabanossi left 07:19 Cabanossi joined 07:24 robertle left, piojo joined 07:29 parv joined 07:35 reportable6 left, reportable6 joined 07:36 abraxxa joined 07:39 wamba left 07:55 kaare_ joined 08:08 kyan left 08:16 Cabanossi left 08:17 Ven`` joined, Ven`` left 08:19 Cabanossi joined 08:33 broquain1 is now known as broquaint 08:40 wamba joined 08:43 clkao left
lizmat clickbaits p6weekly.wordpress.com/2017/12/11/...injectile/ 08:45
yoleaux 11 Dec 2017 17:57Z <AlexDaniel> lizmat: irclog.perlgeek.de/perl6-dev/2017-...i_15562338
lizmat argh, missed that cause of yoleaux absence, I guess 08:46
08:46 clkao joined 08:49 dakkar joined
AlexDaniel lizmat: just edit it in? 08:53
when I was outside perl 6 community, I'd go through several weeklies once a month 08:54
08:54 jsimonet left
AlexDaniel so I think that some edits a few hours later are totally ok 08:55
lizmat well, it's already 10+ hours later now
AlexDaniel so? :) 08:56
maybe we should make a page with a list of this reports… hmmm
AlexDaniel does it
lizmat AlexDaniel++ 08:57
TEttinger what are quasi and injectile? I didn't see them in the bait 08:58
09:00 jsimonet joined
TEttinger oh ok, 007 09:01
lizmat :-)
AlexDaniel reportable6: list 09:03
reportable6 AlexDaniel, gist.github.com/ad96cf9f9e35012465...ed7791e643
09:09 llfourn left, scimon joined 09:10 sena_kun joined
AlexDaniel “You get full refunds if purchasing List.tail doesn't make you happy :-)” bwahahaha 09:10
( twitter.com/LearningPerl6/status/9...4736768007 ) 09:11
09:11 scimon left
lizmat :-) 09:12
09:17 scimon joined, Cabanossi left 09:18 robertle joined 09:19 Cabanossi joined 09:21 geospeck joined 09:25 wander left
parv that sole full-refunds comment is a flippant response, serves only to turn people off. would have been better with (link to) explanation/details. 09:28
moritz humor only turns off people? really? 09:29
it amused at least three people in this channel alone
parv that's great 09:30
moritz parv: anyway, join the conversation on twitter, post a link to the docs that explain how cheap or expensive it is 09:31
parv i would have if i knew about what- or where to find it
moritz parv: sure 09:32
lizmat fwiw, tail(*-N) iterates over the iterable and keeps the last N values it has seen, and starts producing these as soon as the original iterator is exhausted 09:33
so it will only ever keep N values in memory
09:33 thou left
DrForr_ The last I saw about that he was wishing tail() was actually cdr(), a suggestion that I kinda like but isn't in line with the purpose of the method. 09:39
09:41 itaipu joined 09:42 TEttinger left
AlexDaniel … what does it even stand for 09:43
I see that it's a lisp thing, but what's the idea behind naming it “car” and “cdr”? 09:44
DrForr_ Dates all the way back to the PDP-8, when you had an Address Register and Data Register.
(not that modern CPUs don't have separate registers, this was back when these were Big Deals. 09:45
So 'CAR' was the Contents of the Address Register, in other words what the head of the list referenced, and the Data Register was the pointer to the rest of the list.
moritz DrForr_++ # clearest explanation of these names I've seen yet 09:46
so far, the best I've seen was "related to some register names"
DrForr_ I started on the PDP-8 :)
09:46 wamba left, DrForr_ is now known as DrForr
AlexDaniel ahhhh… 09:46
DrForr ) 09:47
AlexDaniel by the way, why not $list[1..*] ? 09:48
09:48 luiz_lha joined
AlexDaniel I mean, when we compare it to $list.tail(*-1) 09:48
lizmat $list[*-1] will keep $list in memory and create a slice on that 09:49
which will probably mean everything is in memory twice, at the current state of things
lizmat intends non-single element slices to always be Seqs 09:50
m: my @a = ^10; dd @a[1..*].WHAT # so everything is in memory twice :-( 09:51
camelia List
lizmat which is a pity in the case of a "for @a[1..*]"
which would then reSeq the generated List, which could have been a Seq in the first place 09:52
AlexDaniel mhm tail seems to be at least twice faster, yeah
lizmat afk& 09:54
AlexDaniel releasable6: next
releasable6 AlexDaniel, Next release in 4 days and ≈9 hours. No blockers. 0 out of 97 commits logged
AlexDaniel, Details: gist.github.com/8e45d50f7d60dc2828...6f599aa3c3
10:32 Cabanossi left 10:34 Cabanossi joined 10:36 wamba joined
Geth doc: 43f06f9781 | (Tom Browder)++ (committed using GitHub Web editor) | doc/Language/pod.pod6
fix typo
10:44
synopsebot Link: doc.perl6.org/language/pod
10:47 pmurias joined
Geth doc: e1acf03ec5 | (Tom Browder)++ (committed using GitHub Web editor) | doc/Language/pod.pod6
add words directly from Synopsis 26

Add info on configuration for delimited blocks.
10:52
10:53 wamba left
scimon Am I missing something obvious? Is there a command line option to get the Pod for an installed module? Like perldoc? 10:53
(Or is there a module for it?)
teatime p6doc ? 10:54
scimon See I thought that was a thing. I don't seem to have it though... I may have to look at my installation again. I was using rakudobrew, then moved to a nice PPA that Johnaton F was updating but it's not been updated since October. That was nice because it linked into the system updater. Hmmmm. 10:56
Found it.
teatime there's packages 11:01
that install a good build, into /opt 11:02
github.com/nxadm/rakudo-pkg/releases
docs.perl6.org/syntax/INTRODUCTION 11:03
timotimo moritz: "I am very happy [...]. I hope you do too!" might want "are" instead of "do"? 11:05
moritz timotimo: thanks, updated 11:07
timotimo good post :)
moritz thanks!
timotimo jeez, the sudoku solver generates a 180 megabyte big profiler html blob 11:11
good thing i'll be writing that frontend to the sql profiler ...
ah, of course, it's deeply recursive 11:15
11:16 Cabanossi left 11:19 Cabanossi joined
scimon On some puzzles yes. 11:19
The problem I have with the rakudo-pkg packages is you have to manually update them and I'm lazy. WAY too lazy. 11:20
Having read all the books in the list bar the first and last (and I'm getting the last next week) I probably should review them. moritz++ for a good breakdown there :) 11:22
(Meanwhile my ongoing plan to get paid to write Perl6 is getting traction :) ) 11:23
Meahwhile I need to learn how solr works. On the bright side the Cro::HTTP::Client lib is great for testing API's with. 11:25
AlexDaniel unicodable6: arrow 11:30
unicodable6 AlexDaniel, U+02C2 MODIFIER LETTER LEFT ARROWHEAD [Sk] (˂)
AlexDaniel, U+02C3 MODIFIER LETTER RIGHT ARROWHEAD [Sk] (˃)
AlexDaniel, 617 characters in total: gist.github.com/0fc9f483c5b8cec57f...786e67a612
AlexDaniel not enough! 11:32
I loved ⌁ so much but then I realized that some fonts render it angled 11:33
unicodable6: right arrow 11:35
unicodable6 AlexDaniel, U+02C3 MODIFIER LETTER RIGHT ARROWHEAD [Sk] (˃)
AlexDaniel, U+02F2 MODIFIER LETTER LOW RIGHT ARROWHEAD [Sk] (˲)
AlexDaniel, 217 characters in total: gist.github.com/59f6280504496db739...6c16fb2083 11:36
11:38 wamba joined
timotimo performance-wise, the sudoku solver spends rather a lot of time in signature binding and dispatchee selecting, which i believe is caused from junction autothreading 11:39
11:40 parv left
timotimo the busiest sub by far is find_best_dispatchee, spending 5_635_069 usec, followed by bind_one_param which spends 2_326_574 usec, then infix:<==> 11:43
infix:<==> from numeric (that's the proto i bet) has 7_097_826 usec inclusive time, but only 1_044_802 usec exclusive. add to that int's infix:<==> with 160_611 usec; that leads me to believe that dispatching the right version of infix:<==> over and over via autothread_junction is what causes all the find_best_dispatchee and bind_one_param work 11:45
11:48 xcm left, piojo_ joined 11:49 xcm joined
Voldenet scimon: Cro::HTTP::Client is decent, but I'd not say it's great 11:50
there's seem to be many use cases docs don't cover, like using custom ca file 11:51
11:52 wamba left
scimon Part of my issue in the past has been getting bitten by HTTPS requests and threading. 11:52
(Which now I think about it I don't need for this)
11:57 wamba joined, cdg joined
scimon caching the resluts of valid, full and complete speed up the solver... (Scimon... stop poking it). 11:58
timotimo is complete just full + valid? 12:00
also, invalidating with a single call to cell could do a quick check of only the impacted pieces of the puzzle 12:01
12:01 wamba left 12:02 cdg left
scimon It is 12:02
timotimo reset, of course, would have to do a full re-check if you don't want to calculate a diff and such
scimon I was so wedded to the complete junction because it was the first one I thought of.
Bit the bullet.
Deleting it.
timotimo it's beautiful. just rather slow :D
scimon And yeah I might change the cache cearing code. 12:03
Version 1.1.1 will be on github soon.
running on my local box mi6 test went from 14 seconds -> 8 seconds.
timotimo nice. 12:04
scimon Does && short circuit?
timotimo it does
scimon So self.full && self.valid will only check validity once the puzzle is full. 12:05
timotimo m: (say "hi" && 0) && (say "bye" && 1)
camelia 0
1
timotimo oops, heh
m: ((say "hi") && 0) && ((say "bye") && 1)
camelia WARNINGS for <tmp>:
hi
Useless use of constant integer 1 in sink context (line 1)
scimon :D
Anyway. The Valid junction is frankly even more bonkers. That's a nights sleep I'm not getting back. 12:06
timotimo okay, that's actually kind of hilarious
oh, probably just a stdout/stderr ordering issue? 12:07
m: ((note "hi") && 0) && ((note "bye") && 1)
camelia WARNINGS for <tmp>:
Useless use of constant integer 1 in sink context (line 1)
hi
timotimo OK, that makes more sense
12:10 rindolf joined 12:12 eliasr joined
scimon timotimo : Just pusshed another change to github. Now it does smart cache clearing on a .cell call. 12:17
12:19 cdg joined
scimon Wow... so "solving" an empty puzzle with yesterdays code on my machine took 22 seconds. With the updates today (mmm caching) down to 3 seconds. 12:19
Weee.
Right. going to ruslte up lunch and write the creator on my lunch break. 12:20
timotimo i wonder how expensive the repeated "$tx,$ty" concatenations are. compared to, say, having $tx*10+$ty, or having a two-dim array caching these strings
12:24 cdg left 12:28 luiz_lha left 12:30 cdg joined 12:32 mahafyi joined, Cabanossi left, jeromelanteri joined 12:34 piojo_ left, Cabanossi joined
scimon I'm terrible at picking the simplest way of doing things (as I see it) over the most efficient. 12:35
12:35 cdg left
timotimo :) 12:40
wait, if you are bad at that, doesn't that mean that you accidentally do things the most efficient way? :) 12:41
12:41 margeas joined
pochi I'm trying to use SetHash to generate a set of uniq objects (Points), how can I tell SetHash to key on something other than object reference? 12:48
timotimo implement a WHICH method for your Point class 12:49
pochi what should it return? 12:52
an int?
timotimo s: Pair, "WHICH", \()
SourceBaby timotimo, Sauce is at github.com/rakudo/rakudo/blob/4fca.../Mu.pm#L26
timotimo we return ObjAt objects from those 12:53
you don't have to (or even should) use nqp:: ops for that, you can just ObjAt.new with a string
s: ObjAt, "new", \(Str:D)
SourceBaby timotimo, Sauce is at github.com/rakudo/rakudo/blob/4fca...Mu.pm#L122
pochi ah
timotimo hm, huh?
s: ObjAt, "new", \(str) 12:54
SourceBaby timotimo, Sauce is at github.com/rakudo/rakudo/blob/4fca...Mu.pm#L122
timotimo that's strange
m: say ObjAt.new("1234")
camelia 1234
timotimo m: say ObjAt.new("1234").perl
camelia ObjAt.new("1234")
timotimo it does work, but sourcery doesn't find it. must be about natives vs objects perhaps?
12:55 cdg joined
ilmari m: (foo => 42).WHICH.say 12:55
camelia Pair|Str|foo|Int|42
ilmari m: (foo => 42).WHICH.WHAT.say 12:56
camelia (ObjAt)
pochi yay! I gets uniq values :-) thank you
12:59 cdg left
scimon Righto. Releasing 1.1.1 and going to start work on the creator... new branch I think. 13:03
13:03 mahafyi_ joined 13:05 mahafyi left, mahafyi_ is now known as mahafyi 13:08 epony left 13:11 wamba joined 13:13 cdg joined 13:16 Cabanossi left 13:17 cdg left
buggable New CPAN upload: Game-Sudoku-1.1.1.tar.gz by SCIMON cpan.metacpan.org/authors/id/S/SC/...1.1.tar.gz 13:18
13:19 Cabanossi joined, wamba left 13:23 unicodable6 left, unicodable6 joined, ChanServ sets mode: +v unicodable6 13:31 natrys joined 13:33 lizmat left 13:38 dogbert2 left 13:40 nickmbooker joined 13:42 dogbert2 joined, mahafyi_ joined, mahafyi left 13:43 mahafyi_ is now known as mahafyi 13:53 cdg joined
timotimo Uncaught RangeError: Maximum call stack size exceeded 13:56
at JSON.parse (<anonymous>)
13:57 cdg left 14:06 jeromelanteri left 14:09 cdg joined
Altreus Is there some concept that shortens an if-defined? I want to add an id to a URL if id is defined, but i want to include the extra / in that if-defined. $str ~ (defined $id ?? "/$id" !! '') 14:27
Sorry if that's not legit p6
Is there an idiomatic way of defining some "/$id" such that the whole concatenation collapses to no-op if id is not defined? 14:28
14:29 geospeck left 14:30 mahafyi left
timotimo we hvae with and without 14:30
perlpilot Altreus: $str ~ ("/$id" with $id); 14:31
timotimo m: my $id; say "foobar" ~ ("/$id" with $id)
camelia foobar
timotimo m: my $id = 99; say "foobar" ~ ("/$id" with $id)
camelia foobar/99
Altreus Oh em gee
14:31 Cabanossi left
Altreus Arigato old bean 14:32
14:33 Cabanossi joined
ilmari my $id; ("/$id" with $id).WHAT.say 14:34
m: my $id; ("/$id" with $id).WHAT.say
camelia (Slip)
14:34 zakharyas joined
Altreus I thought slip but my reading about it did not furnish me with a clear answer 14:37
Also, is there/what is the equivalent of requires in a p5 moose role? 14:38
"I'll use this method but i don't commit to an implementation"
timotimo m: role NeedsMeh { method meh { ... } }; class Oh does NeedsMeh { }
camelia 5===SORRY!5=== Error while compiling <tmp>
Method 'meh' must be implemented by Oh because it is required by roles: NeedsMeh.
at <tmp>:1
14:38 jeromelanteri joined
timotimo m: role NeedsMeh { method meh { ... } }; class Oh does NeedsMeh { method meh { "i has meh!" } } 14:38
camelia ( no output )
Altreus So ... Is 14:39
is doing that?
timotimo yup
Altreus Oops, sorry, phone keyboard
Thanks again ^^
timotimo YW
Altreus It works 14:42
This is fun
Who dares make programming fun?
perlpilot Altreus: welcome to Perl 6 ;-)
14:44 mahafyi joined 14:54 jeromelanteri left
scimon One of the things I'm loving right now is learning new stuff. 14:59
TIL with. :)
15:13 zakharyas left, zakharyas joined 15:18 zakharyas left 15:32 lowbro left
AlexDaniel
.oO( who dares make non-perl 6 programming non-fun? )
15:33
15:34 xcm left 15:35 xcm joined
tbrowder how often is docs website updated? 15:45
15:46 nickmbooker left
tbrowder i ask because my last doc change passed travis testing 4 hrs ago but i don’t see the change. 15:46
on docs.perl6.org 15:47
moritz it should be faster than that
docs.perl6.org/build-log/ has the logs
15:48 ggoebel left
moritz docs.perl6.org/build-log/build-201...+00:00.log looks a bit unhappy 15:49
tbrowder yep, probably my input. i’ll try to remove some formatting 15:50
moritz thanks!
15:54 piojo left, piojo joined 15:56 zakharyas joined 15:57 comborico1611 joined
Geth doc: 26c25f6290 | (Tom Browder)++ (committed using GitHub Web editor) | doc/Language/pod.pod6
remove formatting for now
15:58
synopsebot Link: doc.perl6.org/language/pod
16:01 ggoebel joined, itaylor57 joined 16:02 itaylor57 left 16:05 itaylor57 joined
timotimo fun. this web server got owned with a phishing thingie installed on it. it still has the source zipfile in the server's root %) 16:06
"got owned and a ... installed on it" i should say 16:07
16:08 troys joined
moritz most breaches are pretty unsophisticated 16:11
16:12 margeas is now known as markong, wamba joined 16:26 TreyHarris left, TreyHarris joined
Geth doc: 1c410ac942 | (Tom Browder)++ (committed using GitHub Web editor) | doc/Language/pod.pod6
change table to delimited block form

remove :nested config key
16:31
synopsebot Link: doc.perl6.org/language/pod
timotimo yeah, i imagine there is a ginormous "long tail" of web servers that were forgotten or something that easily get themselves infected 16:36
mspo shell shock via cgi-bin/ is still around 16:37
probably the easiest hack going
just curl commands to web servers you find sitting around 16:38
timotimo oh, of course 16:40
how fun is it to win these servers back?
geekosaur the _really_ easiest is throwing that at random routers 16:41
the cheapest ones are vxworks, but anyone who needs a bit more installs a linux-based firmwae... and then never updates it
16:42 domidumont left
mspo cloud hasn't been great for internet security at-large :) 16:43
geekosaur and, of course, since oyou've taken over a router, you've usually got access to multiple internal machines
'cloud', 'security', only usable with a 'not'
*usable together
(alt: "IoT" = insecurity of things) 16:46
Geth doc: 4f665f7622 | (Tom Browder)++ (committed using GitHub Web editor) | doc/Language/pod.pod6
remove format code D, use C instead

D may not yet be implemented
16:47
synopsebot Link: doc.perl6.org/language/pod
16:50 thou joined
timotimo "IoT: the S stands for Security" 16:51
16:53 zakharyas left 16:56 zakharyas joined 16:58 abraxxa left 17:02 domidumont joined 17:03 domidumont left 17:04 domidumont joined, zakharyas left 17:05 troys is now known as troys_ 17:06 zakharyas joined 17:13 wamba left 17:14 domidumont left 17:21 lizmat joined 17:24 itaipu left, zakharyas left
tbrowder docs look good now 17:28
17:28 wamba joined, markong left, scimon left 17:30 troys_ is now known as troys 17:34 geospeck joined 17:40 zakharyas joined 17:44 khw joined 17:47 zakharyas left 17:48 evalable6 left, evalable6 joined 17:50 jast left 17:51 dakkar left
thou AlexDaniel, I've responded to your questions on rakudo/rakudo#1300, thank you! 17:51
synopsebot RAKUDO#1300 [open]: github.com/rakudo/rakudo/pull/1300 Untwine Pod
17:52 jast joined 17:58 epony joined
thou AlexDaniel, I'm just not sure how to coordinate communicating about rakudo + roast changes. But the test changes are prepped and ready to go. 17:59
18:12 comborico joined 18:14 geospeck left 18:22 zakharyas joined 18:24 tony-o joined 18:26 setty1 joined 18:27 itaipu joined 18:30 epony left 18:31 geospeck joined
pochi could someone take a look at pastebin.com/PhWD1saG 18:32
I'm getting this error which confuses me: Cannot look up attributes in a Point type object 18:33
(calling is-close from main works, but calling it from BUILD seems to generate that error) 18:34
oh, and I'm using rakudo star 2017.10 18:35
geekosaur during BUILD your object isn't fully constructed yet; you are calling a method on an undefined value
pochi ah, when I try to print $!p1 it is indeed empty 18:37
so, what is the correct method for initializing $.is-short? 18:38
geekosaur also defining your own new is generally a bad idea
you might want to use TWEAK, since it runs after object construction. see docs.perl6.org/language/objects#Ob...nstruction
18:38 khw left
pochi I see 18:39
what's the purpose of BUILD?
geekosaur mostly, control over when superclass initialization takes place
pochi I use my own new to get my prefered interface for the class btw 18:41
geekosaur well, no. BUILDALL does that, BUILD has lower level control over object construction itself but can't do things with the partially constructed object (it may not have constructed superclasses fully yet iirc? this is up to BUILDALL)
so TWEAK gives you the ability to make adjustments to a built object before it's returned from the constructor
in partiuclar you don;t necessarily have any fields initialized at BUILD time, but do at TWEAK time 18:42
for the full story, there's a page in the docs with more detail or you can inspect the default new and BUILDALL methods
perlpilot pochi: you could make your own method create(int $x, int $y) { Point.new( :$x, :$y ); } instead of making your own new (just a thought)
pochi ah, but I want all classes to have the same constructor 18:43
my new seems to work though, why shouldn't I use that method?
lizmat multi method new(Point:U: int $x, int $y) { self.new(:$x, :$y) } # that should work, no ? 18:44
pochi if I try that I get: Default constructor for 'Point' only takes named arguments 18:47
18:50 mahafyi left
perlpilot pochi: you should use whatever you want if it makes sense to you. :-) 18:50
pochi at least I have to understand my own code :-) 18:51
perlpilot pochi: though I find it a little strange that you would want to be rid of the "normal" mechanism that's also a little more self-documenting: Point.new( :x(1), :y(2) );
pochi ... and it's great if it works too :-)
18:52 darutoko left
pochi well, take the Line class then, I don't want a constructor with p1 and p2, feels unnatural 18:52
also verbose for a Point/Line class
18:53 Ven`` joined
pochi (p1 and p2 should probably be private as well, but then things didn't work) 18:53
19:04 cdg left 19:06 cdg joined
perlpilot pochi: point taken ;) 19:06
19:07 comborico left 19:10 cdg left 19:11 [Coke]_ is now known as [Coke] 19:13 Ven`` left 19:14 itaipu left, Ven`` joined 19:25 Ven`` left, Ven`` joined
rindolf Perl's 30th birthday is next monday 19:29
thou I'm excited, I think I've fixed the ugly extra spacing in Pod::To::Text. No more spaces at end of lines or on blank lines in the output.... Simple patch, I'm just running a few more tests on it. 19:40
comborico1611 rindolf, interesting. 19:44
DrForr thou: I'm rewriting the test suite for Pod::To::BlogspotHTML as it happens. 19:45
thou DrForr, nice. I did a little on Pod::To::Markdown conversion to use TreeWalker. I think it might make sense for us both to do something like that independently (either using Pod::TreeWalker itself or making some other visitor implementation as needed), and then we can compare implementations and refactor so ::Text, ::HTML, ::Markdown, ::BlogspotHTML, etc. can DRY as much as possible. 19:47
DrForr Well, it's actually going to be both ::HTML and ::BlogspotHTML because I'm going to get subclassing working properly beforehand. 19:48
thou I think there's a lot of stuff that could even benefit being moved into core, but if we can get everything using a shared Pod::To::Generic, it'd be just about as good. I.e., put all the messy translations of confusing bits that show up in $=pod into a generic handler that all the Pod::To::* utilize. 19:49
BTW I have commit access on Pod::TreeWalker in case we want to continue to use it. 19:50
autarch would likely be happy to add you, too, I assume
DrForr I'm tempted to rewrite it because I already have to do some generic munging of <p/> tags. 19:51
perlpilot had dreams of a Pod::To::LaTeX at one point ... maybe that will be more possible soonish? 19:52
DrForr And IIRC it is adding tags that I need to remove. I want to rewrite it to get rid of hte munging...
perlpilot: That's also on my list.
perlpilot DrForr: nice!
DrForr I'm by no means an expert, but I'd love to be able to throw docs into LaTeX and get better highlighting and typography. 19:54
perlpilot same here. I was mainly dreaming about it for book publishing using Pod. But like many things ... I got side tracked. 19:55
DrForr Well, that was kind of my target too, but the \listing modules out there are kind of awkward. I'd want to use a decent code listig module. 19:56
19:56 ggoebel left
DrForr The problem is that $..$ is used for math mode, and that *does* get annoying. 19:57
20:01 cdg joined 20:05 cdg left 20:08 cdg joined, zakharyas left
DrForr thou: I imagine autarch would hand me the author bit if I asked :) 20:09
Not that I want it. 20:10
thou :) 20:11
20:11 wamba left 20:12 ggoebel joined, cdg left
DrForr perlpilot: You'll also want to check out latextemplates.com and the Legrand Orange book. 20:18
20:28 geospeck left 20:31 wamba joined 20:33 benchable6 left, benchable6 joined 20:34 comborico1611 left, samcv left, notbenh left, [particle] joined, [particle]1 left, roguelazer left, Ven`` left 20:35 troys left, El_Che left, spider-mario left, huf left, a3r0 left, tabv left, erdic left, Ven`` joined, ggoebel left, shadowpaste left, Voldenet left, Util left, eythian left, Celelibi left, charsbar left, shmibs left, no-n left 20:36 huf joined, aindilis left, eythian joined, eythian left, eythian joined, aindilis joined, DrForr left, syntaxman left, evalable6 left 20:37 El_Che joined, khw joined, a3r0 joined, Util joined, benchable6 left, reportable6 left, releasable6 left, geospeck joined, DrForr joined, notbenh joined, Morfent left, syntaxman joined, shmibs joined, greppable6 left, bisectable6 left 20:38 Morfent joined, syntaxman is now known as Guest67751 20:39 charsbar joined, tabv joined, comborico1611 joined 20:40 samcv joined, Voldenet joined, Voldenet left, Voldenet joined, Celelibi joined 20:41 roguelazer joined, spider-mario joined, shadowpaste joined 20:43 erdic joined 20:44 kshannon joined 20:45 jeek left, BinGOs left, perigrin left, robinsmidsrod left, tailgate left, jeek joined, BinGOs joined, perigrin joined, tailgate joined, robinsmidsrod joined 20:48 ggoebel joined 20:51 cdg joined 20:53 jdoege joined 20:54 colomon joined 20:55 cdg left 20:59 benchable6 joined 21:00 bisectable6 joined, greppable6 joined, setty1 left, reportable6 joined, unicodable6 left, evalable6 joined, ChanServ sets mode: +v reportable6, ChanServ sets mode: +v evalable6, unicodable6 joined, ChanServ sets mode: +v unicodable6
[Coke] huh. vi was using 70% of my cpu 21:01
21:01 cdg joined
timotimo benchable6: compare HEAD my $a; (^9 X ^9).map( -> ($x, $y) { $a++ }); say $a; ||| my $a; (^9 X ^9).flat.map(-> $x, $y { $a++ }); say $a; 21:01
benchable6 timotimo, starting to benchmark the 1 given commit
timotimo, gist.github.com/99caf769b93eb6ccd2...7bbe278598
geekosaur closed a terminal window with it running? vim likes to go into a tailspin when stdin goes away unexpectedly
(it's *supposed* catch it, save the edit buffer for -r, and exit) 21:02
timotimo benchable6: compare HEAD my $a; (^90 X ^90).map( -> ($x, $y) { $a++ }); say $a; ||| my $a; (^90 X ^90).flat.map(-> $x, $y { $a++ }); say $a;
benchable6 timotimo, starting to benchmark the 1 given commit
timotimo, gist.github.com/25788b01599b86f109...18f7f2a16d
21:04 sena_kun left
timotimo .tell scimon it might not be worth mutch, but (^9 X ^9).map(-> ($x, $y) { }) is noticably slower than (^9 X ^9).flat.map(-> $x, $y { }): gist.github.com/25788b01599b86f109...18f7f2a16d 21:04
yoleaux timotimo: I'll pass your message to scimon.
21:17 lizmat left
mspo [Coke]: coloring a big file? 21:27
21:37 TEttinger joined 21:41 epony joined 21:45 cdg_ joined 21:48 cdg left 21:51 natrys left 21:56 Ven`` left 21:59 Ven`` joined 22:11 geospeck left 22:13 Ven`` left 22:14 wamba left 22:16 squashable6 joined, ChanServ sets mode: +v squashable6 22:18 Ven`` joined 22:19 |oLa| joined 22:27 sena_kun joined, Ven`` left 22:29 |oLa| left 22:31 colomon_ joined 22:32 colomon left, colomon_ is now known as colomon 22:33 |oLa| joined 22:36 |oLa| left 22:43 Ven`` joined 22:47 Cabanossi left 22:49 Cabanossi joined 22:50 jdoege left, rindolf left 23:06 AndChat|688961 joined, comborico1611 left 23:07 colomon left, colomon joined 23:08 lancew joined 23:09 lancew_ joined, lancew_ left 23:10 colomon left, lancew left 23:12 llfourn joined 23:20 silug joined 23:25 sena_kun left 23:27 colomon joined, lizmat joined 23:37 Zoffix joined
Zoffix What precisely does :node($/) do in QAST? 23:37
Like in QAST::Var.new(:node($/), :name<Pair>, :scope<lexical>), 23:38
23:42 tardisx left
Zoffix ZofBot: *crickets* 23:43
ZofBot Zoffix, 'What do you mean?' 'Oh, come,' protested Jelliffe; 'there's no need to keep it up with me
thou Zoffix, what's the expected process for simple bug fixes like rakudo/rakudo#1307 ? Is there a regular process that ensures it'll get applied, or do I need to file a bug report or do something else? 23:45
synopsebot RAKUDO#1307 [open]: github.com/rakudo/rakudo/pull/1307 Drop extraneous spaces in code and table blocks
Zoffix thou: no strict process I'm aware of. Core devs usually just merge whenever they see notifications. Personally, I usually ignore codebase areas I'm unfamiliar with (like Pod). You could join #perl6-dev and remind about the PR awaiting to be merged once in a while, in hopes someone who knows what's up would merge :) 23:47
thou OK, thanks. I just didn't want to ignore an important step in the process if there is one. 23:48
MasterDuke thou: i think AlexDaniel has merged the last couple pod related PRs 23:51
thou Thanks 23:52
This one just fixes an annoyance I've had for probably 5 years.
23:53 pmurias left