»ö« Welcome to Perl 6! | perl6.org/ | evalbot usage: 'p6: say 3;' or rakudo:, std:, or /msg camelia p6: ... | irclog: irc.perl6.org | UTF-8 is our friend!
Set by masak on 12 May 2015.
00:05 khw joined 00:09 Alina-malina left, clkao left, colomon joined, clkao joined 00:42 jkva joined, espadrine_ left 00:52 Ben_Goldberg joined, jkva left 00:55 BenGoldberg left 01:15 mr-foobar left 01:19 rmgk left, rmgk_ joined, rmgk_ is now known as rmgk 01:21 Spot__ left, Spot__ joined 01:24 gfldex left 01:29 skids joined 01:30 telex left 01:32 telex joined 01:43 vendethiel left 01:55 Hor|zon joined 02:00 Hor|zon left 02:05 tinyblak joined 02:08 cognominal left, cognominal joined
skids .tell smls I commented on your binary parsing gist, JFYI. 02:51
yoleaux skids: I'll pass your message to smls.
02:52 konsolebox joined 02:55 noganex_ joined 02:56 Ben_Goldberg is now known as BenGoldberg 02:58 noganex left 03:21 yqt left 03:24 tinyblak left, aborazmeh joined, aborazmeh left, aborazmeh joined 03:33 bjz left 03:35 bjz joined
skids anyone got a recent rakudo-j running on Sun JVM? 03:46
(recent newer than 7-15)
(Or I guess that's Oracle JVM these days)
03:53 bjz left 03:56 Hor|zon joined 04:01 Hor|zon left 04:03 jack_rabbit joined 04:05 Averna left
ugexe you can always cheat and throw it up on travis using rakudobrew build jvm, as they use Oracle 04:22
04:24 tinyblak joined
skids has never used anything travis related 04:24
04:30 tinyblak left 04:31 bjz joined 04:38 BenGoldberg left 04:41 mr-foobar joined 04:50 khw left 05:06 TEttinger left, kaare__ joined 05:08 TEttinger joined 05:24 Alina-malina joined 05:27 silug_ left 05:28 silug_ joined 05:49 roguelazer joined
dalek ar: d39f562 | moritz++ | tools/star/release-guide.pod:
Document some more submodule magic
05:54
05:56 roguelazer left 05:57 Hor|zon joined, roguelazer joined 06:02 Hor|zon left
dalek ar: 15fa3b1 | moritz++ | docs/announce/2015.07.md:
Add 2015.07 announcement draft
06:07
moritz TimToady: fwiw the ecosystem fallout from the ~~ precendence changes seem to be mostly related to smart-matching with a Range literal on one side now requiring parens 06:09
$status ~~ 0..4 needs to be $status ~~ (0..4)
which is a bit unfortunate, since I never wanted a smart-match result to be a Range endpoint, but smart-matching against ranges is quite common 06:11
dalek kudo-star-daily: c9d0ad2 | coke++ | log/ (9 files):
today (automated commit)
kudo-star-daily: 0f9b993 | coke++ | log/ (9 files):
today (automated commit)
rl6-roast-data: 45a7d72 | coke++ | / (9 files):
today (automated commit)
06:15 aborazmeh left 06:31 tinyblak joined 06:44 [Tux] joined
moritz hack.p6c.org/~moritz/rakudo-star-20...RC0.tar.gz # Rakudo Star release candidate. Feedback and testing very welcome! 06:49
06:51 AlexDaniel left
jdv79 is there a way to run sans precomp? 06:59
i'm tired of rebuiding/wiping/wasting time for simple experiments ^H
moritz run what?
jdv79 perl6 07:00
moritz if you ran rakudo without precompiling the setting, then startup time would be as long as compilation time
you can run stuff without precompiling modules, however 07:01
jdv79 no, i want to test random settings changes
*setting
07:02 RabidGravy joined 07:09 skids left 07:13 kaare__ is now known as kaare_ 07:17 darutoko joined
RabidGravy marnin! 07:18
07:27 Hor|zon joined 07:33 Hor|zon left 07:48 espadrine_ joined
jdv79 did strings recently become unpos-able? 07:52
oh, nm
read it wrong
RabidGravy "more coffee needed" 07:57
07:58 rindolf joined
jdv79 index isn't kicking back a int anymore 07:58
that's it
Pos something now so == 0 instead of === 0
moritz it was reverted, afaict 07:59
m: say 'foo'.index('0').^name
camelia rakudo-moar 6bbb56: OUTPUT«Int␤»
jdv79 but still a good idea - more coffee and tea
oh. i am a few days old here. 08:00
08:00 kaare__ joined
jdv79 cloning and rebuilding is getting time consuming:( 08:00
08:03 kaare_ left 08:04 kaare__ left 08:05 kaare__ joined 08:06 Averna joined
jdv79 thanks moritz - that did the trick 08:13
breakage++ # cuz time is worthless:) 08:14
08:26 Foxcool joined
jdv79 could I get a lame little dist i wrote added to the ecosystem? 08:26
masak good antenoon, #perl6 08:29
jdv79 too bad in porting it from p5 to p6 the docs were forgotten. oops. 08:30
masak moritz: re irclog.perlgeek.de/perl6/2015-07-25#i_10953418 -- I'd prefer if you task-stole that. I feel I've cursed myself a bit for this release. :/ 08:31
TimToady: re irclog.perlgeek.de/perl6/2015-07-25#i_10953872 -- ok, wow. I think I can live with that, *provided* it's easy to make the right thing even when the right thing is "this object is not the sum of its parts", like with filehandles. 08:32
jdv79 i'm a little confused wrt that whole conversation - eqv is meant to be "value equality", no? 08:33
at least timtoady speaks sense on it
masak I also found myself thinking the other day that the most important thing isn't defaults or macros or sexy MOP action, but a nice, friendly *tutorial* of perldoc style.
could even do cloning and eqv in the same tutorial, since they are related. 08:34
jdv79 good defaults are not useless
masak jdv79: didn't say they were.
jdv79 that something generally does the most intuitive thing saves a lot of effort doc'ing, explaining, debugging, etc...
nine m: class Foo is Mu { }; say Foo.new ~~ Pair; 08:35
camelia rakudo-moar 6bbb56: OUTPUT«X::Multi::NoMatch exception produced no message␤ in block <unit> at /tmp/5Qjq0b8f3L:1␤␤»
nine Locally I get a "Invocant requires a 'Failure' instance, but a type object was passed." message 08:36
jdv79 i don't really get your point masak
08:47 rurban joined 09:00 kaare__ is now known as kaare_
masak my point is that, while good technoques and defaults are important, a tutorial to describe how to use them (and the intents/theory behind them) is more important. 09:09
it's one of those "on-ramps" that we keep mentioning. 09:10
I mean that literally. I would prefer a good tutorial that explained how to do it in an insufficient way, than vice versa. 09:14
jdv79 the language section of the docs aren't enough?
masak haven't looked. 09:15
I doubt that there is a chapter on custom cloning and eqv, though
jdv79 i guess more depth would be nice but kinda hard when things are still kinda shifty
i kind of assumed that would happen after christmas 09:16
ShimmerFairy masak: I do agree that Perl 6 is sorely lacking in tutorials. It's something I think about on occasion.
jdv79 i'm not sure if anyone thinks the p6 docs are anywhere near adequate 09:17
docs and tests always come after the code;) 09:21
ShimmerFairy Actually, in the case of Perl 6, the docs (specs) and tests (roast) came _before_ the code :P 09:22
09:23 Begi joined
jdv79 the specs are not docs for devs 09:24
roast++ though 09:25
RabidGravy it's pick a topic you think should be represented in docs.perl6.org/language.html, discuss it here and then make it really 09:29
jdv79 well, if masak and TimToady are disagreeing about something then a mere mortal probably shouldn't doc it 09:30
RabidGravy it was more in general really, but best effort on any topic, if it's not quite accurate someone who knows more detail will surely come along and remediate 09:33
09:44 colomon left 09:59 smls joined
smls o/ 10:00
yoleaux 02:51Z <skids> smls: I commented on your binary parsing gist, JFYI.
10:01 jkva joined
smls .tell skids Thnks; I posted a reply. 10:06
yoleaux smls: I'll pass your message to skids.
ShimmerFairy smls: One thing I thought about with binary parsing is that, for binary data, I find it more common to jump all over the file, as opposed to text data which you usually parse linearly from start to finish. (e.g. A file format whose header has some offsets, and that's from whence you get all the file's data).
smls true
ShimmerFairy So one thing I'd like is if the binary version of grammars were more able/open to a non-linear parsing of the data.
smls once can always "jump forward" using . ** {$n} I guess 10:09
ShimmerFairy Too bad that only works if your offset is relative and positive :) 10:11
smls :P
What would $/.Buf be if you jumped around though? 10:12
Maybe we'd need a way to prevent those Buf's from being constructed in the Match object altogether 10:14
ShimmerFairy Hard to say. My first thought for doing jumping around would be perhaps something like <foodata(<getuint32>)> , i.e. supplying the offset to a rule that'll start from there. (Probably wouldn't end up looking quite like that, though)
smls After parsing a full ZIP header, you don't really care what it's comple binary buffer looks like 10:15
*complete
Currently, a Match is assumed to know its .from and .to, and everything in between is part of the Match. 10:17
ShimmerFairy smls: I'm trying to think why parsing binary feels like a very different thing from text. I think I may have figured it out: text separates the meaningful parts with defined meaningless things (often whitespace, for example). Binary data on the other hand separates meaningful parts with _anything_ (including other meaningful parts). 10:18
10:18 TEttinger left
smls Although, you can already extract captures from a look-ahead/behind that won't be part of the parent rule's "match substring", and I guess your idea is not so different from that 10:19
i.e. kind of like a "look-ahead to a specific position"
10:23 brrt joined
ShimmerFairy smls: The best analogy to offsets in a binary file I can think of atm would be stuff like include "../foobar" in text files. 10:23
smls though that would span multiple files 10:24
m: say "aaa123" ~~ /a+ <before 1(2)3>/
camelia rakudo-moar 6bbb56: OUTPUT«「aaa」␤ before => 「」␤»
smls hm, looks like you *can't* extract captures from look-arounds?
you can in Perl 5
ShimmerFairy smls: Sure, not the perfect analogy. I suppose the in-file equivalent would be some file-local "goto" piece :) 10:25
10:25 iH2O joined, iH2O left
jdv79 is there anything like "author tests" yet? 10:27
smls ShimmerFairy: Like foot-notes?
And don't XML/YAML have cross-references
jdv79 in p5 land i use metacpan.org/pod/Module::Install::AuthorTests 10:28
smls but the thing is, you pretty much have to parse the whole file to deal with those
it's not like an offset in a binary file which you can brindly follow without knowing about the rest of the file
*blindly
ShimmerFairy smls: Yeah, I suppose footnotes/cross-refs are also like that. The difference between the text versions and binary offsets is that the text ones are often left for application logic to handle, while in binary files it's something that leads to more parsing 10:29
(I can't imagine a text equivalent of binary offsets where there's no other way to parse the text file than to follow the "footnotes" as it were) 10:30
smls yeah
jdv79 also, what about "use warnings FATAL => 'all'" - how does that translate frpm p5 to p6? 10:32
ShimmerFairy smls: I think the main difference binary files introduce is that data within are more often (though not always) of constant size and location, or explicitly stated within the file. (Variable length/location data isn't as common as in text) 10:34
jdv79: I don't think we have a way to make warnings fatal yet, and I don't think there's anything like AuthorTests (nor is there really a system in place to make it work like it does in P5, judging from the description) 10:35
*data within is more often
smls ShimmerFairy: There could maybe be an "at" directive like this: <imageoffset=.uint16le> <at($<imageoffset>.made) <bitmapdata> >
which would count as a zero-width assertion as far as the parent rule is concerned 10:37
ShimmerFairy smls: too bad we couldn't use the @ symbol for that, I don't think :P
smls heh
RabidGravy just smoking the ecosystem and seeing a reasonable amount of fallout from the "non-associative" change 10:38
10:38 brrt left
smls m: / <@100 foo> / 10:38
camelia rakudo-moar 6bbb56: OUTPUT«5===SORRY!5=== Error while compiling /tmp/Y6lKMDdwhx␤Unable to parse expression in metachar:sym<assert>; couldn't find final '>' ␤at /tmp/Y6lKMDdwhx:1␤------> 3/ <@1007⏏5 foo> /␤»
ShimmerFairy m:bin/ <bitmapdata> @ <imageoffset> / :P
RabidGravy also pre-comp issues where there was none before
ShimmerFairy What non-associative change? 10:39
smls: I can't shake the feeling that going through a binary file feels almost... fundamentally? different from going through a text file. I can't figure out how to explain it either. I think it could possibly be worth drafting a regex-like language, and then see how sensible it is for regexes to do binary data. 10:41
10:44 diana_olhovik_ joined
smls Maybe... 10:46
Btw, what *does* @ mean in a regex currently?
RabidGravy ShimmerFairy, github.com/rakudo/rakudo/commit/81...4710f3e67e 10:47
smls m: @b = "b"; say "abc" ~~ /a @b c/
camelia rakudo-moar 6bbb56: OUTPUT«5===SORRY!5=== Error while compiling /tmp/lIpgGnEAkQ␤Variable '@b' is not declared␤at /tmp/lIpgGnEAkQ:1␤------> 3<BOL>7⏏5@b = "b"; say "abc" ~~ /a @b c/␤»
smls m: my @b = "b"; say "abc" ~~ /a @b c/
camelia rakudo-moar 6bbb56: OUTPUT«「abc」␤»
smls m: my @ = "b"; say "abc" ~~ /a @ c/
camelia rakudo-moar 6bbb56: OUTPUT«Nil␤»
ShimmerFairy m: my @b = <b d>; say "abcadc" ~~ /[a @b c]+/
camelia rakudo-moar 6bbb56: OUTPUT«「abcadc」␤»
smls yeah, but the bare @ variant doesn't seem to mean the same thing 10:48
even though it's a valid variable name
jdv79 ok 10:49
ShimmerFairy smls: My only concern is that it would cause problems for people who don't like spaces ("Why does /a@c/ think I'm calling for some @c variable!?")
smls
.oO( @ is taken? Just use @@ then! )
10:50
:P
10:52 lizmat joined
RabidGravy two PRs so far from the smoke run 10:55
lizmat waves from Echt (really!) 10:57
ShimmerFairy o/ 10:58
10:59 Spot___ joined 11:00 krakan joined, itz_ joined, Juerd_ joined, bonsaikitten joined, hahainte1net joined, hoelzro_ joined 11:02 ggherdov_ joined 11:03 jkva left 11:04 roguelazer_ joined, robins joined 11:05 roguelazer left, Spot__ left, itz left, ggherdov left, xiaomiao left, dustinm` left, roguelazer_ is now known as roguelazer, Juerd_ is now known as Juerd 11:06 dustinm` joined, Spot___ is now known as Spot__
jdv79 are there any decent pod renderers besides htmlify.p6? 11:10
trying to port docs from p5 to p6 is kinda hard to format when perl6 --doc looks wrong
11:11 timotimo joined 11:12 ggherdov_ is now known as ggherdov, retupmoca joined
ShimmerFairy jdv79: something like perl6 --doc=HTML file.p6 > file.html would use the Pod::To::HTML module to render the docs in a file (this is the same module htmlify uses, incidentally) 11:13
jdv79 i meant for term display 11:14
ShimmerFairy I don't think there are any modules currently aside from Pod::To::HTML and Pod::To::Text (the default for --doc) 11:15
Woodi hallo #perl6 :) 11:16
ShimmerFairy Ooh, I was wrong, there's apparently a Pod::To::Markdown now
11:17 kaare_ left
Woodi here is .Net eqv: msdn.microsoft.com/en-us/library/b...10%29.aspx it: 1) check for reference equality; 2) check for value equality: a) do types are the same; b) compares private and public fields; no word about cycles but it know about delegates 11:21
jdv79 seems pretty straightforward 11:22
11:24 inokenty joined
Woodi "serialize&compare" is nice, but discusion is a bit teoretical, no real use cases was presented 11:24
and there are two patterns on that subject (at least :)): Value Object (simple thing) and Identity Map. If someone needs somethig not basic then maybe "eqv" is not what is needed 11:29
11:33 telex left 11:34 telex joined, robins is now known as robinsmidsrod
dalek Heuristic branch merge: pushed 29 commits to specs/newio by lizmat 11:35
Heuristic branch merge: pushed 117 commits to rakudo/newio by lizmat 11:37
Heuristic branch merge: pushed 212 commits to roast/newio by lizmat 11:39
11:52 Begi left 11:53 konsolebox left
jdv79 can I get github.com/jdv/p6-data-selector added to the ecosystem? 11:53
moritz jdv79: sure 11:54
lizmat just do a PR in the ecosystem repo?
jdv79 i'd like to get it tested more at the very least
oh, ok
11:54 [Sno] left, [Sno] joined
moritz jdv79: you should have commit access to github.com/perl6/ecosystem already 11:55
jdv79 oh
moritz add it to META.list
jdv79 just at the tail? 11:57
RabidGravy everyone does
though the modules list makes it alphabetical anyway 11:58
dalek osystem: 3f800db | jdv79++ | META.list:
Add Data::Selector.
11:59
jdv79 ok, thanks 12:00
how long til that change propagates fully?
panda claims ignorance of the dist 12:01
12:02 AlexDaniel joined 12:03 jkva joined, Begi joined
moritz jdv79: the next update of the list should be ~4min 12:05
jdv79 hmm, i didn't put a provides section in the meta - is that necessary? 12:06
moritz yes
jdv79 hopefully fixed that 12:11
masak TimToady: re-reading irclog.perlgeek.de/perl6/2015-07-25#i_10953872, it seems to me we should start thinking about cycle detection and massive serialization, and then use those new primitives to solve .perl/deep cloning/eqv all at the same time. 12:12
I realli would like it if we did this by simultaneously writing up a tutorial for docs.perl6, though.
jdv79 didn't make it
masak really*
jdv79 is it */5 or */15 - the projects.json refresh i mean 12:13
moritz jdv79: it's 8,28,48
masak m: BEGIN $_ = 1; .say
camelia rakudo-moar 6bbb56: OUTPUT«1␤»
masak m: BEGIN { $_ = 1 }; .say
camelia rakudo-moar 6bbb56: OUTPUT«5===SORRY!5=== Error while compiling /tmp/6nyYyMMdFr␤An exception occurred while evaluating a BEGIN␤at /tmp/6nyYyMMdFr:1␤Exception details:␤ 5===SORRY!5=== Error while compiling ␤ Cannot assign to an immutable value␤ at :␤»
jdv79 meh. i need to eat. i'll check it later i guess.
masak I don't understand why that block's $_ would be immutable. 12:14
moritz , or } expected while parsing object/hash, at character offset 419 (before ""BSON::
Javascript": ...") at server/updatelist.pl line 29, <$_[...]> line 357.
masak moritz: do you know of an "all the things that are wrong about git submodules" resource on the web? 12:15
12:15 jkva left
moritz masak: no 12:15
masak there should be one, I think. maybe I'll write a blog post for it. 12:16
mdinger, vendethiel: I always read `<?before` as meaning "I (the cursor) am standing *before* the following pattern" 12:17
moritz jdv79: did you 'panda update'?
jdv79: I did, and now it knows about Data::Selector
lizmat hmmm... seeing quite some spectest breakage now?
jdv79 no, just panda install Data::Selector
weird
lizmat oops 12:18
my bad
masak moritz++ # Star RC0
TimToady: I agree with moritz about `$status ~~ (0..4)` feeling less-than-optimal. or, put differently `$status ~~ 0..4` is a very natural thing to want to do, and I wouldn't want to see us breaking it. 12:19
jdv79 ah, i think i just installed it. what is provides needed for then?
masak TimToady: is there a have-the-cake-and-eat-it option? if not, then I think I prefer ~~ to be of the precedence we had it at.
TimToady: (and I've never taken a stance against it being chaining; I just found it amusing/unnecessary) 12:20
jdv79 anyway, thanks moritz++ 12:21
food &
moritz since most smart-matches return a Bool, and smart-matching against a Bool is pretty boring, I don't see much motiviation for chaining ~~
smls masak: Maybe .. is the one that needs a different precedence? It feels too loose w.r.t. set/bag operators too. 12:22
12:22 vendethiel joined
masak moritz: me neither, but I dislike `$status ~~ (0..4)` a lot less than I mind chaining ~~ 12:23
moritz smls: example?
masak in fact, until I see proof to the contrary, I don't think we can improve the current precedence table a lot.
lizmat masak: there is a precedent for needing to parenthesize ranges
masak (and trying will only upset the ecosystem) 12:24
moritz s/less/more/ ?
masak moritz: aye.
lizmat m: ^10>>.say
camelia rakudo-moar 6bbb56: OUTPUT«10␤»
lizmat m: (^10)>>.say
camelia rakudo-moar 6bbb56: OUTPUT«9␤7␤5␤3␤1␤8␤6␤4␤2␤0␤»
smls moritz: Hm, guess I remembered wrong, it seems it's actually tighter than set ops.
ShimmerFairy moritz: also, ~~ is a non-Bool comparer (most famously $something ~~ /regex/), so it makes sense to me to group it with the other non-Bool comparers. 12:25
smls m: say 1..5 (&) 3..10 12:26
camelia rakudo-moar 6bbb56: OUTPUT«5===SORRY!5=== Error while compiling /tmp/A0Bo141vfT␤Operators '..' and '..' are non-associative and require parentheses␤at /tmp/A0Bo141vfT:1␤------> 3say 1..5 (&) 3.7⏏5.10␤»
smls Hm no, not tighter than all of them
moritz ShimmerFairy: ~~ is mostly Bool; regex and substitution are the only examples I can think of that aren't Bool 12:27
smls m: say 1..5 (<) 3..10
camelia rakudo-moar 6bbb56: OUTPUT«False␤»
ShimmerFairy That paren-less (&) seems bad. I think it's much more natural to read that as (1..5) (&) (3..10) than 1..(5 (&) 3)..10 12:28
moritz: true (though the fact that it returns not-a-Bool in any case in core means you can't 100% trust it'll return a Bool). I also argue that chaining ~~ doesn't really make sense, at least not in the same way as 0 < $x < 5 12:29
smls m: say 1 .. 5 + 1 12:34
camelia rakudo-moar 6bbb56: OUTPUT«1..6␤»
smls ^^ I guess making this work is the reason why .. has so loose precedence
12:35 Juerd left
masak ShimmerFairy: "group it with the other non-Bool comparers" -- but infix:<..> is not a compararer at all. 12:35
ShimmerFairy masak: didn't say or suggest it was. 12:36
masak ShimmerFairy: that was a direct quote of you above.
12:36 Begi left
masak I don't see how what you said can be read in any other way :) 12:36
ShimmerFairy masak: The other non-Bool comparers are at the above precedence level, but the above precedence level isn't exclusively a group of non-Bool comparers
12:36 Juerd joined
masak has a look at that prec level 12:37
oh, the <=> and stuff
I see
ShimmerFairy: I would agree, if I didn't know that it causes people to have to write `$status ~~ (0..4)`, which feels like a bad hoop to have to jump through. 12:38
*especially* as it breaks existing code out there.
dalek kudo/nom: 1c7c6ff | lizmat++ | src/core/ (3 files):
Re-introduce Pos for returning Positions

Using timotimo's suggestion for using MMD for Pos.Bool
If this is thought to be a confusing / bad idea anyway, I'll revert again (but for unkeeps this time :-)
12:39
12:39 kaare_ joined
ShimmerFairy I'm not concerned with changes in having to paren stuff, simply because it's impossible to design a paren-less precedence table. I'm more concerned with the sensibility of allowing ~~ to chain (and the RT ticket that exists because it never did)
masak ShimmerFairy: I'm weighing the badness of allowing ~~ to chain against the badness of having to insert those parentheses in a common idiom. the latter badness comes out much worse in my eyes. 12:40
12:40 bin_005 left
masak ShimmerFairy: that ticket even theorizes that allowing it to chain might be useful in some (not yet encountered) situation. 12:41
I just want to make it clear that I was never against ~~ chaining :)
ShimmerFairy masak: I see it differently, esp. since I'm not aware of ~~ 0..4 as an idiom (I probably have done it somewhere, but not often enough to see it as a pattern)
masak that's how you check whether a thing is between two endpoints!
it's a very common idiom!
RabidGravy lot's of $foo leg $bar ~~ Less in the ecosystem 12:42
ShimmerFairy Huh, I don't think I've ever done it like that.
masak RabidGravy: um, why not just `$foo lt $bar`...?
ShimmerFairy: some of us use that idiom a *lot*.
RabidGravy dunno, just seem it in the smoketests 12:43
masak ShimmerFairy: checking whether a thing is between two endpoint is a common thing to do in code.
ShimmerFairy masak: usually my "within a range" stuff involves iterating over stuff in Perl 6, rather than needing to check if an unknown number is in range.
masak: and I didn't contest that it was an idiom, just that I've never noticed it while writing my own Perl 6 (or looking at others') :) 12:44
masak: The way I see it, the only mention I've seen about chaining ~~ not working in rakudo comes from an almost 5 year old ticket that isn't even marked "open" (it's still "new"), and I've not seen anyone ever complain because they couldn't use ~~ for chaining. 12:45
masak: So I see our choices as "fix the bug so it's chaining" or "fix ~~ so it doesn't chain in the first place". Since nobody has apparently needed a chaining ~~ , I'm inclined to go with "not chaining" :) 12:46
12:49 gfldex joined
ShimmerFairy Note that if we could set ~~ to be non-chaining without changing precedence and it was OK to make the "chaining infix" level inconsistent like that, I'd be happy with that as a solution. 12:50
masak ok, very early draft of that tutorial for eqv/deepclone/perl. not complete by any means, but these are the main points I wanted to get across: gist.github.com/masak/b694a4050f4e91bd254c 12:55
12:56 smls left
masak ShimmerFairy: I think we should try to make ~~ chaining instead of changing its precedence. 12:57
ShimmerFairy: not because I see a great need for it being chaining, but because I think those parentheses would be something we'd end up regretting. I can easily see that becoming an FAQ.
ShimmerFairy Well, I personally don't see it being an FAQ unless every newcomer starts by looking at old code, but I do see your point :) 12:58
masak it's not about looking at old code.
someone tries, `$x ~~ 1..5`, it doesn't work, and they come on the channel and ask why.
s/,// 12:59
the counter to that is "ok, well, we insert a nice warning for that"... but I'd much rather keep ~~ at the preclevel it was.
ShimmerFairy I wouldn't mind if ~~ chained, I just don't see a good use for it myself, and I haven't seen that anyone else has, so I'm not inclined to try to make it work.
masak no-one's asking you to try to make it work :)
ShimmerFairy masak: this FAQ of yours would have a _lot_ of precedence question if that was the case :P 13:00
*questions
masak "I don't really see the use" is a much weaker strike against something than "this common idiom was made more ugly and inconvenient"
ShimmerFairy: there are definitely precedence questions in the FAQ, yes. people like to do ^$limit.method, for example, and expect that to work. 13:01
that one recently got a warning.
m: my $limit = -7; say ^$limit.abs
camelia rakudo-moar 6bbb56: OUTPUT«0..^7␤»
masak oh, that one's correct :P
m: my $limit = 7; say ^$limit.minmax
camelia rakudo-moar 6bbb56: OUTPUT«0..^1␤»
masak heh 13:02
ShimmerFairy the "common idiom" strike doesn't work on people for whom the idiom does not exist, however :P
masak apparently I don't know how to trigger the warning...
ShimmerFairy: do you ever do `if 1 <= $x <= 5`?
ShimmerFairy Not sure, I can't recall ever needing chaining comparison ops (though I probably have, and I wouldn't want the alternative anyway) 13:03
m: say ^42.reverse
camelia rakudo-moar 6bbb56: OUTPUT«Potential difficulties:␤ Precedence of ^ is looser than method call; please parenthesize␤ at /tmp/iaajDzcWzU:1␤ ------> 3say ^427⏏5.reverse␤0..^1␤»
masak ShimmerFairy: to be honest, I'm not so swayed by the fact that you personally have never needed that idiom, either. I have, and I wouldn't like those parentheses. 13:04
ShimmerFairy: oh right, that's how.
digits were needed, I guess.
moritz fwiw ~~ $a .. $b is used at least 8 times in 6 different modules in the ecosystem 13:05
masak moritz++
ShimmerFairy masak: Totally fair. The "common idiom" thing just sounds funny to me in the way that "Get 20 of this rare item" sounds in a game where the said item is a random and common drop. I agree that it's a valid argument for those who do use the idiom, and I certainly don't think you're wrong for seeing it as an idiom :) 13:06
masak I find myself being strongly against that precedence change. the more I think about it, the more I feel that ~~ actually has a kinship with the other comparison ops on the "chaining infix" level.
(which just happen to be chaining, so we may or may not want ~~ to be chaining too, and I don't really see the harm) 13:07
it feels to me that in the rare cases you would want to chain ~~, that's exactly when you also don't care about any regex Match or similar that may fall out.
ShimmerFairy masak: If ~~ chains, I'll likely never need it but I won't mind. If we make ~~ non-chaining on the chaining level and make for a small inconsistency, I'll be fine with that as well :) 13:08
masak like, maybe I want to say `$a ~~ $b ~~ $c` in some setting to express "$a is a kind of $b,, which is a kind of $c" -- I guess I can see that happening.
ShimmerFairy: yes. we agree on that, it seems.
s/,,/,/
ShimmerFairy masak: Also, "This level is chaining _except_ for ~~" sounds bad (and probably is), but fwiw that's how rakudo has been operating for at least 5 years now :P
masak .oO( all the operators the light touches are chaining... but what about that shadowy operator? -- that's beyond our borders. you must never go there, simba ) 13:10
ShimmerFairy wonders if the world of programming will ever do better than pithy 1-dimensional precedence levels, and what kind of hell multi-dim precedence would bring to the world 13:11
moritz not everything can be improved by adding more dimensions. 13:12
masak ShimmerFairy: vendethiel has a paper on that, if you're interested.
vendethiel looks around 13:13
you mean mixfix parsing?
masak yes, that one.
13:13 jkva joined
ShimmerFairy masak: I also once jokingly brought up "quantum" precedence here, which basically runs on magic so you never need parens :P 13:13
masak ShimmerFairy: what you're after is not really called "multi-dim", but en.wikipedia.org/wiki/Partially_ordered_set 13:14
vendethiel ShimmerFairy: www.cse.chalmers.se/~nad/publicatio...mixfix.pdf
ShimmerFairy: this allows agda to define
masak ShimmerFairy: also, I recommend everything Scott Aarsonson ever has written, to learn all the ways in which "quantum" != "magic" ;)
vendethiel if_then_else_ True value _ = value; if_then_else False _ value = value;
and then use it is "if x then y else z" 13:15
ShimmerFairy vendethiel: thanks, I'll be sure to give it a read later :) 13:17
masak: Your gist seems good so far, I just want to point out that S02 seems to refer to the kinds of types as "object types" and "value types", if those terms would be appropriate for your gist at all. 13:21
13:21 daxim_ left
masak ShimmerFairy: noted; thanks. 13:23
vendethiel which gist? 13:25
masak vendethiel: irclog.perlgeek.de/perl6/2015-07-26#i_10956385
dalek kudo/nom: 391bdb1 | lizmat++ | src/core/ (4 files):
Don't need to check for index().defined anymore
13:26
moritz doc/ROADMAP mentions "2 ** Failure changes (japhb" 13:27
what are those Failure changes
?
13:29 jack_rabbit left, rurban left
moritz 3 *** complete Buf implementation (depends on 'is rw' native ints) 13:29
what's missing?
jnthn moritz: Well, we got is rw native stuff and you can now slice Bufs 13:30
I'm not sure what else is missing. 13:31
moritz jnthn: then I'll remove it
jnthn: any idea about the Failure changes? 13:32
ShimmerFairy moritz: that was added back in 2011: github.com/rakudo/rakudo/commit/6fd65520 13:33
Not sure how dated it is by this point.
moritz neither
dalek kudo/nom: 9617374 | moritz++ | docs/ROADMAP:
Remove Buf item from ROADMAP

we seem to be doing allright on the Buf front, and no concrete TODOs remain
13:34
moritz .ask japhb in 2011, you added a point "Failure changes" to docs/ROADMAP; what changes are those? (If they are not needed anymore, or you forgot, please remove the TODO item) 13:35
yoleaux moritz: I'll pass your message to japhb.
jnthn moritz: No, 'fraid not
13:41 diana_olhovik_ left 13:42 azawawi joined
azawawi hi 13:42
dalek ast: e86a689 | moritz++ | S03-operators/repeat.t:
RT #125627: xx Inf
moritz \o azawawi
synbot6 Link: rt.perl.org/rt3/Public/Bug/Display...?id=125627
13:43 Possum left
azawawi how can i modify an attribute in custom new constructor? when i try it, i get "Cannot look up attributes in a type object" 13:43
grondilu: ping 13:44
moritz azawawi: .new is called on a type object, so you cannot access attributes there
azawawi: doc.perl6.org/language/objects#Obje...nstruction
timotimo m: class Foo { has $!a; method new { my $result = Foo.bless(); $result!a = 99; return $result; }; Foo.new() 13:45
camelia rakudo-moar 1c7c6f: OUTPUT«5===SORRY!5=== Error while compiling /tmp/4Z44E0u1Pn␤Missing block␤at /tmp/4Z44E0u1Pn:1␤------> 3ult!a = 99; return $result; }; Foo.new()7⏏5<EOL>␤ expecting any of:␤ statement end␤ statement modifier␤ stateme…»
timotimo m: class Foo { has $!a; method new { my $result = Foo.bless(); $result!a = 99; return $result; } }; Foo.new() 13:46
camelia rakudo-moar 1c7c6f: OUTPUT«5===SORRY!5=== Error while compiling /tmp/YrjxUxSYCR␤No such private method 'a' for invocant of type 'Foo'␤at /tmp/YrjxUxSYCR:1␤------> 3new { my $result = Foo.bless(); $result!7⏏5a = 99; return $result; } }; Foo.new()␤»
timotimo wasn't there a way to do this?
azawawi im wrapping electron API using JSON::RPC... so i need to store handle id to track it in .new lol :) 13:48
moritz m: class Foo { has $.a; method new { self.bless(a => 99) } }; say Foo.new.a, ' bottles of beer"
camelia rakudo-moar 1c7c6f: OUTPUT«5===SORRY!5=== Error while compiling /tmp/3N2foXRLIZ␤Unable to parse expression in single quotes; couldn't find final "'" ␤at /tmp/3N2foXRLIZ:1␤------> 3) } }; say Foo.new.a, ' bottles of beer"7⏏5<EOL>␤ expecting any of:␤ sing…»
moritz m: class Foo { has $.a; method new { self.bless(a => 99) } }; say Foo.new.a, ' bottles of beer'
camelia rakudo-moar 1c7c6f: OUTPUT«99 bottles of beer␤»
azawawi i dont understand it is so simple to do in Java :)
timotimo oh, you're not even talking about private attributes 13:49
my mistake
jnthn And f you do want it private, you probably want to write a BUILD not a new 13:51
*if
moritz azawawi: if you have a usage example for me, it's likely I can show you a simple solution
jnthn Ah, and moritz++ linked to the docs already :)
13:52 dolmen joined 13:53 brrt joined
azawawi ok i will try it. thanks :) 13:53
13:53 FROGGS__ joined
jnthn Time to commute for a few days teaching & 13:56
timotimo "commute for a few days" :o
sounds like an exhausting trip
13:57 FROGGS_ left
jnthn timotimo: No, one commute that'll take ~4 hours door to door, then it'll just be a 10 min walk to teaching each day ;) 13:57
airport & :)
13:57 BenGoldberg joined
timotimo OK! :) 13:57
14:00 dolmen left 14:02 brrt left 14:16 spider-mario joined
jdv79 masak: [$o4, $o5] eqv [$o5, $o4]; # True 14:19
oh, nm. nice. 14:20
why is wanting eqv to front for === a common case or a good idea at all ^H? 14:26
the rest seems cool
masak jdv79: eqv defaulting to === (for user-defined classes) is the current model. the tutorial describes the model we're aiming for 14:30
ugexe speaking of, what does the `method()!method()` do? (ex: self.bless(:$path, :$SPEC, :$CWD)!fap;) 14:34
jdv79 that doesn't answer my question. i know its the current model and i get the intent of the doc.
moritz ugexe: call private method !fap on the result of the .bless() call 14:35
ugexe oh i see... 14:36
masak jdv79: oh, and that one shoulda been False 14:37
oh, no, wait
jdv79 not if its value semantics
azawawi moritz: ping :)
masak right
moritz azawawi: pong
azawawi moritz: github.com/azawawi/perl6-atom-elec...e_launcher
jdv79 i saw it wrong at first 14:38
azawawi moritz: and github.com/azawawi/perl6-atom-elec...Window.pm6
moritz azawawi: that looks rather fishy 14:39
azawawi moritz: yup, it is... my foo is weak in Perl 6 OO lol 14:40
moritz: basically im wrapping calls via JSON::RPC to electron JS renderer process (which is a JSON::RPC::Server) 14:41
.tell grondilu ELI5 => github.com/azawawi/perl6-atom-elec...e_launcher 14:43
yoleaux azawawi: I'll pass your message to grondilu.
moritz azawawi: one way to do it: perlpunks.de/paste/show/55b4f231.6cf3.199 14:44
azawawi: the other is to initilize $!handle_id in BUILDALL, see doc.perl6.org/language/objects#Obje...nstruction
masak a thing struck me about circular structures. I don't thimk they can be created "all at once", with just one assignment. 14:45
example:
m: my $a = []; $a.push($a) # please write as one assignment 14:46
camelia ( no output )
masak this is important for .perl output
but also for how we construct things with cycles in them
14:47 [Tux] left
masak I think we should stop short of deep-cloning things which need the MOP to set attrs correctly 14:48
dunno what .perl should do in that case
14:49 jkva left
moritz fwiw p5 Data::Dumper produces multiple statements 14:50
14:50 skids joined
timotimo m: my $a = [$a]; 14:52
camelia ( no output )
timotimo m: my $a = [$a]; say $a
camelia rakudo-moar 961737: OUTPUT«(Any)␤»
timotimo mhm.
vendethiel seems correct post-glr, no? 14:53
masak moritz: I think producing multiple statements is fine. as long as it's still fairly readable. 14:54
vendethiel: certainly not.
vendethiel: rhs is evaluated and then assigned to (l-value) lhs.
vendethiel isn't $a Any for the whole duration of its = ?
masak that's my point. 14:55
so you get an array of Any
m: my $a = [] but "OH HAI"; push $a, $a; say $a[0][0][0][0][0][0][0][0][0][0][0][0][0].Str 14:56
camelia rakudo-moar 961737: OUTPUT«OH HAI␤»
masak that one is less impressive because .[0] is a no-op when the thing is not Positional... :) 14:57
14:57 rurban joined
ugexe good to know 14:57
vendethiel doesn't quite like it, but knows that perl6 is far too dependent on this behavior 14:59
15:01 [Tux] joined
azawawi moritz: it works but this is one catch... $!handle_id = 0 + $result:handle_id; stores the first handle id for some reason 15:05
moritz azawawi: what kind of syntax in $result:handle_id anyway? 15:06
azawawi: and what do you mean by "first"? 15:07
azawawi: I haven't see multiple handle IDs yet
azawawi moritz: json rpc client returns {:handle_id(1)} 15:09
moritz: that's the blessing of working against a nodejs rpc server... 15:10
RabidGravy so $result<handle_id> right?
azawawi finally fixed... 15:11
Perl 6 can now control atom electron windows (aka chrome) 15:12
github.com/azawawi/perl6-atom-elec...e_launcher
ugexe Other than using a file (such as a pid file), does anyone have an idea I could use to rate limit the number of Proc.run processes I have running at once? The difficult part being that the processes themselves may launch more processes, so I would need to somehow communicate the running thread count from the main program to each process after it is aleady started
15:13 ggoebel joined
masak vendethiel: I'm not too attached to that behavior, either. I don't know that I rely on it implicitly anywhere in my code. 15:13
vendethiel I think it's deep engrained into Perl6 15:14
down into the sigils
timotimo nah, it's just Any 15:15
masak it's sort of Perl 6's way of saying "we may have gradual types and we may do much less auto-flattening than Perl 5... but we still respect the deliberate confusability between a single item and a 1-element list". 15:19
moritz it's more than just Any
ShimmerFairy m: my $a = [VAR($a)]; say $a; $a.push(1); say $a; # masak: does this count as "please write as one assignment" ? :P
camelia rakudo-moar 961737: OUTPUT«[Array.new]␤[Array.new, 1] 1␤»
moritz it's also List.pick(1) return the element rather than a List, for example
masak ShimmerFairy: ...no. 15:20
ShimmerFairy: you didn't close the loop. and you *can't*, not in that way, because the thing you want $a to contain isn't in $a at the time of evaluating the rhs.
it's purely a timing issue.
if there was a phaser that could say "at the point after this statement", then it could be done, I guess. but I'm not sure such a phaser can be created. 15:21
ShimmerFairy masak: I see. I wonder if that still counts towards the "cycles" issue (which I'm not too familiar with, admittedly)
masak something like `my $a = [SOON { $a }];`
ShimmerFairy: "counts towards"? your suggestion doesn't create a cycle. 15:22
ShimmerFairy: it ends up containing two different arrays.
15:22 Possum joined
azawawi moritz: i.imgur.com/J6UolpB.png?1 # create and change url on two electron browser windows 15:22
15:24 Ben_Goldberg joined
moritz azawawi: did you fix the oversharing issue? 15:26
ShimmerFairy masak: In any case, I just discovered $a = [VAR($a)] and now I wish I had an excuse to use it :D
dalek kudo/nom: 6c2ad86 | moritz++ | src/Perl6/Metamodel/RoleToRoleApplier.nqp:
RT #125606: Fix composition of private methods when all but one is a stub
synbot6 Link: rt.perl.org/rt3/Public/Bug/Display...?id=125606
azawawi moritz: yup
dalek ast: 2edb3c9 | moritz++ | S14-roles/stubs.t:
Tests for RT #125606: Role composition and private method stubs
15:27
synbot6 Link: rt.perl.org/rt3/Public/Bug/Display...?id=125606
azawawi moritz: thanks for your time :)
moritz azawawi: you're very welcome
15:28 BenGoldberg left
azawawi moritz: next is getting windows events from JS to Perl 6 15:28
moritz: and wrapping more Electron API
azawawi home & 15:30
15:30 azawawi left 15:32 ggoebel left
masak thinks the next step is to write tests for a bare-bones shared subgraphs/cycles detector 15:36
and then maybe have it provide an API for the three things we want to do, and see it work in a number of representative cases 15:37
15:42 khw joined, isBEKaml joined 15:49 isBEKaml left
moritz 'tis is a tough world: I managed to fix RT #125606, and immediatly had to open another bug report for an issue I uncovered in the process which I don't know how to fix :( 15:51
synbot6 Link: rt.perl.org/rt3/Public/Bug/Display...?id=125606
15:52 virtualsue joined
timotimo did --optimize=off remove the problem? 15:52
moritz timotimo: no 15:53
15:53 Begi joined
timotimo i'm always relieved when problems don't come from our optimizer, because i spent so much time in that thing :) 15:54
15:55 jkva joined, TEttinger joined
moritz timotimo: rt.perl.org/Ticket/Display.html?id=125694 15:56
I don't even know if it was possible to create that condition before my previous commit 15:57
timotimo oh, huh 15:59
16:00 jkva left, Averna left 16:01 tinyblak left 16:02 Averna joined
jdv79 masak: sounds like fun 16:02
how come smoke stops at 7/21? 16:05
16:06 jkva joined 16:09 Averna left
jdv79 also, what's up with gh's syn highlighting? 16:09
16:13 jkva left
moritz jdv79: it's known to be imperfect 16:16
dalek kudo/nom: ed945eb | moritz++ | src/core/Temporal.pm:
RT #125683: Validate minutes in timezone string
16:20
synbot6 Link: rt.perl.org/rt3/Public/Bug/Display...?id=125683
dalek ast: 9c46742 | moritz++ | S32-temporal/DateTime.t:
RT #125683: Validate minutes in timezone
synbot6 Link: rt.perl.org/rt3/Public/Bug/Display...?id=125683
dalek rl6-roast-data: 01d81ba | coke++ | / (9 files):
today (automated commit)
16:35
16:42 rindolf left 16:46 mohij joined 16:48 roguelazer left, roguelazer joined 16:49 roguelazer left, yqt joined 16:57 jkva joined 17:00 roguelazer joined 17:01 virtualsue left 17:06 diana_olhovik_ joined 17:07 jkva left 17:08 jkva joined, zakharyas joined 17:09 jack_rabbit joined
masak another variant to consider for the can't-assign-at-once self-referent structures problem: 17:10
`my $a = fix({ [$^f] });` 17:11
(I'm not sure that generalizes well for things with several cycles, though. need to think about that.)
17:15 jack_rabbit left 17:17 jkva left 17:26 diana_olhovik_ left 17:34 spider-mario left 17:39 brisby joined
moritz it turns out that git-subrepo is rather sloooow, and updating perl6-all-modules is no fun at all anymore 17:49
we're talking about several hours on a host with really fast internet access 17:50
masak huh, wow.
moritz: would it make sense to turn it into a setup that downloads all those repos with --depth=1 instead?
(maybe nuking it every time in-between) 17:51
moritz masak: maybe; at the expense that a mere user can't simply 'git clone' the repo anymore 17:52
that's the advantage with the current setup; only I have the pain with updating
maybe I should just do a weekly cron job, and be done
otoh, the ssh key setup doesn't favor cron jobs
17:55 yqt left
moritz maybe with deploy keys 17:59
or maybe I must give up the illusion that people other than me are using this repo 18:00
masak moritz: the fact that others aren't using the repo doesn't mean it's not a good idea to make it usable for others... :)
18:04 diana_olhovik_ joined
moritz masak: aye, but it sheds some light on the priority 18:04
18:04 zakharyas left
masak .oO( in fact, make it a *challenge* for others to use your repo! make them jump through hoops! users secretly like that! ) :P 18:05
18:07 mdinger joined 18:08 brrt joined 18:11 Begi left 18:14 baest_ joined 18:15 baest left 18:24 xinming joined 18:35 Begi joined
AlexDaniel moritz: "I don't think validating the hour does much good, so I left that part as-is." Uhm... I'm not sure 18:49
+99:00 timezone does not sound quite right 18:50
moritz AlexDaniel: so what exactly is the limit? 18:51
AlexDaniel not 99 for sure 18:52
-12:00..14:00 is what we have right now
Begi Hey #perl6 ! Is someone can take a look at this code and tell me what can I improve ? Thanks ! github.com/Emeric54/perl6/blob/master/course.p6 (It's a small program to back up my performance when I run)
AlexDaniel well, according to this: en.wikipedia.org/wiki/List_of_UTC_time_offsets 18:53
moritz AlexDaniel: but "what we have right now" isn't a good criterium for validation, IMHO
AlexDaniel +14 does not make enough sense to me, actually, but that's what we have...
moritz: no validation at all is not that good as well 18:54
ShimmerFairy m: say DateTime.new("2015-07-26T18:52:21+99:00").local # a bit silly, but doesn't hurt anything I don't think 18:55
camelia rakudo-moar ed945e: OUTPUT«2015-07-22T17:52:21+02:00␤»
AlexDaniel I don't think that someone will ever attempt to increase this range 18:58
and if this happens, ok – we can always change it
RabidGravy what if it was being used on Saturn? 18:59
AlexDaniel UTC timezone on Saturn? What?
RabidGravy: if so, then there should be no limit at all, not even 99
RabidGravy :) 19:00
ShimmerFairy A quick look didn't turn up anything saying that the hour portion of the offset was limited to within a day, or the currently-defined timezones. Just that it's a difference relative to UTC
moritz AlexDaniel: fwiw we've had restrictions before with the motivation to avoid mistakes, and later that backfired 19:03
19:03 Guest28157 is now known as felher
moritz AlexDaniel: like, we forbade products of Duration objects, because we thought we it wasn't necessary 19:04
AlexDaniel: and then masak++ wanted to calculate standard deviations of durations
so we threw that out 19:05
(the limitation, I mean)
so, the lesson I picked up is that as long as the behavior is well-defined, rather allow it than forbid it 19:06
dalek ast: 109bb8e | skids++ | S02- (2 files):
Refine JVM fudges/skips for relatively new tests
19:07
AlexDaniel moritz: maybe! 19:08
at least that minute thing is fixed, so I'm happy anyway 19:09
mdinger Is there a difference between `rx{ foo <!before bar> }` and `rx{ foo <?!before bar> }`? I'm looking at S05 and I get the impression `?` is a positive assertion and `!` is a negative. Does that make `?!` superfluous? 19:10
moritz masak: I see no mention of ?! in S05 19:11
sorry, meant mdinger
mdinger It's in the docs: doc.perl6.org/language/regexes#Look...assertions 19:12
lookbehind had it first
moritz m: say 'ab' ~~ /a <?!before 'x'>/
camelia rakudo-moar ed945e: OUTPUT«「a」␤»
moritz m: say 'ab' ~~ /a <!before 'x'>/
camelia rakudo-moar ed945e: OUTPUT«「a」␤»
moritz mdinger: seems it's redundant 19:13
unless there are some LTM differences
mdinger Okay. cool.
dalek c: f976bcc | moritz++ | lib/Language/regexes.pod:
Use ? instead of ?! for negated assertions, mdinger++
19:14
19:17 espadrine_ left 19:20 TEttinger left 19:23 zakharyas joined
brrt .tell meisl i have a (p5) initial implementation of aho-style tiling 19:29
yoleaux brrt: I'll pass your message to meisl.
brrt check it out: github.com/MoarVM/MoarVM/blob/even...nerator.pl if you wish 19:31
.tell meisl check out github.com/MoarVM/MoarVM/blob/even...nerator.pl if you wish 19:32
yoleaux brrt: I'll pass your message to meisl.
brrt now afk
19:32 brrt left 19:40 rurban left
mdinger a capturing character class called `<alpha>` seems to be provide by perl6. Is there a list of these somewhere? It seems to tell how to make one but not which ones already exist. 19:42
skids mdinger: design.perl6.org/S05.html#Predefined_Subrules 19:43
yoleaux 10:06Z <smls> skids: Thnks; I posted a reply.
mdinger skids: thanks! 19:44
19:44 darutoko left
dalek ast: e4b422f | skids++ | S32-exceptions/misc.t:
This test turned out to really need a skip not just a fudge on JVM
19:50
c: b2af0fa | mdinger++ | lib/Language/regexes.pod:
Remove more ? from ?! lookaround assertions
19:51
c: e82adb8 | mdinger++ | lib/Language/regexes.pod:
Merge pull request #107 from mdinger/lookaround_assert

