Perl 6 - the future is here, just unevenly distributed

IRC log for #perl6, 2013-10-07

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:01 dalek nqp/moarboot: 23985aa | jnthn++ | src/NQP/ (2 files):
00:01 dalek nqp/moarboot: Add :moar options to QAST::VM nodes.
00:01 dalek nqp/moarboot: review: https://github.com/perl6/nqp/commit/23985aa3ab
00:01 dalek nqp/moarboot: 6d81e7b | jnthn++ | src/vm/moar/QAST/QASTOperationsMAST.nqp:
00:01 dalek nqp/moarboot: Get code-gen fix from cross-comp.
00:01 dalek nqp/moarboot: review: https://github.com/perl6/nqp/commit/6d81e7b7c1
00:01 dalek nqp/moarboot: 7587998 | jnthn++ | src/vm/moar/stage0/ (9 files):
00:01 dalek nqp/moarboot: Update stage0 for code-gen fix.
00:01 dalek nqp/moarboot: review: https://github.com/perl6/nqp/commit/7587998af8
00:01 dalek nqp/moarboot: 392e5b9 | jnthn++ | src/vm/moar/QAST/QASTCompilerMAST.nqp:
00:01 dalek nqp/moarboot: Register QAST -> MAST compiler.
00:01 dalek nqp/moarboot: review: https://github.com/perl6/nqp/commit/392e5b94c0
00:01 dalek nqp/moarboot: 8c4880f | jnthn++ | src/NQP/ (2 files):
00:01 dalek nqp/moarboot: Merge branch 'master' into moarboot
00:01 dalek nqp/moarboot: review: https://github.com/perl6/nqp/commit/8c4880fb53
00:02 dwarring timotimo: I've updated my gist from yesterday to be fairer to  perl6 - https://gist.github.com/dwarring/6847212
00:02 dwarring old line was creating a Rat: my $m := 4.0*$n - 1.0;
00:03 dwarring changed to a Num: $m := (4*$n - 1).Num
00:03 dwarring still slower, but not so dramatic
00:03 jnthn So we learn that Rat ain't so fast?
00:04 TimToady summing harmonic serieseses is probably a worst case for Rats
00:06 TimToady Rats are much better with correlated denomoniators, not anti-correlated
00:06 TimToady good grief, my spellerer is brokeken
00:10 * lue wonders if a Tar would be optimized for anti-correlated denominators
00:10 * dwarring best optmisation tool is sometimes this - http://en.wikipedia.org/wiki/Keisaku
00:12 Psyche^_ joined #perl6
00:18 cognominal joined #perl6
00:21 dalek nqp/moarboot: fec7ea7 | jnthn++ | tools/build/Makefile-Moar.in:
00:21 dalek nqp/moarboot: Add stage2 rules to MoarVM Makefile.
00:21 dalek nqp/moarboot: review: https://github.com/perl6/nqp/commit/fec7ea73a7
00:33 ivanshmakov joined #perl6
00:38 dalek nqp/moarboot: 31ba5a5 | jnthn++ | tools/build/Makefile-Moar.in:
00:38 dalek nqp/moarboot: Copy stage2 to . and add test targets.
00:38 dalek nqp/moarboot:
00:38 dalek nqp/moarboot: Can run "make test" in the NQP repo now on MoarVM, and most things
00:38 dalek nqp/moarboot: pass. t/qregex hangs; we weren't attempting it in nqp-cc, though. No
00:38 dalek nqp/moarboot: regressions compared to what make selftest passes.
00:38 dalek nqp/moarboot: review: https://github.com/perl6/nqp/commit/31ba5a51e9
00:38 dayangkun joined #perl6
00:52 jnthn 'night, #perl6
00:55 TimToady o/
01:01 araujo joined #perl6
01:07 ssutch joined #perl6
01:31 TimToady used an interesting new idiom in revising http://rosettacode.org/wiki/Comma_quibbling#Perl_6
01:31 TimToady <{ }>.join: ...
01:33 TimToady not only avoids using \{ \}, but also automatically stringifies the argment to join
01:36 berekuk joined #perl6
01:38 colomon ???
01:39 colomon that code is making me feel stupid.
01:40 * TimToady could take that two different ways :)
01:40 colomon you might have to take it two different ways.
01:41 TimToady there's no one ways about it :)
01:44 colomon oh, I see how it works.
01:44 colomon I think that might be TimToady++ for cleverness and TimToady-- for abuse of his own language
01:44 TimToady on average, I feel pretty average :)
01:46 colomon Huh.
01:46 colomon It seems like there should be a better idiom that <{ }>.join: for that, but I'm not sure that I'm seeing it.
01:47 TimToady I just thought this was an improvement over "\{$_\}" given ...
01:47 TimToady but it's arguable :)
01:47 * TimToady is prejudiced against backslashes
01:48 * TimToady is also prejudiced against infix:<~>
01:49 colomon yeah, the straightforward approach is infix:<~>
01:49 colomon which certainly is kind of ugly -- I mean, '{' ~ -- but it's also very clear
01:50 TimToady but it violates endweight to put something little like '}' at the end
01:50 TimToady and kinda hides the symmetry of { and }
01:51 TimToady unless you spread it to three lines
01:51 TimToady which is also a kind of ugly
01:52 TimToady I see <{ }>.join: as kinda like the '{' ~ '}' <innards> matcher in regex
01:53 colomon I agree the idea is nice, just think putting the all the interesting string content in the joiner is backwards.
01:53 colomon I'm sitting here trying to think of a better method for it.
01:53 TimToady join don't care :)
01:54 TimToady it violates your figure/ground sense, is the thing
01:54 colomon right
01:54 colomon I feel like I want some sort of "wrap" method instead
01:54 TimToady one is used to thinking of the innards as the constant
01:55 TimToady but, in fact, joining is exactly what it is doing
01:56 colomon start thinking like that, and the next thing you'll be allowing Code arguments for the joiner and passing them the surrounding two strings….
01:57 TimToady I think one would probably switch to reduce at that point
01:57 TimToady [~] is just a funny join ''
01:58 TimToady but it doesn't swap the 2nd and 3rd args like join, so is slightly more obscure about the wrapping
02:02 colomon joined #perl6
02:02 colomon [~] is just an elegant join ''
02:02 * colomon wonders why the hotel internet wants to log him out once each evening.
02:02 * TimToady has seen internets that behave like that
02:03 TimToady it's a mystery
02:04 geekosaur the internet here drops external connections and requires (transparent, oddly) reauthentication every day, fwiw
02:06 colomon some some reason I lost connectivity with gmail in the process -- I can get to other sites, but not it.  :\
02:08 geekosaur chrome? give it a bit or go to net-internals:, DNS tab, and flush
02:08 colomon ah well, guess I should $work.
02:15 rurban joined #perl6
02:15 rurban See https://cowlark.com/luje/doc/stable/doc/index.wiki for a better jvm-like backend (and then eventually embrace p2)
02:22 colomon geekosaur++ # "give it a bit" worked
02:23 geekosaur I gave you the wrong internals thing anyway. chrome://net-internals
02:23 geekosaur sorry
02:25 prevost joined #perl6
02:26 geekosaur also frefox has something similar I think but I have not touched firefox in years and don't intend to now
02:39 lue TimToady++ # aesthetically pleasing tricks
02:41 eternaleye joined #perl6
02:45 * lue wonders why the luje page talks about outperforming Sun's Hotspot and then giving benchmarks using IcedTea's Hotspot
02:55 logie joined #perl6
03:00 araujo joined #perl6
03:17 robinsmidsrod joined #perl6
03:57 preflex_ joined #perl6
04:20 kay_ joined #perl6
04:49 ivanshmakov jnthn, perigrin: The problem is that continuations is something I’m familiar with. And as for the (gather, take) pair — I wonder if it’s possible to implement the McCarthy’s ‘amb’ operator on top of them? (Which seems rather essential for Prolog-style programming.) http://www-formal.stanford.edu/jmc/basis.html
04:50 ivanshmakov What’s about Perl6 libraries, BTW? Are there any decent repositories to scan through?
04:52 Timbus http://modules.perl6.org/
04:52 Timbus thats about it
04:59 BenGoldberg McCarthy's amb operator could probably be defined in terms of perl6's any() operator
05:08 TimToady see http://rosettacode.org/wiki/Amb#Perl_6 for the current state of the art
05:08 TimToady if it turns out that rakudo ends up supporting continuations on all its backends as a matter of course, then we might decide to make it user-visible without chicanery
05:18 ivanshmakov ACK, thanks!
05:19 TimToady certainly logic programming is our weak paradigm at the moment
05:23 xenoterracide_ joined #perl6
05:39 scottp joined #perl6
05:48 moritz \o
05:48 SamuraiJack__ joined #perl6
05:53 diakopter moritz: howdy :D
05:53 hummeleB1 joined #perl6
05:54 berekuk joined #perl6
05:59 berekuk joined #perl6
06:13 logie joined #perl6
06:22 darutoko joined #perl6
06:28 masak re FAQ and answering the same questions all the time: maybe it's time to have an FAQ-bot.
06:28 masak (good mor'n #perl6)
06:28 rurban joined #perl6
06:28 masak I would have been arguing against the notion of an FAQ-bot on #perl6 just a year or two ago. but we have grown, and time has passed.
06:29 masak maybe we could even dogfood it ;)
06:31 masak the #git people have a nice faqbot.
06:31 masak it replies to variants of 'hi' from newcomers.
06:31 fhelmberger joined #perl6
06:32 masak and then all it does is reply with a long line of good reply keyed on things like '!revert'
06:32 masak either alone on a line, or as part of a line.
06:32 masak looks fairly safe against false positives.
06:33 * masak will ponder a gist with 10-ish Qs and As
06:33 kaleem joined #perl6
06:43 masak oh! the way to compose Qs and As would be to go back to many known interactions with out-of-chamber visitors, see what they asked, and compose good answers to them.
06:44 masak where "good" needs to be defined not just as "makes us happy/proud", but "actually feels like an answer to the questioner/actually helps somehow".
06:54 arnsholt I think #haskell has the correct A to the "can Perl 6" Q, BTW
06:58 moritz masak: faq.perl6.org is based on questions that newcomers actually ask (or asked) a lot in here
07:11 moritz r: say 43595856832594079179995196538721440​63854709102652201963187054821445240​85345275999740244625255428455944579 * 56254576172688410375627700730444748​17438769440075105451049468510945483​96577479473472146228550799322939273 # RSA-210
07:11 camelia rakudo 994761: OUTPUT«2452466449002782119765176635730880184​67026787678332759743414451715061600830038587​21695220839933207154910362682719167986407977​67232430056005920356312465612184658179041001​31859299619933817012149335034875870551067␤»
07:11 moritz http://www.mersenneforum.org/showpost.php?p=354259 for reference
07:14 dalek specs: 251282d | larry++ | S04-control.pod:
07:14 dalek specs: Loops in a statementlist are forced to be eager
07:14 dalek specs:
07:14 dalek specs: Loops used at the top-level of a block where multiple semicolon-separated
07:14 dalek specs: statements are expected now are always forced to be eagerly evaluated, even
07:14 dalek specs: if they return a value.
07:14 dalek specs:
07:14 dalek specs: Loops used where a single statement is parsed retain lazy semantics.
07:14 dalek specs: For instance, inside brackets, or after a blorst of the st persuasion.
07:15 dalek specs: Some of the list comprehensions we've written may need parens around
07:15 dalek specs: them, or "lazy" in front of them, to retain their current lazy semantics.
07:15 dalek specs: review: https://github.com/perl6/specs/commit/251282d9f8
07:15 kivutar joined #perl6
07:17 FROGGS joined #perl6
07:22 masak moritz: ok, I will start there, then.
07:24 masak moritz: ok, faq.perl6.org and I have overlapping but non-identical goals.
07:24 lizmat good *, #perl6!
07:24 masak moritz: and the overlap is small, but could maybe be made bigger.
07:24 masak lizmat, good *!
07:26 moritz masak: agreed
07:27 tadzik hmm, is that diakopter
07:27 tadzik 's talk? https://o.twimg.com/2/proxy.jpg?t=HBg_aHR0cDovL​2Zhcm00LnN0YXRpY2ZsaWNrci5jb20vMzY5Ny8xMDEyMjI1​ODk4Nl83OTllNDczOWNmX3ouanBnFMAHFNAFABYAEgA&amp​;s=p_b3xak8zIP2UauShcrm506OYXCgVvpyVhl3M5yT0EI
07:27 tadzik argh, dat url
07:33 rurban joined #perl6
07:34 dalek Perlito: 8f5d7d4 | (Flavio S. Glock)++ | misc/pretty_print.pl:
07:34 dalek Perlito: Perlito5 - cleanup
07:34 dalek Perlito: review: https://github.com/fglock/​Perlito/commit/8f5d7d455a
07:35 daxim joined #perl6
07:38 masak tadzik: that's the title of the talk, at least.
07:38 salv0 joined #perl6
07:41 dmol joined #perl6
07:43 lizmat http://devblog.xing.com/everyth​ing-else/yapc-2013-impressions/   (Perl impressions after YAPC::EU 2013)
07:47 [Sno] joined #perl6
07:49 tadzik yep, hence my question
07:53 masak "Larry Wall’s vision presented in his keynote at YAPC::EU 2013 appeared to me as very clear and consistent. I find all the recent discussions about changing versioning schemes, jumping over Perl 6 directly to Perl 7 without resolving any design flaws of Perl 5 solves absolutely nothing and should be stopped now. And I mean it."
07:53 masak that feeling, of being part of framing an issue, and succeeding.
07:53 masak \o/
07:57 masak in other news: on a first reading, I am weakly positive towards https://github.com/perl6/specs/commit/251282d9f8 -- TimToady++
07:58 masak (still reserve the right to be characteristically bitter and vitriolic if it doesn't work out in practice, though) :P
07:58 masak (but it does look good)
08:01 TimToady it fits in with the notion that statement-ending ; is the primary marker of the side-effect monad
08:01 masak yeah, I noticed.
08:02 masak https://twitter.com/audreyt​/status/386052241209032705 # :)
08:04 moritz it reflects pretty well what sorear++ already did in niecza, afaict
08:04 moritz TimToady++
08:06 masak TimToady: I think it's commonly called "sequence monad". at least in Scala and Clojure.
08:14 FROGGS joined #perl6
08:19 sqirrel joined #perl6
08:19 dalek rakudo/nom: 70f2ae0 | (Elizabeth Mattijsen)++ | src/core/Deprecations.pm:
08:19 dalek rakudo/nom: First version of deprecation message handler code (not used yet)
08:19 dalek rakudo/nom: review: https://github.com/rakudo/rakudo/commit/70f2ae03f9
08:33 preflex joined #perl6
08:33 rurban joined #perl6
08:39 jnthn 251282d9f8 seems reasonable
08:39 yoleaux 07:34Z <FROGGS> jnthn: \o/
08:39 jnthn TimToady++
08:43 dakkar joined #perl6
08:46 iSlug joined #perl6
09:16 grondilu joined #perl6
09:23 donaldh joined #perl6
09:23 wsri joined #perl6
09:24 nwc10 masak: presumably one approach would be to convert the IRC logger bot to Perl 6, with the plan being to have re-usable IRC bot code which then is a start on a FAQ-bot
09:25 zakharyas joined #perl6
09:27 masak hmmm
09:27 masak sounds like a bit of a detour to me.
09:28 masak I mean, I like the re-usable part.
09:28 nwc10 OK, then start with the FAQ bot, and then refactor the IRC logger to use its code :-)
09:28 masak :)
09:31 masak I have a feeling the challenges with either of those bots will be to keep it running reliably, and not hog resources.
09:31 masak but... I guess that's kind of the point of the exercise.
09:32 nwc10 "long running bot" isn't going to worry about startup time, so sounds like a good fit for the JVM
09:33 jnthn Aye
09:33 jnthn JVM has sockets, is stable enough to run for a long time, etc.
09:34 rurban joined #perl6
09:35 FROGGS and it has channels! like irc
09:36 nwc10 oooh, interesting. concurrency
09:36 cognominal joined #perl6
09:37 jnthn oops, I forgot to submit my APW talks at the weekend...
09:37 jnthn To my credit, I did get NQP bootstrapped on Moar, though :P
09:37 FROGGS yes, you did :o)
09:37 donaldh jnthn++
09:38 FROGGS what is APW btw?
09:38 nwc10 jnthn: yes, domm is keen for more talks
09:38 nwc10 FROGGS: http://act.useperl.at/apw2013/
09:38 FROGGS ahh, austria
09:39 nwc10 r: print lines
09:39 camelia rakudo 70f2ae: OUTPUT«Land der Berge, Land am Strome,Land der Äcker, Land der Dome,Land der Hämmer, zukunftsreich!Heimat bist du großer Söhne,Volk, begnadet für das Schöne,vielgerühmtes Österreich,vielgerühmtes Österreich!Heiß umfehdet, wild umstrittenliegst dem Erdteil d…»
09:52 * grondilu suggested a "2D morphing" task on RC.  Mentioning it in case you'd be interested:  http://rosettacode.org/wiki/Rosetta_Code:Village_P​ump/Suggest_a_programming_task#General_2D_morphing
10:00 nwc10 jnthn: I forget - at what point in the history of the JVM bootstrapping did the custom repository go away? Once NQP-on-JVM could build Rakudo?
10:00 nwc10 ie, right now there's an NQP and a Parrot checked out inside the MoarVM checkout. When (and how) does that change?
10:02 jnthn nwc10: nqp-cc will go away, and MoarVM repo will just contain the VM itself.
10:02 jnthn nwc10: It'll change once we're comfortable with the bootstrap and decide to close the loop.
10:02 jnthn nwc10: At the point we do that we *have* to be backwards compatible on bytecode at least one version.
10:03 jnthn (And yes, if you break back-compat you most likely immediately break the bootstrap, which is a rather nice canary-in-the-mine thing...)
10:03 jnthn s/break the bootstrap/break the ability to build NQP/
10:18 dalek Perlito: 6f8c233 | (Flavio S. Glock)++ | / (5 files):
10:18 dalek Perlito: Perlito5 - perl5 - labels, continue blocks
10:18 dalek Perlito: review: https://github.com/fglock/​Perlito/commit/6f8c233a06
10:34 rurban joined #perl6
10:39 denisboyun joined #perl6
10:41 [particle]1 joined #perl6
10:50 grondilu my thoughts on 'loop {}':  http://perlmonks.org/?node_id=1057242
11:03 dalek Perlito: f88464c | (Flavio S. Glock)++ | / (3 files):
11:03 dalek Perlito: Perlito5 - perl6 - Perl6::PrettyPrinter stub
11:03 dalek Perlito: review: https://github.com/fglock/​Perlito/commit/f88464ca90
11:05 sqirrel joined #perl6
11:28 berekuk joined #perl6
11:37 rurban joined #perl6
11:46 denis_boyun joined #perl6
11:48 arnsholt nwc10: An additional challenge with starting with the logger bot on JVM is the lack of NativeCall
11:48 arnsholt Although I guess you could circumvent that with the Java interop and JDBC
11:49 nwc10 NativeCall has to arrive soon. (I believe that it's the last blocker for Star)
11:49 nwc10 and I think that Rakudo would do well to (also) offer JDBC
11:50 arnsholt I'm hoping NativeCall arrives soon on JVM too
11:50 arnsholt But I should probably do a bit more than hope, since I'm the one supposed to be implementing it =)
11:51 nwc10 As best I can tell, if you use Perl 5's DBI interface you can talk through to JDBC: https://metacpan.org/release/DBD-JDBC
11:51 nwc10 and ODBC: https://metacpan.org/release/DBD-ODBC
11:52 arnsholt Neat!
11:52 jnthn arnsholt: Now that NQP bootstrap on Moar is largely taken care of, I'll be able to give some tuits to NativeCall on JVM also :)
11:52 nwc10 so this means that Moar beats JavaScript to be the 3rd platform for NQP?
11:52 moritz not yet.
11:52 arnsholt jnthn: That would be much appreciated
11:53 nwc10 what is the Perl 6 equivalent of DBI? (ie database abstraction)
11:53 arnsholt The biggest blocker is the whole box_target thing
11:53 FROGGS it needs to pass the qregex tests...
11:53 nwc10 (something I think that even Python doesn't do)
11:53 FROGGS DBIish?
11:53 arnsholt Once box_target works, I think the remaining NativeCall stuff should be relatively straightforward
11:55 moritz nwc10: DBIish
11:55 nwc10 OK, so a DBIish::JDBC would seem useful
11:55 moritz aye
11:55 arnsholt DBIish is a bit of a placeholder though
11:56 moritz yes, it's a kind of minimal thing that could possibly work
11:56 FROGGS everythings starts small :o)
12:01 FROGGS joined #perl6
12:12 kivutar joined #perl6
12:19 pdurbin left #perl6
12:22 daxim_ joined #perl6
12:32 FROGGS joined #perl6
12:34 dayangkun joined #perl6
12:41 dmol joined #perl6
12:48 dalek perl6-roast-data: c28a35a | coke++ | / (5 files):
12:48 dalek perl6-roast-data: today (automated commit)
12:48 dalek perl6-roast-data: review: https://github.com/coke/perl6​-roast-data/commit/c28a35a074
12:48 dalek perl6-roast-data: 98f7450 | coke++ | perl6_pass_rates.csv:
12:48 dalek perl6-roast-data: fix dates of previous run, ended too late
12:48 dalek perl6-roast-data: review: https://github.com/coke/perl6​-roast-data/commit/98f7450955
12:52 moritz .to lizmat I've bisect that Mu.[0] memory explosion to commit f51a00baed774e4a2fd405c1928bb84f62a1a888
12:52 yoleaux moritz: I'll pass your message to lizmat.
12:53 lizmat moritz: to be honest, I would like to get rid of that commit as well
12:53 yoleaux 12:52Z <moritz> lizmat: I've bisect that Mu.[0] memory explosion to commit f51a00baed774e4a2fd405c1928bb84f62a1a888
12:53 moritz lizmat: understandable :-)
12:53 moritz r: say $default
12:54 lizmat the only problem is that rakudo doesn't consider a candidate without named parameters narrower than a candidate with named *optional* parameters
12:54 camelia rakudo 70f2ae: OUTPUT«␤»
12:54 moritz I see
12:54 daxim__ joined #perl6
12:55 moritz and thus we need a candidate for each (delete/exists/kv/p/k/v) adverb where it's mandatory
12:55 moritz hm, maybe the 'is default' trait could help
12:55 lizmat yup  :-(
12:55 lizmat on the candidate without named parameters ?
12:55 moritz yes
12:56 lizmat ok, I'll try that in a mo
12:56 lizmat just about to get is DEPRECATED working the way *I* want
12:56 lizmat :-)
12:56 moritz :-)
12:57 * moritz just hopes that applying the 'is default' trait works in the setting
12:57 lizmat probably not, but it's worth a try  :-)
12:58 moritz if not, one has to mix in a method default() { True } into the Sub object at BEGIN time
12:58 * moritz hopes that infix:<does> works that early in the setting :-)
12:58 moritz if not, one has to...
12:58 FROGGS self.HOW.mixin(self, ...) ?
12:59 moritz yes
12:59 moritz oh, erm, but, into that one candidate, not into the proto
12:59 * FROGGS thought he was wrong just after pressing <ENTER>
12:59 moritz so one has to manually get hold of ther right candidate and *ME RUNS AWAY SCREAMING*
13:00 FROGGS *g*
13:01 FROGGS moritz: I will hold it down you get all its candi
13:07 arnsholt nqp: my $_ := nqp::ctx(); $_ := nqp::ctxcaller($_) while 1;
13:07 camelia nqp: OUTPUT«Null PMC access in get_attr_str()␤current instr.: '' pc 71 ((file unknown):57661493) (/tmp/0FZHGUwOJg:1)␤»
13:08 arnsholt jnthn: That one above is from NQP #65, which used to segfault. Still a bug though, isn't it?
13:09 moritz well, that's open to interpretation
13:09 jnthn No, that's just not knowing that you should check the thing you got back...
13:09 moritz what should ctxcaller return for the top-level call frame?
13:10 moritz null seems like a valid choice
13:11 arnsholt Right, right. It's nqp::ctxcaller being given an invalid argument
13:11 arnsholt Another bug I can close \o/
13:11 moritz the other obvious-ish choice would be NQPMu
13:11 moritz but I guess that might get hairy wrt bootstrapping
13:12 jnthn Yeah...probably null is best
13:12 jnthn I think that's what the code using it checks for
13:16 PacoAir joined #perl6
13:22 denisboyun joined #perl6
13:24 arnsholt What's the current state of the eval server for NQP/JVM?
13:25 arnsholt Is it working enough that we can close #129, or should it be left open for now?
13:32 PacoAir joined #perl6
13:32 kaare__ joined #perl6
13:32 alester joined #perl6
13:39 ajr joined #perl6
13:39 timotimo FWIW i recently tracked down why the qregex tests hang (and consume infinite memory) on moarvm
13:39 FROGGS timotimo: join me on #moarvm :o)
13:41 timotimo will do
13:41 timotimo once i backlog
13:42 FROGGS timotimo: is it push or unshift?
13:42 Bzek joined #perl6
13:42 timotimo no
13:42 timotimo well, it may be
13:42 timotimo see #moarvm
13:46 btyler joined #perl6
13:47 ggoebel3 joined #perl6
13:57 skids joined #perl6
14:00 lizmat jnthn, moritz: in a backtrace, is there a way to find out if a frame is a proto ?
14:00 pmurias joined #perl6
14:03 lizmat to me, they seem indistinguishable from a normal sub/method  :-(
14:03 kaleem joined #perl6
14:04 pmurias_ joined #perl6
14:04 jnthn lizmat: You can get hold of the code object
14:04 moritz lizmat: you can call .?candidates on the code object
14:04 jnthn lizmat: And then call .is_dispatcher
14:04 jnthn r: proto foo() { }; say &foo.is_dispatcher
14:04 camelia rakudo 70f2ae: OUTPUT«True␤»
14:04 lizmat aha… ok
14:04 jnthn r: sub foo() { }; say &foo.is_dispatcher
14:04 camelia rakudo 70f2ae: OUTPUT«False␤»
14:05 lizmat jnthn++
14:06 logie joined #perl6
14:06 FROGGS r: multi foo() { }; say &foo.is_dispatcher
14:06 camelia rakudo 70f2ae: OUTPUT«True␤»
14:06 FROGGS :o)
14:07 FROGGS yay, I remember things from exactly a year ago
14:08 masak r: my regex foo {}; say &foo.is_dispatcher
14:08 camelia rakudo 70f2ae: OUTPUT«[31m===[0mSORRY![31m===[0m Error while compiling /tmp/9igBv23oHVâ�¤Null regex not allowedâ�¤at /tmp/9igBv23oHV:1â�¤------> [32mmy regex foo {[33mâ��[31m}; say &foo.is_dispatcher[0mâ�¤    expecting any of:â�¤        scoped declaratorâ�¤        new name t…»
14:08 masak mah :)
14:08 masak r: my regex foo { OH HAI }; say &foo.is_dispatcher
14:08 camelia rakudo 70f2ae: OUTPUT«False␤»
14:08 timotimo mahsak :)
14:08 pmurias_ nqp-moarvm has bootstrapped?
14:08 timotimo how about t4? :)
14:08 masak timotimo: will try to find review time this week.
14:09 timotimo :)
14:09 * timotimo aims not to nag&distract, but only to show he cares
14:12 dalek Perlito: 5cff33c | (Flavio S. Glock)++ | / (3 files):
14:12 dalek Perlito: Perlito5 - perl6 - pretty-print placeholder - "-Cperl62"
14:12 dalek Perlito: review: https://github.com/fglock/​Perlito/commit/5cff33ca78
14:14 rurban joined #perl6
14:22 pmurias joined #perl6
14:24 awwaiid joined #perl6
14:31 telex joined #perl6
14:32 denis_boyun joined #perl6
14:36 dalek rakudo/nom: 0b5db01 | (Elizabeth Mattijsen)++ | src/core/Backtrace.pm:
14:36 dalek rakudo/nom: Add "noproto" named param to next-interesting-index, to exclude proto's
14:36 dalek rakudo/nom: review: https://github.com/rakudo/rakudo/commit/0b5db01a69
14:36 dalek rakudo/nom: 0957ab1 | (Elizabeth Mattijsen)++ | src/core/Deprecations.pm:
14:36 dalek rakudo/nom: Add class/instance method "report", further tweaks
14:36 dalek rakudo/nom: review: https://github.com/rakudo/rakudo/commit/0957ab1682
14:36 dalek rakudo/nom: c11e1d8 | (Elizabeth Mattijsen)++ | src/core/ (19 files):
14:36 dalek rakudo/nom: Adapt is DEPRECATED mentions in core to the new format
14:36 dalek rakudo/nom: review: https://github.com/rakudo/rakudo/commit/c11e1d8d10
14:36 dalek rakudo/nom: bba4196 | (Elizabeth Mattijsen)++ | tools/build/Makefile- (2 files):
14:36 dalek rakudo/nom: Make sure src/core/Deprecations is included in the build
14:36 dalek rakudo/nom: review: https://github.com/rakudo/rakudo/commit/bba4196d7b
14:37 lizmat calling deprecated subs/methods now results in *one* message at end of execution
14:37 lizmat $ perl6 -e 'my %h; %h.delete("a"); say "done"'
14:37 lizmat done
14:37 lizmat Saw 1 call to deprecated code during execution.
14:37 lizmat ========================================​========================================
14:37 lizmat Method delete (from Hash) called at:
14:37 lizmat -e, line 1
14:37 lizmat Please use the :delete adverb instead.
14:37 tadzik \o/
14:37 moritz lizmat++
14:38 lizmat r: sub a () is DEPRECATED('b') {}; a
14:38 camelia rakudo 70f2ae: OUTPUT«Sub 'a' has been deprecated, please use b instead  in any  at /tmp/tYb7tt5N5A:1␤␤»
14:38 timotimo looks good :)
14:39 lizmat the last one was still the old one
14:40 PZt joined #perl6
14:47 masak lizmat++
14:47 benabik joined #perl6
15:01 dalek Perlito: 99460c9 | (Flavio S. Glock)++ | / (3 files):
15:01 dalek Perlito: Perlito5 - perl6 - t5/01-perlito/010-sanity.t pass
15:01 dalek Perlito: review: https://github.com/fglock/​Perlito/commit/99460c9853
15:05 slavik joined #perl6
15:09 dalek rakudo/nom: f14c3e5 | (Elizabeth Mattijsen)++ | src/core/Backtrace.pm:
15:09 dalek rakudo/nom: Don't use a try block if we don't need one
15:09 dalek rakudo/nom: review: https://github.com/rakudo/rakudo/commit/f14c3e50d0
15:10 dalek Perlito: 3579bd8 | (Flavio S. Glock)++ | / (2 files):
15:10 dalek Perlito: Perlito5 - perl6 - t5/01-perlito/030-num.t pass; 1 TODO
15:10 dalek Perlito: review: https://github.com/fglock/​Perlito/commit/3579bd8b20
15:11 araujo joined #perl6
15:11 sqirrel joined #perl6
15:14 dalek Perlito: d7e8199 | (Flavio S. Glock)++ | / (2 files):
15:14 dalek Perlito: Perlito5 - perl6 - no parenthesis in "if"
15:14 dalek Perlito: review: https://github.com/fglock/​Perlito/commit/d7e81996fa
15:16 ajr joined #perl6
15:20 dalek rakudo/nom: d7aa6a8 | (Elizabeth Mattijsen)++ | src/core/Any.pm:
15:20 dalek rakudo/nom: Make sure KeySet|KeyBag coercer exist again as DEPRECATED
15:20 dalek rakudo/nom: review: https://github.com/rakudo/rakudo/commit/d7aa6a8fa5
15:21 lizmat just in case someone in the eco system was using .KeySet or .KeyBag
15:22 xenoterracide_ joined #perl6
15:26 dalek Perlito: 4234774 | (Flavio S. Glock)++ | / (6 files):
15:26 dalek Perlito: Perlito5 - perl6 - cleanup temporary "perl62" backend; perl6 pretty-print is now default
15:26 dalek Perlito: review: https://github.com/fglock/​Perlito/commit/4234774d9a
15:27 rurban joined #perl6
15:28 dalek Perlito: ac38a0d | (Flavio S. Glock)++ | src5/util/perlito5-browser-perl6.pl:
15:28 dalek Perlito: Perlito5 - perl6 - typo
15:28 dalek Perlito: review: https://github.com/fglock/​Perlito/commit/ac38a0df45
15:32 Ulti does Perl 6 have labels and goto?
15:32 Ulti after some Perl 5 code I just saw can I request they get removed? >:3
15:34 geekosaur labels have uses other than goto
15:34 geekosaur even in perl5. (that said, 99% of code using goto in perl5 should be shot)
15:34 timotimo does the moarvm-nqp use the selfhosted nqp already?
15:34 GlitchMr You can specify them in "next", "last", and "redo", but it's still a "goto".
15:35 GlitchMr Besides, I don't think "goto" is bad. Sometimes it can simplify control flow.
15:35 tadzik timotimo: it can
15:36 GlitchMr If your entire control flow is made of gotos, it's not good. But sometimes goto can make code more readable.
15:37 TimToady especially when the alternative is to use mystery status variables
15:37 TimToady and if goto is bad, what can we say about continuations?  :)
15:38 TimToady and there isn't any feature that isn't abused at some point by hoi polloi
15:39 GlitchMr Also, continuations (and coroutines) are just exceptions you can continue from.
15:39 GlitchMr I'm perfectly fine with forward goto.
15:40 Ulti this was a got instead of if-not or unless:   pos1: if($thing) {goto pos2;} else {do-stuff();} pos2: if($other_thing) {goto pos3;} else {do-moar();} ....
15:41 Ulti 22 labels and 57 goto's in a single script... and nearly everything inside the if-elsif trains was `shell horror`
15:41 GlitchMr What is the point of "goto pos2"?
15:41 Ulti exactly!
15:41 btyler joined #perl6
15:41 Ulti there is no point just awful awful code
15:42 Ulti I have to assume it was compiled by another script from many individual pieces
15:42 GlitchMr This is awful code, but you can make just as awful code with "if"s.
15:42 Ulti that is the only way I can have a mental model of how this thing was born, it couldnt have come from the mind of a human
15:42 Ulti GlitchMr: oh it had awful if's too :) like a thousand lines of nested elsif
15:42 ajr_ joined #perl6
15:42 TimToady People screw up their sex lives too, but that doesn't mean we should get rid of sex. :)
15:43 Ulti strawman detected :P
15:43 dalek rakudo/nom: d7e5e1d | (Elizabeth Mattijsen)++ | src/Perl6/Actions.nqp:
15:43 dalek rakudo/nom: Make sure phaser code is also added for methods
15:43 dalek rakudo/nom:
15:43 dalek rakudo/nom: This makes "is DEPRECATED" work on methods
15:43 dalek rakudo/nom: review: https://github.com/rakudo/rakudo/commit/d7e5e1d942
15:43 perigrin joined #perl6
15:44 TimToady you were requesting to have sex^Wgoto removed, so no strawman
15:44 GlitchMr http://thedailywtf.com/Article​s/Unconditionally-Useless.aspx
15:44 GlitchMr Found it.
15:45 GlitchMr http://thedailywtf.com/Articles/Innova​tions_from_the_Inventor_of_the__0x26_q​uot_0x3b_ElseIf_0x26_quot_0x3b_.aspx
15:45 GlitchMr Or this.
15:49 Ulti but I agree bad programmers make bad code and that shouldnt ruin it for the rest of us
15:49 pmurias joined #perl6
15:49 rjbs GlitchMr++ # Free Goto
15:49 rjbs (by which I mean: it isn't always awful; not that it should go away)
15:50 GlitchMr I actually sometimes wanted to use goto in JavaScript.
15:50 TimToady maybe if I put in the stipulation that you have to send me $5 every time you use 'goto'...
15:51 GlitchMr I seen lots of ugly code without goto.
15:51 pmurias GlitchMr: me too, for emitting code ;)
15:51 yoleaux 4 Oct 2013 17:26Z <[Coke]> pmurias: - fixed the existing _I opcodes i the docs.
15:51 rjbs So, I'm thinking about running a little programming competition for some friends, some of whom are not very advanced programmers.
15:51 GlitchMr Actually, goto is rare these days, considering how many people think it's worst thing ever.
15:51 rjbs I'd write a "server" to run games of tic-tac-toe, mastermind, or other trivialities.
15:51 rjbs How's the non-blocking IO in any p6 these days?
15:52 rjbs (I'm not sure what I'll write it in; p5 if I just want to get it done, or something else for fun.)
15:52 TimToady use MONKEY_AROUND
15:54 geekosaur sounds good to me
15:55 darutoko joined #perl6
15:55 rurban joined #perl6
15:56 FROGGS joined #perl6
15:57 diakopter MONKEY_CARGO
15:58 geekosaur MONKEY_SEE_MONKEY_GO
15:58 perigrin use MONKEY_BAR; # stop people from MONKY_PATCH-ing
15:58 TimToady I think "around" is rather appropriate for moving around the program
15:59 diakopter MONKEY_THROW_POO
15:59 perigrin Poo.fling
15:59 Ulti :) the new PhD student I'm working with has gone home from the stress of reading this code lol
16:00 diakopter home to another continent?
16:00 Ulti another dimension, where you can't goto
16:00 TimToady .oO(Piled, higher and Deeper)
16:01 masak I see goto fear and loathing is still alive and well :)
16:01 TimToady we should probably a canonical list of MONKEY declarations
16:01 masak accidentally?
16:02 perigrin TimToady: have an entire ... barrell of MONKEY declarations?
16:02 Ulti I dont loath or fear goto, I think its a perfectly acceptable way to break out of nested loops... but so is 'last 2' or something similar
16:02 rindolf joined #perl6
16:02 * TimToady was thinking earlier that the monkey barrel would autoload everything from anywhere
16:03 moritz \o
16:03 dylanwh ls
16:03 Ulti also goto does make evolutionary programming a lot easier in Perl :3 just inject some labels and gotos at random until the desired function drops out
16:04 fglock joined #perl6
16:05 GlitchMr What's wrong with simple "no MONKEY_PATCHING"?
16:05 TimToady too generic
16:05 GlitchMr There is "no" keyword for a reason.
16:05 TimToady and we're trying to make the default sane
16:06 TimToady so that The Boss can ack for 'MONKEY' and figure out where you're cheating
16:06 jnap joined #perl6
16:06 GlitchMr Tell him to ack for 'use MONKEY'
16:06 benabik joined #perl6
16:06 GlitchMr Besides, you could hide "use" with "eval".
16:06 TimToady no, that doesn't escape the lexical scope
16:06 moritz or use the MOP directly
16:07 TimToady arguably, using the MOP should require some form of MONKEY
16:07 arnsholt diakopter: You have any objections to closing NQP #66?
16:07 GlitchMr I'm sure there is a way to say MONKEY without actually doing so.
16:07 TimToady ss/the MOP/the MOP to modify anything/
16:07 TimToady GlitchMr: that's not the point
16:08 TimToady the point is to establish a culture where you tell the reader what's tricky
16:09 GlitchMr use tricky Monkey::Patching;
16:10 GlitchMr oh wait, it's a pragma
16:10 GlitchMr use tricky monkey::patching;
16:10 FROGGS I'd say MONKEY_PATCHING should on by default and must be turned off explicitly :P
16:10 GlitchMr Or, in C# style, use unsafe monkey::patching;
16:10 TimToady the thing is, if we make the monkey business fun, people won't mind so much that it's mandatory
16:11 TimToady Ada started this notion with UNCHECKED_TYPE_CONVERSION and such, but they didn't make it fun :)
16:11 GlitchMr What about unsafe keyword in C#?
16:12 GlitchMr It lets you do stuff like having pointers.
16:14 pmurias FROGGS: why make MONKEY_PATCHING on by default?
16:14 FROGGS pmurias: that was a joke!
16:15 FROGGS I'm totally with TimToady that turning it on must feel icky
16:15 FROGGS and that one must see that at a first glance
16:16 TimToady 🙈
16:16 TimToady .u 🙈
16:16 yoleaux U+1F648 SEE-NO-EVIL MONKEY [So] (🙈)
16:16 * perigrin worries that unicode is broken in his irssi now.
16:17 TimToady unsafe pointers is probably MONKEY_BUSINESS or some such
16:19 TimToady some feature that is deemed overly restrictive for standard Perl should be a MONKEY_CAGE
16:20 TimToady maybe that's nqp-emulation mode :P
16:20 lee_ i don't know what MONKEY_TYPEWRITER would be
16:20 pmurias aren't unsafe pointers NativeCall? :)
16:21 xinming_ joined #perl6
16:21 TimToady lee_: we already kinda have that one in MONKEY_TYPING
16:21 lee_ oh, duh :P now it makes more sense
16:21 * lee_ is slow
16:22 TimToady it's meant to be sort of a slam on Ruby monkey patching culture :)
16:24 TimToady .oO(if it walks like a monkey, and quacks like a monkey...)
16:24 Ulti and types like a thousand monkeys
16:25 Bzek joined #perl6
16:25 Ulti oh lee_ already covered that
16:26 btyler joined #perl6
16:29 masak "Perl 6: way ahead of you with the cultural memes."
16:30 diakopter if it quacks like a monkey, that's a really smart duck
16:31 TimToady name it Mallard Shakespeare
16:32 masak now y'all're just beating a dead duck.
16:32 TimToady maybe our language emulations are misnamed. instead of *ish, we should have use APE_PHP and such
16:33 moritz don't insult the apes :-)
16:33 TimToady okay, APE_HASKELL then
16:34 * masak .oO( monkad )
16:34 [Sno] joined #perl6
16:34 TimToady Also Sprach Masonk
16:36 TimToady unsafe comparisons would have to be APPLES_AND_ORANGUTANS
16:37 * perigrin has a mental image of a bunch of proto-homonids around an iPhone 5s now ...
16:38 dalek Perlito: dff1daa | (Flavio S. Glock)++ | / (4 files):
16:38 dalek Perlito: Perlito5 - perl6 - update browser version
16:38 dalek Perlito: review: https://github.com/fglock/​Perlito/commit/dff1daaad9
16:39 diakopter perigrin: miami beach?
16:39 TimToady maybe the nqp dialect should be "use HOMONIN_TOOLS"
16:40 perigrin diakopter: depends on what part of the beach ... some of them wax *really* well down there.
16:42 TimToady need a stony beach to find those stone tools
16:42 diakopter *groan* down there
16:43 perigrin I didn't actually *intend* for that ... I'm about 300 miles north of Miami Beach
16:44 diakopter oh heh.
16:48 * TimToady wonders why it's called "monkeyshine"
16:49 diakopter like moonshine, but fewer o's and an additional key
16:50 TimToady my AmHer is unhelpful on the subject
16:51 perigrin TimToady: http://www.word-detective.com/201​1/03/gallivant-and-monkeyshines/
16:51 TimToady though it offers "monkey pot" and "monkey jacket"
16:52 lowpro30 joined #perl6
16:58 ggoebel4 joined #perl6
17:00 dmol joined #perl6
17:01 zby_home_ joined #perl6
17:02 dayangkun joined #perl6
17:03 grondilu nqp: my int $a := 0; say(++$a);
17:04 camelia nqp: OUTPUT«1␤»
17:04 grondilu r: my int $a := 0; say(++$a);
17:04 camelia rakudo d7e5e1: OUTPUT«[31m===[0mSORRY![31m===[0m Error while compiling /tmp/8C4Dr_5Rgsâ�¤Cannot bind to natively typed variable '$a'; use assignment insteadâ�¤at /tmp/8C4Dr_5Rgs:1â�¤------> [32mmy int $a := 0[33mâ��[31m; say(++$a);[0mâ�¤    expecting any of:â�¤        postfi…»
17:04 * grondilu wonders why something what works in nqp does not work in Perl6
17:06 TimToady because nqp has screwey semantics :)
17:07 TimToady in normal p6, binding is only for copying pointers, not native values, which is always assignment as in C
17:08 TimToady if we allowed direct access to the pointers as C does, we could use assignment for those too
17:08 TimToady but we have safe refs, so that operation is hidden behind :=
17:08 TimToady *screwy
17:09 TimToady basically, nqp overloads := for two different operations from p6's point of view
17:10 TimToady an alternate view is that nqp uses := consistenly for what C uses = for
17:11 TimToady if you consider pointers to be native in nqp
17:11 TimToady in either case, p6 ain't goin' there :)
17:13 ggoebel joined #perl6
17:15 xinming joined #perl6
17:18 denis_boyun joined #perl6
17:18 rurban joined #perl6
17:26 dalek Perlito: 725e971 | (Flavio S. Glock)++ | / (3 files):
17:26 dalek Perlito: Perlito5 - perl6 - fix internal dependencies
17:26 dalek Perlito: review: https://github.com/fglock/​Perlito/commit/725e971816
17:27 FROGGS install/bin/moar nqp.moarvm t/qregex/01-qregex.t
17:27 FROGGS Unsupported use of - as character range; in Perl 6 please use .. for range, for explicit - in character class, escape it or place as last thing at line 29, near "> $m { %ex"
17:27 FROGGS :o(
17:27 FROGGS ohh, ww
17:27 [Coke] arnsholt: you closed nqp#66 but didn't say why?
17:29 [Coke] pugs: say "blah?"
17:29 camelia pugs: OUTPUT«blah?␤»
17:29 FROGGS[mobile] joined #perl6
17:29 [Coke] .ask moritz did you fix pugs on host07?
17:29 yoleaux [Coke]: I'll pass your message to moritz.
17:29 lowpro30_ joined #perl6
17:30 [Coke] .ask arnsholt if nqp #66 is fixed, or DIHWIDT.
17:30 yoleaux [Coke]: I'll pass your message to arnsholt.
17:31 lowpro30__ joined #perl6
17:31 arnsholt [Coke]: Yeah, I closed it
17:31 yoleaux 17:30Z <[Coke]> arnsholt: if nqp #66 is fixed, or DIHWIDT.
17:31 arnsholt Also, DIHWIDT?
17:31 timotimo doctor, it hurts when i do thtat
17:32 timotimo (well, then don't do that)
17:32 arnsholt Oh, right
17:32 TimToady S99:221
17:32 synopsebot Link: http://perlcabal.org/syn/S99.html#line_221
17:32 arnsholt Yeah, I think it's mostly the latter
17:32 TimToady S99:DIHWIDT  # does this work?
17:33 arnsholt [Coke]: A bit more information from jnthn at http://irclog.perlgeek.de/​perl6/2013-10-06#i_7678311
17:33 arnsholt But yeah, it's essentially just that an empty loop body isn't actually completely empty =)
17:34 PerlJam TimToady++ that would be awesome
17:35 FROGGS[mobile]2 joined #perl6
17:35 rurban joined #perl6
17:37 dalek nqp/moarboot: 127cae0 | jnthn++ | tools/build/Makefile-Moar.in:
17:37 dalek nqp/moarboot: Build P5QRegex library on MoarVM.
17:37 dalek nqp/moarboot:
17:37 dalek nqp/moarboot: Test file hangs, presumably for same reason t/qregex does.
17:37 dalek nqp/moarboot: review: https://github.com/perl6/nqp/commit/127cae043b
17:37 dalek nqp/moarboot: ca7e1b9 | jnthn++ | .gitignore:
17:37 dalek nqp/moarboot: Update .gitignore.
17:37 dalek nqp/moarboot: review: https://github.com/perl6/nqp/commit/ca7e1b9afc
17:40 sftp joined #perl6
17:42 SamuraiJack__ joined #perl6
17:44 sftp joined #perl6
18:07 denis_boyun joined #perl6
18:09 Rotwang joined #perl6
18:11 diakopter yeah I argued that nqp := should be = until I was blue in the face because it acts exactly like = in p6... but to no avail
18:11 dalek Perlito: 021723a | (Flavio S. Glock)++ | / (6 files):
18:11 dalek Perlito: Perlito5 - AST - cleanup
18:11 dalek Perlito: review: https://github.com/fglock/​Perlito/commit/021723a1c3
18:11 SmokeMachine joined #perl6
18:12 jlaire joined #perl6
18:24 dalek Perlito: e9aecce | (Flavio S. Glock)++ | / (2 files):
18:24 dalek Perlito: Perlito5 - perl6 - fix internal dependencies
18:24 dalek Perlito: review: https://github.com/fglock/​Perlito/commit/e9aecce522
18:25 ggoebel4 joined #perl6
18:32 fglock I've updated http://perlcabal.org/~fglock/perlito5to6.html
18:32 yoleaux 3 Oct 2013 21:26Z <raiph> fglock: TimToady doesn't like $*OS: http://irclog.perlgeek.de/​perl6/2013-09-07#i_7555053
18:34 fglock $*OS can go away
18:34 fglock I'm looking for patterns for perl5 => perl6
18:34 fglock to install in the compiler
18:35 TimToady how much refactoring do you want to do?  :)
18:35 fglock not sure yet, I'm going in small steps
18:36 TimToady a good source of patterns is probably to compare rosettacode entries for p5 and p6
18:37 fglock I've just split the translation and pretty-printing to make it more flexible
18:37 timotimo do you have some examples for what already works?
18:37 TimToady that should give you both low-level transformations and high level
18:37 fglock great, I'll take a look
18:37 fglock timotimo: I'm following the tests in the perlito5 test suite
18:38 fglock I'm testing with rakudo
18:39 timotimo you're turning the perl5 tests into perl6?
18:39 timotimo oh, wait, this translates perl5 to perl6?
18:40 fglock yes
18:40 timotimo ah, that's not as interesting for me then
18:41 spider-mario joined #perl6
18:41 nwc10 if you feed it Abigail, what comes out the other end? :-)
18:41 TimToady dunno, but it's inside out
18:42 fglock it should work: $$ a [10]; => $a[10];
18:42 TimToady :)
18:44 ajr joined #perl6
18:44 fglock $$$ a [10] gives $($a)[10] - not sure if this makes sense in perl6?
18:44 FROGGS r: my $a = ^20; say $($a)[10]
18:45 FROGGS wait for it...
18:45 timotimo haha
18:45 timotimo first execution since a rebuild or something?
18:45 lue hello world! o/
18:45 FROGGS hi lue
18:45 FROGGS r: 1
18:45 FROGGS :/
18:46 jnthn r: u there?
18:46 fglock timotimo: what would be interesting for you?
18:46 timotimo straight up running perl6 code in js ;)
18:46 FROGGS fast
18:46 timotimo (i have no involvement or investment in perl5 or earlier, so ...)
18:46 FROGGS he is le'optimizer
18:46 timotimo yeah, run it extra fast, please ;)
18:46 fglock ah, that is perlito6 - it is bitrotting a bit :(
18:47 camelia rakudo d7e5e1: OUTPUT«10␤»
18:47 FROGGS hehe
18:47 timotimo wow, that took a *long* time
18:47 FROGGS r: 1
18:47 camelia rakudo d7e5e1: ( no output )
18:47 camelia rakudo d7e5e1: OUTPUT«[31m===[0mSORRY![31m===[0m Error while compiling /tmp/whpjQmTCikâ�¤Two terms in a rowâ�¤at /tmp/whpjQmTCik:1â�¤------> [32mu there[33mâ��[31m?[0mâ�¤    expecting any of:â�¤        argument listâ�¤        postfixâ�¤        infix stopperâ�¤        infix o…»
18:47 camelia rakudo d7e5e1: ( no output )
18:47 FROGGS r: my $a = ^20; say $($a)[10] # again
18:47 camelia rakudo d7e5e1: OUTPUT«10␤»
18:47 FROGGS hmmm, okay
18:48 dwarring joined #perl6
18:48 TimToady $($a) should be a no-op
18:48 FROGGS it actually alls .item
18:48 FROGGS calls*
18:48 TimToady .item.item
18:48 TimToady it's itempotent :)
18:49 FROGGS gah, go away!
18:49 FROGGS :p
18:49 lowpro30 joined #perl6
18:49 jnthn argh :P
18:49 lizmat r: my %h; %h.delete("a")
18:49 camelia rakudo d7e5e1: OUTPUT«Saw 1 call to deprecated code during execution.␤======================================​==========================================␤Method delete (from Hash) called at:␤  /tmp/C4PAotJghv, line 1␤Please use the :delete adverb instead.␤--------------------…»
18:49 lizmat r seems to be up to date :-)
18:50 jnthn r: my %h; %h.delete("a"); say "cometh it at l'end?"
18:50 camelia rakudo d7e5e1: OUTPUT«cometh it at l'end?␤Saw 1 call to deprecated code during execution.␤======================================​==========================================␤Method delete (from Hash) called at:␤  /tmp/MF210hLDQl, line 1␤Please use the :delete adverb instead.…»
18:50 lue so the = bar is intentional?
18:50 Pleiades` joined #perl6
18:50 timotimo it's a bit long for the irc bot :P
18:50 fglock timotimo: http://perlcabal.org/~fglock/perlito6.html  # last update was long ago
18:50 jnthn Can I get a beer from the = bar?
18:50 TimToady is that a monkey bar?
18:50 lizmat yes, the = bar is intentional
18:50 timotimo fglock: i saw it, thanks :)
18:50 lizmat looks better in plain text  :-)
18:50 * jnthn returns to his slides :)
18:51 lowpro30_ joined #perl6
18:52 lizmat the idea is that using deprecated features will not interfere with normal processing at all.  Just when all is done, then it will complain
18:52 lizmat and it will complain about the places where a change would be needed
18:53 TimToady use SPEAK_NO_EVIL should silence deprecation warnings :)
18:53 TimToady .u 🙊
18:53 yoleaux U+1F64A SPEAK-NO-EVIL MONKEY [So] (🙊)
18:54 lue so SPEAK_NO_EVIL suppresses Perl 5 usage warnings, yes? :)
18:54 TimToady that might rise to the level of SEE-NO-EVIL :)
18:55 TimToady since it'd then have to actually try to run them
18:56 lue r: my @a = <> ; say "This message means I'm not hampered by Perl 5's history! \o/"
18:57 camelia rakudo d7e5e1: OUTPUT«[31m===[0mSORRY![31m===[0m Error while compiling /tmp/D7qsAtfUSo�Unsupported use of <>; in Perl 6 please use lines() to read input, ('') to represent a null string or () to represent an empty list�at /tmp/D7qsAtfUSo:1�------> [32mmy @a = <[33m�[3…»
18:58 TimToady the fun part is making $/ have both Perl 5 and Perl 6 semantics simultaneously
18:58 lizmat r: my %h; %h.delete("a"); END {%DEPRECATIONS=()}   # silence deprecation message
18:58 camelia rakudo d7e5e1: ( no output )
18:59 benabik Perhaps have a s/no DEPRECATION/END {%DEPRECATIONS=()}/ ?
19:00 benabik It isn't %*DEPRECATIONS?
19:00 TimToady probably falls into a no warnings category
19:02 Vlavv` joined #perl6
19:06 sqirrel joined #perl6
19:07 rurban joined #perl6
19:07 btyler joined #perl6
19:11 jnap joined #perl6
19:17 Traceur joined #perl6
19:18 Traceur joined #perl6
19:22 dalek nqp: d7eae46 | (Timo Paulssen)++ | src/NQP/Compiler.nqp:
19:22 dalek nqp: allow the user to turn off optimizing for nqp
19:22 dalek nqp: review: https://github.com/perl6/nqp/commit/d7eae4647b
19:22 timotimo i've promised to do this a long time, i think
19:23 arnsholt Oh, heh. I'd forgotten about that
19:24 timotimo turned out to be super easy
19:24 timotimo so that's a plus
19:30 arnsholt [Coke]: Is NQP #64 fixed? Looks like it works for me (though the machine I'm testing on is 10.7.4, not 10.7.3)
19:33 daniel-s joined #perl6
19:34 Ispira_ joined #perl6
19:35 Ispira_ Hi, I just had a quick question about perl 6: What are the main differences between perl6 and perl5?
19:37 TimToady far fewer lists of exceptions, more direct support of both FP and OO paradigms
19:37 timotimo perl6 has a type system and uses classes pretty much everywhere; perl6 has a new, very strongly cleaned up regex syntax (with the option to just use perl5 regexes instear:
19:37 TimToady fixes most of the perceived warts in the design of Perl 5
19:37 timotimo inst ... ear? what did i just write
19:38 timotimo perl6 code is now parsable by not just the perl6 executable. and all in just one pass!
19:38 TimToady most of the perceived warts of Perl 5 end up relating to the lack of a type system  :)
19:39 timotimo perl6 has a very good potential for parallelism and such; channels, promises and stuff just got prototyped successfully on the jvm backend
19:39 timotimo oh, also, perl6 is already on the JVM as well as parrot, and will soon be on javascript (node and browsers) and MoarVM, our own new and shiny VM
19:39 TimToady portability to multiple VMs is also a consideration
19:39 TimToady so you see, it might be a quick question, but it's not a quick answer :)
19:40 nwc10 Perl 6 will do Unicode better than Perl 5. Stuff that is hard in perl 5 will be easy. Stuff that is O(n) in Perl 5 will be O(1) [and consequently O(n**2) will be O(n)]
19:40 nwc10 but I suspect that on that one, most people won't need it for a while yet
19:41 timotimo Ispira_: now you know why we're excited about perl6 :3
19:42 TimToady the other big difference is that Perl 5 is still faster--but we're working on that :)
19:44 timotimo hehe
19:44 timotimo will still take a little while, though :(
19:45 timotimo on the other hand: perl 6 core development will not make you start flipping tables left and right
19:45 timotimo there's still lots of exciting things to do in perl6 land, whereas in perl5 land you mostly just get to fix bugs and the occasional new cool features in the scary, scary innards of the perl5 code :P
19:46 hexcoder joined #perl6
19:49 TimToady The people who hang out here are nicely stubborn, and stubbornly nice.
19:50 Ispira_ I see
19:51 Ispira_ I ask becuase I'm bored and want to learn a new language, I'm looking into perl5, perl6, Scala and Ruby, etc
19:52 TimToady well don't ask us, we're prejudiced :)
19:52 Ispira_ obviously
19:52 Ispira_ how new is perl6? like how early in development is it still?
19:54 * PerlJam waits to see the answer to that one  ;)
19:54 TimToady well, we've been stubbornly working on it for 13 years now, but we think we're getting pretty close to what many people would consider a production release in a year or so
19:54 timotimo not very many things you'd end up using on a day-per-day basis are being completely turned upside-down ...
19:54 * timotimo tried for the most non-answer he could come up with
19:55 TimToady the design is stabilizing nicely as the various implementations converge on it
19:55 PerlJam Ispira_: There's a compiler release every month.  And there's a feature matrix http://perl6.org/compilers/features
19:55 timotimo and we have a almost-completely-monthly release of a distribution made up of compiler + package manager + a few modules
19:55 TimToady we're a bit weak in docs yet
19:57 TimToady anyway, we're pretty sure we'll have a solid production version before they have commercial fusion reactors :)
19:57 TimToady didn't quite beat DNF out the door though...
19:58 nwc10 DNF seems to have become quite forgettable
19:58 Ispira_ Well thanks for the help guys
19:58 TimToady our pleasure
19:58 Ispira_ I do think after looking a bit more extensiveley into 5 and 6 that perl isn't the language for me at this point
19:58 TimToady you should learn lots of languages
19:59 timotimo after going through oop, imperative and functional, you'll at least always feel at home in perl6 land, because you can have it your way™
19:59 TimToady but perl 6 is aimed more to be your last language than your first one
19:59 Ispira_ I already know Java, JavaScript, PHP, C++, Python and HTML/5(IF you consider that a language)
19:59 PerlJam Ispira_: learn languages that will teach you some new concepts and above all  ... Have Fun!  :)
19:59 timotimo perl6 is big on fun, yeah
19:59 PerlJam Ispira_: sounds like you should try for one of the functional languages like haskell, ml, lisp, or scheme.
20:00 btyler or go really crazy with something in the APL family
20:00 timotimo .o( and do a couple of exercises in prolog just to make your brain squishier )
20:01 PerlJam Ispira_: scala, ruby, or perl won't teach you too much that you haven't already seen.  (though, if you use roles in perl, that might be a new concept)
20:02 TimToady hyperops, laziness, mutiple-dispatch...
20:02 FROGGS hyperops, indeed
20:02 Ispira_ I'm going to keep looking into a bunch of new languages, thanks for the help guys
20:03 TimToady higher-order programming in general
20:03 Ispira_ I have a lto fo free time on my hands right now and figured why not lol
20:03 TimToady feel free to drop back in some time
20:03 PerlJam Ispira_: good luck!  :)
20:03 Ispira_ will do
20:03 Ispira_ thanks
20:04 * PerlJam makes a note to better qualify which perl he's talking about in the future.
20:05 hexcoder r: my $c = 5; { my $c = $c; say $c; }
20:05 camelia rakudo d7e5e1: OUTPUT«(Any)␤»
20:05 timotimo that's not surprising
20:05 PerlJam hexcoder: you need an OUTER to get at the outer one.
20:05 timotimo r: my $c = 5; { my $c = $OUTER::c; say $c; }
20:05 camelia rakudo d7e5e1: OUTPUT«5␤»
20:05 hexcoder thanks, always better to be explicit
20:06 araujo joined #perl6
20:07 PerlJam r: my ($x = 4, $y = $x); say $x; say $y;
20:07 camelia rakudo d7e5e1: OUTPUT«(Any)␤(Any)␤»
20:07 rurban joined #perl6
20:08 PerlJam The second (Any) makes sense to me, but the first one not so much.
20:09 FROGGS r: my ($x = 4); say $x;
20:09 camelia rakudo d7e5e1: OUTPUT«(Any)␤»
20:09 PerlJam yeah, was just doing that locally.
20:09 FROGGS r: my ($x) = 4; say $x;
20:09 camelia rakudo d7e5e1: OUTPUT«4␤»
20:09 FROGGS n: my ($x = 4); say $x;
20:09 camelia niecza v24-98-g473bd20: OUTPUT«(Any)␤»
20:10 lizmat feels like a bug to me
20:10 PerlJam me too
20:11 jnthn r: my ($x, $y) = 4, 5; say $x; say $y;
20:11 camelia rakudo d7e5e1: OUTPUT«4␤5␤»
20:11 jnthn That's the Right Way
20:11 lizmat but should the wrong way be silent ?
20:11 PerlJam Sure, but .. .what lizmat said
20:11 jnthn The thing after the my is parsed as a signature initially
20:12 FROGGS my (%x = 4) is parsed as a signature, right?
20:12 jnthn Then we spot that no, we're not sig binding, so we demote it to a simple list of variables
20:12 FROGGS ahh
20:12 FROGGS yes
20:12 jnthn The = 4 I guess ended up being parsed as a default value, just like in sig syntax
20:12 lizmat but shouldn't it complaing about $x not being defined
20:13 lizmat I guess not if it was parsed as a sig
20:13 FROGGS r: (my $x = 4); say $x # it is defined
20:13 jnthn lizmat: sigs declare the things within them, at least in the context of a declaration.
20:13 camelia rakudo d7e5e1: OUTPUT«4␤»
20:14 jnthn We can probably go try lifting the default value out of the signature, but then the question is what we do with it :)
20:15 PerlJam r: my ($x, $y = 3) = 42;   # assign 42 to $x and 3 to $y (as default)
20:15 camelia rakudo d7e5e1: ( no output )
20:15 PerlJam (at least that's what I think)
20:15 jnthn yeah
20:15 jnthn Well, I guess we'd just turn it into an assignment if we'll do anything
20:16 jnthn Making it an alternative way to specify "is default" is probably only cute today... :)
20:17 lizmat fwiw, I don't interprete my ($x=4) as setting a default
20:17 jnthn *nod*
20:17 lue me neither. It's just assigning a value inside parens to me.
20:18 PerlJam Either it should make some noise or DWIM  ;)
20:18 jnthn I think various things do whine, fwiw
20:18 jnthn r: my ($x, $y?) = 1, 23;
20:18 camelia rakudo d7e5e1: ( no output )
20:18 jnthn I thought they did anyway
20:18 jnthn r: my ($x, *@y) = 1, 23;
20:18 camelia rakudo d7e5e1: ( no output )
20:18 jnthn Hm.
20:19 jnthn I thought there was a "sig too complex" error...
20:19 lue I don't personally see a reason why changing the default value of a variable('s type?) needs anything shorter than is default(value)
20:21 PerlJam lue: even in signatures?
20:22 lue I guess I don't encounter situations where I would ever need to use is default, so from my POV, yes :) . (although perhaps is dflt() for short? :P)
20:23 FROGGS r: my (:$a, *@b ) = 1, 2, 3, 4, a => 42, 5, 6; say $a, say @b
20:23 camelia rakudo d7e5e1: OUTPUT«2 3 4 "a" => 42 5 6␤1True␤»
20:23 FROGGS I'd vote for that it should behave like a signature if it is one :o)
20:24 lue wasn't \() the Signature maker?
20:24 lue r: say \(1, 2).WHAT
20:24 camelia rakudo d7e5e1: OUTPUT«(Capture)␤»
20:25 jnthn r: my (:$a, *@b ) := \(1, 2, 3, 4, a => 42, 5, 6); say $a, say @b
20:25 camelia rakudo d7e5e1: OUTPUT«1 2 3 4 5 6␤42True␤»
20:25 jnthn FROGGS: ^^ :)
20:25 FROGGS r: say :().WHAT
20:25 camelia rakudo d7e5e1: OUTPUT«(Signature)␤»
20:25 PerlJam r: say :().WHAT
20:25 camelia rakudo d7e5e1: OUTPUT«(Signature)␤»
20:25 PerlJam lue: ^^
20:25 FROGGS r: my (:$a, *@b ) := \(1, 2, 3, 4, a => 42, 5, 6); say $a
20:25 camelia rakudo d7e5e1: OUTPUT«42␤»
20:25 lue That's what it was. If you use :() then sure, it should act like a Signature :P
20:26 FROGGS ahh, the comma
20:35 hexcoder r: if 'ab cd ef'  ~~ mm/ (..) ** 2 / {say $1;}
20:35 camelia rakudo d7e5e1: OUTPUT«[31m===[0mSORRY![31m===[0m Error while compiling /tmp/tlufJPo5QYâ�¤Please use ..* for indefinite rangeâ�¤at /tmp/tlufJPo5QY:1â�¤------> [32mif 'ab cd ef'  ~~ mm/ (..[33mâ��[31m) ** 2 / {say $1;}[0mâ�¤Â»
20:36 timotimo oh, whoops
20:36 timotimo what is mm/ for?
20:36 timotimo r: if 'ab cd ef'  ~~ m/ (..) ** 2 / {say $1;}
20:36 camelia rakudo d7e5e1: OUTPUT«(Any)␤»
20:36 hexcoder m with :sigspace
20:36 timotimo weird. why does it work when i only have one m?
20:36 timotimo r: if 'ab cd ef'  ~~ m:s/ (..) ** 2 / {say $1;}
20:37 camelia rakudo d7e5e1: ( no output )
20:37 timotimo r: say 'ab cd ef'  ~~ m:s/ (..) ** 2 /
20:37 camelia rakudo d7e5e1: OUTPUT«False␤»
20:37 lue r: say 'a b' ~~ mm/a b/
20:37 camelia rakudo d7e5e1: OUTPUT«[31m===[0mSORRY![31m===[0m Error while compiling /tmp/5umwk03CvLâ�¤Two terms in a rowâ�¤at /tmp/5umwk03CvL:1â�¤------> [32msay 'a b' ~~ mm/a b/[33mâ��[31m<EOL>[0mâ�¤    expecting any of:â�¤        argument listâ�¤        postfixâ�¤        infix stopper…»
20:37 PerlJam hexcoder: uh ... mm// is m// with :samemark
20:37 timotimo it doesn't seem like mm is implemented? or something like that?
20:37 lue timotimo: that's what I was thinking.
20:38 PerlJam hexcoder: (ms//  is m// with :sigspace)
20:38 timotimo er, hold on
20:38 timotimo :samemark is :mm, not mm
20:38 timotimo m:mm would be what you want, no?
20:39 lue r: say "a" ~~ m:mm/à/
20:39 camelia rakudo d7e5e1: OUTPUT«[31m===[0mSORRY![31m===[0m Error while compiling /tmp/W4MuHk71gB�Adverb mm not allowed on m�at /tmp/W4MuHk71gB:1�------> [32msay "a" ~~ m:mm/à/[33m�[31m<EOL>[0m�»
20:39 hexcoder oops, I trusted moritz article... will check
20:39 timotimo also, i know why it doesn't match, at least..
20:39 lue :mm only makes sense on s///
20:39 timotimo r: say 'ab cd ef'  ~~ m:s/ (..) ** 2 % <.ws> /
20:39 PerlJam lue++
20:39 camelia rakudo d7e5e1: OUTPUT«「ab cd 」␤ 0 => 「ab」␤ 0 => 「cd」␤␤»
20:39 lue (it's about how to handle replacing, not how to match)
20:39 timotimo r: if 'ab cd ef'  ~~ m:s/ (..) ** 2 % <.ws> / { say $0 }
20:39 camelia rakudo d7e5e1: OUTPUT«「ab」␤ 「cd」␤␤»
20:40 timotimo r: if 'ab cd ef'  ~~ m:s/ (..) ** 2 % <.ws> / { say $0.perl }
20:40 PerlJam aye, I was extraoplating my memory a bit.
20:40 camelia rakudo d7e5e1: OUTPUT«(Match.new(orig => "ab cd ef", from => 0, to => 2, ast => Any, list => ().list, hash => EnumMap.new()), Match.new(orig => "ab cd ef", from => 3, to => 5, ast => Any, list => ().list, hash => EnumMap.new()))␤»
20:44 hexcoder fwiw I am exploring perl6 features according to this intro from moritz: http://perlgeek.de/en/article/5-to-6#post_19
20:45 hexcoder some examples could have gotten some bitrot
20:45 PerlJam hexcoder: indeed; note the date
20:46 hexcoder so i try to check or validate them...
20:47 lizmat .tell moritz: simply adding "is default" didn't work (Could not find sub &infix:<does>).  too tired now to try doing mixins by hand
20:47 yoleaux lizmat: What kind of a name is "moritz:"?!
20:47 lizmat .tell moritz simply adding "is default" didn't work (Could not find sub &infix:<does>).  too tired now to try doing mixins by hand
20:47 yoleaux lizmat: I'll pass your message to moritz.
20:47 lizmat sleep&
20:48 mtk joined #perl6
20:48 PerlJam yoleaux: you should be a smarter bot.
20:48 pjcj joined #perl6
20:56 lichtkind joined #perl6
20:58 lue .oO(.tell yoleaux Please be smarter.)
20:58 yoleaux lue: Thanks for the message.
20:58 lue O.o
21:01 PerlJam heh
21:01 lue I didn't expect that to happen within the protection of a thought bubble...
21:02 lue .oO( .u ☃☄ )
21:02 lue .oO(.u ☃☄ )
21:02 yoleaux U+0020 SPACE [Zs] ( )
21:02 yoleaux U+0029 RIGHT PARENTHESIS [Pe] ())
21:02 yoleaux U+2603 SNOWMAN [So] (☃)
21:02 lue quoi? (yoleaux gets weird with the mystical .oO( command)
21:04 benabik yoleaux got a mind reading upgrade, that's all.
21:04 benabik It's part of the DWIM.pm project.
21:05 * lue &
21:09 rurban joined #perl6
21:28 btyler_ joined #perl6
21:28 bruges_ joined #perl6
21:30 colomon joined #perl6
21:30 imrudbu joined #perl6
21:30 flussence_ joined #perl6
21:32 jlaire_ joined #perl6
21:33 jnap joined #perl6
21:34 Grimnir_ joined #perl6
21:35 Celelibi joined #perl6
21:35 frdmn joined #perl6
21:35 eternaleye joined #perl6
21:36 yogan joined #perl6
21:36 dalek Perlito: d01ed44 | (Flavio S. Glock)++ | / (2 files):
21:36 dalek Perlito: Perlito5 - perl6 - "make test-5to6 | grep '^ok' | wc -l" # 68 tests pass
21:36 dalek Perlito: review: https://github.com/fglock/​Perlito/commit/d01ed44e07
21:42 BenGoldberg joined #perl6
21:55 rurban joined #perl6
21:57 BenGoldberg r: my $a = any(<the that a>); my $b = any(<frog elephant thing>); if ( substr($a,0,1) eq substr($b,*-1) ) { say "$a $b" }
21:57 camelia rakudo d7e5e1: OUTPUT«any("the", "that", "a") any("frog", "elephant", "thing")␤»
21:58 BenGoldberg What would I need to do to get the particular values in $a and $b for which the condition in if () was true?  That is, "that" and "thing" ?
21:58 bruges joined #perl6
21:59 havenwood joined #perl6
22:00 BenGoldberg Err, ("the", "that") and ("elephant")  (I got $a and $b backwards)
22:01 dalek Perlito: 6050ff7 | (Flavio S. Glock)++ | / (4 files):
22:01 dalek Perlito: Perlito5 - perl6 - yadayada is runtime
22:01 dalek Perlito: review: https://github.com/fglock/​Perlito/commit/6050ff7397
22:03 timotimo BenGoldberg: you are not using junctions for what they are supposed to be used.
22:04 timotimo you want X instead, i think
22:06 TimToady see http://rosettacode.org/wiki/Amb#Perl_6 for one approach
22:06 TimToady or two :)
22:07 TimToady though with that last spec change the 'do' should probably become a 'lazy'
22:08 timotimo yeah, but that doesn't run on any of our implementations, does it? :P
22:13 dalek specs: b8ee6d8 | larry++ | S32-setting-library/Containers.pod:
22:13 dalek specs: be clear that .grab works only on mutables
22:13 dalek specs: review: https://github.com/perl6/specs/commit/b8ee6d82a4
22:13 dalek specs: f2ca89c | larry++ | S32-setting-library/Containers.pod:
22:13 dalek specs: be clearer about throwing an exception
22:14 dalek specs: review: https://github.com/perl6/specs/commit/f2ca89ca49
22:18 jnap joined #perl6
22:19 Traceur joined #perl6
22:46 bbkr__ joined #perl6
22:56 skids joined #perl6
22:57 jnap joined #perl6
23:14 rurban joined #perl6
23:16 ajr joined #perl6
23:18 btyler_ in briefly describing the distinction between Perl 5 and 6 as 'different langauges in the same family', I pulled 'Common Lisp vs Racket Scheme' out of a hat -- is there a more apt pair of languages to use as metaphor?
23:20 lue btyler_: I always think "C and C++", but I don't know how close that is to 5 & 6
23:20 btyler_ I was thinking that too, but wasn't sure if the notions of the shared subset core were entirely accurate
23:20 btyler_ perl6 isn't a strict superset (maybe C++ isn't any longer either?)
23:24 TimToady arguably C++'s greatest flaws come from backcompat to C
23:25 TimToady maybe more like Java vs C# :)
23:25 kay joined #perl6
23:25 TimToady or maybe ML and Haskell
23:27 TimToady Forth and Postscript :)
23:28 TimToady Pascal and Oberon
23:29 TimToady Pascal and Modula if you don't want to stretch it quite so far
23:29 TimToady though that's more like Perl 4 to Perl 5
23:29 btyler_ afraid I'm not familar with any on the list after you mentioned 'haskell'...lots of learning to do :)
23:29 ajr_ joined #perl6
23:31 havenwood joined #perl6
23:32 havenwood joined #perl6
23:41 havenwood joined #perl6
23:48 jnap joined #perl6
23:56 ajr_ joined #perl6

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

Perl 6 | Reference Documentation | Rakudo