Perl 6 - the future is here, just unevenly distributed

IRC log for #perl6, 2014-05-30

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:00 cognominal joined #perl6
00:07 xragnar_ joined #perl6
00:10 timotimo http://www.marshut.com/ixiwhw/perl6-problem.html - this just reached me via twitter
00:15 panchiniak left #perl6
00:16 eternaleye joined #perl6
00:17 timotimo ah, this seems to be a web archive for mailing lists
00:17 timotimo i have no clue if my answer made it to the list, nor where to find that exact list >_>
00:36 BenGoldberg joined #perl6
00:39 TimToady m: say grep { last when 10; $_ %% 2 }, 1..*
00:39 camelia rakudo-moar 851811: OUTPUT«2 4 6 8␤»
00:39 jack_rabbit joined #perl6
00:39 TimToady BenGoldberg: ^^
00:41 bjz_ joined #perl6
00:41 TimToady so you can at least handle the eternally false case
00:42 TimToady a state variable is about the best you can do for eternally true
00:50 BenGoldberg That's cool :)
00:50 TimToady well, (state $) ||= expr to be precise
00:51 TimToady one would need the connivance of grep's implementation in order to say "take the end of my list and make grep return that instead"
01:00 TimToady re http://irclog.perlgeek.de/perl6/2014-05-27#i_8779849 I'd suggest that we should probably find some way of making all access readonly by default from the inside of a start {} to the outside of it, much like parameters are readonly by default
01:01 TimToady that would catch a lot of attempts to modify something outside the thread
01:02 TimToady we don't just want to block all lexical access because a lot of stuff can usefully come in as either constant, or effectively readonly
01:03 TimToady we might need some kind of lock-free policy even for readonly access though
01:04 TimToady the threads spawned by feed operators would be similarly constrained
01:07 rindolf joined #perl6
01:08 TimToady might need some special dispensations for things like ==> my @queue to allow one thread to push and another to shift, if we don't want to force everyone through the channel syntax
01:08 TimToady or just make ==> my $channel work
01:09 Ben_Goldberg joined #perl6
01:17 panchiniak joined #perl6
01:17 TimToady .oO(I am the very bodel of a bodern bajor general with a head cold)  <-- only about 2 days behind on backlog
01:19 TimToady the other problem with marking ranges as "pure" is that you'll run into problems if you try to constant-fold ^1000000000000
01:20 TimToady unfortunately, memory allocation is a sort of side effect
01:22 dj_goku win list
01:23 TimToady Win 95, Win 98, Win 2000, Win XP ... *
01:27 bjz joined #perl6
01:34 FROGGS_ joined #perl6
01:39 jnap joined #perl6
01:40 Su-Shee_ joined #perl6
01:54 klapperl_ joined #perl6
01:58 rindolf joined #perl6
01:58 hoverboard joined #perl6
02:08 quillen joined #perl6
02:08 Pleiades` joined #perl6
02:13 quillen left #perl6
02:17 Sqirrel joined #perl6
02:34 ssutch joined #perl6
02:50 SamuraiJack joined #perl6
02:57 * TimToady doesn't see the need for infix:«<» on dates when before/after/cmp are probably adequate
02:58 TimToady to provide numeric comparators propagates the fallacy that dates are numbers :)
02:58 colomon +1
02:58 colomon also, before and after are ideal for dates, no?
02:59 TimToady indeed
03:00 TimToady m: say +"aaaaaa".match(/aa/, :ov)
03:00 camelia rakudo-moar 851811: OUTPUT«5␤»
03:01 TimToady masak: ^^ note the :ov implies :g already
03:01 TimToady as does :ex
03:20 * TimToady is caught up on backlog for the first time in a week, whew!
03:30 btyler joined #perl6
03:36 Alula joined #perl6
03:37 ssutch joined #perl6
03:48 atroxaper joined #perl6
03:55 hoverboard joined #perl6
03:57 atroxaper Hello, #perl6 !
03:58 atroxaper Does somebody can help me with R* installation issue on OS X? https://gist.github.com/atroxaper/b5a0ce8b746c34a2d88c
04:03 atroxape_ joined #perl6
04:22 kaare_ joined #perl6
04:49 atroxaper joined #perl6
05:10 rurban1 joined #perl6
05:11 ssutch_ joined #perl6
05:40 xinming joined #perl6
05:45 denis_boyun joined #perl6
05:46 atroxaper joined #perl6
05:49 denis_boyun__ joined #perl6
05:50 FROGGS_ atroxaper: that is a make bug on osx, just type 'make install' again
05:50 FROGGS_ atroxaper: it should continue just fine
06:06 baest joined #perl6
06:18 atroxaper joined #perl6
06:20 atroxaper FROGGS_: It hapens when i use Configuration.pl. Not when make or make install
06:20 atroxaper Configure.pl
06:21 atroxaper make install
06:21 atroxaper make: *** No rule to make target `install'.  Stop.
06:22 araujo joined #perl6
06:23 FROGGS_ hmmm, weird
06:23 FROGGS_ ahh, can you cd into nqp, and then run make install again?
06:23 FROGGS_ bbiab
06:24 atroxaper waiting...
06:27 silug joined #perl6
06:30 atroxaper FROGGS_: Success. What next?)
06:31 atroxaper FROGGS_: Ohh... Sorry. Urgent work. I'll ask here later again. Thank you for you responsive)
06:32 virtualsue joined #perl6
06:44 dmol joined #perl6
06:54 anaeem1 joined #perl6
06:57 rurban joined #perl6
06:58 zakharyas joined #perl6
07:00 FROGGS[mobile] joined #perl6
07:07 fhelmberger joined #perl6
07:08 moritz atroxaper: run Configure.pl in rakudo again
07:12 anaeem1 joined #perl6
07:15 atroxaper moritz: it said very fast that now i can make and make install
07:15 atroxaper Without eny errors.
07:16 atroxaper Trying make...
07:16 darutoko joined #perl6
07:18 darutoko- joined #perl6
07:19 moritz atroxaper: yes, configure itself is fast, it's just slow if it needs to build nqp (and possilby moar and parrot) for you
07:21 rurban joined #perl6
07:22 sergot morning o/
07:23 darutoko joined #perl6
07:25 darutoko- joined #perl6
07:27 dalek Perlito: adb9662 | (Flavio S. Glock)++ | / (3 files):
07:27 dalek Perlito: Perlito5 - set '$]' to '5.020000'
07:27 dalek Perlito: review: https://github.com/fglock/Perlito/commit/adb9662906
07:49 virtualsue joined #perl6
07:51 FROGGS_ the CPAN Perl 6 indexer works \o/ \o/ \o/ \o/ \o/ \o/ \o/ \o/ \o/
07:53 moritz \o/
07:53 moritz FROGGS++
07:54 moritz FROGGS_++
07:54 moritz FROGGS++
07:54 moritz FROGGS_++
07:55 nwc10 \o/
07:55 donaldh joined #perl6
07:55 FROGGS_ I just reindexed Inline-v1, see: http://www.cpan.org/authors/id/F/FR/FROGGS/Perl6/
07:55 colomon_ joined #perl6
07:55 FROGGS_ and also see the p6*.json.gz at ftp://ftp.cpan.org/pub/CPAN/authors/
07:55 FROGGS_ (yes I know, it should be in /modules instead of /author)
07:56 xusia joined #perl6
07:57 nwc10 I'M IN UR CPAN, SUBVERTING ALL UR MIRRORS
07:58 MilkmanDan joined #perl6
07:59 oetiker joined #perl6
07:59 jnthn FROGGS++
07:59 FROGGS :o)
08:00 FROGGS jnthn: can you log in into your PAUSE and reindex the NativeCall upload?
08:01 FROGGS so we have a dist and its dependency on cpan
08:01 FROGGS when I got panda ready, I will care about cpan tester results (so that we actually can smoke dists properly)
08:02 eternaleye joined #perl6
08:02 FROGGS and since I live on Bajor which has a 26 hours day, I will also set up the marketplace.perl6.org
08:02 telex joined #perl6
08:03 FROGGS because it seems very unlike that search.cpan.org or metacpan.org will care about Perl 6 dists without implementing confusion at the same time
08:04 ilogger2 joined #perl6
08:05 lee_ joined #perl6
08:16 masak antenoon, #perl6!
08:16 masak whoo, CPAN indexer! FROGGS++
08:16 FROGGS :D
08:16 masak ooh, :ov implies :g! makes sense. TimToady++
08:17 jnthn FROGGS: Hm, didn't you send me a .tar.gz before that I uploaded?
08:17 masak I... tentatively agree about the 'before' vs '<' of DateTime.
08:17 jnthn FROGGS: If you do that I will, though gotta disappear again for the day soon
08:17 FROGGS moritz: camelia is like 4 days behind
08:17 masak but I *do* think that either Date *and* DateTime should have '<', or none of them.
08:17 FROGGS jnthn: correct, but at that time the indexer had a bug which got fixed like 4 hours ago
08:17 jnthn FROGGS: Yes, but what should I upload? Same thing?
08:18 FROGGS jnthn: just log in, go to the 'force reindexing' and check the tarball
08:20 jnthn According to a request entered by Jonathan Worthington the
08:20 jnthn following files have been scheduled for reindexing.
08:20 jnthn $CPAN/authors/id/J/JO/JONATHAN/Perl6/NativeCall-v1.tar.gz
08:20 jnthn Hope that does it
08:20 FROGGS jnthn: it will, thank you :D
08:20 moritz FROGGS: yeah, seems like a 'git pull' hung due to uncommitted changes
08:20 FROGGS ahh
08:20 FROGGS nice
08:20 FROGGS m: say Compiler.build-date
08:20 camelia rakudo-moar 851811: OUTPUT«Cannot look up attributes in a type object␤  in method <anon> at src/gen/m-CORE.setting:2963␤  in block  at /tmp/YM6wT3LQNC:1␤␤»
08:20 FROGGS m: say Compiler.new.build-date
08:20 camelia rakudo-moar 851811: OUTPUT«2014-05-26T22:18:22Z␤»
08:21 rurban joined #perl6
08:22 moritz now triggering a manual rebuild
08:22 FROGGS moritz++
08:23 masak uncommitted changes?
08:24 masak maybe the script should start by stashing everything away first?
08:25 moritz masak: #git would say that you shouldn't pull, but rather fetch && reset --hard  @{u}
08:27 masak there's something to be said for that too.
08:27 masak though my suggestion doesn't drop uncommitted changes into /dev/null
08:28 jnthn In the evalserver case, doubt they are ever needed. It's werid we got them at all...
08:34 dalek ecosystem: 149dbef | sergot++ | META.list:
08:34 dalek ecosystem: HTTP::Cookies added
08:34 dalek ecosystem: review: https://github.com/perl6/ecosystem/commit/149dbefb3a
08:37 kaleem joined #perl6
08:42 dakkar joined #perl6
08:45 SamuraiJack joined #perl6
08:45 mr-foobar joined #perl6
08:46 jnthn away for the day &
08:49 masak o/
08:52 FROGGS O7
08:52 FROGGS err
08:52 FROGGS o/
08:56 dalek panda/eleven: 3be5bd5 | (Andrew Egeler)++ | lib/Panda/Builder.pm:
08:56 dalek panda/eleven: Remove old Build class when using Build.pm
08:56 dalek panda/eleven:
08:56 dalek panda/eleven: If two packages with Build.pm files were installed during the same panda
08:56 dalek panda/eleven: run (example: "panda install MIME::Base64 Auth::PAM::Simple"), the
08:57 dalek joined #perl6
09:00 spider-mario joined #perl6
09:03 atroxaper joined #perl6
09:11 masak I'm feeling generous today.
09:11 masak anyone who deserves an Amazon book gift?
09:11 masak :)
09:12 masak (self-nominations are accepted, I guess, but I'd rather see someone nominating someone else)
09:12 * moritz would love to say "yes", but currently doesn't even get around to reading the ~10 books that are next to his bed
09:12 moritz masak: I nominate FROGGS++ for mentoring sergot++ in gsoc, plus his other awesome work
09:13 masak oh good, I was going to suggest FROGGS++ too.
09:14 Timbus m: sub a {"foo"}; sub b {"bar"~callsame}; &a.wrap(&b); say a();
09:14 camelia rakudo-moar 90cd58: OUTPUT«foo␤»
09:14 jack_rabbit joined #perl6
09:14 masak um.
09:15 Timbus optimizer ate it
09:15 masak that would be my guess, too.
09:15 * masak submits rakudobug
09:15 moritz not a bug
09:15 * masak doesn't submit rakudobug
09:15 moritz iirc you need a special pragma if you want to replace lexials
09:15 masak oh.
09:15 Timbus that would, not be good for the test suite then
09:16 Timbus wait is that 'use soft;'
09:16 moritz m: use soft; sub a {"foo"}; sub b {"bar"~callsame}; &a.wrap(&b); say a();
09:16 camelia rakudo-moar 90cd58: OUTPUT«barfoo␤»
09:16 moritz Timbus: aye
09:16 moritz most of our optimizations rely on the fact the lexicals are restricted in some ways at compile time
09:17 masak as they should.
09:18 nwc10 FROGGS: dakkar noticed this: https://metacpan.org/release/FROGGS/Inline-v1.1
09:18 nwc10 suggests that metacpan isn't ignoring everything that it ought to be
09:18 nwc10 specifically, I think it will need to be taught not to peek into the Perl6 directory
09:18 nwc10 (is that case sensitive?)
09:18 masak +1
09:19 dakkar either that, or taught to understand the p6 distros (longer term)
09:19 denis_boyun_ joined #perl6
09:19 moritz ignoring as a first step is fine
09:19 nwc10 that feels like the longer term
09:20 atroxaper joined #perl6
09:21 grondilu joined #perl6
09:22 grondilu r: my @abc = ^10; my @ = @abc ... 4; say @abc;
09:22 camelia rakudo-jvm 90cd58: OUTPUT«(timeout)»
09:22 camelia ..rakudo-{parrot,moar} 90cd58: OUTPUT«5 6 7 8 9␤»
09:22 rurban joined #perl6
09:23 * grondilu was not expecting ... to have a side effect.
09:23 atroxaper joined #perl6
09:23 grondilu r: my @abc = ^10; my @ = Nil, @abc ... 4; say @abc;
09:23 camelia rakudo-{parrot,jvm,moar} 90cd58: OUTPUT«0 1 2 3 4 5 6 7 8 9␤»
09:24 grondilu r: my @abc = ^10; my @suba = Nil, @abc ... 4; say @suba;
09:24 camelia rakudo-{parrot,jvm,moar} 90cd58: OUTPUT«0 1 2 3 4␤»
09:26 masak grondilu: me neither.
09:26 masak grondilu: that seems... plainly wrong.
09:29 atroxaper joined #perl6
09:31 darutoko joined #perl6
09:34 grondilu in SEQUENCE (operators.pm), there is my @left := $left.flat;  and later @left.shift, so maybe $left.flat.clone?
09:35 grondilu or just my @left = $left.flat, forcing a copy.
09:35 atroxaper joined #perl6
09:35 masak that might fix it, but it might also be very expensive in the cases where there isn't a problem right now.
09:37 FROGGS nwc10: I discussed that yesterday with #metacpan folks... and it is not high priority since you cannot search for P6 modules
09:37 FROGGS nwc10: you will only find them via recent uploads
09:37 grondilu then instead of while @left { my $value = @left.shift; ... } we could do for ^@left -> $i { my $value = @left[$i]; ... }
09:38 nwc10 FROGGS: but were they of the view that they didn't even want a pull request to ignore stuff in /Perl6/ ?
09:38 FROGGS nwc10: ohh, they certainly would accept that
09:40 grondilu (or just for @left -> $value { ... })
09:43 * grondilu tries
09:47 Psyche^_ joined #perl6
09:49 masak an Amazon gift of his choosing has now been sent to FROGGS++
09:49 FROGGS \o/
09:50 masak (want to receive surprise gifts from people who like what you do? easy -- just be awesome, like FROGGS++)
09:50 FROGGS hehe
09:50 * moritz wants a t-shirt wth "be like FROGGS"
09:50 grondilu $ perl6 -e 'my @abc = ^10; my @ = @abc ... 4; say @abc;'
09:50 grondilu 0 1 2 3 4 5 6 7 8 9
09:50 moritz do the tests still pass?
09:51 grondilu not checked yet
09:51 FROGGS moritz: that reminds me of something... how likely is it that you will come to salzburg in october?
09:51 grondilu which ones should I try (don't want to test them all, do I?)
09:51 moritz grondilu: all in S03-sequence/
09:51 yoleaux joined #perl6
09:52 moritz FROGGS: not sure yet, have to talk to $wife
09:52 * grondilu runs prove -e perl6 t/spec/S03-sequence/*
09:53 moritz grondilu: better: grep S03-sequence t/spectest.data > t/localtest.data; make localtest
09:53 moritz grondilu: that preserves fudging etc.
09:53 * grondilu does that
09:54 grondilu t/spec/S03-sequence/basic.rakudo.moar ........ Failed 9/129 subtests
09:54 grondilu t/spec/S03-sequence/limit-arity-2-or-more.t .. Failed 1/8 subtests
09:55 masak moritz: http://www.cafepress.com/cp/customize/product2.aspx?from=CustomDesigner&amp;number=1307594076
09:55 masak moritz: (I put next to no effort into the design. but it *is* a t-shirt with "be like FROGGS", and it can be iterated on)
09:56 moritz masak: :-)
10:00 masak did... did Parrot get a release after Rakudo this month?
10:00 moritz yes
10:00 moritz http://www.nntp.perl.org/group/perl.perl6.announce/2014/05/msg712.html
10:01 moritz with... one new example in the changelog!
10:01 treehug88 joined #perl6
10:07 * masak doesn't feel like making fun of Parrot in its death throes
10:08 masak Parrot was a noble, ambitious idea. it was also a good instance of a set of project and software development anti-patterns.
10:08 moritz and let's not forget that Parrot was our bootstrapping platform
10:09 FROGGS it still is the most reliable platform today
10:09 yoleaux 29 May 2014 22:25Z <jnthn> FROGGS: It looks weird. Not least becuase you've got a QAST::VarWithFallback - and dn't actually specify a fallback!
10:09 yoleaux 29 May 2014 22:25Z <jnthn> FROGGS: I guess the fallback should be to complain about the dynvar not existing...
10:09 FROGGS not the fastest though
10:09 FROGGS errrm, welcome back yoleaux!
10:11 * grondilu tries for 0 .. * -> $i { $value = @left[$i]; ... }
10:11 masak yes. Parrot has been very useful as our "plan to throw one away".
10:11 masak um, except that that wasn't the plan...
10:11 nwc10 which wasn't the plan. But no plan surives contact with the enemy
10:12 nwc10 on the other hand, my plan is to get coffee
10:14 masak sounds like a nice, small, iterative step.
10:15 masak it's when your plan involves "be everything to everyone" that you should start worrying.
10:16 masak I remember someone (Alias? Ovid?) being excited about how one day, Parrot might enable people to run old COBOL (or Fortran?) code in the Parrot VM, and then successively have it interact with Perl 5, Perl 6, and other languages, and maybe even asset capture things into a moderner language.
10:16 masak which is a very nice idea... and it might still happen. on some other VM.
10:17 atroxaper joined #perl6
10:17 moritz once we have COBOL.NET
10:18 masak or COBOL.Moar :P
10:23 rurban joined #perl6
10:28 donaldh joined #perl6
10:31 grondilu for @left -> $v { $value = $v; ... }  # <= that works and passes all tests
10:31 * grondilu submits a pull request
10:36 * masak suggests involving someone with an eye for perf before merging the pull request
10:37 grondilu while @a { @a.shift } is probably faster than for @a -> $a { } but the side effect really was a nasty bug IMHO.  I'm not sure the gain in performance is worth it.
10:38 * grondilu acknowledges it's not to him to decide though
10:49 masak no gain in perf is worth a bug, of course.
10:49 masak but that doesn't mean we should slow things down just to get the semantics right. maybe there is a third option.
10:50 masak grondilu: ooc, is there a commit that changes it from `for @a -> $a { }` to `while @a { @a.shift }` ?
10:51 rindolf joined #perl6
10:55 pecastro joined #perl6
10:55 anaeem1__ joined #perl6
10:56 grondilu masak: not sure what you mean.  The commit I've made change while @a { @a.shift } to for @a -> $a { }
10:56 grondilu *changeS
10:57 grondilu https://github.com/rakudo/rakudo/pull/273/files
11:02 masak right.
11:03 masak my question is: was there a commit before yours that did the opposite change?
11:03 masak that's interesting data for deciding whether to merge the pull request, in my opinion.
11:08 grondilu I don't think so.  Hard to check but it seems that the code has always been with while/shift
11:09 masak oki, good to know. grondilu++
11:12 atroxaper joined #perl6
11:24 * grondilu adds a commit to  $value := $v instead of $value = $v.  Should hopefully help with performance.
11:25 rurban joined #perl6
11:34 rindolf joined #perl6
11:35 lizmat good *, #perl6!
11:36 * lizmat has finally done this morning's chores, looks outside to a beautiful day for a change, and decides to go cycling soon
11:38 masak hi lizmat
11:38 sergot lizmat: o/
11:39 masak it's a beautiful day for cycling. :)
11:40 atroxaper joined #perl6
11:41 mr-foobar joined #perl6
11:59 colomon joined #perl6
12:00 timotimo it's a beautiful cycle for daying
12:02 masak beaut's a daily cycle for it-ing.
12:02 cognominal an happy day for cycling, or a day of epicycling?
12:02 lizmat http://www.infoq.com/articles/Java-8-Quiet-Features?utm_source=hackernews&amp;utm_medium=link&amp;utm_campaign=8java_article   # interesting read
12:03 timotimo i shouldn't be even asking whether or not to go see noam chomsky, right?
12:05 lizmat .oO( we shouldn't even be answering that :-)
12:06 lizmat at 85, you won't have much chance in the future, I would think
12:08 lizmat jnthn: ^^^ specifically points 1,2,3
12:13 lizmat cycling&
12:14 masak not sure I see the connection between being 85 and being worth going to see...
12:14 masak I would go see Don Knuth in a heartbeat.
12:16 efg joined #perl6
12:16 efg yababbahhahab
12:17 efg uhm, hey TimToady - got a question for ya. How do you groom that mustache?
12:18 colomon Knuth, heck yes!
12:19 Timbus genetically engineered mice with baby hands gently caress each hair as he sleeps. he rewards them with food pellets every morning
12:19 yoleaux 29 May 2014 16:57Z <japhb> Timbus: Ah, cool, I'll take a look!
12:19 jnap joined #perl6
12:20 masak efg: I think the mustache is not actually there. it's an optical illusion, a kind of shared dream.
12:21 timotimo oooh, *that*'s why i see His moustache whenever I close my eyes
12:22 masak timotimo: no, that's just you :P
12:23 timotimo ... oh
12:23 timotimo never mind, then
12:26 Alina-malina joined #perl6
12:26 rurban joined #perl6
12:30 efg masak: that saddens me
12:38 masak well, the universe doesn't distinguish between good or evil, right or wrong, mustache or no mustache.
12:38 masak this may gladden or sadden you, but in the end it's just a fact.
12:39 anno joined #perl6
12:44 cognominal does someone know what is the coffeescript fork that is the most perlish?
12:44 anaeem1 joined #perl6
12:44 cognominal is that coco?
12:45 masak hm, I don't think the coffeescript family is that perlish to begin with... :)
12:46 masak anything with implicit locals feels rather un-perlish to me.
12:46 [Coke] is there a blog post about Perl 6 on CPAN?
12:46 dalek Perlito: bb0befb | (Flavio S. Glock)++ | / (7 files):
12:46 dalek Perlito: Perlito5 - 'local' now works with subscripted variables
12:46 dalek Perlito: review: https://github.com/fglock/Perlito/commit/bb0befbf58
12:47 cognominal masak, ya, that's a recurrent complaint
12:48 masak as it should be.
12:50 cognominal Apparently, coco uses a let (why not my?) . https://github.com/satyr/coco/wiki/side-by-side-comparison
12:50 sqirrel_ joined #perl6
12:51 masak cognominal: maybe it uses `let` because the semantics is closer to ES6's `let` than to ES5's `var` ? (just a guess)
12:51 dalek rakudo-star-daily: 70ae776 | coke++ | log/ (13 files):
12:51 masak in the JavaScript/EcmaScript world, `my` is spelled `let`.
12:51 dalek rakudo-star-daily: today (automated commit)
12:51 dalek rakudo-star-daily: review: https://github.com/coke/rakudo-star-daily/commit/70ae7764b9
12:57 [Coke] colomon: where can I report bugs on colomon/uri ?
12:57 colomon in github, I guess?
12:58 [Coke] nope.
12:58 [Coke] looks like issues are not enabled.
13:00 cognominal masak, the first why in  Coco Readme.md is  [horrible variable scope](https://github.com/jashkenas/coffee-script/issues/712),
13:02 anno left #perl6
13:02 efg riiight
13:03 FROGGS [Coke]: not yet
13:03 rurban joined #perl6
13:03 FROGGS [Coke]: I do one when panda can handle cpan uploads
13:03 Pleiades` joined #perl6
13:05 masak cognominal: "Honestly, I reckon Ruby scoping rules are just wrong. It seems that they may change in Ruby 2.0" -- interesting.
13:06 masak does anyone have any more sources for Ruby scoping maybe changing with 2.0 ?
13:06 masak seems like a big breaking change.
13:06 [Coke] colomon: looking at the repo, you should see "settings" on the right hand side menu - click on that; under Features, insure that "Issues" is checked.
13:07 [Coke] colomon: tl;dr - your module fails tests on rakudo-jvm
13:07 [Coke] camelia: help
13:07 camelia [Coke]: Usage: <(rakudo-jvm|nqp-jvm|star-j|rakudo-moar|pugs|star-p|std|niecza|p5-to-p6|nqp-parrot|b|rakudo-parrot|nqp-moarvm|star-m|sp|nPr|rPn|Prn|j|Pnr|nqp-mvm|nr|p6|star|p56|nqp|r-j|rakudo|r-jvm|nqp-p|r-m|r-p|rp|nom|r|rnP|nqp-m|nqp-j|n|rm|perl6|rj|rn|P|m|sm|p|nrP)(?^::\s) $perl6_program>
13:08 [Coke] star-j: say 3
13:08 camelia star-j 2014.04: OUTPUT«Error occurred during initialization of VM␤Could not reserve enough space for object heap␤Error: Could not create the Java Virtual Machine.␤Error: A fatal exception has occurred. Program will exit.␤»
13:08 [Coke] *sadface*
13:11 denis_boyun___ joined #perl6
13:13 FROGGS m: say to-json [42, :ohh] # btw, one side effect of eleven landing
13:13 camelia rakudo-moar 90cd58: OUTPUT«[␤  42,␤  {␤    "ohh" : true␤  }␤]␤»
13:13 moritz what?
13:14 moritz where does that to-json come from?
13:14 FROGGS we use json to read our module database, and also the config where the CompUnitRepos are...
13:14 moritz is that JSON::Tiny? or a separate json implementation?
13:14 FROGGS so we needed a way to read and write json
13:14 FROGGS JSON::Pretty
13:15 moritz that's core now?
13:15 FROGGS so it is JSON::Tiny + indentation
13:15 FROGGS sort of... up for discussion
13:15 moritz well, currently it seems to be
13:15 FROGGS currently, yes
13:15 FROGGS we need a way to have readable (and easily editable) config files
13:16 FROGGS that is why I chosed that one
13:16 FROGGS and since JSON gets the de facto std for many things, I do not worry to much tbh
13:17 FROGGS too*
13:18 colomon [Coke]: done.
13:18 * moritz just a bit surprised
13:18 FROGGS moritz: I expected some shock :o)
13:19 colomon oooo, pretty
13:22 masak I'm less shocked than I assumed I'd be.
13:23 masak then again, I believe *all* modern languages are going to standardize on JSON, so...
13:23 masak it's just too strong an attractor for most to resist.
13:26 FROGGS it feels a bit PHPish to put that in core :o)
13:27 bluescreen10 joined #perl6
13:28 [Coke] j: my $a; say $a // 3
13:28 camelia rakudo-jvm 90cd58: OUTPUT«3␤»
13:28 timotimo just hide the symbols from the user's program :P
13:30 [Coke] https://github.com/colomon/uri/blob/master/lib/URI.pm#L160 - causing a NPE on rakudo-jvm
13:30 [Coke] https://github.com/colomon/uri/issues/6
13:31 [Coke] looks like this is the root cause of many of the java failures
13:33 guru joined #perl6
13:37 BenGoldberg joined #perl6
13:39 bluescreen10 joined #perl6
13:40 kaare_ joined #perl6
13:47 pecastro joined #perl6
13:48 masak TimToady: we do + and - on Date and Int. from that perspective it's quite silly to not have < and > work, too.
13:49 dalek Perlito: b61854f | (Flavio S. Glock)++ | / (3 files):
13:49 dalek Perlito: Perlito5 - cleanup - duplicated code
13:49 dalek Perlito: review: https://github.com/fglock/Perlito/commit/b61854f316
13:49 masak TimToady: I have no trouble with before and after working. but I can also sometimes see people reaching for < and >. maybe that freedom is useful in this case.
13:50 btyler joined #perl6
13:50 clkao joined #perl6
13:52 colomon masak: …. actually, I think there's a good argument for not doing + and - on Date, based on exactly that.
13:54 BenGoldberg So what would be the interface instead of +-?  $tommorrow = $today.add( day => 1 ); ?
13:57 colomon I dunno, but the math operations are supposed to be for numbers.
13:58 timotimo well, + is expected to coerce to number types
13:59 BenGoldberg Hmm... I forget, does a Date object refer to a specific instant in time, or a half-open range of instants, like: [midnight day X, midnight day X+1)
13:59 colomon I suppose you could make an argument for allow math operators to also work on "number with a unit"
14:01 thou joined #perl6
14:01 colomon but even that doesn't really map to a Date very well.  for example, 3 * (4 meters) makes sense.  3 * (July 31st, 1975) doesn't
14:04 BenGoldberg If Dates were ranges, the multiplying a Date by 3 might result in a three-day-long range: July 31st, 1975 ... August 2nd, 1975 ... but I'm not sure if that really makes sense.
14:07 dalek Perlito: d8d0a65 | (Flavio S. Glock)++ | / (3 files):
14:07 dalek Perlito: Perlito5 - implement '$;'
14:07 dalek Perlito: review: https://github.com/fglock/Perlito/commit/d8d0a651f2
14:08 masak to be clear, the + and - that are allowed on Date are: (a) subtracting two Dates (getting an Int), and (b) adding a Date and an Int (getting another Date).
14:08 masak those two operations are well-defined and, in my view, useful.
14:08 colomon What is the meaning of the Int (in either case)?
14:08 go|dfish joined #perl6
14:09 masak oy, #perl6!
14:09 tadzik wow, bailador is bad on jvm
14:09 masak http://strangelyconsistent.org/blog/t4-rain-in-a-world-of-cubes
14:09 masak \o/ \o/ \o/ \o/
14:10 * masak is very happy to *finally* get this post out
14:10 masak all it took was three Perl 6 days in one week to get me un-stuck!
14:10 masak (and I haven't had half of that for *months*)
14:10 colomon woah, that's for the January 2013 t4, right?
14:10 masak right.
14:11 masak the contest finished in January 2013. but it's *called* the p6c2012 because it started in December 2012.
14:13 masak colomon: the Int is the number of days in the interval between two Dates.
14:16 [Coke] -1 on supporting that.
14:17 masak ok, then what about $date.succ and $date.prev ?
14:19 [Coke] is it a date or a date-time ?
14:19 masak it's a date.
14:19 masak no time involved.
14:20 * masak notices a link that was wrong in the blog post -- might want to refresh: http://strangelyconsistent.org/blog/t4-rain-in-a-world-of-cubes
14:20 [Coke] bleargh. if there's no time component, I guess moving back and forward by a day is acceptable... except that not all calendars have all days. which calendar are we using?
14:20 * colomon wonders how Haskell does it
14:21 masak [coke]: (proleptic) Gregorian, if that's what you're asking.
14:22 masak I remember investigating lots of different languages/libraries back when I refactored S32/Temporal. Haskell was one of the libraries I looked at.
14:22 masak [Coke]: my point is that if we agree that moving back and forward by a day is acceptable/well-defined/useful... then why are we afraid of adding and subtracting an integral amount of days?
14:23 [Coke] masak: if we were adding days, that'd be fine. :)
14:24 [Coke] but we're adding ints; that's my only ew.
14:24 [Coke] also, isn't the gregorian calendar missing some days? do we know what happens when we try to cross that boundary?
14:25 masak "missing some days"?
14:26 masak that's what "proleptic" means -- it's been extended indefinitely backwards.
14:26 masak which works, but is kinda "use with caution".
14:27 * colomon is willing to assume Date will get the details right, but is choking on the "Int means number of days" thing, and using math operators on non-numbers.
14:27 [Coke] colomon: well, it's an oracle standard, anyway.
14:27 [Coke] (where sysdate+1 == tomorrow)
14:27 masak [Coke]: Wikipedia says the traditional proleptic calendar doesn't have a year 0, but that ISO 8601 does.
14:28 masak for some reason I'm fine with adding and subtracting Date objects, under the model "adding 5 is like .succ.succ.succ.succ.succ"
14:29 masak a bit like scalar multiplication is defined for vectors, integer addition and subtraction is defined for dates.
14:29 efg can i run perl5 scripts on perl6 installs?
14:29 masak note that we never (need to) assume an origin in order to add and subtract. which I guess is why addition makes sense but multiplication doesn't.
14:30 colomon masak: surely we'd have at least .succ(5)
14:30 masak efg: well, there's 'use v5'
14:30 masak efg: but beyond that, no.
14:30 masak m: say 12.succ(5)
14:30 camelia rakudo-moar 90cd58: OUTPUT«Too many positional parameters passed; got 2 but expected 1␤  in method succ at src/gen/m-CORE.setting:4087␤  in block  at /tmp/j5XAkNkNTq:1␤␤»
14:30 efg so with use v5, it's work candy dandy
14:30 masak colomon: don't know where you got that API from.
14:31 masak colomon: .succ is how prefix:<++> works internally.
14:31 xenoterracide joined #perl6
14:31 masak colomon: it doesn't need an integer parameter.
14:31 colomon masak: right, but it could have one.  we don't want to force people to do Peano arithmetic on dates.
14:32 masak colomon: but maybe you were mostly concerned about efficiency? I wasn't talking about efficiency, or how to implement stuff -- I was talking about semantics.
14:32 masak no, please don't add integer arguments to .succ :(
14:32 masak we don't need to go in and overcomplicate every single API we see
14:32 masak we've already done enough of that
14:33 colomon call it .add-days then, I don't give a fig
14:33 masak we already have .later(:days(5))
14:33 colomon fine
14:33 masak but I'm not aware we have anything to substitute for `$date2 - $date1`
14:34 masak which (IMO) reads very well.
14:34 [Coke] "overloaded operators suck"
14:35 [Coke] (as a general thought, not solely about this suggestion)
14:35 colomon type-overloaded operators are fine.  it's meaning-overloaded operators which suck.
14:35 colomon and the problem is this is a borderline case.
14:36 colomon and we need to figure out where the border should be.
14:36 masak yes, I agree about that problem specification.
14:36 masak also, the discussion should have moritz++ in it.
14:36 masak (because he spec'd most of Date)
14:36 colomon honestly, I'd be a lot happy with $date1 - $date2 if the result was an "Real with unit"
14:37 [Coke] If we support $date2 - $date1, do we need to a) overload every other operator so it does something useful, b) overload every other operator so it fails with something useful?
14:37 masak [Coke]: what? no.
14:37 masak that sounds like a slippery slope argument to me.
14:37 masak specifically, we already support $date2 - $date1, and no-one's complained so far.
14:37 masak we've had it for years at this point.
14:38 liztormato joined #perl6
14:38 [Coke] ok, but what does $date2+$date1 do?
14:38 masak good question.
14:38 [Coke] masak: we are not in a great state to say "no one has complained" is a reason to keep something.
14:39 masak m: my $date1 = Date.today; my $date2 = $date1.succ; say $date2 + $date1
14:39 camelia rakudo-moar 90cd58: OUTPUT«Cannot call 'Numeric'; none of these signatures match:␤:(Mu:U \v: *%_)␤  in sub infix:<+> at src/gen/m-CORE.setting:4245␤  in block  at /tmp/SBDo1oi_Cf:1␤␤»
14:39 masak [Coke]: there's your answer. it doesn't work.
14:39 [Coke] m: my $date1 = Date.today; my $date2 = $date1.succ; say $date2 Z+ $date1
14:39 camelia rakudo-moar 90cd58: OUTPUT«Cannot call 'Numeric'; none of these signatures match:␤:(Mu:U \v: *%_)␤  in sub infix:<+> at src/gen/m-CORE.setting:4245␤  in block  at src/gen/m-CORE.setting:17439␤  in block  at src/gen/m-CORE.setting:7934␤  in block  at src/gen/m-CORE.setting:…»
14:39 [Coke] m: my $date1 = Date.today; my $date2 = $date1.succ; say $date2 +| $date1
14:39 camelia rakudo-moar 90cd58: OUTPUT«Cannot call 'Numeric'; none of these signatures match:␤:(Mu:U \v: *%_)␤  in sub infix:<+|> at src/gen/m-CORE.setting:4328␤  in block  at /tmp/_hsmE1_Sf5:1␤␤»
14:39 masak [Coke]: "no-one has complained" is not a very strong reason, no. I agree.
14:39 liztormato Wrt JSON:tiny. I'm not sure we want to expose it.
14:39 [Coke] perfect.
14:40 masak so, only the operators that make sense are defined.
14:42 colomon m: say sqrt(Date.today - Date.new("1-1-1"))
14:42 camelia rakudo-moar 90cd58: OUTPUT«Invalid Date string '1-1-1'; use yyyy-mm-dd instead␤  in method new at src/gen/m-CORE.setting:15658␤  in block  at /tmp/u3XvQXdtPE:1␤␤»
14:42 colomon m: say sqrt(Date.today - Date.new("0001-01-01"))
14:42 camelia rakudo-moar 90cd58: OUTPUT«857.544167958712␤»
14:43 [Coke] m: say sqrt(Date.today);
14:43 camelia rakudo-moar 90cd58: OUTPUT«Cannot call 'sqrt'; none of these signatures match:␤:(Numeric \x)␤:(Cool \x)␤  in block  at /tmp/sc62DZiRCl:1␤␤»
14:43 [Coke] colomon: mmm, that makes me unhappy.
14:43 dalek Perlito/gh-pages: 0ebe35d | (Flavio S. Glock)++ | index.html:
14:43 dalek Perlito/gh-pages: Perlito - page - add a link to the Perl5-to-Perl6 compiler
14:43 dalek Perlito/gh-pages: review: https://github.com/fglock/Perlito/commit/0ebe35d3f7
14:44 colomon http://www.haskell.org/haskellwiki/Cookbook/Dates_And_Time
14:45 masak [Coke]: why? the square root of the difference (in days) between two dates *is* a well-defined operation.
14:45 treehug88 joined #perl6
14:46 [Coke] it's the conflation of ints and days again, that's all.
14:46 colomon right
14:46 masak well, that's much safer to to with Date than with DateTime.
14:46 masak we're not doing it with DateTime, mind.
14:46 masak moritz++ has a blog post somewhere about the dangers of restricting in-retrospect valid math operations on exotic values such as Interval, just because we didn't see a use case for it.
14:49 rurban joined #perl6
14:50 colomon rakudobrew switch jvm
14:50 colomon Sorry, I'm not sure if you mean:
14:50 colomon jvm-HEAD
14:50 colomon jvm-moar
14:50 colomon errr… "jvm-moar" ?!?
14:51 BenGoldberg joined #perl6
14:54 * masak re-reads http://strangelyconsistent.org/blog/perl6-is-now-half-as-old-as-perl and is happy to find we're doing better on all four of the "What remains?" bullet points than we were back in Feb 2013
14:56 colomon [Coke]: uri works fine un-compiled in java.  :\
14:56 colomon jvm
14:58 tadzik colomon: um, you must have a jvm-moar directory in .rakudobrew :)
14:58 tadzik not sure why
14:59 colomon because that's how I roll.  ;)
15:00 Woodi hallo today :)
15:01 [Coke] colomon: I figured you'd end up turning this into a rakudobug. :)
15:01 [Coke] i was just lazy!
15:01 dalek Perlito: 0985575 | (Flavio S. Glock)++ | ChangeLog:
15:01 dalek Perlito: Perlito - ChangeLog update
15:01 dalek Perlito: review: https://github.com/fglock/Perlito/commit/0985575e3a
15:01 Woodi v_car1 = 50 km/h;  v_car2 = 120km/h;  v_collision = v_car1 + v_car2;
15:02 Woodi do v_collision have some usefull meaning ? eg. forces calculations ?
15:02 TimToady it's not a v unless you have a direction too
15:02 Woodi I assumed frontal collision :)
15:02 masak Woodi: you're talking about speed, not velocity.
15:02 masak Woodi: please go read up on the meaning of those terms in English ;)
15:03 zakharyas joined #perl6
15:03 Woodi ok, I will :)
15:03 masak (tl;dr: speed is a scalar, velocity is a vector)
15:03 colomon [Coke]: jvm's definitely having issues with compiling stuff, ABC also failed there last time I checked.
15:04 Woodi but Dates and other types like that are not types, they are domain specyfic objects. so $day +- 1 is domain specific operation
15:04 Woodi s/v/s/g and ok ?
15:05 Woodi and I like how $day + 1  looks :)
15:05 efg left #perl6
15:06 colomon [Coke]: actually, ABC fails in the build stage (on JVM)
15:08 masak Woodi: "Dates and other types like that are not types" -- but they are. not just that, they are types on which mathematical operations make some amount of sense.
15:08 masak to be precise, they are points on a scale, which can be compared with each other and translated in either direction.
15:08 masak ...just like (discrete) scalars.
15:09 Woodi I think it's more physics :) but just they are different then Ints
15:10 Woodi also 5:10 PM + 1 is still 5:10 PM but thay later
15:11 BenGoldberg I don't think adding a time and an integer makes sense, unless we have a scoped pragma which says that integers can be converted to intervals.
15:11 colomon m: say Date.today + i
15:11 camelia rakudo-moar 90cd58: OUTPUT«Cannot call 'Numeric'; none of these signatures match:␤:(Mu:U \v: *%_)␤  in sub infix:<+> at src/gen/m-CORE.setting:4245␤  in block  at /tmp/RdjzNxCq2u:1␤␤»
15:11 masak of course they are different from Ints.
15:12 masak Woodi, BenGoldberg: we are *not* talking about adding datetimes and numbers.
15:12 masak we are talking about adding dates and numbers.
15:12 BenGoldberg Hmm...
15:12 masak please don't strawman an already challenging discussion.
15:13 Woodi masak: I have no idea what difference between Dates and DateTimes. are both necessary ?
15:13 BenGoldberg Actually, I just thought of something: how hard would it be to create a lexically scoped specifiyer for how integers can be boxed to days/weeks/years?
15:13 Woodi and I can look them in specs !
15:13 Woodi :)
15:14 BenGoldberg Woodi, a Date is like today, or tommorroy, or June 4, 1977
15:14 * colomon wishes someone else would write a Unit module, so he is not tempted.
15:14 BenGoldberg A DateTime is like Friday May 30, 2014 11:11 AM and 3.141592 seconds.
15:16 kurahaupo joined #perl6
15:16 masak Woodi: though not strictly necessary, Date is there for two very good reasons:
15:16 BenGoldberg Each Date object refers to a range of real-world times.  One can probably write if( $some-date.contains($some-datetime) ), or something similar.
15:16 masak (a) Date allows operations that aren't well-defined in DateTime (see ongoing discussion)
15:17 masak (b) the creator of CPAN's DateTime said he regretter not having a separate Date object (for the (a) reason, but also for other reasons)
15:17 timotimo masak++ # t4 reviews
15:17 masak m: my $now = DateTime.now; my $today = Date.today; say $now ~~ $today
15:17 camelia rakudo-moar 90cd58: OUTPUT«False␤»
15:17 * masak submits rakudobug
15:17 masak BenGoldberg: that's how you'd write it, IMO.
15:18 BenGoldberg Probably :)
15:18 Woodi I under
15:18 Woodi I *think* DateTime is just Time :)
15:18 BenGoldberg Kinda
15:18 masak um.
15:18 masak no.
15:19 TimToady what is Time?
15:19 BenGoldberg That is a deep philisophical question!
15:19 liztormato Fwiw, at former $work, I created a Date object that started on 28 dec 1999. Why?  No dates before that. And mod 7 would give you the weekday
15:19 Woodi point in time ?
15:20 Rotwang joined #perl6
15:20 TimToady in P6-ese, that's an Instant, and has nothing much to do with what a calendar or clock says, unless it's atomic
15:20 liztormato What I'm saying is: people will always create their own Date objects when they reasly need to
15:20 masak errands &
15:21 TimToady Date and DateTime really differ on what they consider to be their fundamental unit, and guarantee some kind of well-behavedness at that fundamental unit
15:22 masak +1
15:23 TimToady Instant really has no fundamental unit, except insofar as everything is scaled to the second, but is arbitrary precision both up and down from there
15:23 BenGoldberg m: my $x = 1.5; say $x.succ
15:23 camelia rakudo-moar 90cd58: OUTPUT«2.5␤»
15:24 TimToady Instant really only breaks down where Einstein says it does
15:26 TimToady well, to be honest, Instant also has a civil component in that sense, since atomic time is really a consensus time for the planet, and probably doesn't even make sense for satellites
15:27 BenGoldberg Satellites's clocks have to make corrections due to relativity
15:27 * BenGoldberg wonders if there's any perl code in space.
15:28 TimToady and clocks of sufficient accuracy will vary over the course of a day/night
15:29 TimToady we once had a perl mongers "group" at the south pole
15:29 TimToady quotes because it was one person, as I recall :)
15:30 [Coke] we've had monger groups across the world that clocked in at 1 member or less!
15:30 TimToady [Coke]: did you see my remarks about ~~ over on #moarvm?
15:32 sqirrel_ joined #perl6
15:32 guru joined #perl6
15:37 [Coke] Yes, although I don't understand why.
15:38 TimToady 2 different dwims can't exist that close together, is all
15:38 [Coke] I was thinking that when the whatever closure was invoked, it was no longer a whatever at that point.
15:40 TimToady the interpretation of whatever is specifically left up to the operator, and only defaults to making a closure if the operator doesn't care
15:40 TimToady as it happens, ~~ is one of the operators that cares, along with ..
15:41 TimToady which is why 1..* doesn't make a closure
15:41 TimToady neither does * ~~ 42
15:42 TimToady m: say * ~~ Whatever
15:42 camelia rakudo-moar 90cd58: OUTPUT«True␤»
15:42 TimToady if it did make a closure, that wouldn't work
15:42 TimToady and we wouldn't be able to match with whatevers on the right side either
15:43 TimToady hence *.narrow ~~ Int is always going to be false
15:44 TimToady it doesn't mean { .narrow ~~ Int }
15:44 TimToady and that's why those two lines work differently
15:45 Woodi hmm, cannot find <h1> Instant... and looks like DateTime and Instant are nearly the same
15:45 TimToady it's just one of those places where we can't have something both tighter and looser at the same time
15:48 TimToady Woodi: look in http://perlcabal.org/syn/S02.html#Immutable_types
15:50 TimToady DateTime is about civil time, and Instant is about time as an abstraction that avoids civil concepts entirely, except for the "atomic second"
15:51 liztormato left #perl6
15:53 TimToady Instants have no clue what a minute or an hour are, let alone a day or a month
15:53 rindolf joined #perl6
15:53 TimToady Instants don't care whether the current minute has 60 or 61 seconds
15:54 TimToady or the current month has 28 or 29 dys
15:54 TimToady DateTime has to worry about these things
15:57 TimToady (I am speaking in the abstract here; if the only clock your computer has available gives you civil time, Instant may have to backcompute the leapseconds to get something approximating linear time)
15:59 japhb .oO( Civil time isn't particularly civil ... )
16:06 masak TimToady: note that DateTime doesn't have seconds as its fundamental unit. (and thus, it doesn't allow $date.succ or $date + 5)
16:06 TimToady that seems reasonable
16:07 denis_boyun joined #perl6
16:07 TimToady nevertheless, it can add one second when it needs to, and can make some guarantees that it will succeed
16:08 TimToady whereas adding larger time units gets...sloppy...
16:09 TimToady .oO(civil as in war)
16:09 isBEKaml joined #perl6
16:09 tmn joined #perl6
16:14 atroxaper joined #perl6
16:14 TimToady seems to me that &a.wrap(&b); ought to fail if &a has been hardened at CHECK time, and that's the bug that masak++ should submit
16:23 Ben_Goldberg joined #perl6
16:23 atroxaper moritz: one more issue with R* installation. Error while a make phase. https://gist.github.com/atroxaper/af351cd7e62114e61d5b
16:23 atroxaper moritz: can you help with that?)
16:25 Ben_Goldberg joined #perl6
16:26 Ben_Goldberg joined #perl6
16:29 denis_boyun_ joined #perl6
16:31 flussence I've been pondering a Units module every now and then for a few years, then I actually think a bit about the problems it'd have to solve and give up again :)
16:31 bjz_ joined #perl6
16:34 flussence one of the ideas I had in mind were allowing arbitrary literals like «35 km/s²», or even just parsing them as strings. Turns out it's a fractal of work...
16:42 flussence The other big problem is there's very few physical units we can even measure as absolutes. You have to pick relative reference points, and nobody can seem to unanimously agree on those.
16:43 kaare_ joined #perl6
16:46 flussence (and that's not even accounting for things like special/general relativity. IIRC, GPS has to account for *both* :)
16:46 * masak submits &a.wrap(&b) rakudobug
16:51 treehug88 joined #perl6
16:52 * [Coke] is shocked that dc opened an actual bug!
16:52 masak DC Comics?
16:53 [Coke] damian
16:53 [Coke] ... starting over.
16:53 masak oh!
16:53 moritz masak++ # t4
16:53 masak moritz: finally!
16:53 * [Coke] marvels that DC opene3d an actual bug!
16:53 masak [Coke]: :P
16:53 masak moritz: I have good hopes about t5 arriving soon, too.
16:54 moritz masak: I thought of most of the edge cases you mentioned, and gave up pretty quickly when I couldn't come up with a model handled them all
16:54 rindolf joined #perl6
16:54 masak moritz: I'm really tempted to create a github repo where I correctly implement all the algorithms I know about, just to see what falls out of it.
16:54 moritz atroxaper: oh, make segfaulting; I guess you can try again, and hope for more luck
16:55 moritz atroxaper: (trying "make install" again)
16:55 moritz masak: please do that -- after t5 :-)
16:55 masak um. yes.
16:55 masak thanks for the reality check :)
16:56 masak there was one algorithm that I had foreseen that I didn't mention. it's the most reactive one of them all: start with an empty space. for each cube added, keep track of "tops" (of cubes) and waterfalls. update them in "real time" as each new cube is added.
16:56 masak it would be fun just to see how such a solution turned out.
16:56 atroxaper moritz: it was make. Not make install. But i am trying now to do make.
16:56 moritz masak: you mention five contestants, but the review lists only four solutions
17:06 atroxaper joined #perl6
17:07 panchiniak joined #perl6
17:09 panchiniak joined #perl6
17:09 vendethiel FROGGS+=5 # CPAN 6
17:12 timotimo masak: i wonder how quickly your website is generated with a current moarvm perl6 :)
17:17 masak timotimo: very quickly. 32 seconds, give or take.
17:18 timotimo that used to be a lot less fast, right?
17:18 masak moritz: oh! the correct number is four contestants, not five.
17:18 masak timotimo: yes. around a minute IIRC.
17:21 timotimo aaw, only a factor of 2? :(
17:21 timotimo we need to get better still!
17:24 [Coke] masak: you can add cubes in such a way that water could get in a space and then not.
17:27 Vlavv joined #perl6
17:27 timotimo masak: could our horrible string join/concat performance be the reason why your website generator isn't faster?
17:29 * vendethiel finally finished backlogging and read about coco and stuff
17:30 atroxaper joined #perl6
17:31 sorear joined #perl6
17:33 bjz_ joined #perl6
17:34 guru joined #perl6
17:39 atroxaper joined #perl6
17:39 fridim_ joined #perl6
17:40 skids joined #perl6
17:53 treehug88 joined #perl6
17:59 btyler joined #perl6
18:00 * lizmat is back
18:00 perigrin lizmat: how new is your invention?
18:00 lizmat you mean my most recent one?
18:00 lizmat about 2 mins
18:00 NotJack joined #perl6
18:00 NotJack hey y'all.
18:01 lizmat NotJack perigrin o/
18:01 NotJack o/
18:01 NotJack I'm trying to interpret a perl6 snippet on RosettaCode
18:01 lizmat which one?
18:01 NotJack can anyone tel me what !?(arithmetic expression) does?
18:01 NotJack *tell
18:02 tadzik oh, yes
18:02 perigrin lizmat: http://www.azlyrics.com/lyrics/vanillaice/iceicebaby.html ... :)
18:02 tadzik it's ! ?(foo)
18:02 NotJack Nautical bell.  It has !?($minute + $hour % 4)
18:02 tadzik ? boolifies, then ! negates
18:02 tadzik so it's effectively "is this expr false"
18:02 lizmat which ! by itself would also do ?
18:02 NotJack and the boolification of an integer is 1 when > 0, and 0 when = 0 ?
18:02 tadzik and True if <0, methings, but yeah
18:03 tadzik lizmat: I would expect so, yes
18:03 atroxaper moritz: There is stable sigfault while make... https://gist.github.com/atroxaper/af351cd7e62114e61d5b
18:03 NotJack so basically !?($minute + $hour % 4) is 1 when minute + $hour % 4 is 0
18:03 NotJack and 0 when $minute + $hour % 4 is 1
18:04 NotJack (and the ? is superfluous)
18:04 NotJack yeah?
18:04 NotJack sorry, typo, I meant "0 when ... is > 0"
18:05 PerlJam NotJack: more like when ... is != 0
18:05 NotJack right, yeah (in this particular case, that expression is always nonnegative)
18:05 PerlJam m: ?-1
18:05 camelia rakudo-moar 90cd58: ( no output )
18:05 PerlJam m: say ?-1
18:05 camelia rakudo-moar 90cd58: OUTPUT«True␤»
18:05 PerlJam (it's always good when the implementation conforms to your mental model  ;)
18:06 perigrin m: say ?0
18:06 camelia rakudo-moar 90cd58: OUTPUT«False␤»
18:06 perigrin yay
18:06 NotJack m: say ?!(44)
18:06 camelia rakudo-moar 90cd58: OUTPUT«False␤»
18:06 NotJack m: say ?!(0)
18:06 camelia rakudo-moar 90cd58: OUTPUT«True␤»
18:06 lizmat m: say +False
18:06 camelia rakudo-moar 90cd58: OUTPUT«0␤»
18:06 rindolf joined #perl6
18:06 lizmat m: say +True
18:06 camelia rakudo-moar 90cd58: OUTPUT«1␤»
18:06 NotJack m: say True * False - False
18:06 camelia rakudo-moar 90cd58: OUTPUT«0␤»
18:06 lizmat m: say -True
18:06 camelia rakudo-moar 90cd58: OUTPUT«-1␤»
18:06 NotJack heh
18:07 NotJack m: say False^False
18:07 camelia rakudo-moar 90cd58: OUTPUT«one(False, False)␤»
18:07 perigrin NotJack: not even in perl6 can two wrongs make a right.
18:08 NotJack *cymbals*
18:08 PerlJam m: say ^False;  # ;-)
18:08 camelia rakudo-moar 90cd58: OUTPUT«0..^0␤»
18:08 NotJack m: say: False .. True
18:08 camelia rakudo-moar 90cd58: ( no output )
18:09 NotJack is it possible to create  pragma saying "in an arithmetic context, always treat False=0 and True=1" without having to type ?s and !s everywhere?
18:09 tadzik yes
18:09 tadzik well, sort of
18:09 PerlJam NotJack: you don't need the ? and ! everywhere if you're doing arithmetic.
18:10 lizmat m: say True + True
18:10 camelia rakudo-moar 90cd58: OUTPUT«2␤»
18:10 PerlJam the arithmetic ops provide a numeric context.
18:10 tadzik things generally become what's expected of them :)
18:10 NotJack oh, neat
18:10 tadzik so if you do 5 + $a, $a becomes numified most of the time
18:10 flussence m: say $_ % 4 for ^8
18:10 camelia rakudo-moar 90cd58: OUTPUT«0␤1␤2␤3␤0␤1␤2␤3␤»
18:10 flussence m: say $_ %% 4 for ^8
18:10 camelia rakudo-moar 90cd58: OUTPUT«True␤False␤False␤False␤True␤False␤False␤False␤»
18:11 flussence seems like the ? may be redundant as well as the !
18:11 NotJack I think what Nautical Bell is aiming at is signum()
18:11 NotJack don't know if P6 has a builtin for that, but ? serves
18:11 PerlJam redundancy is a good thing if it aids comprehension
18:12 flussence m: (2 + 2 % 4) # just checking
18:12 camelia rakudo-moar 90cd58: ( no output )
18:12 flussence m: (2 + 2 % 4).say # just checking
18:12 camelia rakudo-moar 90cd58: OUTPUT«4␤»
18:12 timotimo i'm glad somebody actually tried out the gtk-simple stuff i came up with :3
18:12 NotJack m: "you don't".say
18:12 camelia rakudo-moar 90cd58: OUTPUT«you don't␤»
18:13 tadzik m: my @a = "hip" xx 2; say ~(@a, @a.WHAT.perl), "!"
18:13 camelia rakudo-moar 90cd58: OUTPUT«hip hip Array!␤»
18:13 lizmat m: <I Have A Therory>.say
18:13 camelia rakudo-moar 90cd58: OUTPUT«I Have A Therory␤»
18:14 lizmat .oO( wish I could type without tpyo's )
18:14 NotJack m: say "in the butt".WHAT.WHAT
18:14 camelia rakudo-moar 90cd58: OUTPUT«(Str)␤»
18:17 panchiniak left #perl6
18:17 segomos what is the tilde for tadzik
18:18 segomos nvm
18:18 PerlJam segomos: string context similar to how + is for numeric context or ? is for boolean context.
18:19 tadzik NotJack: you'll like FROGGS
18:20 NotJack why's that?
18:20 tadzik he introduced "what what in the butt" to us
18:22 NotJack I learned about it on some old episode of South Park.
18:23 * TimToady is trying to imagine which rosettacode task could possibly cause $minute + $hour % 4 to make any kind of sense
18:23 NotJack http://rosettacode.org/wiki/Nautical_bell#Perl_6
18:24 NotJack maybe you can tell me what the "\b"x9 is all about. Why nine backspaces?
18:25 NotJack something to do with column alignment maybe?
18:27 TimToady looks to me like it's redundant to the \r above
18:27 TimToady er, no, it isn't
18:27 TimToady just a different way to do the same thing
18:28 TimToady I dunno why they used nine backspaces instead of a \r there
18:28 FROGGS tadzik: hehe, that is not true! *g*
18:28 TimToady \r woulda worked just as well, methinks
18:28 FROGGS I did not introduce "what what..." to anybody :o)
18:29 TimToady what what what/
18:29 TimToady ?
18:29 tadzik 'twas you!
18:29 FROGGS no
18:29 FROGGS jnthn and masak knew before me what that is about
18:29 anaeem___ joined #perl6
18:29 * lizmat feels old not knowing what
18:30 PerlJam second base!
18:30 PerlJam ;)
18:30 NotJack TimToady:  THANKS
18:30 NotJack goddamn capslock
18:30 NotJack bane of the internet
18:31 * TimToady just thought that NotJack++ was VERY thankful :)
18:31 tadzik FROGGS: oh well, maybe I'm mistaken, or my irclog is :)
18:32 FROGGS but (Sammy Rockwell)++ anyway, I've even watched the making of :P
18:32 tadzik making of Sammy Rockwell? :o
18:34 TimToady Is that more like the Cremation of Sam McGee, or the Shooting of Dan McGrew?
18:35 segomos m: ~(1,2,3).perl.say ; (~(1,2,3)).perl.say;
18:35 camelia rakudo-moar 90cd58: OUTPUT«WARNINGS:␤Useless use of "~" in expression "~(1,2,3).perl.say" in sink context (line 1)␤(1, 2, 3)␤"1 2 3"␤»
18:38 NotJack say >>~ (1,2,3);
18:38 NotJack m: say >>~ (1,2,3);
18:38 camelia rakudo-moar 90cd58: OUTPUT«[31m===[0mSORRY![31m===[0m Error while compiling /tmp/v712rQo75Lâ�¤Missing << or >>â�¤at /tmp/v712rQo75L:1â�¤------> [32msay >>~[33mâ��[31m (1,2,3);[0mâ�¤    expecting any of:â�¤        infix stopperâ�¤        infix or meta-infixâ�¤Â»
18:38 hoverboard joined #perl6
18:38 NotJack m: say ~>> (1,2,3);
18:38 camelia rakudo-moar 90cd58: OUTPUT«[31m===[0mSORRY![31m===[0m Error while compiling /tmp/9mXGsc9uAX�Preceding context expects a term, but found infix ~> instead�at /tmp/9mXGsc9uAX:1�------> [32msay ~>[33m�[31m> (1,2,3);[0m�»
18:40 TimToady m: say ~<< (1,2,3)
18:40 camelia rakudo-moar 90cd58: OUTPUT«1 2 3␤»
18:41 segomos m: ~<<(1,2,3)
18:41 camelia rakudo-moar 90cd58: ( no output )
18:41 segomos m: ~<< (1,2,3)
18:41 camelia rakudo-moar 90cd58: ( no output )
18:41 segomos m: say ~<<(1,2,3) #:)
18:41 camelia rakudo-moar 90cd58: OUTPUT«1 2 3␤»
18:41 xfix I like implicit .ws in rules. It lets you write languages without havng to bother about putting whitespace token everywhere which allows comments.
18:41 segomos TimToady: beat me
18:41 NotJack I would have expected "123"
18:41 NotJack or, wait
18:41 xfix I would have expected "1", "2", "3".
18:41 xfix << is list operator.
18:42 timotimo no, it's a hyperop :)
18:42 TimToady no it isn't
18:42 xfix What you are thinking of is [~] 1, 2, 3.
18:42 segomos it isn't
18:42 NotJack m: [~] (1,2,3)
18:42 camelia rakudo-moar 90cd58: ( no output )
18:42 NotJack m: say [~] (1,2,3)
18:42 segomos say
18:42 camelia rakudo-moar 90cd58: OUTPUT«123␤»
18:42 NotJack ah
18:42 NotJack I thought [] meant infix
18:42 TimToady m: (1,2,3).join.say
18:42 camelia rakudo-moar 90cd58: OUTPUT«123␤»
18:42 xfix [] is reduce operator.
18:42 NotJack doesn't quite make sense to me with a prefix operator
18:43 PerlJam m: say (~<<(1,2,3)).perl  # for xfix :)
18:43 camelia rakudo-moar 90cd58: OUTPUT«("1", "2", "3")␤»
18:43 TimToady ~ is an infix as well as a prefix
18:43 xfix Yes, it returns a list.
18:43 xfix ~ is prefix here.
18:43 NotJack oh, in infix mode it means "stringify, then catenate"?
18:43 xfix I understand the syntax.
18:43 Ben_Goldberg joined #perl6
18:43 TimToady hypers only operate on items that happen to have lists inside, but they are not listops
18:43 TimToady in some contexts, the return of a hyper can be used as a list though
18:44 xfix << and >> are some weird map operators IMO.
18:44 NotJack oh, I see, the << arrows point to where the operator *should go*
18:44 NotJack I thought they pointed *at the value*
18:44 xfix (there is something about "multithreading", but nothing implements that yet)
18:44 TimToady more importantly, they indicate a plurality of data on the open end
18:44 segomos NotJack: yea
18:44 segomos m: say (1,2,3) »~
18:44 camelia rakudo-moar 90cd58: OUTPUT«[31m===[0mSORRY![31m===[0m Error while compiling /tmp/HnkgQpoJHkâ�¤Two terms in a rowâ�¤at /tmp/HnkgQpoJHk:1â�¤------> [32msay (1,2,3) »~[33mâ��[31m<EOL>[0mâ�¤    expecting any of:â�¤        postfixâ�¤        infix stopperâ�¤        infix or meta-…»
18:44 PerlJam NotJack: I tend to think of them as  itemish thing on this side << listy thing on this side.
18:44 segomos m: say (1,2,3)>>~
18:44 xfix m: say (1,2,3)»~
18:44 camelia rakudo-moar 90cd58: OUTPUT«[31m===[0mSORRY![31m===[0m Error while compiling /tmp/Ll7LfogxH9�Preceding context expects a term, but found infix > instead�at /tmp/Ll7LfogxH9:1�------> [32msay (1,2,3)>>~[33m�[31m<EOL>[0m�»
18:45 camelia rakudo-moar 90cd58: OUTPUT«[31m===[0mSORRY![31m===[0m Error while compiling /tmp/QvD0tQ0N6lâ�¤Two terms in a rowâ�¤at /tmp/QvD0tQ0N6l:1â�¤------> [32msay (1,2,3)»~[33mâ��[31m<EOL>[0mâ�¤    expecting any of:â�¤        postfixâ�¤        infix stopperâ�¤        infix or meta-i…»
18:45 xfix Oh, right.
18:45 segomos m: say (1,2,3)>>~;
18:45 camelia rakudo-moar 90cd58: OUTPUT«[31m===[0mSORRY![31m===[0m Error while compiling /tmp/So52XIiAQVâ�¤Missing << or >>â�¤at /tmp/So52XIiAQV:1â�¤------> [32msay (1,2,3)>>~[33mâ��[31m;[0mâ�¤    expecting any of:â�¤        postfixâ�¤        infix stopperâ�¤        infix or meta-infixâ�¤Â»
18:45 xfix With >>, you activate postfix:<~>.
18:45 TimToady m: say 1 «+« (10,20,30)
18:45 camelia rakudo-moar 90cd58: OUTPUT«11 21 31␤»
18:45 NotJack PerlJam:  but what if they're pre/post-fix? then you don't have a listy thing
18:45 segomos ic
18:45 xfix m: sub postfix:<~> { ~$_ }; say (1,2,3)»~
18:45 camelia rakudo-moar 90cd58: OUTPUT«Too many positional parameters passed; got 1 but expected 0␤  in sub postfix:<~> at /tmp/vin4GXc3w0:1␤  in sub flatmap at src/gen/m-CORE.setting:17669␤  in sub METAOP_HYPER_POSTFIX at src/gen/m-CORE.setting:17572␤  in block  at /tmp/vin4GXc3w0:1␤␤»
18:45 xfix m: sub postfix:<~>($_) { ~$_ }; say (1,2,3)»~
18:45 camelia rakudo-moar 90cd58: OUTPUT«1 2 3␤»
18:45 xfix Isn't $_ implicit here?
18:45 TimToady not in a sub
18:45 xfix Oh, right.
18:46 PerlJam NotJack: if you don't have a listy thing, then you shouldn't be using << or >>  :)
18:46 segomos m: start { sleep 50; };
18:46 camelia rakudo-moar 90cd58: ( no output )
18:46 xfix I wasn't programming in Perl 6 for a long time.
18:46 dalek rakudo/nom: 0db8ef4 | (Elizabeth Mattijsen)++ | src/core/ (2 files):
18:46 dalek rakudo/nom: (Bag|Mix).pairs now return immutable Enums
18:46 dalek rakudo/nom:
18:46 dalek rakudo/nom: Which I could return a Parcel rather than a List as well, but this still seems
18:46 dalek rakudo/nom: out of reach :-(
18:46 dalek rakudo/nom: review: https://github.com/rakudo/rakudo/commit/0db8ef4f43
18:46 NotJack PerlJam: from the pre/post-fx operator's POV, there are only itemish things
18:46 TimToady hypers are really for compositie objects, not lists
18:46 NotJack the list is broken apart by the arrow-guys
18:46 TimToady generally you want Z or X to do stuff to lists
18:46 brrt joined #perl6
18:46 NotJack (what are the arrow guys called as a family?)
18:46 TimToady *composite
18:47 PerlJam NotJack: who do you think is in the family?
18:47 xfix « and » are probably as hard to explain as reference stuff in Perl 5. Or not.
18:47 TimToady we just call 'em hypers
18:47 NotJack PerlJam: << and >> and their little french cousins
18:47 NotJack both alone and in pairs
18:48 PerlJam ok, yeah ... hypers
18:48 NotJack are X and Z also hypers?
18:48 xfix Hypers are strange. They use Unicode, when barely anything uses these (except for those weird Q quotes).
18:48 * PerlJam was starting to get the impression that maybe ==> and <== might have been included in the "family" for some reason.
18:48 xfix ==> and <== are unrelated to hypers, I think.
18:48 NotJack PerlJam: no, those are in the "weiners" family
18:48 PerlJam heh
18:49 PerlJam xfix: right, but I didn't know that NotJack knew that ;)
18:49 xfix Also, <== is totally less than assign operator, except it's totally not.
18:49 NotJack I've never met ==> before. It looks like "greater than or equal, but PLEASE PLEASE be equal"
18:49 xfix For that, you have to write (<=)=...
18:50 TimToady which is illegal, even if you write it correctly as [<=]=
18:50 dalek perl6-roast-data: e4cd548 | coke++ | / (4 files):
18:50 PerlJam NotJack: you don't know about the feed operators?
18:50 dalek perl6-roast-data: today (automated commit)
18:50 dalek perl6-roast-data: review: https://github.com/coke/perl6-roast-data/commit/e4cd548b4b
18:50 BenGoldberg joined #perl6
18:50 NotJack nope
18:50 NotJack I just check in on P6 every few months, haven't really spent time studying it in detail
18:50 TimToady std: say $_ [<=]= 42
18:50 camelia std ec3d853: OUTPUT«[31m===[0mSORRY![31m===[0m�Cannot make assignment out of <= because chaining operators are diffy at /tmp/WoC9bKQQj4 line 1:�------> [32msay $_ [<=]=[33m�[31m 42[0m�Check failed�FAILED 00:01 124m�»
18:50 xfix Actually, no, (<=)= is not a shorcut.
18:50 xfix What does (<=)= do anyway?
18:50 kivutar joined #perl6
18:50 TimToady fails to parse
18:51 PerlJam NotJack: See S03:4003
18:51 synopsebot Link: http://perlcabal.org/syn/S03.html#line_4003
18:51 segomos lol
18:51 xfix r: my $x = 5; $x (<=)= 4; say $x;
18:51 camelia rakudo-{parrot,jvm,moar} 90cd58: OUTPUT«False␤»
18:51 TimToady oh, wait, it's a setop
18:51 xfix std: my $x = 5; $x (<=)= 4; say $x;
18:51 camelia std ec3d853: OUTPUT«[31m===[0mSORRY![31m===[0mâ�¤Confused at /tmp/4KOOMWUuWg line 1:â�¤------> [32mmy $x = 5; $x [33mâ��[31m(<=)= 4; say $x;[0mâ�¤    expecting any of:â�¤        feed_separatorâ�¤ infix or meta-infixâ�¤    infixed functionâ�¤       statement modifier loopâ�¤Parse failedâ�¤FA…»
18:51 NotJack oh, neato!
18:51 xfix Hm, interesting.
18:51 TimToady though it should probably be marked as diffy
18:51 NotJack though I wish you'd thought of them before all the good 1-character tokens were taken...
18:51 TimToady and fail to parse :)
18:52 [Coke] .seen au
18:52 yoleaux I haven't seen au around.
18:52 PerlJam NotJack: with unicode we have an endless supply of "1-character tokens"  ;)
18:52 xfix But it's not a great idea to use them all.
18:52 * NotJack was already googling "unicode pipe symbols"
18:52 segomos what does it do?
18:54 TimToady what does (<=)= do?
18:54 xfix Using entire Unicode only leads to languages like Sclipting.
18:54 xfix http://esolangs.org/wiki/Sclipting
18:55 TimToady m: my $a = set <a b c>; my $b = set <a b c d>; say $a (<=) $b
18:55 camelia rakudo-moar 90cd58: OUTPUT«True␤»
18:55 TimToady set a is a subset of set b
18:55 timotimo and [<=] ? ;)
18:55 timotimo er
18:55 xfix Language even has crazy operators like delete fourth element of array (鉻).
18:55 xfix .u 鉻'
18:55 yoleaux U+0027 APOSTROPHE [Po] (')
18:55 timotimo [<=]=
18:55 xfix Oops.
18:55 TimToady but anything that takes sets as args and returns Bool is by definition "diffy" and shoudn't allow the assignment op to be formed
18:55 xfix .u 鉻
18:55 yoleaux No characters found
18:56 xfix .u U+927B
18:56 yoleaux No characters found
18:56 TimToady when used as an infix, [<=] is identical to <=
18:56 xfix I assume it just doesn't know this character.
18:56 PerlJam TimToady: Is diffy in the glossary?
18:57 TimToady when used as a prefix, it's a reduction of an infix
18:57 TimToady beats me
18:57 xfix when used as a postfix, it just doesn't work
18:57 TimToady doesn't look like it
18:57 Ben_Goldberg joined #perl6
18:57 TimToady because <= isn't a valid expressoin
18:58 TimToady you might get by with a warning by using <=> instead though
18:58 xfix when used as a term, it gives True
18:58 TimToady well, probably fatal
18:58 TimToady m: say [1,2,3][<=>]
18:58 camelia rakudo-moar 90cd58: OUTPUT«Cannot call 'Real'; none of these signatures match:␤:(Mu:U \v: *%_)␤  in method Real at src/gen/m-CORE.setting:3778␤  in sub infix:<<> at src/gen/m-CORE.setting:4304␤  in sub postcircumfix:<[ ]> at src/gen/m-CORE.setting:2491␤  in block  at /tmp/…»
18:59 TimToady looks pretty fatal
18:59 brrt joined #perl6
18:59 xfix How does Perl 6 disambiguate between reduction and array syntax anyway?
19:00 TimToady it's one of the two spots in the grammar where it can backtrack
19:00 TimToady and reductions do not allow whitespace, which helps
19:00 TimToady and most array literals use commas, whitespace, and/or sigils, all of which are uncommon in operators
19:01 xfix Hm, ok. Just wondering, what is the second spot where the grammar can backtrack?
19:01 TimToady the place where it decides to stop interpolating an expression has to end in some kind of brackets, but it can't know that till it tries
19:01 TimToady "$foo.bar.baz" vs "$foo.bar.baz()"
19:02 dalek specs: c033551 | (Elizabeth Mattijsen)++ | S99-glossary.pod:
19:02 dalek specs: Add empty "diffy" lemma  *nudge* *nudge*
19:02 dalek specs: review: https://github.com/perl6/specs/commit/c033551246
19:02 tobiasvl left #perl6
19:02 pippo joined #perl6
19:02 PerlJam lizmat++ (less subtle than I ;)
19:02 xfix Ok. So, if I understand correctly, `[*]` gives 1, but `[* ]` gives array of one `WhateverCode.new()`.
19:03 treehug8_ joined #perl6
19:03 TimToady you probably want "iffy" and "fiddly" there too :)
19:03 TimToady xfix: correct
19:03 TimToady so would [*,]
19:04 TimToady or [$x] if $x contains * :)
19:04 pippo o/ #perl6
19:04 dalek rakudo/nom: 5d88134 | (Elizabeth Mattijsen)++ | src/core/Set.pm:
19:04 dalek rakudo/nom: Oops, forgot Set.pairs: it now also returns Enums
19:04 dalek rakudo/nom: review: https://github.com/rakudo/rakudo/commit/5d88134bbf
19:04 TimToady and presuming nobody has defined an infix:<$x>
19:04 xfix Doesn't look that bad. How often the arrays have one WhateverCode.new() without any whitespace either way.
19:05 xfix infix:<$x> sounds rather evil.
19:05 TimToady well, yes, but it's just a DIHWIDT
19:05 TimToady (pretty sure that one's in the glossary :)
19:05 xfix Hm, thanks.
19:06 xfix (why Perl 6 website has two glossaries...)
19:06 vendethiel There is More Than One Way To Spell It.
19:06 pippo p6: my @a; @a.push: $("one,two,three".split(',')); say @a;
19:06 lizmat S99:289
19:06 synopsebot Link: http://perlcabal.org/syn/S99.html#line_289
19:06 camelia rakudo-parrot 90cd58, niecza v24-109-g48a8de3: OUTPUT«one two three␤»
19:06 camelia ..rakudo-{jvm,moar} 90cd58: OUTPUT«␤»
19:06 xfix vendethiel, that applies to everything, including Python.
19:07 vendethiel :)
19:07 vendethiel Spelling is hard !
19:07 pippo Could somebody file a bug for this ? ^^
19:07 xfix Naming things is hard.
19:08 xfix I'm sure that everything can be done in infinity ways in any programming language.
19:08 lizmat ah, but not all languages have this:
19:09 lizmat m: say 42.WHY
19:09 camelia rakudo-moar 90cd58: OUTPUT«Life, the Universe and Everything␤»
19:09 xfix For example, in Python you can print using print() or sys.stdin.write().
19:09 xfix sys.stdout.write()
19:09 xfix *
19:09 xfix I'm totally not thinking about what I write. Why anybody would write to STDIN?
19:09 TimToady to see if it works?
19:10 xfix IOError: File not open for writing
19:10 xfix It doesn't, at least in Python.
19:10 masak <[Coke]> masak: you can add cubes in such a way that water could get in a space and then not.
19:10 masak [Coke]: yes.
19:11 xfix But it seems to work in Perl 6...
19:11 masak [Coke]: I didn't assume that you'd always add static water under that model. sometimes you remove it.
19:11 xfix rn: $*IN.say: "lol"
19:11 dalek roast: a5595df | (Elizabeth Mattijsen)++ | S02-types/ (3 files):
19:11 dalek roast: Tests about immutability of (Set|Bag|Mix).pairs
19:11 dalek roast: review: https://github.com/perl6/roast/commit/a5595df4c0
19:11 camelia rakudo-jvm 90cd58: OUTPUT«This handle does not support print␤  in method print at gen/jvm/CORE.setting:13989␤  in method say at gen/jvm/CORE.setting:14000␤  in block  at /tmp/tmpfile:1␤␤»
19:11 masak [Coke]: basically, each body of water needs to observe each empty cell in it, and be notified when it changes.
19:11 camelia ..rakudo-moar 90cd58: OUTPUT«Failed to write bytes to filehandle: bad file descriptor␤  in method print at src/gen/m-CORE.setting:14046␤  in method say at src/gen/m-CORE.setting:14057␤  in block  at /tmp/tmpfile:1␤␤»
19:11 camelia ..niecza v24-109-g48a8de3: OUTPUT«Unhandled exception: Excess arguments to Mu.say, used 1 of 2 positionals␤  at /home/p6eval/niecza/lib/CORE.setting line 0 (Mu.say @ 1) ␤  at /tmp/tmpfile line 1 (mainline @ 3) ␤  at /home/p6eval/niecza/lib/CORE.setting line 4595 (ANON @ 3) ␤  …»
19:11 camelia ..rakudo-parrot 90cd58: OUTPUT«IO PMC FileHandle is not in mode 2␤  in method print at gen/parrot/CORE.setting:13981␤  in method print at gen/parrot/CORE.setting:13979␤  in method say at gen/parrot/CORE.setting:13992␤  in method say at gen/parrot/CORE.setting:1059␤  in block…»
19:11 xfix Or not.
19:11 masak [Coke]: oh, I want to write that now :) but I will follow moritz++' sage advice.
19:11 TimToady for some strange definition of "seems to" :)
19:11 xfix Weird. It seems to work for me.
19:12 xfix ~ $ perl6 -e '$*IN.say("lol")'
19:12 xfix lol
19:12 masak xfix: I wouldn't expect that to work.
19:12 flussence $*IN and $*OUT are both the /dev/tty* there.
19:12 xfix Perhaps it's because I run this in terminal emulator, or something.
19:13 flussence ~ $ echo lol > /dev/stdin
19:13 flussence lol
19:13 xfix Because file handle reuse is the best way to go.
19:13 xfix Who needs separate file handles for STDOUT and STDIN either way?
19:13 lizmat pippo: filing a bug is just as easy as sending an email to rakudobug@perl.org
19:13 geekosaur masak: the typical startup for unix-style terminals, with error and sanity checking removed, is: open(/dev/tty), dup(), dup()
19:14 xfix In terminal emulator, /dev/fd shows that every file handle is /dev/pts/1.
19:14 xfix In Linux terminal (tty1), every file handle is /dev/tty1.
19:15 lizmat pippo: usually an edited copy of the IRC conversation is enough  (and a good Subject: of course)
19:15 geekosaur and it is opened O_RDWR and there are programs which rely on this (consider piping output to more / less)
19:15 pippo lizmat: thank you I'll do then. Do you agree it a bug?
19:15 lizmat yes
19:15 flussence stdout is standard output, stdin is non-standard output :)
19:15 lizmat the array receives an empty itemized list
19:15 lizmat that is wrong
19:15 pippo lizmat: OK. Filing... :-)
19:16 lizmat m: my @a;@a.push: $("one,two,three".split(",")); say @a.perl
19:16 camelia rakudo-moar 90cd58: OUTPUT«Array.new(().list.item)␤»
19:16 lizmat j: my @a;@a.push: $("one,two,three".split(",")); say @a.perl
19:16 camelia rakudo-jvm 90cd58: OUTPUT«Array.new(().list.item)␤»
19:16 xfix Hm, I closed my terminal by writing to /dev/fd/4.
19:16 xfix fish shell crashes in this case, apparently.
19:16 geekosaur tsk
19:17 geekosaur most shells should give you an error like "bad file descriptor" and a prompt
19:18 xfix But dev builds show 'Unknown wakeup byte 62 in iothread_service_completion' and 'Unknown wakeup byte 0a in iothread_service_completion', so I guess it's fixed.
19:18 geekosaur aha, it's using it internally, that would do it
19:22 xfix In current version, I get assertion failure.
19:22 xfix But considering it's internal, it makes sense.
19:23 raiph joined #perl6
19:25 lizmat m: my @a;@a.push: $("one,two,three".map: * ~ "a"); say @a.perl   # seems to do with map in an item context
19:25 camelia rakudo-moar 90cd58: OUTPUT«Array.new(().list.item)␤»
19:25 lizmat pippo: ^^
19:26 xfix Shouldn't it return Array.new("one,two,threea")?
19:27 lizmat yes, that's the bug pippo found
19:27 brrt joined #perl6
19:27 xfix Yes, `.map` with constant element is pointless, but this should be automatically used in list context.
19:28 xfix And not empty list context.
19:28 lizmat xfix: my code is just a golf of the problem
19:28 erdic joined #perl6
19:29 xfix Still, it's a bug either way.
19:29 xfix Even if it would affect only string constants.
19:30 xfix PHP may have silly grammar which doesn't make sense, and gives errors for completely logical requests, but Perl 6 has higher standards for grammar.
19:30 lizmat indeed
19:30 [Coke] how is one,two,threea the wrong answer? you expect a comma separated string to magically be a list?
19:30 lizmat I also found it is not a spesh problem, or an optimization issue
19:31 xfix [Coke], the problem is that `.map` doesn't see "one,two,three".
19:31 lizmat (aka, running with MVM_SPESH_DISABLE=1 or --optimize=0 gives the same problem)
19:31 xfix Array.new("one,two,threea") is correct here.
19:31 masak FROGGS: jnthn knew about "what what" before I did, so he's likely the original contaminant^Wsource.
19:31 lizmat m: my @a;@a.push: ("a".map: * ~ "a"); say @a.perl  # shorter golf
19:31 camelia rakudo-moar 5d8813: OUTPUT«Array.new("aa")␤»
19:32 lizmat m: my @a;@a.push: ("a".map: * ~ "a").item; say @a.perl  # the .item makes the difference
19:32 * masak .oO( jnthn, a frothy mix of puns and meta-object protocols )
19:32 camelia rakudo-moar 5d8813: OUTPUT«Array.new(().list.item)␤»
19:32 xfix r-m: say 0o9
19:32 camelia rakudo-moar 5d8813: OUTPUT«[31m===[0mSORRY![31m===[0m Error while compiling /tmp/1219rcwE4râ�¤Confusedâ�¤at /tmp/1219rcwE4r:1â�¤------> [32msay 0[33mâ��[31mo9[0mâ�¤    expecting any of:â�¤        whitespaceâ�¤Â»
19:32 xfix PHP is completely fine with 09, and gives 0.
19:33 xfix (not that it's a good language, or anything)
19:33 masak xfix: hint: the "and gives 0" part *is wrong*!
19:33 xfix That's PHP. It doesn't make sense.
19:33 * [Coke] hurls http://the-toast.net/2014/05/27/ayn-rands-harry-potter-sorcerers-stone/ for... masak? moritz? someone.
19:33 xfix ~ $ php -r 'var_dump(019);'
19:33 xfix int(1)
19:33 masak [Coke]: saw it flash by today. you sayin' it's good? then I will peruse.
19:34 xfix Why do you think there are lots of articles against PHP.
19:34 masak I'd rather we stop talking about PHP :/
19:34 dalek specs: bde9972 | (Elizabeth Mattijsen)++ | S99-glossary.pod:
19:34 dalek specs: Add lemma's for "golf" and "golfing"
19:34 dalek specs: review: https://github.com/perl6/specs/commit/bde99720a2
19:34 xfix Hm, ok.
19:34 masak thank you.
19:34 masak I think I've pinpointed the reason why colomon and [Coke] were uneasy about adding integers to date objects.
19:35 masak is it because "first you numify both sides" doesn't seem to happen in this case?
19:35 masak and so it feels like an exception, or an abuse of the arith ops?
19:36 vendethiel pls php.
19:37 efg joined #perl6
19:40 baest joined #perl6
19:41 lizmat m: my @a;@a.unshift: ("a".map: * ~ "a").item; say @a.perl  # unshift suffers the same problem
19:41 camelia rakudo-moar 5d8813: OUTPUT«Array.new(().list.item)␤»
19:42 treehug88 joined #perl6
19:44 moritz [Coke]: thanks for the link, I had a good chuckle :-)
19:45 dalek specs: 60d136b | masak++ | S99-glossary.pod:
19:45 dalek specs: [S99] also add empty 'fiddly', 'iffy' entries
19:45 dalek specs: review: https://github.com/perl6/specs/commit/60d136b532
19:48 masak writing explanations for diffy/fiddly/iffy now.
19:49 * moritz is also writing an explanatino for iffy now
19:50 moritz my current definition is:
19:50 moritz Like an "if condition", that is, returns a C<Bool>, or something that can be
19:50 moritz easily and intuitively interpreted as a boolean value
19:50 NotJack joined #perl6
19:57 kivutar joined #perl6
19:58 SevenWolf joined #perl6
20:01 dalek specs: 42e6cd7 | masak++ | S99-glossary.pod:
20:01 dalek specs: [S99] explain diffy, fiddly, iffy
20:01 dalek specs: review: https://github.com/perl6/specs/commit/42e6cd7145
20:01 masak lizmat: ^
20:01 lizmat masak++
20:01 masak moritz: let me know if there's anything in those definitions you'd like to change.
20:01 masak moritz: I focused a bit on why we have those definitions, too. what they are for.
20:03 efg wtf http://en.wikipedia.org/wiki/Why_the_lucky_stiff
20:03 treehug88 joined #perl6
20:10 masak efg: you're not being clear enough.
20:11 masak moritz: actually, I'm not sure we have any iffy operators any more that return something "like a Bool". infix:<%> used to be one, but we broke the boolean interpretation out into infix:<%%> (while also flipping it).
20:13 nebuchad` joined #perl6
20:14 beastd joined #perl6
20:15 Psyche^ joined #perl6
20:16 brrt left #perl6
20:16 spider-mario joined #perl6
20:17 moritz masak++ # I really like your explanations
20:19 btyler is perl6's lack of -i ( as in, perl -pi -e) a deliberate omission, or just NYI?
20:19 moritz NYI
20:19 moritz S19 says
20:20 moritz Modify files in-place.  Haven't thought about it enough to add yet, but
20:20 moritz I'm certain it has a strong following. {{TODO review decision here}}
20:20 JimmyZ_ joined #perl6
20:20 Su-Shee_ joined #perl6
20:20 segomos_ joined #perl6
20:20 ponbiki_ joined #perl6
20:20 erdic_ joined #perl6
20:21 brother joined #perl6
20:21 djanatyn joined #perl6
20:22 apejens joined #perl6
20:23 btyler woo, cool. I was digging around for where that would get slotted in, but the command line flag parsing seems to be a bit spread out -- some things in src/Perl6/Compiler.nqp, some in src/Perl6/Actions.nqp. seems like Actions.nqp would be the right place, given that -n and -p are also implemented there
20:24 moritz btyler: src/main.nqp sets up the command line parser to accept options
20:25 moritz btyler: as you said, -n and -p are implemented in Actions.nqp, because they generate extra code; -i would need to go there too, I guess
20:26 btyler oh, jeez, need to work on my ack-foo, missed src/main.nqp
20:27 moritz not easy to find with ack/grep
20:28 vendethiel joined #perl6
20:30 erdic_ joined #perl6
20:31 anaeem1__ joined #perl6
20:35 bjz_ joined #perl6
20:42 masak S19 certainly needs some love.
20:43 masak maybe some day I'll feel up to it.
20:43 masak I do have the interest/motivation.
20:44 lizmat pippo: did you submit the rakudobug yet ?
20:45 lizmat Ah, just seeing it come in: #121994
20:45 synopsebot Link: https://rt.perl.org/rt3//Public/Bug/Display.html?id=121994
20:45 lizmat great, I think I have a temporary fix
20:46 lizmat so I can write tests, commit the fix and refer to the ticket number  :-)
20:51 lizmat masak: I guess moar's speed makes oneliners a more agreeable proposition
20:53 masak lizmat: oh yes.
20:53 masak I already feel more inclined to use perl6 for oneliners.
20:53 masak I've done it several times today.
20:54 [Coke] r: "one,two,three".split(',').perl.say
20:54 lizmat I use this alias: alias 6='perl6 --ll-exception -MTest -e'
20:54 camelia rakudo-{parrot,jvm,moar} 5d8813: OUTPUT«("one", "two", "three").list␤»
20:54 [Coke] m: $("one,two,three".split(',')).perl.say
20:54 camelia rakudo-moar 5d8813: OUTPUT«("one", "two", "three").list.item␤»
20:54 pippo lizmat: Great! Lizmat++
20:55 lizmat [Coke]: it goes wrong if there is a lazy list in an item as part of the push/unshift
20:55 [Coke] m: my @a; @a.push: qw<one two three>; say @a;
20:55 camelia rakudo-moar 5d8813: OUTPUT«one two three␤»
20:55 lizmat a .gimme(1) seems to fix it
20:56 [Coke] ^^ isn't that the same thing as the with the $(...) ?
20:56 lizmat m: my @a;@a.push: ("a".map: * ~ "a").item; say @a.perl  # the .item makes the difference
20:56 camelia rakudo-moar 5d8813: OUTPUT«Array.new(().list.item)␤»
20:57 lizmat [Coke]: you mean ^^^ ?
20:57 jnthn evening, #perl6
20:57 lizmat jnthn o/
20:58 dalek rakudo/nom: 878fc98 | (Elizabeth Mattijsen)++ | src/core/List.pm:
20:58 dalek rakudo/nom: Temporary (?) fix for #121994
20:58 dalek rakudo/nom: review: https://github.com/rakudo/rakudo/commit/878fc988ea
20:58 synopsebot Link: https://rt.perl.org/rt3//Public/Bug/Display.html?id=121994
20:58 lizmat jnthn:  you might want to look at ^^^ when there's time
20:59 lizmat $ 6 'my @a;@a.push: ("a".map: * ~ "a").item; say @a.perl'
20:59 lizmat Array.new(("aa",).list.item)
21:01 jnthn lizmat: (Java 8 article) Hmm, that StampedLock thingy will need some care to use... Not one I'd like to see us nab.
21:02 lizmat I was more thinking of somehow using that under the hood
21:02 lizmat as part of some optimization
21:03 jnthn ah
21:05 pippo my @a; @a.push: $("one,two,three".split(',')); say @a;
21:05 pippo m: my @a; @a.push: $("one,two,three".split(',')); say @a;
21:05 camelia rakudo-moar 5d8813: OUTPUT«␤»
21:06 jnthn m: my @a; @a.push: $(<one two three>); say @a;
21:06 camelia rakudo-moar 5d8813: OUTPUT«one two three␤»
21:06 jnthn m: say ("one,two,three".split(',')).DUMP
21:06 camelia rakudo-moar 5d8813: OUTPUT«(signal )use of uninitialized value of type Any in string context␤use of uninitialized value of type Any in string context␤use of uninitialized value of type Any in string context␤use of uninitialized value of type Any in string context␤»
21:06 lizmat jnthn: it only seems to happen if the inside of the .item is a lazy list
21:07 lizmat .split uses .map
21:07 jnthn That fix is almost certainly wrong.
21:07 lizmat I bet it is  :-)
21:07 lizmat that's why I marked it as temporary :-)
21:07 jnthn m: say (my $ = "one,two,three".split(','))
21:07 camelia rakudo-moar 5d8813: OUTPUT«one two three␤»
21:07 jnthn hmmm
21:08 lizmat afaik, it's matching the single value .push candidate with an itemized lazy list
21:08 pippo lizmat: I tryed your patch... the result of the above is Array.new(("one",).list.item)
21:09 pippo :-(
21:09 lizmat hmm... then maybe it needs a .gimme(*) after all
21:09 lizmat duh, of course
21:10 lizmat going to spectest that before committing :-)
21:10 pippo lizmat: :-)
21:11 pippo I do not know if this could help debugging. But like this it works:
21:11 pippo m: my @a; @a[0].push: $("one,two,three".split(',')); say @a.perl
21:11 camelia rakudo-moar 5d8813: OUTPUT«Array.new([("one", "two", "three").list.item])␤»
21:11 lizmat pippo: that's not what you originally had
21:12 pippo lizmat: mind the "@a[0]"
21:14 lizmat anyway: that's a workaround, not a fix  :-)
21:14 anaeem1_ joined #perl6
21:15 pippo lizmat: yes. I was only showing you in case it would help understand the reason for the bug.
21:16 lizmat since @a[0] is Any, you're actually doing an Any.push, which is another code path altogether
21:16 pippo lizmat: I am only increasing entropy. Sorry! :-)
21:17 lizmat nonono, don't worry  :-)
21:17 pippo :-)
21:19 dalek rakudo/nom: b91eeb4 | (Elizabeth Mattijsen)++ | src/core/List.pm:
21:19 dalek rakudo/nom: We need .gimme(*) to fix #121994 (temporarily)
21:19 dalek rakudo/nom: review: https://github.com/rakudo/rakudo/commit/b91eeb4736
21:19 synopsebot Link: https://rt.perl.org/rt3//Public/Bug/Display.html?id=121994
21:24 dalek roast: 6538a38 | (Elizabeth Mattijsen)++ | S02-types/lazy-lists.t:
21:24 dalek roast: Add tests for #121994
21:24 dalek roast: review: https://github.com/perl6/roast/commit/6538a38cfe
21:24 synopsebot Link: https://rt.perl.org/rt3//Public/Bug/Display.html?id=121994
21:26 pippo lizmat: compiled and tested OK on both -j and -m. Thank you!
21:26 lizmat yw  :-)  and thanks for reporting!
21:26 pippo lizmat: good night. :-)
21:26 lizmat good night, pippo!
21:26 pippo left #perl6
21:27 hoverboard joined #perl6
21:28 segomos_ what would be the proper way to do stuff with a socket in p6 without blocking?
21:28 timotimo we'll have supply-based async sockets in moar and jvm
21:28 timotimo i seem to recall on one of the backends we already have that
21:29 timotimo i think the only thing we're missing is binary socket stuff with supplies on moar
21:29 timotimo or something
21:29 lizmat we have async sockets on moar
21:30 lizmat IO::Socker::Async
21:30 lizmat *Socket
21:30 timotimo neato!
21:30 segomos_ i'll check it out, thank you
21:32 lizmat https://gist.github.com/jnthn/11126125
21:33 lizmat segomos_  ^^^ for an example
21:35 xenoterracide joined #perl6
21:35 segomos_ ty - that's probably easier than reading core :)
21:45 segomos_ https://gist.github.com/tony-o/b11e87e582d56b1a1979
21:46 segomos_ this is segfaulting when i run 'ab' against it or after a seemingly random number of requests
21:46 raiph joined #perl6
21:46 segomos_ perl6-j runs that p damn quickly, though which is cool
21:47 lizmat segomos_: I'm afraid you've run into a problem that's already high on jnthn's list of things to look into
21:47 segomos_ java.lang.IllegalStateException: Current state = RESET, new state = CODING_END
21:47 segomos_ lizmat: ahh okay, thank you
21:47 lizmat it seems as soon as the number of scheduled tasks exceeds the number of threads
21:48 lizmat significantly, there is some race condition that corrupts memory
21:48 lizmat jnthn assumes it is a Moar problem, but I wouldn't be surprised we're tickling something in libuv
21:49 segomos_ i got it to error out with perl6-j too after three 'ab' runs: -c 5 -n 100
21:50 lizmat you could try playing with $*SCHEDULER = Scheduler.new( :maxthreads(64) )
21:50 lizmat or maybe a lower value
21:50 lizmat (default is 16_
21:50 lizmat )
21:51 lizmat hmmm... with JVM as well ?
21:51 lizmat hmmm....
21:51 segomos_ ahh okay - i'll screw around with it..i'm safe in thinking the syntax of IO::Socket::Async isn't going to change much?
21:51 segomos_ yea JVM as well
21:53 ivanshmakov joined #perl6
21:54 lizmat segomos_: good question.  At the moment I don't see a reason why it would change
21:55 lizmat but you *are* bleeding edge here  :-)
21:56 ivanshmakov joined #perl6
21:57 segomos_ i'm excited about it, i'm writing a simple REST type server to learn it
22:01 lizmat .oO( note to self:  should write IO::Socket::Async tests )
22:01 lizmat $ ack IO::Socket::Async t/spec
22:01 lizmat $
22:01 masak I just re-found http://blogs.perl.org/users/sawyer_x/2012/07/yet-another-friday-the-13th.html and had a good time writing a Haskell solution tonight.
22:02 masak here's the Haskell solution: https://gist.github.com/masak/8918fee408cf8368e405
22:02 masak I couldn't comment on the blog post itself. something is wrong with blogs.perl.org :/
22:02 * masak finds SawyerX on Twitter instead
22:05 masak yay, Twitter seems to work, at least.
22:08 PerlJam I like SawyerX's comment about mortiz's perl6 one-liner.
22:08 PerlJam "...how I thought of the solution I tried to code."
22:09 PerlJam er, s/SawyerX/Aristotle/
22:10 masak yes, that's a great way to put it.
22:11 masak fwiw, that's how I felt when writing the Haskell solution too -- that I was expressing "the same" solution in a different medium.
22:13 * lizmat calls it a day...
22:13 lizmat gnight, #perl6!
22:13 masak 'night, lizmat
22:17 panchiniak joined #perl6
22:28 hoverboard joined #perl6
22:29 Pleiades` joined #perl6
22:32 jack_rabbit joined #perl6
22:37 bjz_ joined #perl6
22:40 masak hehe. the Python guy (who got upset about my handling of t3) is back. :)
22:40 masak he's upset about my handling of t4. :)
22:42 jnthn "It took forever, man!" :P
22:45 dalek specs: 668d386 | masak++ | S99-glossary.pod:
22:45 dalek specs: [S99] some more explanation on 'golf'
22:45 dalek specs: review: https://github.com/perl6/specs/commit/668d386734
22:50 masak jnthn: no, he's upset because (a) no-one completely succeeded with the task, and (b) apparently he told me so, and (c) he finds the whole thing about air pressure to be making the problem much harder, even though I've asserted (in the task spec and to him directly) that air pressure doesn't enter into it
22:51 masak but on the whole, it's kind of nice to have a critic.
22:51 masak it's like, "yay! somebody actually reads my blog!" :P
22:52 masak 'night, #perl6
23:12 segomos_ do i need to explicitly accept connections from IO::Socket::Async ?
23:12 segomos_ (server)
23:18 FOAD joined #perl6
23:18 hoverboard joined #perl6
23:19 jnthn segomos_: no
23:22 segomos_ jnthn: i can't seem to get the chars_supply.tap on the server to read data coming in
23:22 segomos_ for an http requests
23:22 segomos_ /s$//
23:22 jnthn Odd
23:23 jnthn I scribbled https://gist.github.com/jnthn/11127634 which served up pages at the time I wrote it...
23:23 jnthn The Async socket stuff needs some love yet, though...
23:23 * jnthn knows of at least one race condition...
23:25 segomos_ are you binding to the char_supply tap to keep it alive ?
23:26 segomos_ line#22
23:26 jnthn no, because I write too much NQP :P
23:27 jnthn It's kept alive by the lower level handler that feeds chunks into it having it referenced, though..
23:27 jnthn That $tap is unused here, it seems
23:28 BenGoldberg joined #perl6
23:29 segomos_ https://gist.github.com/tony-o/e9ea977f97175042a66f
23:29 segomos_ this one never says anything
23:30 segomos_ presumed it would from line 6
23:30 jnthn How should done know when to trigger?
23:30 jnthn That can only really happen if the sender closes the connection.
23:30 segomos_ it doesn't -
23:31 segomos_ yea i realized that a while ago, i haven't done anything with it yet though.  I'm still trying to get it to even read the headers
23:31 jnthn You can't do it in "done", though. The client sends stuff, then waits for a response, and never does a close.
23:32 jnthn Thus why mine is looking through the headers in the "more", to find when a complete set of headers was received.
23:32 segomos_ i've updated the gist
23:33 jnthn @chunks.push; # that's a no-op?
23:33 segomos_ for right now, yea
23:33 segomos_ i'd be happy with it just closing the socket on read at this point
23:37 sorear joined #perl6
23:41 segomos_ i can get that to work for every other request
23:43 segomos_ your example does the same, guess i'll be patient and watch more of your talks jnthn
23:44 rurban joined #perl6
23:48 jnthn segomos_: Well, don't think watching my talks will help when you're hitting an impl bug I'm aware of ;)
23:48 jnthn segomos_: I'll get to it soon, just tied up with some other things at the moment. :)
23:49 jnthn Should have more time for this stuff after the weekend.
23:53 jnthn sleep &
23:54 jnap joined #perl6

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

Perl 6 | Reference Documentation | Rakudo