»ö« 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:21 wamba left 00:25 dg left 00:27 Senji left, dg joined
BenGoldberg wonders how hard it would be to create something like: use NativeCall::Simpler library => ["cdio", v13], library-prefix => "cdio_", library-case => "_", perl-case => "-"; sub eject-media-drive(Str) is native {}; sub close-tray is native {}; 00:31
The effect of the pragma would last until the end of the enclosing block. 00:32
timotimo all you have to do is export a new "native" trait that doesn't take an argument, and somehow install the value to be used somewhere it can reach 00:36
00:36 kurahaupo left 00:42 setty1 left 00:47 Senji joined 00:57 vendethiel- left 01:02 FROGGS_ joined 01:04 AlexDaniel left, [Sno] left 01:05 TEttinger left, sno joined, FROGGS left 01:13 kalkin- left, kalkin-_ joined 01:18 TEttinger joined
dalek c: e56c481 | (Daniel Green)++ | lib/Perl6/TypeGraph/Viz.pm:
Use File::Temp to provide more robust temp files
01:54
c: 5effb49 | MasterDuke17++ | lib/Perl6/TypeGraph/Viz.pm:
Merge pull request #660 from MasterDuke17/more_robust_temp_files

Use File::Temp to provide more robust temp files
01:57 yqt left 01:59 FROGGS__ joined 02:04 FROGGS_ left 02:06 noganex_ joined 02:09 kent\n left, noganex left 02:10 kent\n joined, kent\n left, kent\n joined 02:21 mr-foobar left, mr-foobar joined 02:43 kid511 left 02:51 vendethiel joined 02:54 rgrinberg joined 03:06 skids joined 03:12 vendethiel left 03:32 gfldex left 03:36 LLfournLaptop left 03:37 Herby_ joined
Herby_ \o 03:37
03:39 huggable left 03:40 huggable joined 03:43 Zoffix joined 03:48 Herby_ left
Zoffix Wow, the speed difference between bleed and 2016.04 is VERY noticeable :o 03:53
04:05 khw left 04:09 mr-foobar left 04:10 mr-foobar joined 04:12 vendethiel joined 04:13 sno left, sno joined 04:40 rgrinberg left 04:42 kaare_ joined
masak Zoffix: that's nice to hear 04:46
Zoffix Yeah. My web app restarts on every change and on bleed I pretty much don't notice the delay between making the change and refreshing the browser, but with 2016.04 I actually have to sit and wait for it to restart. 04:47
04:53 Cabanossi left 04:56 Cabanossi joined
Zoffix Or maybe it's having more modules :/ damn 04:56
Takes ages with ~27 modules :\
Does `require` precompile? 04:59
05:00 PerlJam joined, PerlJam is now known as perlpilot 05:01 buharin joined
Zoffix I guess "yes", because it takes nearly a minute after I delete .precomp :} 05:05
05:15 vendethiel left
buharin today I will go with Perl Regex Chapter ;-) 05:16
Zoffix greast 05:18
05:22 skids left
buharin Zoffix, you know this Perl6 feature about named argument and positional argument 05:23
I think it is a big step
Zoffix ¯\_(ツ)_/¯
How to call a superclass method? 05:28
I have an attribute in a subclass that needs to use an attribute from the base class. I can't use $.foo because it tells me "partially constructed" stuff and $!foo isn't it. 05:29
m: class Foo { has $.conf = 42 }; class Bar is Foo { has $.meow = do { $.conf + 72 } }.new.meow.say 05:30
camelia rakudo-moar 3fda0b: OUTPUT«5===SORRY!5=== Error while compiling <tmp>␤Virtual method call $.conf may not be used on partially constructed object (maybe you mean $!conf for direct attribute access here?)␤at <tmp>:1␤------> 3ss Bar is Foo { has $.meow = do { $.conf7⏏5 +…»
Zoffix m: class Foo { has $.conf = 42 }; class Bar is Foo { has $.meow = do { $!conf + 72 } }.new.meow.say
camelia rakudo-moar 3fda0b: OUTPUT«5===SORRY!5=== Error while compiling <tmp>␤Attribute $!conf not declared in class Bar␤at <tmp>:1␤------> 3 Foo { has $.meow = do { $!conf + 72 } }7⏏5.new.meow.say␤ expecting any of:␤ horizontal whitespace␤ postfix␤ …»
Zoffix ¯\_(ツ)_/¯
m: class Foo { has $.conf }; class Bar is Foo { has $.meow; method new (:$conf) { self.bless: meow => do { $conf + 72 } } }.new(:42conf).meow.say 05:34
camelia rakudo-moar 3fda0b: OUTPUT«114␤»
05:45 grondilu joined 05:51 vendethiel joined 05:53 aries_liuxueyang left 05:55 aries_liuxueyang joined 05:56 darutoko joined 06:00 buharin left 06:10 domidumont joined 06:14 vendethiel left, domidumont left 06:15 domidumont joined
parabolize m: class Foo {has $.conf}; class Bar is Foo { has $.meow = self.conf + 72 }; Bar.new(:42conf).meow.say 06:26
camelia rakudo-moar 3fda0b: OUTPUT«114␤»
parabolize Zoffix: ^ would that work? 06:27
06:27 CIAvash joined 06:40 kurahaupo joined 06:50 mr-foobar left 06:51 domidumont left 06:52 mr-foobar joined 06:57 RabidGravy joined 07:00 buharin joined
ShimmerFairy blog post! shimmeryfairy.wordpress.com/2016/0...6-modules/ 07:03
07:04 labster left 07:13 labster joined 07:32 firstdayonthejob joined 07:39 huggable left 07:40 huggable joined 07:41 buharin left 07:45 domidumont joined
masak ShimmerFairy++ # shimmeryfairy.wordpress.com/2016/0...6-modules/ 07:59
I especially like that post *because* it's about someone's journey, not about the neatly arranged end goal
parabolize ShimmerFairy: this would work I *think* gist.github.com/parabolize/4c20684...7ea01004d6 08:08
For question 1 that is
08:13 rurban joined, kanishka left 08:14 rurban left 08:19 addison joined 08:29 domidumont left 08:36 kurahaupo left
dogbert17 o/ #perl6 08:44
todays stupid question: several classas have methods called 'hash' and 'list', why are they not called 'Hash' and 'List'? 08:47
masak it's a good question 08:49
psch it really is. although "list" at least makes sense to me in so far that we don't have a class Item 08:50
and those are the two obvious assignment contexts
i.e. list and item, the latter which only exists as a lower-case method 08:51
08:51 spider-mario joined
psch well, also, methods 'List' and 'Hash' also exist, and probably on the exact same classes 08:51
dogbert17 class Baggy have methods 'Bool', 'Set', 'SetHash' and ... 'hash' 08:52
psch m: say Baggy.^lookup('Hash') 08:53
camelia rakudo-moar 3fda0b: OUTPUT«(Mu)␤»
psch m: say Baggy.HOW.^name
camelia rakudo-moar 3fda0b: OUTPUT«Perl6::Metamodel::ParametricRoleGroupHOW␤»
psch m: say Bag.^lookup('Hash')
camelia rakudo-moar 3fda0b: OUTPUT«Method+{<anon|55421616>}.new␤»
psch dogbert17: Baggy is a role, and its mixin targets seem to bring method Hash themselves
well, the obvious target Bag at least seems to :) 08:54
m: say Bag.^roles
camelia rakudo-moar 3fda0b: OUTPUT«((Baggy) (QuantHash) (Associative))␤»
psch m: say $_ ~ " " ~ .^lookup('Hash') for Bag.^roles
camelia rakudo-moar 3fda0b: OUTPUT«Use of uninitialized value $role of type Baggy in string context␤Any of .^name, .perl, .gist, or .say can stringify undefined things, if needed. in block at <tmp> line 1␤Use of uninitialized value <element> of type Mu in string context␤Any of .^nam…»
dogbert17 so it might be a matter of avoiding 'collisions' then
psch m: say .^name ~ " " ~ (.^lookup('Hash') // 'Mu') for Bag.^roles 08:55
camelia rakudo-moar 3fda0b: OUTPUT«Baggy Mu␤QuantHash Mu␤Associative Mu␤»
psch and it's not from the other roles either
08:58 BenGoldberg left 09:01 gfldex joined
dogbert17 m: my $breakfast = bag <eggs bacon bacon>; say $breakfast.Hash; say $breakfast.hash; 09:01
camelia rakudo-moar 3fda0b: OUTPUT«{bacon => 2, eggs => 1}␤{bacon => 2, eggs => 1}␤»
dogbert17 hmm
m: my $breakfast = bag <eggs bacon bacon>; say $breakfast.Hash.WHAT; say $breakfast.hash.WHAT;
camelia rakudo-moar 3fda0b: OUTPUT«(Hash)␤(Hash)␤»
ShimmerFairy dogbert17: That's a good question, like others have said. For .list at least, I think of it as saying "gimme something that fits inside a @ variable", instead of asking for a specific type. 09:06
(also, did the List type even exist before the GLR? I forget.)
psch bisect: say List.^name
bisectable psch: on both starting points the exit code is 0 and the output is identical as well
psch well, it exists too long for bisectable
i forget when the GLR actually happened 09:07
2015.06 or so?
ShimmerFairy middle-ish of last year, yeah
dalek c: b6427a0 | (Jan-Olof Hendig)++ | doc/Type/Baggy.pod6:
Added docs for Baggy.hash
dogbert17 i think the bisectbot now goes back to 2015-10 09:08
an interesting topic it seems, thx for all the comments so far 09:10
09:17 espadrine joined
dogbert17 m: my $breakfast = bag <eggs bacon bacon>; say $breakfast.antipairs; say $breakfast.invert; 09:17
camelia rakudo-moar 3fda0b: OUTPUT«(2 => bacon 1 => eggs)␤(2 => bacon 1 => eggs)␤»
dogbert17 when discussing Baggy types specifically, won't antipairs and invert always give the same result even though they are implemented differently? 09:19
moritz seems to be true for any Associative type, no? 09:42
09:42 wamba joined 09:45 labster left
dogbert17 moritz: what about 09:49
m: my %h = eggs => 1, bacon => (1,2); say %h.antipairs; say %h.invert;
camelia rakudo-moar 3fda0b: OUTPUT«(1 => eggs (1 2) => bacon)␤(1 => eggs 1 => bacon 2 => bacon)␤»
moritz huh 09:50
I'm wrong
dogbert17 on the other hand, I don't think that Baggy types can have lists as values 09:51
psch m: say bag($(1,2), 3) 09:52
camelia rakudo-moar 3fda0b: OUTPUT«bag(3, (1 2))␤»
psch m: say .antipairs ~ " " ~ .invert with bag($(1,2), 3)
camelia rakudo-moar 3fda0b: OUTPUT«Lists on either side of non-dwimmy hyperop of infix:«=>» are not of the same length␤left: 1 elements, right: 2 elements␤ in block <unit> at <tmp> line 1␤␤»
psch m: say .invert with bag($(1,2), 3)
camelia rakudo-moar 3fda0b: OUTPUT«Lists on either side of non-dwimmy hyperop of infix:«=>» are not of the same length␤left: 1 elements, right: 2 elements␤ in block <unit> at <tmp> line 1␤␤»
psch m: say .antipairs with bag($(1,2), 3)
camelia rakudo-moar 3fda0b: OUTPUT«(1 => 3 1 => (1 2))␤»
psch oh, as values 09:53
yeah, no, that shouldn't work for Baggy
m: my BagHash $x .= new; $x<foo> = $(1,2); say $x.perl 09:54
camelia rakudo-moar 3fda0b: OUTPUT«Type check failed in assignment; expected Int but got List ($(1, 2))␤ in block <unit> at <tmp> line 1␤␤»
09:54 iH2O joined
dogbert17 I'm about to write some docs for Baggy.invert so I'm tryin to clarify if the in fact do the same thing 09:54
bad spelling :(
psch well, a Bag with something Positional as key can't .invert, apparently 09:55
which we probably should have a better error message for
nine dogbert17: a list method does not neccessarily have to return a List object
dogbert17: @array.list returns @array which is probably an Array, not a List. @array.List however really does return an immutable List 09:56
dogbert17 nine: interesting, could that explain the difference in capitalization? 09:57
nine At least retroactively :) I can say that when I added .List for giving you a real List object, I did think along those lines 09:58
dogbert17 :)
iH2O :)
masak m: say [1, 2, 3].list.^name; say [1, 2, 3].List.^name; say Array ~~ List 10:00
camelia rakudo-moar 3fda0b: OUTPUT«Array␤List␤True␤»
masak nine: ^^ 10:01
nine: seems to be the other way around with .list and .List
nine: also an Array is a List, so in some (inheritance) sense both methods do return a List
nine masak: I don't see that? .list returns the array, as it's listy enough while .List returns you an unsubclassed List.
masak nine: do you have an example where .list does not return a List object? 10:02
psch m: say 5.list.WHAT
camelia rakudo-moar 3fda0b: OUTPUT«(List)␤»
10:02 rurban1 joined
nine masak: when I said "real List object" I meant an object of the List class, not a subclass (like Array). 10:02
psch blames list^Hkov 10:03
masak nine: it's very foreign to OO to reason like that, I find 10:04
nine: Array objects *are* objects of the List class
nine The point of .List was to provide an easy way for methods to hide implementation details like that they are collecting results in a mutable Array.
masak and other coercion methods are known to give the original invocant back if it's a subclass, yes?
psch m: say bag(1,2,3).Hash.WHAT 10:05
camelia rakudo-moar 3fda0b: OUTPUT«(Hash)␤»
psch m: say bag(1,2,3).hash.WHAT
camelia rakudo-moar 3fda0b: OUTPUT«(Hash)␤»
masak m: say 42.Real.^name
camelia rakudo-moar 3fda0b: OUTPUT«Int␤»
psch i suppose that means "it's inconsistent"
nine If they return an Array, callers might depend on the rsult being mutable, making it impossible to change the implementation to e.g. a more functional approach that does not need a mutable array for collecting results.
Well inconsistency is what I get for sneaking in this feature during the GLR frency without proper discussion :/ 10:06
10:07 addison left
masak I think we had both .list and .List long before GLR 10:14
iH2O "also an Array is a List..." ??? does it mean it doesnt have direct access?
10:15 TEttinger left
dogbert17 does the follow gist do Baggy.invert justice or is it to vague? gist.github.com/dogbert17/818b4229...c782951b44 10:16
s/to/too/
iH2O s/to/too
nine masak: true. It's the change in Array.List's behavior I added: github.com/rakudo/rakudo/commit/81...e2240e0bc0
10:18 canopus left
masak nine: I never quite understood why, fully aware of the drawbacks of inheritance hierarchies, we conjoined the notion of mutable collections with subclassing :/ 10:20
nine masak: same here 10:22
masak (as opposed to, say, roles which have served us well elsewhere) 10:24
10:25 canopus joined 10:28 Senji left, Senj joined, buharin joined, rindolf joined
nine masak: well I guess another year or two of language design could have fixed that ;) 10:28
10:31 DeadBirD joined
iH2O well, can start working right now on perl7 folks 10:31
*you can 10:33
10:33 BrokenRobot joined
nine Well people, you know the drill! Anyone got a mug handy? 10:34
lizmat I got a mug handy, so what is this about ? 10:35
psch i also got a mug, but i don't wanna smash it :|
lizmat
.oO( too lazy to backlog extensively )
dalek c: 94eb63d | (Jan-Olof Hendig)++ | doc/Type/Baggy.pod6:
Added docs for Baggy.invert
10:36
psch it's really cute, it has a cat half-covered with a discarded newspaper on it
it even looks a bit like the cat is reading the newspaper, which is titled "financial times"
iH2O do you identify with cats, psch? 10:37
10:37 PotatoGim joined, Spot__ joined 10:38 mrsolo joined
psch why would you think that, iH2O? 10:39
iH2O i picture you like a siberian tiger
psch okay
iH2O :)
masak nine: I'll throw mugs if people are not energized and are walking away from the community. :) not so sure I'd throw a mug 'cus of subclassing
10:42 kaare_ left 10:43 inokenty left 10:44 kurahaupo joined 10:46 rurban1 left 10:51 buharin left 11:07 Walex left 11:10 Walex joined 11:15 iH2O left 11:20 DeadBirD left 11:24 pmurias joined 11:27 Walex left 11:34 jnap_ joined, Walex joined 11:36 brrt joined 11:37 rurban joined 11:39 [Sno] joined, sno left, huggable left 11:40 huggable joined, AlexDaniel joined
moritz hi all. I remember reading about a statistic that a big amount of data breaches were based on vulnerabilities that have been known for 8 years or something like that 11:43
does anybody know what I talk about, and where I could find it again?
I can't seem to find the right search terms
11:44 espadrine left 11:48 kaare_ joined 11:56 brrt left 11:57 kid51 joined 12:03 domidumont joined
AlexDaniel by the way, bisectbot does not go back to 2015.10 unless explicitly told to do so 12:05
moritz for the record, www8.hp.com/us/en/hp-news/press-rel...OtW4fnF_Aw seems to be an updated version of the data I talked about earlier 12:15
12:22 kent\n left 12:29 kent\n joined 12:37 yqt joined 12:40 [Sno] left, [Sno] joined 12:42 rurban1 joined 12:44 Actualeyes joined 12:46 rurban left 12:51 kanishka joined, brrt joined 12:52 buharin joined 12:59 brrt left 13:07 vendethiel joined 13:09 dmaestro joined 13:11 rurban1 left
dmaestro Just installed rakudo star on linux, but panda failed (silently - oh no) to install modules due to permissions problems. The release notes say there is a way to uninstall modules, and discussion in panda issue #257, but how do I actually uninstall, for example, IO::Socket::SSL and its dependencies? 13:13
13:14 domidumont left 13:21 iH2O joined
AlexDaniel MasterDuke: this is great! 13:23
13:24 yqt left
MasterDuke AlexDaniel: thanks. i don't like the segfaulting when you do enable the parallelization, but i don't think it's my code's fault 13:25
*occasional segfaulting
13:26 buharin left
AlexDaniel MasterDuke: I don't think it is… I have several scripts that do similar parallel kind of thing, and they all crash after a while 13:26
MasterDuke: anyway, if 1 is default, then there's probably no reason not to merge 13:28
MasterDuke yeah, i believe jnthn++ said he was going to work on that soon, which would be awesome. i think one *huge* draw to Perl 6 is/could be just how easy it is to add some quick and dirty parallelization, but if it's unreliable... 13:29
timotimo we've had a good push of reliability in the past already
13:29 mohae left 13:30 buharin joined
AlexDaniel MasterDuke: github.com/perl6/doc/pull/661/file...c86235L613 13:30
MasterDuke: I see no %% $parallel magic here, is it supposed to be this way?
timotimo maybe it'd be pretty amazing to have some crashy parallelism code written in nqp instead of perl6
that'll definitely reduce the amount of different moving things involved
MasterDuke progress in everything has made huge leaps and strides, but it is still dead easy to trigger segfaults and other random/weird errors in async/concurrent code 13:31
timotimo true
MasterDuke AlexDaniel: ahh, good catch 13:33
AlexDaniel MasterDuke: oops! :) 13:34
MasterDuke: anyway, it means that we will have it copy-pasted three times… Perhaps you can try .race?
MasterDuke AlexDaniel: i just did it all at once originally because there are only a very few things, but i should add the %% $parallel to keep the old behavior
timotimo .race is often pretty b0rked
AlexDaniel I know, but in this case it might work 13:35
timotimo mhm
AlexDaniel or maybe not? Sometimes .race failed completely?
what were the bugs exactly
MasterDuke i've been experimenting with .race the last few min, but i can't seem to get it to play nice with a %hash.kv
13:36 iH2O left
AlexDaniel #125978 #126597 13:38
synopsebot6 Link: rt.perl.org/rt3//Public/Bug/Displa...?id=125978
Link: rt.perl.org/rt3//Public/Bug/Displa...?id=126597
AlexDaniel but the last one is with .grep, so it might not affect us in htmlify 13:39
In #127452 I say “It looks like there is no such problem with 「race」.” 13:40
synopsebot6 Link: rt.perl.org/rt3//Public/Bug/Displa...?id=127452
13:44 freezerburnv joined, freezerburnv left
MasterDuke a minor change in topic, but it seems that switching to write()ing the input to the external dot call instead of putting it in a temp file means that try()ing and CATCH()ing doesn't do what you'd want if the command doesn't exist 13:52
i.e., the call fails like it should, but nothing is caught 13:54
13:54 inokenty joined
MasterDuke m: my $dot; try {$dot = Proc::Async.new(:w, "asdfasdfasdfdot", "-T", "svg", "-o", "a"); CATCH {die "in new"}}; my $promise; try {$promise = $dot.start; CATCH {die "in start"}}; my $s = Q[digraph "perl6-type-graph" {rankdir=BT;}]; try {await($dot.write($s.encode)); CATCH {die "in write"}}; try {$dot.close-stdin; CATCH {die "in close"}}; try {await($promise); CATCH {die "in final await"}};say "hi" 13:55
camelia rakudo-moar 539ada: OUTPUT«in new␤ in block at <tmp> line 1␤ in block <unit> at <tmp> line 1␤␤»
MasterDuke huh, it works for camelia
or is that because it's using the RESTRICTED settings? 13:56
psch m: Proc::Async.new 13:57
camelia rakudo-moar 539ada: OUTPUT«Proc::Async is disallowed in restricted setting␤ in sub restricted at src/RESTRICTED.setting line 1␤ in method new at src/RESTRICTED.setting line 32␤ in block <unit> at <tmp> line 1␤␤»
psch MasterDuke: i'd say that's very likely, yes 13:58
MasterDuke m: try { Proc::Async.new }
camelia ( no output )
psch m: Proc::Async.new; CATCH { die "died" } 13:59
camelia rakudo-moar 539ada: OUTPUT«died␤ in block <unit> at <tmp> line 1␤␤»
psch well, + the extra block around, if you must
14:09 rindolf left 14:14 jjido joined 14:15 buharin left 14:17 jimmybobby joined 14:19 yqt joined 14:21 zakharyas joined
jimmybobby anybody know when Rakudo will get a Windows installer without the user needing to install strawberry perl or Git to use panda? 14:21
will the plan be to eventually have an installer like current perl5 or python
moritz jimmybobby: we ship Rakudo Star .msi files already 14:24
jimmybobby: see rakudo.org/downloads/star/
jimmybobby moritz: but can you use panda without installing strawberry perl/git? 14:25
moritz: I'm reading this
V
rakudo.org/2016/05/03/announce-wind...r-2016-04/
14:27 mohae joined
moritz jimmybobby: you need git; not sure about strawberry perl 14:30
jimmybobby moritz: gotcha...thanks for the heads up
moritz hm, says so in the post
probably for the prove command
jimmybobby thanks! 14:32
14:32 jimmybobby left 14:39 skids joined
timotimo you used to need strawberry perl to get a "prove" command 14:39
not sure about c compiler related things 14:40
moritz isn't there some prove6 work in progress?
tadzik yes 14:41
moritz a bit out of the loop
tadzik last I tried it pretty much got the entire ecosystem right
heh, what can I say
my github contribution graph these days is pretty much a hackathon calendar :)
timotimo yup 14:43
moritz I've pretty much suspended all of my open source contributions to move my book forward 14:44
14:48 telex left 14:50 jjido left, telex joined 14:51 BenGoldberg joined, jjido joined 14:55 |Sno| joined 14:56 [Sno] left
dalek c: aeea5b2 | coke++ | t/trailing_whitespace.t:
add (failing) trailing whitespace test
15:03
c: 1259c40 | coke++ | doc/ (20 files):
remove trailing whitespace, test passes
c: 4ea494a | coke++ | / (589 files):
Merge branch 'master' into tws-test
c: 5cfb61a | coke++ | / (3 files):
pass trailing whitespace test
c: 367324f | (Aleks-Daniel Jakimenko-Aleksejev)++ | / (22 files):
Merge branch 'tws-test'
15:06 khw joined, araujo joined
moritz argl, do we really need a test for that? Who is hurt by trailing whitespace? 15:07
15:07 araujo left, araujo joined
moritz I don't tend to run tests prior to pushing doc changes 15:07
15:08 araujo left
moritz so we'll have failing tests for really small things 15:08
15:09 araujo joined, araujo left, araujo joined
AlexDaniel moritz: where have you been all that time? 15:12
15:12 espadrine joined
AlexDaniel moritz: github.com/perl6/doc/pull/633 15:13
moritz AlexDaniel: sorry, I don't manage to stay up-to-date with all pull requests 15:15
I guess I should just shut up
AlexDaniel moritz: no-no, that's ok. However, my suggestion is to see how it goes
moritz: if it causes too many problem we can always revert it
problems* 15:16
mst moritz: generally trailing whitespace results in noise in diff/blame output later, so over the lifetime of a project it often saves more time than it costs
at least in the case of code; for documentation, I'm less arsed
AlexDaniel moritz: by the way, instead of running tests you can configure your text editor 15:18
to either show trailing whitespace or to delete it automatically
the last one is a bit too radical, IMO 15:19
15:19 rgrinberg joined 15:21 MadcapJake left 15:25 rurban joined 15:29 Madcap^Jake^ joined, Madcap^Jake^ is now known as MadcapJake 15:30 jjido left 15:39 rgrinberg left, huggable left 15:40 huggable joined, Ven joined 15:43 Ven left, jjido joined 15:46 rgrinberg joined, zakharyas left 15:47 sena_kun joined 15:48 jjido left 15:49 tlvb joined 15:50 jjido joined 15:53 setty1 joined 15:56 jjido left 15:57 rurban1 joined, jjido joined, perturbation joined 16:00 rurban left
Zoffix parabolize++ thanks, that's perfect 16:03
16:06 yqt left 16:07 vendethiel left
tlvb Zoffix, FROGGS__: hello, I found an old log from this channel (irclog.perlgeek.de/perl6/2016-01-0...11838107), containing what seems to be the first case of run-time module reloading in perl6, since you were the ones involved, do you know if things have changed, as in e.g. a "best practices" approach? 16:07
Zoffix doesn't remember anything about it 16:08
Nor do I know a way to do it now :)
tlvb well, you're in luck then, because you left a github gist in the log, and I have confirmed that it still works :p 16:09
Zoffix heh
16:09 Ven joined
tlvb but I take it as there's not much of an official method then [yet] 16:10
Zoffix is a perl 6 n00b 16:11
I've no idea.
tlvb well, you're probably more knowledgeable than me anyway 16:12
now I need to face the question if I should switch to perl6 halfway through my irc bot rewrite 16:13
16:14 TEttinger joined
Zoffix haha 16:14
mst my next bot is going to be multi-process so it can be all the languages at once
Zoffix tlvb, I guess I should actually bother to finish my IRC::Client rewrite :) 16:15
Too many things to code. Not enough time.
AlexDaniel Zoffix: YES
tlvb I've actually thought about that (multiprocess), as a way of circumventing the module reloading.
yep
AlexDaniel please :)
Zoffix I'm working on this ATM: i.imgur.com/TxPNOoZ.png 16:16
Release tool for Rakudo. Coming out pretty sweet, other than the snag I hit with all the modules taking like 40 seconds to load. So I'm stuffing all the classes into a single file now :( 16:17
And It's a mix of Perl 5 and Perl 6 :) Powered by Mojolicious lol. There's a sweet blog post lurking in there. 16:18
tlvb that...that doesn't sound like something a perl6 noob would say...
Zoffix chuckles 16:19
psch tlvb: even core devs sometimes get surprised at features that existed for years... :) 16:20
tlvb yeah, I'm just getting miserable about what my own level would be 16:21
16:23 yqt joined
Zoffix Solution: stop measuring levels :D 16:25
psch doesn't have an XP bar or anything 16:26
i mean, i don't even have a HUD
Zoffix :)
mst tlvb: so, my usual solution to such things is to not worry about being any good, and instead to make my victory condition 'suck slightly less than last time' 16:27
Zoffix mst++ 16:28
tlvb yeah, perhaps I should make clear that this is in jest anyway, ...it's a bit difficult transfering from 5 though, eg I don't get to keep my +1 regex intuition etc. 16:29
psch m: say "foo" ~~ m:P5/.+/
camelia rakudo-moar 24e608: OUTPUT«「foo」␤»
psch m: say "foo" ~~ m:P5/\Qfoo\E/
camelia rakudo-moar 24e608: OUTPUT«「foo」␤»
psch tlvb: you can keep your regex intuition, if you must
hm, although i think \Q \E don't do the right thing there..? 16:30
what *do* they do? quotemeta?
Zoffix Yeah
psch m: say '$foo' ~~ m:P5/\Q$foo\E/ # 'cause aparently not
camelia rakudo-moar 24e608: OUTPUT«Type check failed in binding var; expected Any but got Mu (Mu)␤ in block <unit> at <tmp> line 1␤␤»
tlvb I feel like that would be a bad thing though, I don't want to keep programming 5, in 6
mst tlvb: best not regarding it as 'transferring', I think - you're learning a new language that happens to be in the same family as perl5
tlvb yeah
I've understood as much 16:31
well, it's automatic anyway once you actually /look/ at the language, since there are so many new/different things
16:36 Juerd joined 16:43 buharin joined 16:44 rurban1 left 16:45 domidumont joined, domidumont left 16:46 domidumont joined
Zoffix Oh lol... Now that I've put all my 26 classes into a single file, I noticed I was accidentally creating a new database connection and creating a table for each of them instead of just once :P 16:46
That might've contributed to the slow load :}{
16:47 Ven left 16:48 zakharyas joined
timotimo whoops :) 16:49
16:50 jjido left 16:51 molaf joined
MasterDuke if you're in a NEXT phaser, is it possible to know that this is the last NEXT? i.e., you're about to go into the LEAVE then LAST phaser 16:51
psch phasers are just Blorsts on a Block that get triggered when their condition is met 16:52
so i'm pretty sure no, no NEXT Blorst ever knows if it's visited the last time 16:53
like, without a state inside they don't even know how often they've been invoked
+var
MasterDuke hmm, Blorst isn't in the docs at all, should it be?
psch +all the implied incrementing
it's in the glossary i think
Block or Statement
well, BLock Or STatement :) 16:54
timotimo S99:Blorst
synopsebot6 Link: design.perl6.org/S99.html#Blorst
tlvb hah
MasterDuke nope
timotimo S99:blorst
synopsebot6 Link: design.perl6.org/S99.html#blorst
timotimo there it is
MasterDuke that is, it's not in docs.perl6.org/language/glossary
timotimo why isn't it synced? 16:55
that seems to be a lot less stuff than S99
16:56 jjido joined
AlexDaniel Zoffix: is github.com/perl6/doc/commit/540a34...3aca5076e9 the result of the font change? 17:00
Zoffix: or is it needed anyway, no matter what font we use?
tbrowder ref trailing ws: what about using git hooks to enforce a trim eol ws policy? 17:05
Zoffix AlexDaniel, what's the strugle? 17:06
AlexDaniel Zoffix: running ./app.pl says that I have to install these modules 17:07
Zoffix AlexDaniel, what's the full message?
AlexDaniel [Sun Jul 3 20:07:41 2016] [debug] Install CSS::Sass, CSS::Minifier::XS, and Mojolicious::Plugin::AssetPack to enable SASS processor
Zoffix AlexDaniel, right, that's the debug statement informing the SASS processor is optional. Do you need to enable it? 17:08
17:08 rurban joined
AlexDaniel Zoffix: if I want to work on CSS, then I guess yes? 17:08
17:08 rurban1 joined
Zoffix AlexDaniel, yeah 17:09
AlexDaniel Zoffix: or are you saying that I can use any other SASS processor to do the same thing?
which is probably correct, but then it can be added to the docs
Zoffix AlexDaniel, yes.. If you have sass installed, just run sass -w assets/sass/style.scss:html/css/style.css # if I remember my paths right
CSS::Minifier::XS should actually be tossed. ::AssetPack doesn't use it for SASS files, since sass can minify 17:10
AlexDaniel the title says “Add more build instructions” so I'm fine with any instructions, as long as they work :)
17:12 rurban left, rurban1 left 17:20 rsl joined, rurban joined 17:23 rurban left
dalek c: f3fdd08 | (Aleks-Daniel Jakimenko-Aleksejev)++ | / (3 files):
Revert "Improve typography"

