Perl 6 - the future is here, just unevenly distributed

IRC log for #perl6, 2016-06-21

Perl 6 | Reference Documentation | Rakudo

| Channels | #perl6 index | Today | | Search | Google Search | Plain-Text | summary

All times shown according to UTC.

Time Nick Message
00:07 AlexDaniel .oO( maybe I should try out the REPL one day… )
00:07 AlexDaniel “You may want to `panda install Readline` or `panda install Linenoise` or use rlwrap for a line editor” – ok, so Readline or Linenoise?
00:08 sortiz AlexDaniel, if in linux, i prefer Readline, Linenoise is broken with unicode input.
00:12 huggable joined #perl6
00:13 sortiz BrokenRobot, And yes, the change is the logic in https://github.com/rakudo/rakudo​/blob/nom/src/core/REPL.pm#L370
00:13 stmuk joined #perl6
00:14 sortiz So output only to STDERR or no output at all, the result is now printed.
00:26 dalek doc: 5c3e5d1 | (Tom Browder)++ | doc/Programs/00-running.pod:
00:26 dalek doc: fix target option table
00:26 dalek doc: review: https://github.com/perl6/doc/commit/5c3e5d1867
00:26 dalek doc: f73ad98 | (Tom Browder)++ | doc/Programs/00-running.pod:
00:26 dalek doc: Merge pull request #610 from tbrowder/p6-debug
00:26 dalek doc:
00:26 dalek doc: fix target option table
00:26 dalek doc: review: https://github.com/perl6/doc/commit/f73ad98d08
00:36 BenGoldberg joined #perl6
00:40 AlexDaniel L<https://doc.perl6.org/language.html|https://doc.perl6.org/language.html>
00:40 AlexDaniel :)
00:44 atweiden joined #perl6
00:45 ShimmerFairy AlexDaniel: any explanation for that? :)
00:47 AlexDaniel ShimmerFairy: well, why not just L<https://doc.perl6.org/language.html> ? I find it funny that somebody bothered to write it twice instead of giving some readable text, which is what it is made for :)
00:47 AlexDaniel unless I am missing something
00:47 ShimmerFairy AlexDaniel: yeah, so I'm wondering what someone did that for :P
00:50 BrokenRobot The person wasn't intimately familiar with L<> formats?
00:51 johndau joined #perl6
00:52 ShimmerFairy that would be my guess. For example, IIRC mediawiki will default to a [1] style external link if you don't provide text for it.
00:52 jameslenz joined #perl6
00:58 dalek features: 57ddc65 | (Zoffix Znet)++ | template.html:
00:58 dalek features: Use protocol agnostic asset URLS
00:58 dalek features:
00:58 dalek features: Closes #5
00:58 dalek features: review: https://github.com/perl6/f​eatures/commit/57ddc65872
01:01 cdg joined #perl6
01:02 dalek doc: a085296 | (Tom Browder)++ | doc/Programs/00-running.pod:
01:02 dalek doc: use a code block for options until the p6 pod table bug is fixed
01:02 dalek doc: review: https://github.com/perl6/doc/commit/a0852969db
01:02 dalek doc: 4c4d0e2 | (Tom Browder)++ | doc/Programs/00-running.pod:
01:02 dalek doc: Merge pull request #614 from tbrowder/p6-opt-table
01:02 dalek doc:
01:02 dalek doc: use a code block for options until the p6 pod table bug is fixed
01:02 dalek doc: review: https://github.com/perl6/doc/commit/4c4d0e2537
01:03 BrokenRobot tbrowder: ping
01:05 AlexDaniel BrokenRobot: actually, it's interesting. See this for example: https://github.com/h5bp/html5-boilerplate/pull/169​4/commits/045a1676c4c8cf4bdd23374b5b049507101f5043
01:07 BrokenRobot AlexDaniel: well :) You have access to the repo, don't you? :)
01:07 AlexDaniel BrokenRobot: no
01:07 AlexDaniel :P
01:08 * AlexDaniel runs away
01:08 ssotka joined #perl6
01:08 BrokenRobot AlexDaniel: untested, but some JS will cry when it tries to do Async over different protocol (CORS and what not). We really should have an auto-redirect for HTTP -> HTTPS
01:08 tbrowder g'night #perl6
01:08 * BrokenRobot is doing too many things at once
01:09 BrokenRobot tbrowder: \o
01:09 AlexDaniel is it actually going to complain if you try to access something https-y from http link? I thought that it is only true other way round
01:10 AlexDaniel but yeah, +1 for redirecting
01:10 BrokenRobot AlexDaniel: but it's completely different addresses.
01:10 BrokenRobot You may as well be trying to run from https://foobar.com/
01:14 ShimmerFairy timotimo: I forget where exactly SUPERNOVA was (just that I was in the middle of writing table parsing), but I was thinking just now that depending on its state we should look towards integrating it into rakudo when appropriate (some kind of 6.d branch, of course)
01:14 AlexDaniel BrokenRobot: anyway, thank you for fixing it so quickly
01:16 noganex_ joined #perl6
01:17 vike joined #perl6
01:18 raiph .tell cognominal I've posted some questions about your slang proposal at https://gist.github.com/cognominal​/d181082b41595d6f41588faf6d51a42d
01:18 yoleaux raiph: I'll pass your message to cognominal.
01:19 BrokenRobot tbrowder: pmichaud: yeah, if you can attempt to fix the pod table bug, that'd be great. I fixed half of it but now I'm stuck :) Here's how far I got and the improved test I'm using: https://github.com/perl6/doc/p​ull/614#issuecomment-227315310
01:21 ShimmerFairy oh, BrokenRobot, are you working with Pod stuff? If so, you might be interested in my currently-dormant SUPERNOVA project (meant to eventually replace Rakudo's existing Pod parsing and handling).
01:24 BrokenRobot I was. I passed the buck :P
01:26 ShimmerFairy Ah :P
01:26 ShimmerFairy I'm sure pmichaud would be interested too, perhaps, and whoever else :) .
01:30 kid51 joined #perl6
01:48 ilbot3 joined #perl6
01:48 Topic for #perl6 is now »ö« Welcome to Perl 6! | https://perl6.org/ | evalbot usage: 'p6: say 3;' or rakudo:,  or /msg camelia p6: ... | irclog: http://irc.perl6.org or http://colabti.org/irclogger/irclogger_logs/perl6 | UTF-8 is our friend!
01:51 kid511 joined #perl6
02:20 noganex joined #perl6
02:22 lizmat joined #perl6
02:26 BrokenRobot AlexDaniel: actually, I'm misremembering. It's doing Ajax over https? that makes it cry, not loading scripts
02:26 AlexDaniel huggable: dunno
02:26 huggable AlexDaniel, ¯\_(ツ)_/¯
02:26 raiph m: class c { has $!foo = 42; method FALLBACK($name) { self.^add_method($name, method { }); self.^compose(); } }; c.new.baz; c.new.baz;
02:26 camelia rakudo-moar ee663c: OUTPUT«P6opaque: no such attribute '$!foo' in type c when trying to check if it's initialized␤  in block <unit> at <tmp> line 1␤␤»
02:28 raiph .tell stevieb9 golf'd somewhat at http://irclog.perlgeek.de/p​erl6/2016-06-21#i_12701797
02:28 yoleaux raiph: I'll pass your message to stevieb9.
02:29 dalek features: de466a5 | (Zoffix Znet)++ | template.html:
02:29 dalek features: Use HTTPS whenever we can
02:29 dalek features: review: https://github.com/perl6/f​eatures/commit/de466a5662
02:42 sortiz m: m: class c { has $!foo = 42; method FALLBACK($name) { self.WHAT.^add_method($name, method { say "in $name" }); self.WHAT.^compose(); say "created $name"; self."$name"() } }; c.new.baz; c.new.baz; # stevieb9, raiph, use ^add_method on the type.
02:42 camelia rakudo-moar ee663c: OUTPUT«created baz␤in baz␤in baz␤»
02:56 raiph sortiz: can you eli8 explain why that works? (i don't expect a 7 year old to necessarily grok it ...)
02:57 Xliff .seen FROGGS
02:57 yoleaux I saw FROGGS 19 Jun 2016 19:29Z in #perl6: <FROGGS> arnsholt: awesome :D
02:59 Xliff Ohhh...
02:59 Xliff You want ^add_method on the type object and not the instance.
02:59 sortiz raiph, When you call an undefined method, the FALLBACK is called, in it add_method is called on _the_ class and the class recomposed, so the next call for the same method simply succeeds
03:00 Xliff Nifty
03:00 sortiz Yep, ^add_method should be called on the type, not one instance.
03:01 raiph ah, the recomposed class doesn't affect the attributes of the object that's already been instantiated. got it. thanks.
03:01 raiph and the error message is spot on
03:02 raiph .tell stevieb9 see sortiz's explanation after my golf
03:02 yoleaux raiph: I'll pass your message to stevieb9.
03:03 sortiz m: class c { has $!foo = 42; method FALLBACK($name) { ::?CLASS.^add_method($name, method { say "in $name" }); ::?CLASS.^compose(); self."$name"() } }; c.new.baz; c.new.baz; # Other example, may be more "explicit"
03:03 camelia rakudo-moar ee663c: OUTPUT«in baz␤in baz␤»
03:10 raiph Hmm. I thought I understood the problem and the error message but that moment has passed. Hopefully stevieb9 gets it or can at least see that others do. :)
03:13 raiph left #perl6
03:13 raiph joined #perl6
03:15 sortiz raiph, OTOH, FALLBACK can only execute the required code, not necessarily create a new method "on demand"
03:16 lizmat PSA: I just realised that I'm really too tired to do the Perl 6 Weekly atm
03:16 raiph which is what stevieb9 wanted (create new methods on demand)
03:16 lizmat PSA: so I'm going to have a go at it tomorrow morning, in about 10 hours from now
03:19 sortiz raiph, Yep I understand that, but in stevieb9's case I think that create them in a BEGIN block is a better idea.
03:22 raiph sortiz: Right. So don't use FALLBACK to do that sort of thing unless you're using prototype OO, not class based?
03:27 aindilis joined #perl6
03:28 sortiz Yep, or need a class that can handle arbitrary method calls.
03:28 sortiz dinner&
03:29 Grrrr joined #perl6
03:40 atweiden joined #perl6
03:44 TEttinger lizmat: a ten hour delay? scandalous. to be a proper enterprise language, perl 6 needs delays of at least half a year (see: java 9)
03:44 TEttinger although one could argue that with pugs, parrot, etc. it has been a bit more than that :)
04:07 Cabanossi joined #perl6
04:11 TeamBlast joined #perl6
04:11 ssotka joined #perl6
04:12 huggable joined #perl6
04:40 buharin joined #perl6
05:03 Cabanossi joined #perl6
05:12 buharin I am not very good to understand the difference between is raw and is rw
05:12 buharin both can modify parameter
05:12 buharin like throw the reference
05:22 raiph buharin: aiui raw means if it's a container (variable), it stays a container, if not (ie it's a regular value), it stays not; rw means if it's a value, stick it in a container (variable)
05:23 buharin so raw is mostly used for specify container parameter
05:23 buharin ?
05:24 raiph m: sub foo ($a is rw, $b is raw) { say ++$a; say ++$b }; foo($,$); foo(2,$); foo($,2)
05:24 camelia rakudo-moar 57f8f8: OUTPUT«1␤1␤Parameter '$a' expected a writable container, but got Int value␤  in sub foo at <tmp> line 1␤  in block <unit> at <tmp> line 1␤␤»
05:24 raiph m: sub foo ($a is rw, $b is raw) { say ++$a; say ++$b }; foo($,$); foo($,2); foo(2,$);
05:24 camelia rakudo-moar 57f8f8: OUTPUT«1␤1␤1␤Cannot resolve caller prefix:<++>(Int); none of these signatures match:␤    (Mu:D $a is rw)␤    (Mu:U $a is rw)␤    (Int:D $a is rw)␤    (int $a is rw)␤    (Bool $a is rw)␤    (Num:D $a is rw)␤    (Num:U $a is rw)␤    (num $a is…»
05:26 raiph Give me a few minutes. (I'm still trying to recover from watching damian's mesmerizing (understatement) "Perl 6 for beginners".)
05:28 buharin in my compiler I got Parameter '$a' expected a writable container, but got Int value
05:28 buharin for foo(2, $)
05:31 raiph that would come from passing an arg that is not a container for a parameter that requires a container (i.e. a parameter that is rw)
05:31 raiph m: sub foo ($a is rw) { say ++$a }; foo(2) # compiler should reject this
05:31 camelia rakudo-moar 57f8f8: OUTPUT«Parameter '$a' expected a writable container, but got Int value␤  in sub foo at <tmp> line 1␤  in block <unit> at <tmp> line 1␤␤»
05:33 raiph gah, let me say that more correctly
05:33 raiph m: sub foo ($a is rw) { say ++$a }; foo(2) # rejects this at run-time at arg/parameter bind time (may one day reject at compile time)
05:33 camelia rakudo-moar 57f8f8: OUTPUT«Parameter '$a' expected a writable container, but got Int value␤  in sub foo at <tmp> line 1␤  in block <unit> at <tmp> line 1␤␤»
05:34 raiph m: sub foo ($a is raw) { say ++$a }; foo(2) # rejects this at run-time at ++$a instruction
05:34 camelia rakudo-moar 57f8f8: OUTPUT«Cannot resolve caller prefix:<++>(Int); none of these signatures match:␤    (Mu:D $a is rw)␤    (Mu:U $a is rw)␤    (Int:D $a is rw)␤    (int $a is rw)␤    (Bool $a is rw)␤    (Num:D $a is rw)␤    (Num:U $a is rw)␤    (num $a is rw)␤  in …»
05:35 raiph buharin: am I right in saying the is rw works as you would expect?
05:35 buharin raiph, little mess in my head ;-)
05:37 raiph buharin: sorry about my confusing attempt at explanation
05:37 buharin raiph, thats okay
05:38 buharin I am just trying to figure the use case of raw and rw
05:38 raiph buharin: do you think you understand the use case for is rw?
05:38 raiph (rw means read/write)
05:39 buharin yeah if I pass a variable to routine it is read by default
05:39 bbkr joined #perl6
05:39 raiph correct
05:39 buharin because routine can modify it
05:39 buharin outside
05:39 buharin so overtime if I want to do something like func(int& a) ;D I use rw
05:39 buharin but raw is kind of magic
05:43 raiph forget raw for a moment; let's make sure we agree on is rw
05:44 raiph buharin: I'm a bit confused by "because routine can modify it ... outside"
05:46 buharin raiph, I mean rw is pass by reference
05:51 raiph buharin: i'd say `is rw` is "must be passed a container"
05:52 buharin what do you mean by container list arrays?
05:53 raiph m: just think of a container in the real world; something you put things in
05:53 camelia rakudo-moar 57f8f8: OUTPUT«5===SORRY!5=== Error while compiling <tmp>␤Undeclared routines:␤    a used at line 1␤    container used at line 1␤    in used at line 1␤    just used at line 1␤    of used at line 1␤    real used at line 1␤    something used at line 1…»
05:53 raiph oops :)
05:54 raiph m: $ # <--- a Scalar, a container holding one thing
05:54 camelia rakudo-moar 57f8f8: OUTPUT«WARNINGS for <tmp>:␤Useless use of unnamed $ variable in sink context (line 1)␤»
05:55 buharin raiph, oh okay
05:55 buharin ;D
05:56 raiph m: say my $ = 1 # puts the Int 1 inside an anonymous Scalar container and say it. A reference to a Scalar yields the value it contains
05:56 camelia rakudo-moar 57f8f8: OUTPUT«1␤»
05:56 Woodi joined #perl6
05:58 buharin is class also a container?
05:59 buharin or \ reference type
05:59 raiph m: say my @ = 1,2  # puts the Int 1 in first anonymous Scalar inside anonymous Array container, 2 in second anonymous Scalar. Then saying it pulls the Int values out of the two anonymous Scalar containers inside the anonymous Array
05:59 camelia rakudo-moar 57f8f8: OUTPUT«[1 2]␤»
06:01 raiph Some classes act as containers: Scalar, Array, Hash, for starters
06:01 raiph The vast majority do not
06:04 sno joined #perl6
06:05 raiph buharin: Or rather an *instance* of a Scalar, Array, etc. acts as a container
06:06 buharin okay ;-)
06:06 buharin I think I get it
06:08 woolfy joined #perl6
06:09 raiph buharin: have you read http://doc.perl6.org/language/containers ?
06:09 buharin yeah I read it
06:12 domidumont joined #perl6
06:17 domidumont joined #perl6
06:18 sammers good afternoon from Japan
06:19 krakan joined #perl6
06:19 raiph hi sammers
06:20 sammers hi raiph
06:20 raiph I need to go to sleep soon. 2:20am US east coast
06:20 firstdayonthejob joined #perl6
06:20 sammers good morning
06:21 raiph sammers: have you see the video of damian's "Perl 6 for beginners" keynote?
06:22 CIAvash joined #perl6
06:23 sammers raiph, not yet, is it online yet?
06:23 Zero_Dogg joined #perl6
06:24 buharin I read somewhere in doc
06:24 buharin that default class declaration without my
06:24 buharin is not lexical scope
06:24 raiph https://www.youtube.com/watch?annotation_id=57​66d9aa-0000-2c32-b623-94eb2c057370&amp;feature​=iv&amp;src_vid=HAXGD3JE7pU&amp;v=Nq2HkAYbG5o
06:24 buharin but while I am trying to use it in my test
06:24 buharin I need export it
06:25 buharin what's a difference between my class and class?
06:25 nine buharin: that sounds odd. The docs should be correct there so there may be something about your code that breaks it.
06:26 buharin nine, https://doc.perl6.org/language/modules
06:26 buharin # Packages like classes can be exported too
06:26 buharin class MyClass is export {};
06:26 sammers thanks, raiph, I will check it out
06:26 raiph goodnight #perl6
06:26 buharin and he export it ;d
06:26 buharin raiph, goodnight
06:27 nine buharin: I think that's for cases like: unit class Foo; class Bar is export { };
06:28 llfourn you can also do my class Bar is export {}
06:28 llfourn so you only get it if you 'use' rather than need
06:29 sammers night
06:30 llfourn although packages within packages will be there anwyway under Foo::Bar (assuming you have Foo) even if you make it 'my'
06:31 rurban joined #perl6
06:43 buharin so class by default is Module scoped?
06:51 redhands98100 joined #perl6
06:59 llfourn buharin: yeah. But if your not inside a module it goes into GLBOAL. We call this "our" scoped.
06:59 llfourn when a module is loaded via "need" or "use" the loading module will merge all the GLOBAL symbols from the loaded module into it's own GLOBAL.
07:00 llfourn if you don't want it to be merged from global you can use "my"
07:01 llfourn and then you can use "is export" so that the symbols are merged when importing symbols with "use"
07:01 llfourn importing symbols and merging from GLOBAL are two seperate things
07:02 John[Lisbeth] joined #perl6
07:03 * llfourn goes for a walk
07:03 * John[Lisbeth] is considering whether to learn perl or perl6
07:04 nine John[Lisbeth]: why make it an either/or?
07:05 John[Lisbeth] I am a bit of an elitist with my own personal choices though I respect others' choice not to have elitist attitudes.
07:08 moritz ... and you also equate elitism with focus, not broadness
07:09 moritz ah well, to each their own
07:12 John[Lisbeth] I'm just curious about perl but the choice of which one to start with vexes me
07:13 stmuk what do you want to do with the lang?
07:14 moritz John[Lisbeth]: if you want to tinker with an interesting language, and build small tools for personal use, learn Perl 6. If you want to go to as quickly as possible to production and/or making money, learn Perl 5
07:15 buharin llfourn, thanks thats quite better explanation
07:15 buharin ;)
07:16 rindolf joined #perl6
07:17 ShimmerFairy John[Lisbeth]: I'd say Perl 5 is currently more useful if you need to work with P5 scripts or want to get a job with it, whereas P6 might be better suited if you just have time to kill to learn some language (disclaimer: I don't know P5).
07:18 darutoko joined #perl6
07:19 masak oh, another first that I did yesterday: use a contextual in a loop, like so: `for find("Scripts/", /".js" $/) -> $*file { ... }`
07:22 ShimmerFairy masak: oh, before I forget again, have you done anything with hexslide? I know I haven't :P .
07:25 masak ShimmerFairy: I know I had a fairly evolved, fairly realistic plan to go forward. but no, I haven't realized it.
07:26 aries_liuxueyang joined #perl6
07:26 baest joined #perl6
07:26 ShimmerFairy masak: I really need to 'publish' the stuff I did on figuring out the number of possible boards for a 1D version of the game, which is as far as I ever got (spoiler: tribonnaci sequence)
07:27 masak ShimmerFairy: sounds like a neat blog post, yes.
07:27 wamba joined #perl6
07:27 masak ShimmerFairy: and if I'm not mistaken, that also accords/weaves into my approach for solving the whole thing.
07:27 ShimmerFairy The next step I never got around to finishing was to figure out the number of boards in a 2D game, and then work on solveability. (I do recall coming across a graph theory thing at one point relating to the 2D version)
07:29 ShimmerFairy masak: I last touched it years ago, but that doesn't keep it from popping up in my head every so often :) . But I should definitely make that blog post soon.
07:34 pdcawley joined #perl6
07:35 masak +1
07:39 _mg_ joined #perl6
07:43 dakkar joined #perl6
07:44 TeamBlast joined #perl6
07:49 abraxxa joined #perl6
07:53 ShimmerFairy masak: ooh, in case you don't know, hexslide is usually known as "Klotski" or "Rush Hour", apparently :)
07:54 ShimmerFairy I think Rush Hour is closer to this type of puzzle than klotski
07:56 masak url?
07:57 ShimmerFairy https://en.wikipedia.org/wik​i/Rush_Hour_%28board_game%29
07:59 RabidGravy joined #perl6
08:00 ShimmerFairy And here's a picture of Rush Hour: https://imgur.com/V3Z4l2R
08:08 cpage_ joined #perl6
08:08 masak aw, but that's square, not hexagonal
08:10 ShimmerFairy masak: yeah, but I'm sure the hex version was derived from that :) . And I did catch one or two mentions of math-paper-style work done on the game, have to search for that more later.
08:12 huggable joined #perl6
08:16 ocbtec joined #perl6
08:23 rurban_ joined #perl6
08:34 cognominal joined #perl6
08:36 user9 joined #perl6
08:53 TeamBlast joined #perl6
09:14 donaldh joined #perl6
09:38 vytas joined #perl6
09:52 nowan joined #perl6
09:57 llfourn m: say $?FILE
09:57 camelia rakudo-moar 57f8f8: OUTPUT«<tmp>␤»
09:58 llfourn seems like $?FILE has been corrupted accidentally with precomp
09:58 llfourn I get: /Users/llfourn/tmp/p6/bug/lib/GoofedFile.pm6 (GoofedFile)
09:58 llfourn for $?FILE when it is precompiled
10:00 llfourn echo 'say $?FILE' > Goof.pm6; perl6 -I. -e 'use Goof;'
10:04 Emeric joined #perl6
10:07 llfourn nine: RT #128442 # I think relevant to your interests :)
10:07 synopsebot6 Link:  https://rt.perl.org/rt3//Publ​ic/Bug/Display.html?id=128442
10:10 nine llfourn: surprise, surprise, quick hacks do have side effects :/
10:10 Emeric joined #perl6
10:10 llfourn yes, but difficult to know where they will be :)
10:11 llfourn sorta suprised we don't have a test for it
10:12 llfourn $?FILE is used a lot in roast but never in a module it seems :\
10:17 rurban joined #perl6
10:19 yanmc that's not an adverb, perl 6, it's an added verb :)
10:29 ufobat joined #perl6
10:32 Zero_Dogg joined #perl6
10:32 Zero_Dogg joined #perl6
10:37 ocbtec joined #perl6
10:48 grondilu it seems that a talk from Damian Conway in this year YAPC::NA is already online
10:48 grondilu https://www.youtube.com/watch?v=Nq2HkAYbG5o
10:48 grondilu "On the shoulders of giants"
10:49 llfourn I just watched it. It was great!
10:53 iH2O joined #perl6
10:54 kid51 joined #perl6
10:54 domidumont joined #perl6
11:00 grondilu wow his example of the Bernouilli numbers is very good at showing why using rational numbers makes sense.
11:02 mre joined #perl6
11:04 iH2O grondilu: prove now that pi isnt a rational number
11:06 grondilu not sure what you mean.  I've never known that proof.  I know about sqrt(2), but not pi.
11:06 iH2O pi = 22/7 right?
11:06 grondilu I personally prefer 355/113
11:06 * grondilu hopes he remembered it well
11:06 iH2O i've seen a long list of those rational number on wikipedia
11:06 grondilu m: say (355/113 - pi)/pi;
11:06 camelia rakudo-moar 57f8f8: OUTPUT«8.49136787674061e-08␤»
11:07 iH2O *of those rational fractions
11:07 iH2O theres a wikipedia page on that. let me find it...
11:08 ppant joined #perl6
11:10 iH2O pi=245850922/78256779
11:11 llfourn m: say pi ~~ Rat # proves pi isn't Rat
11:11 camelia rakudo-moar 57f8f8: OUTPUT«False␤»
11:14 iH2O theres no end of increasingly better rational/fractional approximations of pi. perl6 is well equipped to handle them
11:16 grondilu wow Damian's quicksort in lisp-style is pretty cool.
11:16 iH2O choose merge sort, its stable and more predictable
11:16 stevieb joined #perl6
11:16 iH2O its O(log n) in the worst case
11:17 iH2O O(n log n)
11:17 iH2O quicksort is O(2^n) in the worst case :(
11:17 moritz iH2O: I think this is an educational exercise
11:17 moritz nobody[tm] implements their own sort algorithms anymore :-)
11:18 iH2O implement bucket/bin sort in perl6, moritz
11:18 iH2O its O(n) in every case
11:18 bhm Except for Damians "sleep sort".
11:19 iH2O what about random sort?
11:19 iH2O jk, i just invented that
11:19 iH2O :-P
11:19 iH2O yet, humans if asked to sort a pile of documents mostly do that
11:20 kaare_ joined #perl6
11:20 iH2O to sort documents by hand
11:20 moritz yes, typically some mixture between insertion sort and bucket sorting
11:21 moritz or sometimes a form of n-bucket-quicksort-like
11:21 iH2O heres a pile of 10000 documents to insert and bucket sort..
11:22 moritz typically folks would sort by first letter first
11:22 moritz then sort each bucket
11:22 moritz and then join
11:23 moritz sorting each bucket is likely an insertion sort kinda thing
11:23 tadzik humans typically optimize for numbers of move operations rather than number of comparisons, I figure
11:23 tadzik because we can compare in bulks, like when sorting cards
11:24 iH2O if i had to sort 10000 documents, id make a 1st pass in which id insert each document in the pack at a position depending on its 1st letter
11:24 moritz there's an implicit binary search in the pre-sorted list going on
11:24 iH2O then indeed id use bucket sort
11:24 moritz iH2O: if I had enough space, I'd have a separate pile for each first letter
11:25 moritz instead of inserting it in one big pile in the right place
11:26 iH2O yeah, but the letter q has about 50 times less entry than the letter l
11:26 iH2O the packs have different lenghts
11:26 iH2O *fewer entries
11:27 iH2O make 16 pcks instead of 26 packs
11:27 moritz depends on what your sort
11:32 iH2O so you have 4 x 4 packs in front of you, of approximately the length, with the 1st letters n and q together, the letters i j k together, etc
11:32 iH2O its handy t sort with your hands
11:32 iH2O 26 packs in front of you is not handy to sort
11:32 literal m: perl6 -e'my @ar = ({:a<a b c>}, {:a<x y z>}); say |@ar»<a>'
11:32 camelia rakudo-moar 57f8f8: OUTPUT«5===SORRY!5=== Error while compiling <tmp>␤Variable '@ar' is not declared␤at <tmp>:1␤------> 3perl6 -e'my 7⏏5@ar = ({:a<a b c>}, {:a<x y z>}); say |@␤»
11:32 iH2O *the same length
11:33 literal m: my @ar = ({:a<a b c>}, {:a<x y z>}); say |@ar»<a>
11:33 camelia rakudo-moar 57f8f8: OUTPUT«(a b c)(x y z)␤»
11:33 literal can I do deeper flattening than this, using a hyperop instead of a map?
11:33 iH2O *oops the letters p and q together
11:35 timotimo aha! someone seems to be telling damian about "with"
11:35 timotimo during the turing machine example
11:36 timotimo but he's of course not using the with operator in the slides now, because for that he'd have to be changing all his slides i suppose
11:36 domidumont joined #perl6
11:37 iH2O perl6 is as powerful as sed which is as powerful as a TM
11:37 iH2O perl6 is exactly as powerful as sed
11:37 iH2O dont know if thats good news
11:37 timotimo it lets you express your stuff a bit more concisely, though
11:38 iH2O thlol
11:38 iH2O lol
11:38 nine a tiny bit ;)
11:39 timotimo saving a few bytes here and there
11:39 timotimo it adds up!
11:41 kurahaupo joined #perl6
11:43 aries_liuxueyang joined #perl6
11:46 brrt joined #perl6
11:48 g4 joined #perl6
11:56 lizmat joined #perl6
11:57 dalek doc: 2185a35 | Altai-ch++ | doc/Language/ (6 files):
11:57 dalek doc: Fixes for hard linking
11:57 dalek doc: review: https://github.com/perl6/doc/commit/2185a35c51
11:57 dalek doc: 47ba223 | RabidGravy++ | doc/Language/ (6 files):
11:57 dalek doc: Merge pull request #617 from Altai-man/master
11:57 dalek doc:
11:57 dalek doc: Fixes for hard linking
11:57 dalek doc: review: https://github.com/perl6/doc/commit/47ba223909
12:00 iH2O given that the universe is seemlingly expanding forever(even accelerating), it has a potentially infinite tape. so a self-replicating computer running perl6  is indeed as powerful as a TM with an *infinite* tape
12:01 brrt energy
12:01 iH2O matter?
12:01 brrt but it's a nice idea :-)
12:01 moritz iH2O: there might be infinite *space* in the universe, but the tape needs material/energy
12:01 moritz and that's still limited
12:01 iH2O :(
12:02 moritz and, in fact, ever more limited the more the universe expands
12:02 iH2O its all swallowed by black holes indeed
12:02 moritz because when the Universe expands faster, things that move away from you faster than the speed of light are outside of your event horizon
12:02 moritz not all of it :-)
12:03 iH2O that may apply only to things that are on the *other side of the Big Bang"
12:03 brrt if the pace of it is acclerating, then eventually, all of it........ hey waitaminute
12:03 iH2O which is 1/2 the stuff in the universe
12:03 brrt how can things be moving away faster than the speed of light
12:03 iH2O *1/2* is a fixed value,, so that doesnt affect my argument
12:03 moritz iH2O: I recommend https://www.youtube.com/watch?v=jDF-N3A60DE (and indeed the whole "crash course astronomy" series on youtube)
12:04 iH2O I watched a crash course on politics recently, isnt that good enough?
12:04 iH2O :)
12:04 moritz iH2O: more, more, more, you always need more!
12:05 brrt moritz: i'm not sure the universe is moving beyond our event horizon; isn't it more like fading into background radiation
12:06 brrt (because of the redshift)
12:06 iH2O physics' vacuum is apparently able to create energy out of nothing, and energy= matter (E=mc2)
12:07 iH2O theres the solution to all our energy needs
12:07 iH2O better than perpetual motion
12:08 brrt hey, we're not discussing perl again, look at that :-)
12:08 timotimo cool
12:08 BrokenRobot Are emails snet to perl6-bugs-followup@perl6.org supposed to show up on RT website? It's the second time in the past 2 days now that I see an email sent but nothing is on the site.
12:09 BrokenRobot s/see an email sent/receive an email sent to that address/;
12:12 huggable joined #perl6
12:13 aries_liuxueyang joined #perl6
12:16 masak one of my disfavorite things in Perl 6: can't smartmatch inside an action method which has $/ as a parameter
12:17 brrt uhm.. why not? because $/ can't be assigned to?
12:17 iH2O left #perl6
12:18 masak right, because it's read-only
12:18 masak because it's a parameter
12:18 jnthn Then call the parameter something else
12:18 brrt oot
12:18 brrt and we can't shadow it?
12:18 brrt (regrets that comment already)
12:18 masak jnthn: yes, that's probably the workaround
12:18 jnthn Calling it $/ is only a common convention 'cus you get to write $<foo> instead of $m<foo>
12:19 masak nodnod
12:19 jnthn I'm kinda glad that it doesn't just silently let you "get away with it" tbh, 'cus it's way too easy to be confused.
12:19 masak jnthn: and @<foo> instead of @($m<foo>)
12:19 masak jnthn: yes, point
12:20 jnthn Also, why are you doing multi-pass parsing? ;P
12:20 timotimo of course you can "is copy" it, too
12:20 timotimo that'll silently let you get away with it and break everything
12:21 andreoss joined #perl6
12:21 andreoss tadzik: have you considered my PR so far?
12:22 andreoss tadzik: also, within rakudo-star panda tries to contact remote servers, i wonder if it's a panda issue or rakodo-star's rather
12:23 nine I dare say rakudo-star shouldn't even use panda
12:25 BrokenRobot What should it use?
12:25 rgrinberg joined #perl6
12:25 masak jnthn: hm :)
12:28 nine BrokenRobot: a beefed up tools/install-dist.pl that only does the installation part but not the whole dependency tracking/downloading part.
12:30 BrokenRobot nine: why? An awesome module installer should be one of the top features of R*. Otherwise, one may as well compile from sauce
12:30 tadzik andreoss: oh, I may have missed it, let me take a look
12:30 BrokenRobot I'd go with zef install of panda though. Although, I've not used panda for some time now.
12:30 nine BrokenRobot: note that I said "use" not "ship".
12:31 BrokenRobot Ah, ok.
12:31 nine BrokenRobot: of course it should come with an installer
12:31 timotimo that would include Build.pm?
12:31 _mg_ joined #perl6
12:31 BrokenRobot *zef instead of
12:32 nine timotimo: Build.pm is what's missing from install-dist.pl. I do hope that I can start working with ugexe and probably others who are interested on a declarative replacement rather soon.
12:33 tadzik andreoss: hmm, I'm a bit reluctant about it; it's adding another dependency to panda (which would need to be added to git submodules too), and is only used in the rare circumstance where the existing solution fails (I've never actually seen it happen). We increase the runtime code size and complexity for a very unlikely scenario
12:34 nine Oh my it's the time of the year again when I should really start organizing my YAPC trip
12:34 tadzik regarding the discussion, shipping zef instead of panda with R* may be a good idea, with zef being much more actively maintained
12:37 andreoss tadzik: as i see the dependency on File::Which already present in other files
12:45 tadzik oh, it is?
12:45 tadzik hm
12:45 donaldh joined #perl6
12:46 tadzik I don't have it here :)
12:54 telex joined #perl6
12:59 dalek doc: 38f6ccd | Altai-man++ | doc/Language/ (5 files):
12:59 dalek doc: Hard links were removed
12:59 dalek doc: review: https://github.com/perl6/doc/commit/38f6ccd4b2
12:59 dalek doc: cae8d91 | Altai-man++ | doc/ (2 files):
12:59 dalek doc: Same values in some links for a source and name were fixed
12:59 dalek doc: review: https://github.com/perl6/doc/commit/cae8d91049
13:06 stevieb joined #perl6
13:10 sufrostico joined #perl6
13:11 yanmc m: my $string = "There is more than one way to do it"; say [~] ($string.words.map: *.comb(/./)[0].uc)
13:11 camelia rakudo-moar 7cff42: OUTPUT«TIMTOWTDI␤»
13:12 grassass joined #perl6
13:12 yanmc what's a better way to index a string? e.g. something like $string[0], which doesn't work
13:12 BrokenRobot yanmc: $string.comb[0]
13:12 moritz $string.substr(0, 1)
13:12 BrokenRobot But that sounds like you may be doing something silly.
13:13 yanmc getting initials is not that silly?
13:13 moritz m: say uc "There is more than one way to do it".words.map(*.substr(0, 1)).join
13:13 camelia rakudo-moar 7cff42: OUTPUT«TIMTOWTDI␤»
13:14 masak m: say uc "There is more than one way to do it".words».substr(0, 1).join
13:14 camelia rakudo-moar 7cff42: OUTPUT«TIMTOWTDI␤»
13:14 BrokenRobot yanmc: sorry, I didn't read far enough back. It's just more than once I saw people treat strings as arrays of characters doing all sorts of bizzare algos :)
13:14 yanmc np, I'm just experimenting ;)
13:15 moritz say uc "There is more than one way to do it".words>>.flip>>.chop.join
13:15 moritz m: say uc "There is more than one way to do it".words>>.flip>>.chop.join
13:15 camelia rakudo-moar 7cff42: OUTPUT«EREHSERONAHENYAOOT␤»
13:15 * masak .oO( as usual, the annual "Most Meta" award was handed out -- to itself )
13:15 BrokenRobot m: say uc join "", "There is more than one way to do it" ~~ m:g/<<./
13:15 camelia rakudo-moar 7cff42: OUTPUT«TIMTOWTDI␤»
13:15 moritz urgs, chop returns the remaining, not the last character
13:16 masak :P
13:16 yanmc moritz: haha, that's something I tried as well
13:16 moritz in p5, it returns the last chracter, but modifies in place
13:16 Emeric1 joined #perl6
13:16 psch m: say uc join "There is more than one way to do it" ~~ m:g/<<./ :
13:16 camelia rakudo-moar 7cff42: OUTPUT«TIMTOWTDI␤»
13:18 BrokenRobot m: "There is more than one way to do it".subst(/<<.<(.+<</, "", :g).uc.say
13:18 camelia rakudo-moar 7cff42: OUTPUT«TIT␤»
13:19 BrokenRobot umm...
13:19 BrokenRobot m: "There is more than one way to do it".subst(/<<.<(.+?<</, "", :g).uc.say
13:19 camelia rakudo-moar 7cff42: OUTPUT«TIMTOWTDIT␤»
13:20 psch m: say ~($ = "There is more than one way to do it".words>>.tc) ~~ tr/a..z //
13:20 camelia rakudo-moar 7cff42: OUTPUT«Cannot modify an immutable Str␤  in block <unit> at <tmp> line 1␤␤»
13:20 psch aww
13:21 moritz psch: try without the leading ~
13:21 psch moritz: then we get the .perl of StrDistance :/
13:21 moritz it might have too tight a precdence
13:21 psch m: say ($ = "There is more than one way to do it".words>>.tc) ~~ tr:c/a..z //
13:21 camelia rakudo-moar 7cff42: OUTPUT«StrDistance.new(before => "There Is More Than One Way To Do It", after => "TIMTOWTDI")␤»
13:21 psch m: put ($ = "There is more than one way to do it".words>>.tc) ~~ tr:c/a..z //
13:21 camelia rakudo-moar 7cff42: OUTPUT«StrDistance<53391648>␤»
13:21 psch ...what happened to the Str method of StrDistance
13:22 moritz m: say ~($ = "There is more than one way to do it".words>>.tc) ~~ tr:c/a..z //
13:22 camelia rakudo-moar 7cff42: OUTPUT«Cannot modify an immutable Str␤  in block <unit> at <tmp> line 1␤␤»
13:22 BrokenRobot m:  say ~(($ = "There is more than one way to do it".words>>.tc) ~~tr:c/a..z //)
13:22 camelia rakudo-moar 7cff42: OUTPUT«StrDistance<84381344>␤»
13:22 moritz m: say ~($ = "There is more than one way to do it".words>>.tc) ~~ tr:c/a..z // )
13:22 camelia rakudo-moar 7cff42: OUTPUT«5===SORRY!5=== Error while compiling <tmp>␤Unexpected closing bracket␤at <tmp>:1␤------> 3y to do it".words>>.tc) ~~ tr:c/a..z // 7⏏5)␤»
13:22 moritz m: say ~(($ = "There is more than one way to do it".words>>.tc) ~~ tr:c/a..z // )
13:22 camelia rakudo-moar 7cff42: OUTPUT«StrDistance<70002032>␤»
13:22 moritz urks.
13:22 psch oh, also don't really need :c there
13:22 BrokenRobot m: "There is more than one way to do it".comb(/<<./).join.uc.say
13:22 camelia rakudo-moar 7cff42: OUTPUT«TIMTOWTDI␤»
13:23 sherwool joined #perl6
13:23 psch m: $_ = "foo"; say tr/o/u/
13:23 camelia rakudo-moar 7cff42: OUTPUT«StrDistance.new(before => "foo", after => "fuu")␤»
13:23 moritz m: say 'There is more than one way to do it".words>>.tc.join.comb(/<:Lu>/).join
13:23 camelia rakudo-moar 7cff42: OUTPUT«5===SORRY!5=== Error while compiling <tmp>␤Unable to parse expression in single quotes; couldn't find final "'" ␤at <tmp>:1␤------> 3o it".words>>.tc.join.comb(/<:Lu>/).join7⏏5<EOL>␤    expecting any of:␤        argument list␤        …»
13:23 moritz m: say "There is more than one way to do it".words>>.tc.join.comb(/<:Lu>/).join
13:23 psch i think that should probably have a .Str that gives $!after..?
13:23 camelia rakudo-moar 7cff42: OUTPUT«TIMTOWTDI␤»
13:23 moritz psch: +1
13:24 moritz m: say "There is more than one way to do it".words>>.tccomb(/<:Lu>/).join
13:24 camelia rakudo-moar 7cff42: OUTPUT«Method 'tccomb' not found for invocant of class 'Str'␤  in block <unit> at <tmp> line 1␤␤»
13:24 moritz m: say "There is more than one way to do it".words>>.tc.comb(/<:Lu>/).join
13:24 camelia rakudo-moar 7cff42: OUTPUT«TIMTOWTDI␤»
13:24 CIAvash m: say "There is more than one way to do it".comb(/<<./).join.uc
13:24 camelia rakudo-moar 7cff42: OUTPUT«TIMTOWTDI␤»
13:25 * [Coke] sees Quantum::Computation has not yet been released. :(
13:25 CIAvash m: say "There is more than one way to do it".words».comb».[0].join.uc
13:25 camelia rakudo-moar 7cff42: OUTPUT«TIMTOWTDI␤»
13:26 moritz [Coke]: is that TensorFlow for Perl?
13:26 BrokenRobot m: "There is more than one way to do it".wordcase.comb(/<:Lu>/).join.say
13:26 camelia rakudo-moar 7cff42: OUTPUT«TIMTOWTDI␤»
13:26 [Coke] moritz: from Damian's keynote
13:26 psch oh, right, wordcase was what i was looking for earlier
13:26 psch instead of .words>>.tc
13:28 psch m: $_ = "foo"; tr:d/a..z/A..Z/; .say # i also think :d is kind of weird
13:28 camelia rakudo-moar 7cff42: OUTPUT«FOO␤»
13:28 psch as in, it doesn't actually delete, if it gets a replacement part...
13:28 Emeric joined #perl6
13:28 psch should it?
13:28 BrokenRobot IIRC that's meant to delete stuff without replacements
13:28 lizmat joined #perl6
13:28 BrokenRobot m: $_ = "fooz"; tr:d/a..x/A..x/;
13:28 camelia rakudo-moar 7cff42: ( no output )
13:28 BrokenRobot m: $_ = "fooz"; tr:d/a..x/A..x/; .say
13:28 camelia rakudo-moar 7cff42: OUTPUT«FOOz␤»
13:29 BrokenRobot oh :/
13:29 AlexDaniel joined #perl6
13:29 AlexDaniel m: say split ‘b’, ‘aba’, NaN
13:29 camelia rakudo-moar 7cff42: OUTPUT«Type check failed in split ($limit argument); expected "any Real type (non-NaN) or Whatever" but got "NaN"␤  in block <unit> at <tmp> line 1␤␤»
13:29 skids joined #perl6
13:29 AlexDaniel wtf is $limit
13:29 AlexDaniel m: say split ‘b’, ‘aba’, Inf
13:30 camelia rakudo-moar 7cff42: OUTPUT«(a a)␤»
13:30 moritz m: say split 'b', 'abababac', 2
13:30 camelia rakudo-moar 7cff42: OUTPUT«(a ababac)␤»
13:30 BrokenRobot AlexDaniel: the limit you're specifying.
13:30 psch m: $_ = "foo"; tr:c/o/u/; .say # this also seems broken..? :/
13:30 camelia rakudo-moar 7cff42: OUTPUT«fuu␤»
13:30 moritz limit is the third, optional argument to split
13:30 BrokenRobot Maybe it shouldn't have the sigil to avoid confusion
13:30 AlexDaniel it shouldn't, I think
13:30 moritz why not?
13:31 moritz the other args typically do
13:31 BrokenRobot AlexDaniel │ wtf is $limit
13:31 lizmat BrokenRobot: shouldn't have the sigil ?
13:31 BrokenRobot Well, it makes one think there's a $limit var in their code
13:31 AlexDaniel it's like one of these “bla-bla-bla $a” kind of LTA warnings
13:31 AlexDaniel m: my $limit = 42; say split ‘b’, ‘aba’, NaN; say $limit
13:31 camelia rakudo-moar 7cff42: OUTPUT«Type check failed in split ($limit argument); expected "any Real type (non-NaN) or Whatever" but got "NaN"␤  in block <unit> at <tmp> line 1␤␤»
13:32 AlexDaniel well, it says “in split”, so it's not too bad, hm…
13:32 moritz m: sub f(Int $x) { 42 }; f <foo bar>
13:32 camelia rakudo-moar 7cff42: OUTPUT«Type check failed in binding $x; expected Int but got List ($("foo", "bar"))␤  in sub f at <tmp> line 1␤  in block <unit> at <tmp> line 1␤␤»
13:32 * BrokenRobot takes the blame for writing that error text
13:32 AlexDaniel moritz: if $x is in my code then there's no problem, sure
13:33 moritz AlexDaniel: it typically isn't
13:33 moritz m: say sin(Mu)
13:33 camelia rakudo-moar 7cff42: OUTPUT«Type check failed in binding <anon>; expected Any but got Mu (Mu)␤  in block <unit> at <tmp> line 1␤␤»
13:33 moritz bad example here, since it's anon
13:34 AlexDaniel BrokenRobot: anyway, thanks for your work on the ticket
13:34 BrokenRobot To me it feels there should be some subclass of X::TypeCheck for use specifically when you're checking argument sanity outside of the signature.
13:34 AlexDaniel Zoffix++ lizmat++
13:34 BrokenRobot AlexDaniel: lizmat++ fixed it, not I.
13:34 AlexDaniel BrokenRobot: you wrote the test
13:35 masak m: say 847377847987846873.comb(/../)>>.chr.join
13:35 camelia rakudo-moar 7cff42: OUTPUT«TIMTOWTDI␤»
13:35 moritz BrokenRobot: it would be even nicer if we had a syntax like   sub limit(..., Real $limit where { $_ !=== NaN } throws { more descriptive error here }
13:36 moritz well, the syntax isn't good
13:36 BrokenRobot Subset::Helper :P
13:36 pmurias joined #perl6
13:36 moritz but having a declarative syntax for better error messages on subtype failures
13:36 BrokenRobot Yeah that would be nice.
13:37 dalek snake: 5b005a2 | (Pawel Murias)++ | t/indent.t:
13:37 dalek snake: Test indenting in weird ways works.
13:37 dalek snake: review: https://github.com/arnshol​t/snake/commit/5b005a2b5a
13:37 dalek snake: c555b37 | (Pawel Murias)++ | src/Snake/Grammar.nqp:
13:37 dalek snake: Support floating points literals of the form "123." and "13.".
13:37 dalek snake: review: https://github.com/arnshol​t/snake/commit/c555b371cd
13:37 AlexDaniel m: sub limit($limit where { $_ !=== NaN or fail ‘more descriptive error here’  }) {}; limit(42)
13:37 camelia rakudo-moar 7cff42: ( no output )
13:37 AlexDaniel m: sub limit($limit where { $_ !=== NaN or fail ‘more descriptive error here’  }) {}; limit(NaN)
13:37 camelia rakudo-moar 7cff42: OUTPUT«more descriptive error here␤  in any  at /home/camelia/rakudo-m-inst-1/share​/perl6/runtime/CORE.setting.moarvm line 1␤  in sub limit at <tmp> line 1␤  in block <unit> at <tmp> line 1␤␤»
13:37 moritz oh, TIL
13:37 BrokenRobot OTOH, the where stuff is run multiple times. If you want some expensive check, that's far from ideal
13:37 AlexDaniel well, the line number is a bit off, but it kinda works
13:37 BrokenRobot Subset::Helper is a real thing BTW :)
13:38 BrokenRobot subset Positive of Int where subset-is * > 0, 'Value must be above zero';
13:38 moritz but not on modules.perl6.org, is it?
13:38 rurban joined #perl6
13:38 BrokenRobot 'tis there: http://modules.perl6.org/repo/Subset::Helper
13:38 Emeric joined #perl6
13:39 moritz huh, I somehow managed to miss it while searching
13:41 * BrokenRobot wishes the docs did not use "seems" [ "to work like ..." | "do this " | "etc. " ]
13:42 BrokenRobot Makes it sound like it's a guessing game and whoever wrote it doesn't have a clue
13:42 Emeric1 joined #perl6
13:43 dalek doc: 2062ac2 | (Zoffix Znet)++ | doc/Language/5to6-perlfunc.pod:
13:43 dalek doc: Reword
13:43 dalek doc: review: https://github.com/perl6/doc/commit/2062ac2eb3
13:46 moritz good technical writing is hard.
13:46 moritz staying motivated to do good technical writing is also hard :-)
13:47 AlexDaniel BrokenRobot: https://github.com/perl6/doc/issues/619 :)
13:49 AlexDaniel “The main difference in Perl 6 seems to be that you can now call methods on …” – yeah, the documentation screams “we have no clue!”
13:50 AlexDaniel hmmm, perhaps we should have “low-hanging fruit” tag in doc/issues
13:52 nebg joined #perl6
13:52 nebg hello everyone... does perl6 has a cpan ? or  can i use cpan modules of perl for perl6 ?
13:53 moritz nebg: it has https://modules.perl6.org/, and two alternative module installers (zef and panda)
13:53 moritz nebg: and you can use Perl 5 modules from CPAN through Inline::Perl5
13:53 nebg moritz, ohh ok so we still have the advantage of perl5 of having a massive number of modules right ?
13:54 moritz nebg: right
13:54 moritz nebg: and also python modules through Inline::Python
13:54 nebg moritz ?! really ???what ??
13:54 nebg and we can use from python perl modules ?
13:55 nebg moritz, do i need a JVM to run perl6 ?
13:55 BrokenRobot nebg: and C libraries :)
13:55 moritz nebg: no, use MoarVM (which the rakudo installer will build for you)
13:55 nebg BrokenRobot, what about perl5 or python ? for example can i load python modules from perl5 or can i load perl5 and perl6 modules from python ?
13:55 BrokenRobot nebg: no. It can run on JVM, but that's a bit broken ATM. MoarVM is the best thing right now
13:56 nebg BrokenRobot, why perl5 didn't need an virtual machine ?
13:56 BrokenRobot nebg: I don't know about from Perl 5. But from Perl 6 you can use most of Perl 5 and Python modules
13:56 AlexDaniel is Altai-man here?
13:56 moritz nebg: for example https://doc.perl6.org/ has syntax hilighting which is done by python's pygmentize module, but the build script for all the HTML is perl 6
13:56 BrokenRobot nebg: it does. You just never heard of it :)
13:57 nebg BrokenRobot, which is the virtual machine of perl5 then ?
13:57 ilmari nebg: the perl5 vm
13:57 moritz https://github.com/perl6/doc/bl​ob/master/htmlify.p6#L875-L888 is the code that does it
13:57 ilmari it's built-in and inseparable
13:57 ilmari which is why you haven't heard of it
13:57 BrokenRobot :)
13:57 nebg BrokenRobot, soany interpreted language has its own virtual machine ?
13:58 BrokenRobot nebg: no idea
13:59 geekosaur in some sense, almost yes (things like shells often interpret from source instead of an AST or precompiled bytecode)
14:00 * grondilu is surprised by how many people have an Apple laptop at YAPC::NA
14:01 moritz grondilu: many developers seem to be on Mac, regardless of their language
14:01 geekosaur if you're running from an AST or bytecode, then you have a virtual machine running it. not necessarily a complete virtual machine like JVM/CLR/moar, though (ghc's bytecode and perl 5 being examples of incomplete virtual machines)
14:02 moritz a very simple question you can ask is: How is memory managed?
14:02 moritz If it's done implicitly (by refcounting or GC), then you have at least some form of a limited VM underneath
14:04 mspo perl5 wasn't "interpreted"
14:04 mspo it was compiled on the fly
14:04 timotimo shared pointers in Cpp are not implicit to you, right?
14:05 timotimo makes sense, though
14:06 nebg mspo, so which is at this point the difference between compiled and interpreted languages ? since it seems that even interpreted languages are compiled for a virtual machine or on the fly
14:06 nebg how is perl6 in terms of performance with respect to java/perl5/python ?
14:07 BrokenRobot nebg: it sucks
14:07 mspo nebg: shell scripts are interpreted
14:07 mspo nebg: in the sense that you are thinking about
14:07 mspo nebg: awk too, I think
14:08 domidumont joined #perl6
14:08 nebg BrokenRobot, so bad performances ?
14:08 BrokenRobot nebg: it just got release last Christmas and now the work is being done to improve performance. We're doing well. Here are performance fixes for last release of the compiler: https://github.com/rakudo/raku​do/blob/nom/docs/ChangeLog#L18
14:09 AlexDaniel nebg: well, these graphs may tell you something http://tux.nl/Talks/CSV6/speed4.html
14:09 mspo nebg: the main difference is probably the amount of native code generated by compilation and the scope of the virtual machine
14:09 BrokenRobot nebg: it also depends on what you're doing. bare perl -e '' is a completely different beast than bare perl6 -e '' since in Perl 6 you get something akin to Moose + List module + all tons of other stuff
14:09 AlexDaniel nebg: in other words, it is improving really fast, but we're not very fast yet
14:10 cdg joined #perl6
14:10 BrokenRobot nebg: we have more detailed answer in FAQ: http://docs.perl6.org/language/fa​q#Is_Perl_6_fast_enough_for_me%3F
14:10 AlexDaniel BrokenRobot: oh, right!
14:10 BrokenRobot m: sleep 1 for ^4 .race: :1batch; say now - INIT now;
14:10 camelia rakudo-moar 2c61fd: OUTPUT«1.00752769␤»
14:11 mspo when runtime passes into virtual machine :)
14:11 BrokenRobot nebg: ^ the above sleeps for 4 seconds but runs for just one. So the easiness of concurrency can bring your code faster than other more established languages
14:12 BrokenRobot nebg: oh, I also have this article: http://perl6.party/post/Perl-​6-Is-Slower-Than-My-Fat-Momma
14:12 * BrokenRobot stops spamming nebg :P
14:13 nebg ok thanks a lot BrokenRobot
14:16 girafe joined #perl6
14:17 * mst starts pondering how to craft a +b line that'll force zoffix to stick to one fracking nick
14:17 [Coke] -1 on nick freezing.
14:18 AlexDaniel .seen Zoffix
14:18 yoleaux I saw Zoffix 20 Jun 2016 23:05Z in #perl6: <Zoffix> stevieb9, why not show the full code?
14:18 AlexDaniel .seen ZoffixWin
14:18 yoleaux I saw ZoffixWin 14 May 2016 02:36Z in #perl6: <ZoffixWin> (it's just now I know what it'll be, and I'll probably churn it out tomorrow)
14:18 AlexDaniel .seen sexy-coder-girl
14:18 yoleaux I saw sexy-coder-girl 16 Jun 2016 00:29Z in #perl6: <sexy-coder-girl> :)
14:20 BrokenRobot .seen ZoffixMobile
14:20 yoleaux I saw ZoffixMobile 13 Jun 2016 20:35Z in #perl6: <ZoffixMobile> cool
14:22 mst [Coke]: I fail to understand how you can be '-1' on a joke.
14:24 BrokenRobot mst: ban /unaffiliated/zoffix and give me ops :P
14:24 BrokenRobot Oh wait. that doesn't fix the nick thing
14:24 BrokenRobot Unless you can give ops by nick!blash@host :P
14:24 mst you can
14:25 BrokenRobot \o/
14:25 mst but then you could unban yourself
14:25 mst I think there's a way to do a ban override
14:25 mst so I could do an override for zoffix!*@unfellated/zoffix
14:25 mst and then ban *!*@ to kill the rest
14:26 mst but I'm fairly sure that would still let you /nick to an alt
14:26 mst it'd just stop you /nick-ing *back* or speaking afterwards
14:26 AlexDaniel .seen sena_kun
14:26 yoleaux I saw sena_kun 20 Jun 2016 17:30Z in #perl6: <sena_kun> BrokenRobot, trying it in actual regex now...
14:26 BrokenRobot unfellated? Fraudian slip, eh?
14:26 mst which would be kinda hilarious but not quite what I had in mind
14:26 mst I typo'ed unaffiliated three times in a row and figured if I was going to be wrong, I might as well be creatively wrong
14:27 BrokenRobot heh :)
14:27 mst I have enough trouble getting it right when I'm setting cloaks
14:31 tadzik joined #perl6
14:32 pmurias mst: wouldn't -1 on a joke mean it's unfunny
14:34 mst pmurias: my response was meant to indicate I suspected I was being taken seriously
14:34 awwaiid BrokenRobot / REPL-interested people, I put in https://rt.perl.org/Ticket/Display.html?id=1284​47&amp;results=fc1e3cfaf19ff92c113ac0ac29b71018 to improve REPL output (though RT messed with my formatting)
14:35 DrForr_ Btw the Perl 6 beginner's track is almost SRO, f nobodys mentioned it.
14:36 DrForr_ It is SRO for values of S meaning 'sitting' :)
14:40 awwaiid What are the R and O for?
14:40 DrForr_ 'room only'
14:40 awwaiid ah
14:44 M-matthew joined #perl6
14:44 M-Illandan joined #perl6
14:46 rurban_ joined #perl6
14:50 kurahaupo joined #perl6
14:55 lizmat And another Perl 6 weekly hits the Net: https://p6weekly.wordpress.com/2016/06​/21/2016-25-a-quick-one-from-orlando/
14:55 dj_goku lizmat++++++++
14:56 lizmat off to see Dave Rolsky talk about objects in Perl 6
14:56 hoelzro lizmat++ # p6weekly
14:57 hoelzro Zoffix++ # release
14:58 moritz ... and submitted to reddit: https://www.reddit.com/r/perl6/comments/4p50i9/20​1625_a_quick_one_from_orlando_weekly_changes_in/
15:00 pdcawley joined #perl6
15:02 cdg joined #perl6
15:02 BrokenRobot lizmat++ # good weekly
15:02 |2321 joined #perl6
15:03 sjn lizmat++ # love the weekly reports :D
15:05 pmichaud what's the canonical mechanism for a Perl 6 shebang line on a Mac?
15:06 ufobat ola :)
15:08 lizmat pmichaud: good question
15:09 pmichaud (I'm not a mac person; someone here at YAPC is asking)
15:10 moritz iirc #!/usr/bin/env perl6 should work
15:10 moritz but I'm not a mac person either
15:11 lizmat pmichaud: confirmed that moritz suggestion works on Mac
15:11 lizmat moritz++
15:11 pmichaud I wonder if that's on doc.perl.org somewhere, or in a faq
15:11 lizmat not sure
15:12 stevieb lizmat: ++ for keeping us up to date, and +2 for posting links to the vids
15:12 khw joined #perl6
15:16 atweiden joined #perl6
15:19 ssotka joined #perl6
15:22 BrokenRobot A while back I saw slides by jnthn++ ... they were called "Hacking on a Perl 6 compiler" or something like this. I think this was for a course. Anyone know a link?
15:22 * BrokenRobot doesn't see anything on http://www.jnthn.net/articles.shtml
15:25 zostay m: sub x(Int $x --> Int) { $x + 1 }; my &y := &x.assuming(4); &x.of.say; &y.of.say;
15:25 camelia rakudo-moar 2c61fd: OUTPUT«(Int)␤(Mu)␤»
15:25 BrokenRobot Oh god! Larry! :D https://docs.google.com/presentation/d/1JVJfNlCQL​7crJytbKsdlf7Jw4c4dMScjogHLkZuOwcs/edit#slide=id.g50dbd1402_0_46
15:26 zostay i would expect .assuming to preserve the return type
15:26 stevieb BrokenRobot: is this what you're looking for? http://www.jnthn.net/paper​s/2010-osdc.fr-rakudo.pdf
15:27 psch zostay: probably just NYI.  .assuming is quite hairy, and getting it to the current state already took quite a bit of effort
15:28 BrokenRobot stevieb: just found it: http://edumentab.github.io/rak​udo-and-nqp-internals-course/
15:28 zostay yeah, i was looking at the implementation... i was wondering if i was brave enough to patch it ;)
15:29 BrokenRobot Guess I was wrong about the title.. It has neither "hacking" nor "compiler" nor "on" or "the" in it :P
15:31 AlexDaniel when Damian said that in Perl 6 it is possible to interpolate blocks of code in strings I was like pffft
15:32 mst timotimo: wrt your question as to talks, yesterday's have started to upload
15:32 AlexDaniel perl -E 'say "But it is obvious in Perl 5! Look: @{[sub{ cos(69) }->()]}"'
15:32 mst AlexDaniel: say "Look: ${\cos(69)}";
15:32 AlexDaniel oh
15:32 AlexDaniel that's how you do it properly
15:32 mst AlexDaniel: say "Look: ${\do { warn q{I am a block}; cos(69) }}";
15:33 mst AlexDaniel: see http://shadow.cat/blog/matt-s​-trout/madness-with-methods/
15:33 AlexDaniel mst: is it some kind of new feature or?
15:33 BrokenRobot use Quote::Code;
15:33 BrokenRobot say qc"2 + 2 = {2 + 2}";
15:33 mst AlexDaniel: no, that's baseline perl5
15:33 BrokenRobot AlexDaniel: no, it just uses a scalar ref instead of your arrayref
15:33 mst AlexDaniel: you just did it the ugly hard way
15:33 AlexDaniel okay
15:33 BrokenRobot http://blogs.perl.org/users/mauke/2016/06/co​ol-perl-6-features-available-in-perl-5.html
15:34 AlexDaniel cool
15:35 geekosaur this is more a case of "p5 can do it, p6 makes it sane"
15:35 BrokenRobot Looks more a case of "we have module for this" to me
15:36 CIAvash lizmat: maybe the football link should be changed to my blog post? I didn't mention it because I thought it wasn't interesting enough to be mentioned in the weekly, since it wasn't about Perl 6 itself. https://blog.ciavash.name/2016/05/12​/new-project-get-soccer-information-​in-your-terminal-with-football.html
15:36 BrokenRobot Oh, unless you're talking about interpolation and not the stuff in the blog :P
15:36 CIAvash also lizmat++
15:36 mst geekosaur: "p5 can do it, p6 provides special syntax to make it prettier"
15:36 mst (not that that isn't a good thing, mind)
15:37 geekosaur well, I count not having to deal with the whole list vs scalar context mess as part of the sanity, even though it's not specifically part of the syntax
15:37 lizmat CIAvash: link updated, thanks!
15:37 geekosaur hm, nnot phrased right, since it is p[art of the p5 syntax..
15:37 mst actually, it isn't part of the p5 syntax
15:38 mst there's no context involved there at all
15:38 geekosaur something the programmer shouldn't have to worry about but is forced to by perl5
15:38 mst but, yes, 'perl6 makes most of the things that are hateful about scalar/list context and etc. go away' is definitely a true thing
15:38 mst just that's a completely seperate reason perl6 is awesome, to my mind
15:39 CIAvash lizmat: thanks
15:39 psch ooc, does perl5 do q-lang switches inside a given string literal?
15:39 mst not even sure what that means
15:40 psch m: say 'foo \qq[{++($ = 'bay')}]'
15:40 camelia rakudo-moar 2c61fd: OUTPUT«foo baz␤»
15:40 psch ...contrived example, yes
15:40 psch m: $_ = "bar"; say 'foo\qq[$_]'
15:40 camelia rakudo-moar 2c61fd: OUTPUT«foobar␤»
15:40 mst ... no, no it doesn't
15:40 BrokenRobot TIL
15:40 grondilu joined #perl6
15:40 mst like, the whole point of single quotes is that nothing clever happens inside them
15:41 BrokenRobot m: $_ = "bar"; say q/foo\qq[$_]/
15:41 camelia rakudo-moar 2c61fd: OUTPUT«foobar␤»
15:41 psch m: $_ = "bar"; say "foo\q[$_]"
15:41 mst I, er, can't say I consider "actually, your single quoted string may turn out to be something completely different" to be that good an idea, at first glance
15:41 camelia rakudo-moar 2c61fd: OUTPUT«foo$_␤»
15:42 psch mst: it works both ways vOv
15:42 AlexDaniel m: say “hello “{“wor” ~ “ld”}””
15:42 camelia rakudo-moar 2c61fd: OUTPUT«hello “world”␤»
15:42 BrokenRobot Is there some sort of adverb to disable this?
15:42 mst psch: being able to do that inside "" kinda makes sense, doing it in '' scares me
15:42 psch BrokenRobot: Q// doesn't do that
15:42 mst it may turn out my fears are totally unfounded
15:42 BrokenRobot Thanks.
15:42 mst but ... *twitch*
15:42 psch m: say Q/\qq[{ 2 + 2 }]/
15:42 camelia rakudo-moar 2c61fd: OUTPUT«\qq[{ 2 + 2 }]␤»
15:42 mst anyway, I should try and make it to the office before 5pm
15:42 mst &
15:42 BrokenRobot :)
15:43 psch mst: way i see it, '' is "mostly no magic", and Q// is "absolutely no magic"
15:43 AlexDaniel m: say 'foo \qq[{++($ = 'bay')}]'
15:43 camelia rakudo-moar 2c61fd: OUTPUT«foo baz␤»
15:43 AlexDaniel m: say 「foo \qq[{++($ = 'bay')}]」
15:43 camelia rakudo-moar 2c61fd: OUTPUT«foo \qq[{++($ = 'bay')}]␤»
15:43 AlexDaniel BrokenRobot: use 「」 !
15:43 jast \qq is a surprising amount of magic for '' IMO
15:43 psch jast: it's exactly one escape hatch
15:44 jast at any rate it's not something I can't live with
15:45 psch i mean, i was surprised when i found it, granted
15:45 psch and "absolutely no magic" might even be better
15:46 psch but i figure it's been put there by people who thought more about it than i did, and it's not really high on my list of things to think about... vOv
15:47 BrokenRobot Well, Unicode 9.0 got release. 🦋 should now be the text-version camelia :D
15:47 [Coke] mst: I had no idea it was a joke, which is how.
15:47 BrokenRobot http://emojipedia.org/butterfly/
15:48 BrokenRobot .u 🦋
15:48 yoleaux No characters found
15:49 rurban1 joined #perl6
15:49 kid51 joined #perl6
15:50 rurban2 joined #perl6
15:50 AlexDaniel BrokenRobot: yoleaux is old anyway
15:52 lizmat I guess next release of MoarVM will have 9.0  :-)
15:52 jnthn Hopefully. I think this may be one of the updates where it's a bit more work than "just run the script". I'll have to check the relesae notes. :)
15:53 BrokenRobot AlexDaniel: oh well, at least it works in the browser http://imgur.com/zDHEMgf
15:53 AlexDaniel oh wow
15:53 AlexDaniel what font is able to render that
15:54 BrokenRobot The GulibTroll Sans-Serif :P
15:55 [Coke] I could see the irc logs catching that character in particular and subbing the svg for it. :|
15:56 AlexDaniel BrokenRobot: oh right. Although it actually renders as a text character here, not an image: https://files.progarm.org/2016-​06-21-185605_623x153_scrot.png
15:57 BrokenRobot AlexDaniel++ touché :P
15:58 AlexDaniel BrokenRobot: actually, I didn't even notice that it's not some generic butterfly, but camelia /o\
15:58 setty1 joined #perl6
16:01 cognominal joined #perl6
16:05 lizmat lunch&
16:12 rurban joined #perl6
16:12 rurban1 joined #perl6
16:13 rurban3 joined #perl6
16:13 [Coke] ooh, it is lunchtime! hey, I'm in the same timezone as lizmat++!
16:13 [Coke] if the irclog doesn't automatically do that, btw, we're missing out. :)
16:13 rurban4 joined #perl6
16:23 rurban4 left #perl6
16:26 mst [Coke]: IRC humour. Same as Zoffix's part message is 'K-lined by mst' :D
16:27 mst BrokenRobot: oh, hey, you could use 'nick frozen by mst' too :D
16:27 mst (that might succesfully troll my fellow opers as well ;)
16:33 captain-adequate joined #perl6
16:36 Praise joined #perl6
16:36 Praise joined #perl6
16:40 redhands98101 joined #perl6
16:44 rurban joined #perl6
16:50 ocbtec joined #perl6
16:55 dalek gtk-simple: 3446e18 | finanalyst++ | / (3 files):
16:55 dalek gtk-simple: Add logo and add adjust method to scale widget, modify example 04 to demonstrate
16:55 dalek gtk-simple: review: https://github.com/perl6/gt​k-simple/commit/3446e18528
16:55 dalek gtk-simple: ce23d99 | RabidGravy++ | / (3 files):
16:55 dalek gtk-simple: Merge pull request #52 from finanalyst/master
16:55 dalek gtk-simple:
16:55 dalek gtk-simple: Add logo and add adjust to Scale
16:55 dalek gtk-simple: review: https://github.com/perl6/gt​k-simple/commit/ce23d995b6
16:59 domidumont joined #perl6
17:02 kid51 joined #perl6
17:06 bbkr joined #perl6
17:07 eugen joined #perl6
17:08 mspo https://github.com/vurtun/nuklear
17:09 LonelyGM joined #perl6
17:12 spider-mario joined #perl6
17:15 buharin joined #perl6
17:15 redhands98100 joined #perl6
17:25 Xliff mspo: Neat. Another Nativecall target, I suppose.
17:27 dha joined #perl6
17:28 ocbtec joined #perl6
17:30 lizmat joined #perl6
17:32 yanmc two things hard to search for, 1) is \~ an operator (what does it do)?
17:32 yanmc 2) what is := exactly (something with forcing list context? but that's a perl 5 thing?)
17:33 mspo Xliff: yeah just thought of it because I saw gtk
17:33 mspo Xliff: but nuklear is much much smaller :)
17:33 psch yanmc: for your 2): http://doc.perl6.org/routine/:=
17:34 psch yanmc: your 1) probably means [\~] instead of \~, which would be triangle reduce stringification
17:34 psch yanmc: if it's not that and you found it in the docs somewhere, please link that
17:35 kurahaupo joined #perl6
17:35 mspo Xliff: a really really small gui lib + a really cool language like perl6 + some kind of static compilation could make some cool stuff
17:37 psch mspo: static compilation?
17:37 psch i'd guess that might mean "linking" instead?
17:37 mspo yes
17:38 psch that lib does look pretty great at a glance, yeah
17:40 mspo I guess you'd still need something like sdl to open an actual window
17:43 psch yeah, looks like each example depends on a specific way of getting a window
17:43 psch still, interesting project
17:43 psch and it does seem to fit pretty well into the unix philosophy, afaict
17:44 molaf joined #perl6
17:46 geekosaur yanmc, := is binding as opposed to assignment. if you think of a variable as a Scalar (or Array, etc.) container with a value inside it, = replaces the value inside the container and := replaces the container itself
17:47 yanmc so := binds, is that the same thing that happens when doing my $scalar = @list
17:47 yanmc geekosaur: thanks, was just typing the above ^
17:49 geekosaur you're not replacing the container there, you're setting the value to what perl 5 would call an arrayref. (but perl 6 implicitly creates and dereferences these references for you)
17:50 Xliff Wow! Busy week for Perl6. lizmat++
17:50 Xliff I guess I should rakudobrew.
17:51 geekosaur the difference here is that = gives you a reference to a new array stored within $scalar's container, so changes to the values will not affect @list. if you use :=, you will actually be modifying @list itself by making changes via $scalar because the container for $scalar is now the same as the container for @list
17:52 pullphinger joined #perl6
17:53 geekosaur m: my $scalar: dd $scalar.VAR
17:53 camelia rakudo-moar 2c61fd: OUTPUT«5===SORRY!5=== Error while compiling <tmp>␤Confused␤at <tmp>:1␤------> 3my $scalar:7⏏5 dd $scalar.VAR␤    expecting any of:␤        colon pair␤»
17:53 geekosaur whoops
17:54 geekosaur m: my $scalar; dd $scalar.VAR
17:54 camelia rakudo-moar 2c61fd: OUTPUT«Invocant requires an instance of type Any, but a type object was passed.  Did you forget a .new?␤  in block <unit> at <tmp> line 1␤␤»
17:54 geekosaur meh. not fully awake today :/
17:54 yanmc geekosaur: are you sure about that, because if I remember correctly in my testing I saw the latter behaviour with `='
17:54 geekosaur there's a way to see the actual container instead of its contents as you normally would. understanding that there's this double level of containers with values inside of them is key to understanding := vs. =
17:55 dha Eek. I've got a test failing in rakudo
17:56 dha FWIW, it's t/04-nativecall/13-union.t Are we aware of this? (OS X 10.10.5)
17:56 timotimo 32bit, perchance?
17:56 geekosaur not absolutely certain, see above. I think I forgott o account fpr @list being a container with an array reference within it too, and it's that that is assigned
17:56 dha don't think so, no
17:56 geekosaur why would there be a 32 bit build on 10.10?
17:57 dha Yeah, I don't think that would be in any way likely?
17:58 fhorck joined #perl6
17:58 dha For my current purposes, however, I just need to know if I can ignore it.
17:59 Xliff m: my @a = ^3; my $l = @a; $l[1] = 4; say $l; say @a
17:59 camelia rakudo-moar 2c61fd: OUTPUT«[0 4 2]␤[0 4 2]␤»
17:59 lizmat dha: building, will check in a mo
17:59 dha thanks
18:00 sno joined #perl6
18:00 Xliff dha: "t/04-nativecall/13-union.t ............... ok"
18:01 Xliff This is from latest git.
18:01 Xliff I'm not on OSX thop.
18:01 dha I can try building again...
18:02 lizmat dha: seems related to is_approx -> is-approx: just pushed a patch
18:02 psch assigning @a to $x means $x is a container that contains @a
18:02 psch binding @a to $x means $x is an alternative name for @a
18:03 psch m: my @a = ^3; my $x = @a; my $y := @a; say $x.VAR.name; say $y.VAR.name
18:03 camelia rakudo-moar 2c61fd: OUTPUT«$x␤@a␤»
18:03 psch ^^^ as demonstrated there
18:04 lizmat dha: it appears to be a flapper
18:04 geekosaur yanmc, anyway the difference is subtle (more subtle than I am currently, it seems... sigh) but can be crucial. it's not a matter of context though, it's a matter of what kind of container you have bound. $variables have a Scalar container by default; you can't change this with = (although you can store a reference to an Array container in it) but you can change the type of container with :=
18:04 lizmat dha: I think *you* can safely ignore it  :-)
18:04 dha ok, i'll pull and try again. and then I'll probably ignore it. :-)
18:05 iH2O joined #perl6
18:06 lizmat it fails for me about 1/5 times
18:07 dha It failed for me twice in a row. :-/
18:07 mst maybe it likes lizmat better than you
18:09 iH2O how much does it fail for u mst?
18:09 dha mst - that's entirely possible.
18:11 BrokenRobot doesn't fail at all on debian.
18:11 BrokenRobot Obviously the problem is you're using teh wrong OS :P
18:11 dha :-p
18:12 mst don't make me break out the excuse server
18:12 araujo joined #perl6
18:13 zoosha joined #perl6
18:14 iH2O if it failed twice in a row for dha the probability it will fail again next time is (n+1)/(n+2) with n = 3 which is 3/5 https://en.wikipedia.org/wiki/Sunrise_problem sunrise problem
18:15 iH2O oops 4/5
18:16 lizmat https://www.youtube.com/watch?v=W1iTkACkbcM   # 2016 - ‎Introducing Prancer, a Web Framework for Perl 6‎ - DrForr
18:16 rgrinberg joined #perl6
18:16 dha ok, ,did it again. Failed once, passed on second attempt.
18:16 BrokenRobot DrForr_++
18:16 lizmat https://www.youtube.com/watch?v=Jw657US719s  # 2016 - ‎Perl 6 - Why did they do *that*?‎ - Bruce Gray
18:16 * dha installs while he's ahead
18:17 lizmat https://www.youtube.com/watch?v=73-XQEn6HfI   # 2016 - ‎Perl 6 and the Zen of Erlang‎ - Ben Tyler
18:17 lizmat https://www.youtube.com/watch?v=-8oTgdnP-y4  # 2016 - Utiaji: Building an Application Specific Web Server in Perl6‎ - Brian Duggan
18:17 BrokenRobot lots of Perl 6 stuff \o/
18:17 iH2O good luck dha, keep us informed of your progress
18:18 iH2O if any
18:18 dha Yeah, chances are it won't affect me greatly. But if it does, I'll give a shout. :-)
18:18 lizmat dha++
18:19 iH2O dha++++
18:19 iH2O im not even sure its legal perl6
18:19 dha Well, I'm sure it *could* be.
18:19 addison joined #perl6
18:19 lizmat m: my $a; $a++++
18:19 camelia rakudo-moar 580181: OUTPUT«Cannot resolve caller postfix:<++>(Int); none of these signatures match:␤    (Mu:D $a is rw)␤    (Mu:U $a is rw)␤    (Int:D $a is rw)␤    (int $a is rw)␤    (Bool:U $a is rw)␤    (Bool:D $a is rw)␤    (Num:D $a is rw)␤    (Num:U $a is rw)…»
18:19 iH2O :(
18:19 BrokenRobot m: sub postfix:<++++> { $^a + 2 }; my \dha = 'dha'; dha++++
18:19 camelia rakudo-moar 580181: OUTPUT«Cannot convert string to number: base-10 number must begin with valid digits or '.' in '3⏏5dha' (indicated by ⏏)␤  in sub postfix:<++++> at <tmp> line 1␤  in block <unit> at <tmp> line 1␤␤Actually thrown at:␤  in sub postfix:<++++> at <tmp…»
18:20 BrokenRobot wat
18:20 BrokenRobot oh
18:20 BrokenRobot m: sub postfix:<++++> { $^a x 2 }; my \dha = 'dha'; say dha++++
18:20 camelia rakudo-moar 580181: OUTPUT«dhadha␤»
18:20 BrokenRobot \o/
18:20 dha :-)
18:20 lizmat m: sub postfix:<++++>($a) { my $current = $a; $a++; $a++; $current }; my $a = 42; say $a++++; say $a
18:20 camelia rakudo-moar 580181: OUTPUT«Cannot resolve caller postfix:<++>(Int); none of these signatures match:␤    (Mu:D $a is rw)␤    (Mu:U $a is rw)␤    (Int:D $a is rw)␤    (int $a is rw)␤    (Bool:U $a is rw)␤    (Bool:D $a is rw)␤    (Num:D $a is rw)␤    (Num:U $a is rw)…»
18:22 zoosha joined #perl6
18:22 lizmat m: sub postfix:<++++>(\a) { my $current = a; a++; a++; $current }; my $a = 42; say $a++++; say $a
18:22 camelia rakudo-moar 580181: OUTPUT«42␤44␤»
18:23 BrokenRobot m: sub postfix:<++++>(\a) { a++ xx 2 }; my $a = 42; say $a++++; say $a
18:23 camelia rakudo-moar 580181: OUTPUT«(42 43)␤44␤»
18:27 _mg_ joined #perl6
18:32 psch m: sub postfix:<++>($a is rw) { return-rw $a = $a.succ }; my $x = 1; $x++++; $x.say
18:32 camelia rakudo-moar 479628: OUTPUT«3␤»
18:32 psch /o\
18:32 lizmat ???
18:33 psch lizmat: i don't know, i've just been running along with postfix:<++++> and what it would do in an insane world... :)
18:33 psch lizmat: as in, it's clearly meant as (++)++, but the problem in CORE is that it doesn't return a container
18:34 BrokenRobot m: term:<++++> { 't' }; sub postfix:<++++> { '++++' }; say ++++;
18:34 camelia rakudo-moar 479628: OUTPUT«5===SORRY!5=== Error while compiling <tmp>␤Prefix ++ requires an argument, but no valid term found␤at <tmp>:1␤------> 3 sub postfix:<++++> { '++++' }; say ++++7⏏5;␤    expecting any of:␤        prefix␤»
18:34 BrokenRobot How come that doesn't do the longest term or whatever?
18:34 BrokenRobot Oh, missing `sub` ~_~
18:35 psch m: sub term:<++++> { 't' }; say ++++
18:35 camelia rakudo-moar 479628: OUTPUT«t␤»
18:36 BrokenRobot m: sub term:<++++> { "dha" }; sub postfix:<++++> { $^a ~ "++++" }; say +++++++++++++++++++++++++++++​+++++++++++++++++++++++++++;
18:36 camelia rakudo-moar 479628: OUTPUT«dha++++++++++++++++++++++​++++++++++++++++++++++++++++++␤»
18:36 redhands98101 joined #perl6
18:36 dha Heh.
18:36 BrokenRobot That's it. I'm officially bored out of my mind :)
18:36 dha BrokenRobot++
18:37 * lizmat yawns
18:37 BrokenRobot All those naps and still yawning?
18:38 lizmat some talks are not as inspiring as others
18:38 BrokenRobot I'm a bit dissapointed to see 'On the shoulders of giants' talk available in video. I may as well just watch it and save myself a trip to Toronto next week :P
18:39 lizmat BrokenRobot: yeah, there's that
18:43 dha Hey, if you *really* want to be bored, my talk is up now too. :-)
18:43 lizmat :-)
18:44 rindolf joined #perl6
18:44 awwaiid lizmat: Apparently I changed the REPL output after all, and in a way that annoys me :( . I think I need to make a better test for it.
18:45 Sgeo joined #perl6
18:52 iH2O dha, be careful with sunburns today 21 June
18:52 dha Will do!
18:53 iH2O question: what color is the sun? is it (a) yellow, (b) red, (c) white?
18:53 BrokenRobot c
18:53 iH2O right
18:53 dha That would depend on what you mean by "what color is the sun"
18:53 iH2O when seen in space
18:54 BrokenRobot Easy to tell by the color of the snow :P
18:54 dha disclaimer: have a degree in philosophy and science, so I deal with questions like this differently than most people
18:54 TimToady especially if the snow is yellow
18:54 BrokenRobot TimToady++
18:57 FROGGS joined #perl6
18:58 Xliff iH2O, yet we still classify suns by "type" which includes a "color".
18:59 iH2O its for convenience only
18:59 iH2O not too scientific
18:59 Xliff :)
18:59 Xliff Well, scientists use it which makes it confusing.
19:00 iH2O Raylegh's diffusion is all we need
19:00 geekosaur there's also the difference betrween what you see from many light years away vs. what you'd see in that system where it's bright enough that no matter what, all visible frequencies are saturated => it's going tobe white regardless
19:00 Xliff I've heard Sol described as both a "yellow dwarf" and a "red dwarf"
19:01 iH2O yellow dwarf??? 1st time i hear about that
19:01 iH2O are you sure youve not invented that? hmm
19:01 geekosaur yeh, jury's still open on what it looks like from a sufficient distance. guesses range from orange-yellow to greenish
19:01 Xliff https://astroengine.com/2008/07/​16/what-type-of-star-is-our-sun/
19:01 lizmat joined #perl6
19:02 Xliff geekosaur, and let's not forget the shift in frequencies due to universal expansion.
19:02 dha joined #perl6
19:03 geekosaur but you need to be *very* far away for that to be significant... you won't notice much if you're looking at it from Andromeda
19:03 Xliff iH2O, so is "Reyleigh scattering" == "Rayleigh's diffusion"?
19:03 Xliff geekosaur++ -- good point.
19:04 iH2O im not sure if its scattering or diffusion. ive not had a physics course in quite a time
19:04 Xliff kk
19:08 geekosaur "Rayleigh scattering" is the usual term in US science parlance
19:08 moritz that's how I know it too
19:08 moritz (with university experience in the UK)
19:15 redhands98100 joined #perl6
19:27 pdcawley_ joined #perl6
19:28 zzzzzzzz1 joined #perl6
19:28 tadzik joined #perl6
19:30 krakan joined #perl6
19:30 kaare__ joined #perl6
19:30 rjbs joined #perl6
19:30 woolfy joined #perl6
19:30 aindilis joined #perl6
19:31 mre joined #perl6
19:31 Spot__ joined #perl6
19:31 revdiablo joined #perl6
19:31 klapperl joined #perl6
19:32 eyck joined #perl6
19:32 perlpilot_tpc joined #perl6
19:32 mst___ joined #perl6
19:32 japhb joined #perl6
19:35 sjohnsen joined #perl6
19:35 chee joined #perl6
19:35 redhands98101 joined #perl6
19:36 Cabanossi joined #perl6
19:38 sdf_ joined #perl6
19:39 gypsydave5 joined #perl6
19:42 cdg joined #perl6
19:43 ilogger2 joined #perl6
19:44 RabidGravy joined #perl6
19:56 AlexDaniel oh wow
19:56 AlexDaniel I didn't even realize that I commented on perl6/book repo
20:03 FROGGS Xliff++ btw :o)
20:03 yoleaux 20 Jun 2016 19:19Z <Xliff> FROGGS: I've submitted the PR. Hope to hear from you soon.
20:05 lizmat joined #perl6
20:06 FROGGS awesome contribution
20:08 FROGGS would be more than awesome to get the XML::LibXML port to a stage where thinking about XML::Compile makes sense
20:10 lizmat joined #perl6
20:12 huggable joined #perl6
20:20 FROGGS Xliff: can you squish your commits when you are happy with your PR? (I can potentially do that too when merging)
20:20 dalek doc: 948b50c | (Jan-Olof Hendig)++ | doc/Type/Setty.pod:
20:20 dalek doc: Setty is a role
20:20 dalek doc: review: https://github.com/perl6/doc/commit/948b50c1aa
20:23 Xliff Squash?
20:23 Xliff Once I'm done with your laundry list! =D
20:25 Xliff Ah. OK. Yeah, I can do that.
20:26 Xliff There will be a few more commits and when I am happy with it, will squash.
20:26 Xliff .oO( HULK squash?! )
20:28 moritz a squashed hulk is very bad news for any submarine :-)
20:29 FROGGS *g*
20:30 FROGGS Xliff: going to bed now after this exhausting day... will happily reply to anything tomorrow evening
20:31 lizmat good night FROGGS
20:31 FROGGS o/
20:37 Xliff nn
20:38 Xliff .tell FROGGS Do you want to worry about the errors in t/06elements.t after the merge?
20:38 yoleaux Xliff: I'll pass your message to FROGGS.
20:38 cognominal joined #perl6
20:40 setty2 joined #perl6
21:02 redhands98100 joined #perl6
21:03 redhands98101 joined #perl6
21:04 dha joined #perl6
21:13 AlexDaniel joined #perl6
21:16 wamba m: perl6 -e 'use Data::Dumper:from<Perl5>; ' -h
21:16 camelia rakudo-moar d9956e: OUTPUT«5===SORRY!5=== Error while compiling <tmp>␤Two terms in a row␤at <tmp>:1␤------> 3perl6 -e7⏏5 'use Data::Dumper:from<Perl5>; ' -h␤    expecting any of:␤        infix␤        infix stopper␤        postfix␤        statement end␤  …»
21:18 lizmat wamba: Inline::Perl5 is not part of the core and not installed on camelia
21:18 lizmat it gives this for me:
21:18 lizmat $ perl6 -e 'use Data::Dumper:from<Perl5>; say Dumper( { a => 42 } )'
21:18 lizmat [$VAR1 = 'a';
21:18 lizmat $VAR2 = 42;
21:18 lizmat ]
21:19 wamba try with -h on end, with me show perl (5) help
21:20 wamba perl6 -e 'use Data::Dumper:from<Perl5>; '  -h
21:20 wamba
21:20 lizmat ah, yes, does so for me, followed by a segfault
21:21 wamba yes
21:21 wamba i cant use MAIN and Inline::Perl5
21:22 wamba probably Inline::Perl5 bug
21:22 lizmat yeah, please issue it
21:25 firstdayonthejob joined #perl6
21:31 TEttinger joined #perl6
21:39 kid51 joined #perl6
21:41 timotimo Util: i'm seeing your talk and i like it already!
21:44 trnh joined #perl6
21:44 trnh joined #perl6
21:45 lizmat joined #perl6
21:49 timotimo would someone explain what &subname's effect can be in perl5? like, what causes it to explode in users' faces?
21:53 rjbs I can probably help, if you give a bit more detail on what you're asking.
21:53 rjbs timotimo: ^
21:53 dha eh, what do you know about Perl 5?
21:53 geekosaur basically, referring to a sub with &subname overrides all prototypes and sanity checking
21:53 ilmari and &subname; (without the parens) calls it with the current value of @_
21:54 geekosaur yes, that also
21:54 rjbs Yup, those things.
21:54 timotimo i know basically nothing about perl5 :)
21:54 geekosaur and with a truncated call frame iirc, although that's not generally relevant
21:54 masak 'night, #perl6
22:01 Xliff Hmmmm.... panda has started using CWD/.panda-work as it's temp directory.
22:01 Xliff ==> Building Inline::Perl5
22:01 Xliff gcc -Wall p5helper.c `perl -MExtUtils::Embed -e ccopts -e ldopts` -shared -o /home/cbwood/projects/p6-XML-LibXML/.panda-work/​1466546395_1/resources/libraries/libp5helper.so -fPIC -g
22:01 Xliff ^^ Is that intended?
22:03 AlexDaniel … so how can I speed up the doc build?
22:05 konobi ssd!
22:06 timotimo AlexDaniel: you can either turn off syntax highlighting entirely, or install Inline::Python and make sure pygments is available and in the right version
22:09 awwaiid Inline::Python needs an update
22:09 awwaiid AFAIK Inline::Perl5 is the best and Inline::Ruby is second-best for feature set
22:10 awwaiid though I guess that's a bit more tangental than I realized the conversation warranted
22:19 timotimo right
22:29 tbrowder joined #perl6
22:29 redhands98100 joined #perl6
22:29 redhands98100 left #perl6
22:29 tbrowder Zoffix (and interested parties): ref docs, what do you think about adding a page (under Programs) for p6 best practices which would be suggested and discussed amongst experienced devs such as yourself, moritz, masak, pmichaud, jnthn, damian, etc.?
22:31 pmichaud tbrowder: I like the idea.
22:31 pmichaud A
22:33 AlexDaniel tbrowder: by the way, there's also http://doc.perl6.org/language/traps
22:34 timotimo https://github.com/moritz/perl6-wtop  -  this was a start ... long ago :)
22:38 pmichaud If masak++ and moritz++ thought something like this was a good idea 6 years ago, I suspect it's an even better (and long overdue) idea now.  :)
22:39 kid51 joined #perl6
22:39 timotimo well, it hasn't seen much addition yet :)
22:39 timotimo it's over-ripe for contributions
22:39 AlexDaniel well, this document reads very similarly to traps to avoid
22:46 pmichaud One of Perl 6's guiding principles has been that while TMTOWTDI, we also want to have a language that guides people into naturally doing the best thing.  It'd be good if we at least document what some of those "best things" are.
22:46 pmichaud or what we think some of those "best things" are.  :)
22:48 dalek doc: 84047f9 | RabidGravy++ | doc/Language/classtut.pod:
22:48 dalek doc: Remove TODO in the text
22:48 dalek doc:
22:48 dalek doc: Address part of #620
22:48 dalek doc: review: https://github.com/perl6/doc/commit/84047f9156
22:54 ShimmerFairy I'd also like to update/revamp the specs, as I've mentioned, so there's a human-readable version of the tests :)
22:54 bjz joined #perl6
22:56 girafe joined #perl6
22:58 dalek doc: c60a60c | RabidGravy++ | doc/Language/control.pod:
22:58 dalek doc: Remove unimplemented goto from the doc
22:58 dalek doc:
22:58 dalek doc: Fixes #611
22:58 dalek doc: review: https://github.com/perl6/doc/commit/c60a60c94c
23:06 bjz joined #perl6
23:26 dalek doc: d116737 | (Aleks-Daniel Jakimenko-Aleksejev)++ | / (2 files):
23:26 dalek doc: Type graphs: eliminate prose, add links to SVG (daxim++)
23:26 dalek doc:
23:26 dalek doc: Closes #283
23:26 dalek doc: review: https://github.com/perl6/doc/commit/d116737184
23:26 dalek doc: 5a34faa | (Aleks-Daniel Jakimenko-Aleksejev)++ | doc/Language/regexes.pod:
23:26 dalek doc: Fix anchor link (Quantifier → Quantifier)
23:26 dalek doc: review: https://github.com/perl6/doc/commit/5a34faa4b6
23:26 dalek doc: dd244f9 | (Aleks-Daniel Jakimenko-Aleksejev)++ | doc/Language/testing.pod:
23:26 dalek doc: Correct number of horizontal lines in the formula
23:26 dalek doc: review: https://github.com/perl6/doc/commit/dd244f9283
23:27 AlexDaniel yeah, Quantifier → Quantifier… :/
23:28 Zoffix joined #perl6
23:29 Zoffix tbrowder, I'm probably not the best to ask about "best practices" :) I enjoy being evil and bad once in a while.
23:30 AlexDaniel yeah. The most evil thing so far is changing your nickname all the tim
23:30 AlexDaniel time*
23:33 Zoffix Didn't people complain about my using $obj.foo: blah instead of parenths? :)
23:33 Zoffix Of course, I can stuff that into 'best practices' guide and make the the "best practice" :)
23:34 Zoffix left #perl6
23:34 AlexDaniel What? Why complain about that?
23:38 tbrowder I have to say I anticipated "p6 best practices" to appeal to the good nature of users
23:43 bjz joined #perl6
23:47 RabidGravy joined #perl6

| Channels | #perl6 index | Today | | Search | Google Search | Plain-Text | summary

Perl 6 | Reference Documentation | Rakudo