Remove more ? from ?! lookaround assertions
Begi is there a way to get only the date (dd/mm/yy), without the time ? 19:52
19:52 bin_005 joined 19:57 virtualsue joined 20:03 BenGoldberg_ joined 20:06 Ben_Goldberg left, virtualsue left 20:07 yqt joined
ShimmerFairy m: say Date.new(now); 20:09
camelia rakudo-moar ed945e: OUTPUT«2015-07-26␤»
ShimmerFairy Begi: we have a Date class, if that helps :) . 20:10
Begi ShimmerFqiry: thanks !
I was using DateTime instead of Date... 20:11
dalek c: 86bd241 | mdinger++ | lib/Language/regexes.pod:
Link the regex subrules docs to the list of already defined
20:12
20:21 Begi left 20:22 diana_olhovik_ left 20:24 virtualsue joined 20:27 rurban joined 20:32 zakharyas left
moritz did anybody test the R* release candidate? 20:33
m: say Date.today 20:36
camelia rakudo-moar ed945e: OUTPUT«2015-07-26␤»
b2gills lizmat: I think all of the `Pos` changes should have been in a branch that was merged with `git merge --no-ff --ff-only ...` so that it could easily be reverted if it turned out to be a bad idea 20:39
20:47 simcop2387 left
skids
.oO(There's no "i" in perl. That would put one in peril.)
20:48
20:48 simcop2387 joined 20:49 telex left 20:50 telex joined 21:02 bin_005 left 21:03 bin_005 joined 21:08 mohij left 21:09 virtualsue left 21:39 rurban left 21:43 census joined
masak census! \o/ 21:46
census hi masak!
i'm in the help-census room hahahahah
and i'm still banned from the regular #perl room still after all these years!! 21:47
masak joins #help-census
I find it awesome that the #perl6 culture ended up creating such a channel :P 21:48
anyone else who wans to #help-census, feel free to join ;)
b2gills: that's a nice practice. I like that. 21:50
b2gills: it's essentially creating a merge commit that stands in for a whole branch/experiment, and can easily be reverted if the experiment turns sour. 21:51
census masak is the best! 21:52
b2gills It of course only works if you've managed to get everything in before the merge
masak census: *blush*
census: I know a lot of people on this channel which I admire because they're better than me, so I don't think I technically can be "the best"... :P 21:53
census best personality, programmer, overall package. but there can be ties too 21:54
masak well, I do have a nice package... :P
jnthn b2gills: iirc you can feed git revert multiple sha1s, so it's not too bad if the thing is over a couple of commits anyway :)
b2gills masak: I'm sure some of them also admire you
jnthn Git is quite good at letting you untangle most kinds of mess, if you know it well enough. :) 21:55
b2gills Git is the Perl of source control
jnthn Pretty much :) 21:56
masak that's a very good description.
Git has that je-ne-sais-quoi of liberalism that Perl also has.
b2gills so much so that some of it is/was written in Perl
jnthn That's probably why I swore at it for the first couple of weeks, then loved it forever afterwards :)
21:56 inokenty left
masak b2gills: but they're slowly moving away from it, I think :/ 21:58
b2gills
.oO( That's only because some people are wrong and don't like Perl )
21:59
masak :P 22:02
'night, #perl6 22:09
RabidGravy nighty night 22:18
22:19 bin_005 left
jnthn should prolly rest also & 22:28
22:34 bjz left 22:38 mdinger left 22:41 kaare_ left
RabidGravy rest is over-rated 22:44
timotimo rest is ever rated 22:45
23:03 RabidGravy left 23:05 [Tux] left 23:15 dustinm` left, pierrot_ joined 23:21 dustinm` joined
dalek p/mast_localref_3: d125c71 | timotimo++ | / (2 files):
initial implementation of localref X local access

as well as three simple failing tests
23:22
p/mast_localref_3: 3995237 | timotimo++ | / (2 files):
mast compiler: fix accessing a local as a localref
p/mast_localref_3: 38a10da | timotimo++ | src/vm/moar/QAST/QASTCompilerMAST.nqp:
localrefs are always in object registers
p/mast_localref_3: 8d75d7e | timotimo++ | t/moar/02-qast-references.t:
this loop'll give you spesh log output for the tests
p/mast_localref_3: 6868ff3 | timotimo++ | t/moar/02-qast-references.t:
fix the tests about localref access
timotimo the newio branch makes git lg --all pretty much useless %) 23:25
gitk does better, though
23:25 brisby left 23:29 perturbation left 23:30 BenGoldberg_ left
timotimo now it'll be a whole 'nother thing to fix up the optimizer properly so that it can lower lexicalref/lexical to localref/local 23:32
23:48 dayangkun joined