This reverts commit 36e44716cd4ab8f3f0d557fdfc0ea7f007a9c8ea.
Given that most people who commented on #652 disliked the change in one way or another, I am reverting this commit.
This, however, does not mean that fonts do not have to be changed, or that some of the changes in this commit are not good. As all of the changes are in one rather big commit, it is a bit hard to cherry-pick what is actually needed, especially given that there is no final consensus on each particular thing.
In other words, this revert does not solve #652, but it gives us a good start for working on the issues. Further discussion in #652 is welcome.
This also reverts 540a3403c6787b0542864998efd7563aca5076e9. It is a followup to the typography changes, which may or may not make sense when applied alone. The commit message says “reduce line-height” but in reality it increases it compared to the versions before “Improve typography” commit. It also conflicts with the revert anyway.
17:26
17:27 colomon left
Zoffix :) 17:29
AlexDaniel see also: github.com/perl6/doc/issues/652#is...-230164905 17:30
Zoffix: I have to admit that it is pretty sad to see reverts :/ 17:31
17:34 RabidGravy left
Zoffix Well, reverts are undoings of stupid decisions. The worse alternative is to keep them in :P 17:36
AlexDaniel it is sad because people have put significant amounts of effort to introduce the change, and then other people are putting their effort to revert it… :/ 17:38
17:40 jjido left
TEttinger increase line height to the moon! 17:43
17:45 Ven joined
MasterDuke anybody want to take a (hopefully) final look at github.com/perl6/doc/pull/661 before i merge it? 17:46
and speaking of, is there a preference for a merge commit, or squashing? 17:47
AlexDaniel MasterDuke: it depends on the commits
if you feel that some information is lost due to squashing then don't squash 17:48
if you feel that these commits are polluting the history then squash
17:50 jjido joined
MasterDuke so no hard and fast rule? then in this case i'll squash 17:50
AlexDaniel is still pissed off by the fact that someone merged spelling fixes that were split into 22 commits, one commit per word
MasterDuke: by the way, have you seen this? github.com/perl6/doc/commit/f17ca3...2d17279087 17:52
it is just interesting 17:53
MasterDuke i hadn't
i've never gotten that particular error
17:54 yqt left
AlexDaniel MasterDuke: it is very, very old :) 17:54
I mean, the commit itself
17:55 jjido left
MasterDuke yeah, and if i'm reading it correctly it starts everything at once 17:55
i.e., doesn't allow you to specify the parallelism like i added 17:56
there are some more spots where it might make sense to make parallel 17:57
i just started with what i (roughly) measured as the places with the best ROI 17:58
17:59 rgrinberg left 18:01 jjido joined
dalek c: 8d83f42 | MasterDuke17++ | / (2 files):
Parallelize a bunch of htmlify.p6 (#661)

  * Convert the "Processing $dir Pod files ..." section to a bunch of start()s and await()s and convert the "Writing [type graph images, specialized visualizations] to html/image" section to a bunch of Proc::Async.new.start()s, and awaits()
  * Don't use temp files at all for dot command, instead just write the content to stdin of the started process
  * Add the --parallel argument to specify how much parallelization to do, the default is 1 so the old serial behavior is the default (should help Travis)
  * Only check if dot exists once
18:06
Zoffix ISAGN for a trait that'd let .new() take attributes, but still have them be private.
psch m: class A { has $!a; submethod BUILD(:$!a) { }; method get_a { $!a } }; A.new(:1a).get_a.say 18:07
camelia rakudo-moar 24e608: OUTPUT«1␤»
psch Zoffix: i think ^^^ that BUILD shortform is good enough for that :P
Zoffix m: class A { has $!a; has $.b; submethod BUILD(:$!a) { }; method get_a { $!a } }; A.new(:1a, :42b).b.say 18:08
camelia rakudo-moar 24e608: OUTPUT«(Any)␤»
Zoffix psch, ^ not really.
You have to duplicate each attribute, which is a PITA
dalek c/missing-doc: 1bb1550 | (Jan-Olof Hendig)++ | doc/Type/Cool.pod:
Added documentation for sech and asech to Cool.pod
18:09
psch makes a note to not always consider ISAGN snarky
i think i blame mst for that notion
Zoffix: fwiw, i agree that the duplication of each Attribute is annoying, but i disagree that it should be easier
Zoffix: but i'm also really not coherent anymore today to actually argue that position 18:10
Zoffix FWIW, I mean via a module, not necessarily a core feature
18:10 jjido left
psch Zoffix: further, the only way i see to have a trait do that is by building the BUILD, which probably could work, but would clearly still have to take care of all Attributes 18:10
*building the BUILD during trait application
18:11 jjido joined
psch but i'm not sure if you can really reach the containing class from the Attribute, and if the trait runs at the right time to add BUILD 18:11
it's worth experimentation, for sure
arnsholt Hee hee hee. I'll be leaving academia soon, rejoining The Real World, and recently discovered what language I'll be working with
Smalltalk! =D
AlexDaniel MasterDuke: github.com/perl6/doc/commit/19d6b9...1c6e0a6d67 :D 18:12
MasterDuke: so your attempt is effectively third
MasterDuke third time lucky i hope 18:13
AlexDaniel it looks right
MasterDuke++
[Coke]: some time ago you said that we can probably clean up the list of branches in the doc repo. I've done that now 18:14
[Coke]: there are still some thing to remove though :)
moritz: perhaps you can review the most recent MasterDuke++ commit and decide what to do with two of your branches yourself :) 18:16
18:16 domidumont left 18:17 rurban_ joined 18:18 kalkin-_ is now known as kalkin-
FROGGS__ tlvb: hi, considering how module loading works, I believe runtime loading of modules would be quite problematic 18:19
tlvb: unless it is about subroutines only that get "exported"... I could imagine that we could re-bind the code objects 18:22
18:23 rurban1 joined 18:24 rurban2 joined 18:25 rurban_ left 18:26 rurban3 joined, rurban3 left 18:27 rurban1 left 18:28 rurban2 left 18:29 rsl left
moritz AlexDaniel: thanks, I've deleted the branches 18:40
dalek c: 2f6b24c | moritz++ | util/update-and-sync:
Build with --parallel=4
18:44
moritz let's see how well that works out. 18:45
AlexDaniel moritz: ehh, travis will fail
TEttinger AlexDaniel: Zoffix: somebody mentioned monospace fonts? :D
Zoffix TEttinger, I didn't...
TEttinger I've been editing one open source font for a while now
well somebody mentioned in the revert-mentioned issue that some of the fonts were ugly in the docs? 18:46
AlexDaniel all fontts are ugly, yes
fonts*
moritz AlexDaniel: uhm, does travis really use util/update-and-sync? 18:47
and if so, where do the SSH keys come from that the "sync" part uses? :-)
AlexDaniel moritz: ah whoops. My bad 18:48
TEttinger I do like this one, though I don't know if it's the right style. I also don't know what it needs to fit perl6's more unusual unicode usage github.com/tommyettinger/home/tree.../Fonts/ttf (this is kinda a temporary holding area for me to put changing versions)
I can make some preview images 18:49
(the original repo is github.com/MihailJP/Inconsolata-LGC , but it really needed some fixes to hinting)
18:50 domidumont joined 18:52 yqt joined
AlexDaniel interestingly, the only font that I can look at for more than a few minutes is Terminus. But there's no proper vector version :( 18:53
18:55 zakharyas left
moritz is not a very visual person, and doesn't really understand all the fuzz about fonts 18:58
18:59 labster joined
Zoffix wtf... looks like RT rest interface doesn't decode query params :S 19:00
19:01 espadrine left
AlexDaniel wow, what a beautiful spam 19:03
19:03 jjido_ joined
Zoffix ? 19:04
19:04 jjido left 19:05 cognominal joined 19:06 canopus left 19:07 CIAvash left 19:09 jjido_ left, xiaomiao is now known as DrEeevil
AlexDaniel Zoffix: 128531 ticket, if you can see it 19:10
Zoffix: basically it is well formatted, with colors and images
19:12 canopus joined 19:17 jjido joined
Zoffix laughs 19:17
RT's REST doesn't like encoded URLs and HTTP::UserAgent doesn't like encoded URLs :P 19:18
Fuckin' 'ell
jdv79 what does it all mean?
Zoffix I'm trying to have a piece of Perl 6 code fetch perl6 ticket queue from RT. But because the software involved is crap, I'm wasting my time instead of achieving results. 19:20
And this started with Perl5's RT::Client::REST that's also idiotic: search returns only ticket IDs and if you want to have any usable info for them, you have to perform a request per ticket ~_~ 19:21
19:22 jjido left 19:28 domidumont left 19:34 darutoko left
mst Zoffix: not actually true 19:35
Zoffix mst, which part? That RT doesn't like encoded URLs or that RT::Client::REST only returns IDs? 19:36
mst Zoffix: you can get more than just the ticket ids, I have code that converts the summary into JSON with subject, queue, owner etc.
Zoffix Which summary? 19:38
mst Zoffix: oh, great, the 'rt' script does it, I'm not sure the module is
this is why on my list of things to do is to rewrite the entire blasted thing with my Mojo::FutureDo code + Mojo::UA
Zoffix And even the rt script is messed up because it returns only like 20-30 characters for the subject 19:39
Jesus. Everything RT-related is cursed.
19:39 huggable left
mst err, wrong 19:39
19:40 huggable joined
mst Zoffix: paste.scsys.co.uk/525297 19:40
moritz everything software related is cursed.
mst Zoffix: yes, I'm aware that's a giant kludge. but I was more interested in my react+mobx front end and it's a working kludge that I don't have to think about 19:41
Zoffix heh 19:43
"Makefile:4: *** missing separator (did you mean TAB instead of 8 spaces?). Stop."
mst right, because in the process of pasting the indentation will have gone missing 19:44
but, still, at least it gets you a summary
Zoffix Seems to just hang
mst that's probably because it's taking a looong time to get the results 19:45
because that's summaries for like every ticket ;)
parabolize ++awwaiid for fixing RT#128470. I should update my rakudo more often. 19:47
synopsebot6 Link: rt.perl.org/rt3//Public/Bug/Displa...?id=128470
19:48 rgrinberg joined
Zoffix mst++ thanks. At least I got something working 19:48
mst I'll tell you if I get a better module together
19:55 jjido joined
pmurias arnsholt: will you have to use some horrible smalltalk IDE :/ 19:58
?
arnsholt pmurias: Well, it's Smalltalk. That's *literally* how Smalltalk works =) 20:05
The development is done *in* the application
It's an interesting approach, but apparently not ideal 20:06
The manager I talked to said the development environment wasn't very good 20:07
mst i think part of the trouble is that people who're used to other languages try to fight it rather than going with the flow
it's not a good 'development environment'
... but if you can achieve the smalltalk zen, it's apparently a very good way to write smalltalk
arnsholt Yeah, that's probably true
It's also a legacy application, having been in continuous production for 20 years this year 20:08
20:08 xinming left
moritz heh, I can top that 20:09
arnsholt Not bad!
What kind of system is it?
moritz 22 years, and writtein in Perl 5
a CLI interface to a database
arnsholt Neat 20:10
moritz CMDB, CRM, asset management etc.
arnsholt Right, right
mst so basically the bits with 'use strict;' are the modern bits?
arnsholt This is process and document managment for Norwegian police and prosecutor's offices
moritz it used to be based on msql, and had a separate "strings" table, because storing strings inline in the table didn't work very well back then
20:11 setty1 left
moritz mst: basically all code I touch has "use strict; use warnings; no warnings 'redefine';" in it 20:11
20:11 Ven left
moritz and if not, I add it 20:11
(the "no warnings 'redefine'" is an artifact of a custom module loader that nobody wants to touch, but which otherwise works) 20:12
20:12 setty1 joined, zakharyas joined
moritz and the "strings" table is long gone as well 20:12
arnsholt: how large is the team you'll be working on? 20:13
arnsholt moritz: Not sure, 20ish people I think
mst moritz: yeah, that's the most common warnings category for me to turn off tbh
20:14 Zoffix left
mst arnsholt: surprised if people dislike the dev env they haven't tweaked it already, given it's part of the thing 20:14
arnsholt Yeah, I'll have to see what it's like once I get into it in August
Sounded like part of the problem was their Smalltalk, which was good in 1999 (or whenever), but is apparently not quite as hot these days 20:15
moritz mst: some things are quite hard to tweak; if the development happens within the application, source control might not be external, and thus a very delicate topic
arnsholt Apparently Smalltalk has had some very good VCS things quite early
20:16 labster left
arnsholt If I remember correctly from what I've heard at least 20:16
moritz that's speculation here, but I know from some earlier Navision systems that they had that kind of problem
arnsholt: the question is just if it's still good by today's standards
mst Navision
who called their scripting thing 'client server language' 20:17
that navision?
moritz mst: that Microsoft thingy blah
arnsholt moritz: ISTR hearing about more or less git-like things, actually
moritz arnsholt: that's hopeful :-)
mst moritz: yep. I used to have to integrate with that before microsoft bought it
20:18 sena_kun left
mst it was ... stunning 20:18
20:18 rindolf joined
arnsholt moritz: Yeah, I think it'll definitely be an interesting challenge to work with 20:18
20:19 kaare_ left 20:20 labster joined
moritz arnsholt: do keep us up to date :-) 20:24
20:25 jjido left 20:34 jjido joined 20:35 RabidGravy joined
arnsholt moritz: I will, I will =) 20:42
20:49 zakharyas left 20:51 kurahaupo left 20:52 buharin left 21:04 cognominal left 21:05 cognominal joined 21:12 jjido left 21:16 setty1 left 21:19 jjido joined 21:23 mr-foobar left 21:24 jjido left 21:25 mr-foobar joined 21:31 FROGGS__ left 21:40 AlexDaniel left 21:49 xinming joined 21:54 edwbuck joined 21:55 edwbuck left 22:03 abruanese left 22:08 abruanese joined 22:11 pmurias left 22:14 spider-mario left, spider-mario joined 22:21 jcallen left 22:22 jcallen joined 22:23 user9 left 22:25 molaf left
zengargoyle hrmmm... looks like LWP::Simple needs a dependency on IO::Socket::SSL so tests can access https: urls. 22:47
22:54 rsl joined 22:56 firstdayonthejob left 22:59 Azry joined 23:05 cyphase left 23:10 cyphase joined 23:13 jjido joined 23:18 jjido left 23:24 woolfy left 23:26 Senj left 23:31 wamba left 23:34 rindolf left, spider-mario left 23:36 RabidGravy left 23:39 huggable left 23:40 huggable joined 23:45 rgrinberg left 23:53 grondilu left 23:55 torbjorn left 23:56 rgrinberg joined 23:59 tlvb left