Perl 6 - the future is here, just unevenly distributed

IRC log for #perl6, 2016-10-29

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 camelia rakudo-moar 627a77: OUTPUT«"sure"␤»
00:00 viki m: use MONKEY-TYPING; augment class Mu { method dd { dd "sure" } }; (5…7).dd.say
00:00 camelia rakudo-moar 627a77: OUTPUT«No such method 'dd' for invocant of type 'Seq'␤  in block <unit> at <tmp> line 1␤␤»
00:01 timotimo thank you, viki
00:01 viki m: use MONKEY-TYPING; augment class Mu { method dd { dd "sure" } }; Seq.^compose; (5…7).dd.say
00:01 camelia rakudo-moar 627a77: OUTPUT«"sure"␤Nil␤»
00:02 Jesmaybe joined #perl6
00:03 viki m: use MONKEY-TYPING; augment class Any { method dd { dd "sure" } }; class {}.dd
00:03 camelia rakudo-moar 627a77: OUTPUT«"sure"␤»
00:03 viki \o/
00:04 viki m: class {}.DUMP
00:04 camelia rakudo-moar 627a77: ( no output )
00:04 viki m: class {}.DUMP.say
00:04 camelia rakudo-moar 627a77: OUTPUT«<anon|76550992>␤»
00:04 Sgeo joined #perl6
00:06 Jesmaybe joined #perl6
00:08 bjz joined #perl6
00:18 kurahaupo__ joined #perl6
00:23 Jesmaybe joined #perl6
00:41 viki m: <a b c>.&dd
00:41 camelia rakudo-moar 627a77: OUTPUT«("a", "b", "c")␤»
00:49 aborazmeh joined #perl6
00:49 aborazmeh joined #perl6
00:53 beatdown joined #perl6
00:53 Jesmaybe joined #perl6
00:53 Khisanth joined #perl6
01:05 inra joined #perl6
01:12 aborazmeh joined #perl6
01:12 aborazmeh joined #perl6
01:17 Khisanth joined #perl6
01:21 rmusial joined #perl6
01:30 rjbs joined #perl6
01:34 FROGGS_ joined #perl6
01:34 geekosaur joined #perl6
01:47 ilbot3 joined #perl6
01:47 Topic for #perl6 is now »ö« Welcome to Perl 6! | https://perl6.org/ | evalbot usage: 'p6: say 3;' or rakudo:,  or /msg camelia p6: ... | irclog: http://irc.perl6.org or http://colabti.org/irclogger/irclogger_logs/perl6 | UTF-8 is our friend!
01:49 labster joined #perl6
01:52 Jesmaybe joined #perl6
01:55 Jesmaybe joined #perl6
02:00 Jesmaybe joined #perl6
02:24 bjz joined #perl6
02:25 pierre_ joined #perl6
02:35 bjz joined #perl6
02:37 dalek doc: 7685316 | gfldex++ | doc/Language/typesystem.pod6:
02:37 dalek doc: the whole expression must be state, not just the anonymous variable
02:37 dalek doc: review: https://github.com/perl6/doc/commit/7685316ebb
02:46 noganex_ joined #perl6
02:48 dalek doc: 144a3a9 | gfldex++ | doc/Language/variables.pod6:
02:49 dalek doc: show difference between implicit and explicit state delcarator
02:49 dalek doc: review: https://github.com/perl6/doc/commit/144a3a92ce
03:00 Celelibi_ joined #perl6
03:03 noganex joined #perl6
03:13 bjz joined #perl6
03:24 MasterDuke joined #perl6
03:42 inokenty joined #perl6
03:51 dylanwh joined #perl6
03:52 pierre_ joined #perl6
04:13 kurahaupo__ joined #perl6
04:18 MasterDuke joined #perl6
04:28 Cabanossi joined #perl6
04:49 canopus joined #perl6
05:00 rurban joined #perl6
05:18 bjz joined #perl6
05:43 Cabanossi joined #perl6
05:51 bjz joined #perl6
06:23 darutoko joined #perl6
06:49 bjz joined #perl6
06:53 brillenfux joined #perl6
07:02 labster joined #perl6
07:12 domidumont joined #perl6
07:23 pierre_ joined #perl6
07:24 brillenfux joined #perl6
07:28 ggoebel joined #perl6
07:37 rurban joined #perl6
07:48 RabidGravy joined #perl6
07:48 TheovdH joined #perl6
08:01 RabidGravy boom!
08:06 stmuk_ did any test the R* 2016.10.1 Mac rebuild on 10.12?
08:06 stmuk_ s/any/anyone
08:11 CIAvash joined #perl6
08:13 wamba joined #perl6
08:17 firstdayonthejob joined #perl6
08:30 RabidGravy one day I'll get all the travis things green at the same time on the modules list
08:30 domidumont joined #perl6
08:39 rindolf joined #perl6
09:05 domidumont joined #perl6
09:06 AlexDaniel joined #perl6
09:07 moritz \o
09:07 yoleaux 28 Oct 2016 21:32Z <MasterDuke> moritz: i'm good, it worked with Chrome
09:13 nadim joined #perl6
09:30 Tonik joined #perl6
09:31 RabidGravy zostay, I've just sent a PR for ArrayHash to fix the t/meta.t and the travis thingy
09:37 RabidGravy gotta have all those travis build things on the modules list green at least once ;-)
09:37 Indecipherable joined #perl6
09:39 Indecipherable joined #perl6
09:46 lizmat joined #perl6
09:47 rurban joined #perl6
09:49 ale1ster joined #perl6
09:57 nowan joined #perl6
10:04 CIAvash joined #perl6
10:21 dalek perl6.org: 7d8aff4 | (Steve Mynott)++ | source/downloads/index.html:
10:21 dalek perl6.org: refer to Mac DMG 2016.10.1
10:21 dalek perl6.org: review: https://github.com/perl6/p​erl6.org/commit/7d8aff4dc0
10:30 pierre__ joined #perl6
10:35 RabidGravy I really want to get Net::ZMQ working again, but I lost the will to live last time I looked at it
10:43 Alikzus joined #perl6
10:43 sena_kun joined #perl6
10:59 CIAvash joined #perl6
11:00 andrzejku_ joined #perl6
11:03 * lizmat hands RabidGravy a Pirate flag
11:43 kjs_ joined #perl6
11:58 evalable6 joined #perl6
12:00 dalek joined #perl6
12:12 lostinfog joined #perl6
12:19 leont joined #perl6
12:20 espadrine joined #perl6
12:31 ggoebel joined #perl6
12:34 Jesmaybe joined #perl6
12:44 aborazmeh joined #perl6
12:44 aborazmeh joined #perl6
12:46 Cabanossi joined #perl6
12:47 huajie-hu joined #perl6
12:49 andrzejku_ joined #perl6
13:01 moritz can anybody describe the usage of the .msi and .dmg installers for Rakudo Star?
13:01 moritz I need to include something in the book, but I have no windows or mac test systems :(
13:01 moritz do I need to set some PATH manually, or something?
13:02 FROGGS_ the msi requires you to set PATH
13:03 moritz does it tell you which directories to include in PATH?
13:03 FROGGS_ I'll give you the input today...
13:03 moritz and is it one or two?
13:03 moritz ok, thanks
13:03 FROGGS_ I think it does, but let me check
13:03 FROGGS_ it is one path on windows
13:03 FROGGS_ C:\rakudo\bin
13:04 moritz and panda installs script into that dir too?
13:04 FROGGS_ it did the last time I checked
13:07 lucasb joined #perl6
13:08 lucasb m: say ::
13:08 camelia rakudo-moar 91a714: OUTPUT«PseudoStash.new(("!UNIT_MARKER" => !UNIT_MARKER,"\$!" => Nil,"\$/" => Nil,"\$=finish" => Mu,"\$=pod" => [],"\$?PACKAGE" => GLOBAL,"\$_" => Any,"\$¢" => Nil,"::?PACKAGE" => GLOBAL,:EXPORT(EXPORT),:GLOBALish(GLOBAL)))␤»
13:08 lucasb m: my $x = :: ; say $x
13:09 camelia rakudo-moar 91a714: OUTPUT«(timeout)»
13:11 FROGGS_ moritz: I was wrong, you need both: C:\rakudo\bin;C:\rakudo\share\perl6\site\bin
13:13 moritz FROGGS_: ok, thanks
13:13 FROGGS_ moritz: wait, you'll get pictures
13:16 MasterDuke lucasb: wow, i killed that on my machine after it got to over 700MB ram used
13:17 MasterDuke should probably RT it
13:23 FROGGS_ moritz: check your emails
13:26 moritz FROGGS_: thank you very much
13:26 FROGGS_ moritz: cant do images of the .dmg sadly
13:28 moritz FROGGS_: knowing the friendly Perl 6 community, I'm sure others will step up
13:28 FROGGS_ aye :o)
13:28 moritz (don't need images necessarily, just informations on whether there is anything extra to do than hitting return all the time)
13:34 FROGGS_ I like images in books ;o)
13:37 moritz that's something that works well in ebooks, but not in print
13:37 moritz ah well, it's ebook first anyway
13:39 Lucas_One joined #perl6
13:39 moritz FROGGS_: maybe you also want to join #perl6book
13:39 pierre__ joined #perl6
13:45 wamba joined #perl6
13:47 AlexDaniel wow, :: is a good one!
13:47 AlexDaniel cmomittabel6: 2015.12 ::
13:47 committable6 AlexDaniel, ¦«2015.12»: WARNINGS for /tmp/1P3RHEbvE9:␤Useless use of "::" in sink context (line 1)
13:48 AlexDaniel cmomittabel6: 6c 2015.12 ::
13:48 committable6 AlexDaniel, ¦«2015.12,2016.02,2016.03,2016.04,2016.05,2016​.06,2016.07.1,2016.08.1,2016.09,2016.10,HEAD»: ===SORRY!=== Error while compiling /tmp/dwt4A7ceA7␤Confused␤at /tmp/dwt4A7ceA7:1␤------> 2015.12 :<HERE>:␤    expecting any of:␤        colon pair «exit code = 1»
13:48 AlexDaniel ah, you need to say it?
13:48 AlexDaniel cmomittabel6: 6c ::
13:48 committable6 AlexDaniel, ¦«2015.12,2016.02,2016.03,2016.04,2016.05,2016​.06,2016.07.1,2016.08.1,2016.09,2016.10,HEAD»: WARNINGS for /tmp/6fUuhjzQAZ:␤Useless use of "::" in sink context (line 1)
13:48 AlexDaniel cmomittabel6: 6c say ::
13:48 committable6 AlexDaniel, https://gist.github.com/67d9​9f526faaf4a7f510df4faa9740c8
13:49 AlexDaniel /o\ ah, I was looking at the wrong like
13:49 AlexDaniel line*
13:49 Jesmaybe joined #perl6
13:49 AlexDaniel cmomittabel6: 6c my $x = :: ; say $x
13:51 committable6 AlexDaniel, ¦«2015.12,2016.02,2016.04,2016.05,2016.06,​2016.07.1,2016.08.1,2016.09,2016.10,HEAD»: «timed out after 10 seconds, output»:  «exit signal = SIGHUP (1)»␤¦«2016.03»:  «exit signal = SIGSEGV (11)»
13:51 AlexDaniel what's so special about 2016.03
13:51 AlexDaniel cmomittabel6: 2016.03 my $x = :: ; say $x
13:51 committable6 AlexDaniel, ¦«2016.03»:  «exit signal = SIGSEGV (11)»
13:57 AlexDaniel actually, it is quite interesting
13:58 AlexDaniel committable6: 6ef16cac1db4^,6ef16cac1db4 my $x = :: ; say $x
13:58 AlexDaniel committable6: f3fe81962131^,f3fe81962131 my $x = :: ; say $x
13:58 committable6 AlexDaniel, ¦«6ef16cac1db4^»: «timed out after 10 seconds, output»:  «exit signal = SIGHUP (1)»␤¦«6ef16ca»:  «exit signal = SIGSEGV (11)»
13:58 committable6 AlexDaniel, ¦«f3fe81962131^»:  «exit signal = SIGSEGV (11)»␤¦«f3fe819»: «timed out after 10 seconds, output»:  «exit signal = SIGHUP (1)»
13:59 AlexDaniel feels like a segfault was introduced and then fixed, and nobody noticed :)
13:59 AlexDaniel but these commits are so different… perhaps there's still a segfault hiding somewhere
14:19 khw joined #perl6
14:31 lizmat argh, found a bug that disappears with spesh disabled
14:34 AlexDaniel lizmat: great :)
14:34 lizmat yeah  :-(
14:35 lizmat but it also depended on a bug of mine
14:38 rindolf joined #perl6
15:01 AlexDaniel so what's up with the button in RT… is it coming back ever?
15:10 cdg joined #perl6
15:12 huajie-hu joined #perl6
15:19 firstdayonthejob joined #perl6
15:37 rudolfochrist joined #perl6
15:40 snowman joined #perl6
15:41 wtw joined #perl6
15:45 pochi joined #perl6
15:46 BenGoldberg joined #perl6
15:52 kaare_ joined #perl6
16:06 geekosaur joined #perl6
16:15 domidumont joined #perl6
16:17 domidumont joined #perl6
16:21 cdg joined #perl6
16:26 pochi joined #perl6
16:37 Howling joined #perl6
16:38 Howling joined #perl6
16:40 Howling joined #perl6
16:56 canopus joined #perl6
17:01 buggable joined #perl6
17:06 mcmillhj joined #perl6
17:14 pochi joined #perl6
17:19 huf joined #perl6
17:21 cdg joined #perl6
17:36 pochi joined #perl6
17:36 TimToady joined #perl6
17:43 AlexDaniel ‘’ “” but no triple quotation mark?
17:54 notostraca joined #perl6
17:58 cyphase joined #perl6
18:09 FROGGS_ AlexDaniel: what is "the button" ?
18:11 AlexDaniel FROGGS_: The button! How come you don't know? :) There was a button to create new tickets, it is now gone
18:12 seatek joined #perl6
18:12 FROGGS_ huh, yeah, I can only search now
18:21 damnlie joined #perl6
18:23 cdg joined #perl6
18:39 * moritz can close tickets too :-)
18:40 labster joined #perl6
18:46 RabidGravy well it's a simple way of reducing the number of tickets
18:50 mcmillhj joined #perl6
18:54 AlexDaniel RabidGravy: yea, exactly what I am thinking…
18:55 viki Contact RT admins and ask how you could help out.
18:55 viki Or write a program that uses the API to create tickets/create them by email
18:58 [ptc] viki: IRC::Client::Plugin::HNY is your module, right?
19:01 AlexDaniel nah, I'm fine. I'll just wait until RT loses a couple of other critically essential features…
19:02 AlexDaniel maybe then we will be able to get the thing going. The thing we were so reluctant to start for a while now…
19:13 leont joined #perl6
19:22 [ptc] FROGGS_: could you try running the tests on Inline::C, please?  (If you have time, of course!)  I can't seem to get them to go; the inline code doesn't seem to get compiled for some reason
19:22 FROGGS_ :S
19:24 cdg joined #perl6
19:27 FROGGS joined #perl6
19:34 [ptc] it's probably some configuration issue on my side, but since I saw you there, I thought I'd let you know :-)
19:35 FROGGS no, it is something deeper
19:37 FROGGS ahh, stupid me :o)
19:38 FROGGS [ptc]: fix pushed
19:39 viki [ptc]: yeah, why?
19:40 viki AlexDaniel: what thing?
19:48 AlexDaniel nevermind
19:48 viki heh
19:48 [ptc] FROGGS: awesome!  thanks!
19:49 viki AlexDaniel: considering there are no volunteers to fix the current thing; I doubt you'll have much luck getting another thing going ;)
19:50 [ptc] viki: I was trying to test it and found that the deps couldn't be found in the ecosystem.  Namely, Number::Denominate and WWW::Google::Time didn't seem to be in the module list
19:50 seatek is it just RT, or is it a freakishly customized RT?
19:50 [ptc] viki: also the version of IRC::Client has moved on, so panda was telling me that it couldn't find IRC::Client either, however removing the version requirement allowed it to get further
19:50 kurahaupo__ joined #perl6
19:51 viki [ptc]: the version numbers need to be removed from prereqs. They are much higher now and installer can't find old ones: https://github.com/zoffixznet/perl6-IRC-Clie​nt-Plugin-HNY/blob/master/META6.json#L7-L10
19:51 [ptc] viki: whether or not removing the version req was the right thing to do is another matter...
19:51 viki [ptc]: moreover, IRC::Client's API changed entirely, the module would need an update for that.
19:51 [ptc] ah, ok
19:52 * viki is surprised to see now two people interested in HNY module :/
19:52 AlexDaniel viki: well, one of the solutions to the thing problem requires just one click on GitHub. Not saying that GitHub is the solution, but just saying that it doesn't require many volunteers to have a thing that is arguably better than RT.
19:52 viki Bah.
19:52 [ptc] viki: to be honest, I just wanted to add a travis config to the module.
19:53 [ptc] it's amazing the number of modules in the ecosystem that don't build anymore...
19:53 viki AlexDaniel: you can't realistically think this problem can be solved with "one click"
19:53 ugexe its also amazing how many self proclaimed perl 5 ports of modules there are that are 10% of the original and have less than 10 commits over 2 years
19:54 * ugexe writes readme and blank Module.pm, pushes to ecosystem immediately
19:55 mst AlexDaniel: what's the ticket number for 'the button thing' ?
19:55 viki [ptc]: there's little point and not just 'cause the module is broken :) It'd need some testing facility, since it can't just use a random IRC server to run tests against.
19:55 viki mst++
19:55 AlexDaniel mst: great question. Is that something that should be opened in perl6 queue?
19:56 mst AlexDaniel: the front page of rt.perl.org says to email perlbug-admin@perl.org
19:56 mst I think that might be a clue.
19:56 viki [ptc]: I think a Test::IRC::Client module that emulates a connected IRC::Client would be usable. But I plan to resurect that module come New Years so, don't worry about travis :)
19:56 AlexDaniel oh, and then it will open a ticket that is unaccessible to others?
19:56 [ptc] viki: that's also good to know.  Nothing one could mock to use?
19:56 [ptc] viki: ok, will do :-)
19:56 AlexDaniel if so, I don't know if there's a ticket already or not
19:56 AlexDaniel if not, tell me and I'll write an email
19:57 AlexDaniel but honestly, I expected this ticket to be created the same day this issue appeared (when this button was deliberately removed)
19:58 mst if you've not even spoken to the admins, how do you know it was 'deliberately removed'
19:58 AlexDaniel somebody told me here
19:58 [ptc] FROGGS: all tests pass, yay!
19:58 FROGGS \o/
19:59 dolmen_ joined #perl6
19:59 mst can you find the conversation for me? I've gone back as far as May searching for 'removed' and can't find a conversation
20:00 AlexDaniel sure
20:00 ugexe i remember someone, now who, saying it was removed because of spam
20:00 ugexe s/now/not/
20:02 mst ok, but in that case presumably it's disabled for anonymous users etc.
20:02 mst doesn't necessarily mean we can't have known users still have access
20:02 AlexDaniel mst: https://irclog.perlgeek.de/​perl6/2016-09-29#i_13306616
20:03 AlexDaniel so is there a ticket already or should I start a new one?
20:05 mst I would strongly suspect that since the vast majority of perl5 RTs go via email, the other people using the button just switched to that for the moment, so I think "filing a ticket asking if some users can be whitelisted" is a good idea
20:05 mst and as usual, you can always blame me if it turns out not to be
20:08 firstdayonthejob joined #perl6
20:12 rurban joined #perl6
20:25 cdg joined #perl6
20:28 dalek ecosystem: a372156 | (Pawel Pabian)++ | META.list:
20:28 dalek ecosystem: META.info to META6.json rename to be compatible with S22 spec.
20:28 dalek ecosystem: review: https://github.com/perl6/e​cosystem/commit/a3721563ed
20:39 khw joined #perl6
20:39 seatek because i've complained about unintuitive precedence before, i just have to say i love that this works as expected: for $img.factory: [$img.id] -> $obj {}
20:40 seatek it's wonderful what you can fit into just that one little convention
20:41 FROGGS aye
20:42 FROGGS there are beautiful constructs in here that'd you gonna miss in other languages...
20:45 seatek what other languages? (haven't found a reason to stop converting stuff yet)
20:45 seatek :)
20:45 seatek though the slow starts are problemmatic in a few places
20:47 FROGGS well, there is JavaScript that you usually cant avoid... and there is C, PHP, Java, C++, C# and other stuff that you might see at $work
20:48 FROGGS (when you have to fix stuff others have written for example)
20:49 seatek yeah i haven't started converting any PHP stuff yet -- nothing web based yet. i fear what i've heard of memory leaks, so i'm leaving it for last, in the hopes my procrastination will outlast other people's procrastination on fixing the leaks ;)
20:49 rindolf joined #perl6
20:50 seatek haven't had to work in C in a long time. kinda miss it, strangely
20:50 FROGGS well, MoarVM is written in C :o)
20:50 FROGGS and yes, I love C too
20:52 seatek i think that is probably well over my head
20:53 seatek is it mostly limited to the context within which rakudo interfaces with an OS?
20:54 seatek or i suppose antyhing since rakudo isn't required
20:54 seatek that's weird froggs
20:55 seatek isn't the idea to go to JVM eventually?
20:56 FROGGS seatek: it does the OS abstraction, and other low level bits (memory management to name one)
20:56 mst seatek: the idea is to have both moarvm and the JVM as rakudo backends eventually
20:57 mst well, I mean, they exist now, but moarvm works because more manpower invested
20:57 cdg joined #perl6
20:57 seatek so when you say manpower invested -- you mean manpower on rakudo to get it to work with moarvm better than jvm for now yes?
20:58 FROGGS seatek: many things arnt that hard: https://github.com/MoarVM/MoarVM/​blob/master/src/io/fileops.c#L106
20:58 FROGGS seatek: moarvm was created by the makers of rakudo
20:58 seatek or are people just finding it easier to develop moarvm in conjunction with rakudo -- instead of having to deal with the peculiarities of already-defined jvm?
20:59 mst seatek: I believe that more time has been invested into moarvm because the JVM annoys the crap out of people, so sort of both
20:59 mst but I'm inferring quite hard there
21:00 seatek ok that i get ;)
21:00 mst based on stuff I've seen go past
21:00 FROGGS mst is quite right here
21:01 FROGGS you can hack stuff in moar, compile+install+test within a bunch of seconds
21:01 seatek yeah that seems handy
21:02 FROGGS the development turnaround on jvm (which means altering nqp + reinstalling rakudo) takes minutes
21:02 FROGGS so, moarvm is much more fun to work on
21:02 mst could the JVM time be cut down somehow?
21:02 FROGGS and it was designed *after* rakudo existed, so it is well designed for what rakudo/perl6 needs
21:03 moritz mst: the JVM has an intrinsic startup time that's mostly unavoidable
21:03 FROGGS mst: depends... there are cases where you only touch java class files which are not quite part of nqp... then it also just takes seconds
21:03 moritz mst: for the spectests, we had an evalserver, which keeps the JVM running in the background, and does IPC to get programs to it
21:04 moritz but that suffers from problems when a program loops forever, and Ctrl+C in the frontend thingy doesn't kill it, and stuff like that
21:04 bjz joined #perl6
21:04 moritz also, namespace pollution is very hard to avoid
21:04 mst I thought you could hot reload classes in the JVM if you poked it right
21:05 seatek so rakudo "translates" what it believes is a perl6 want to copy a file it a MVM file copy -- so rakudo must know which backend it's talking to.
21:05 seatek is there an API that moarvm must follow -- or is it rakudo that must follow moarvm's ?
21:05 seatek must be rakudo since jvm's is already defined
21:05 FROGGS the nqp ops define that api
21:06 seatek are those api's the same for moarvm and jvm?
21:06 FROGGS seatek: https://github.com/perl6/nqp/​blob/master/docs/ops.markdown
21:06 FROGGS seatek: the nqp ops are like 99% identical between the backends
21:07 AlexDaniel … and by that time you can probably start explaining what is nqp :)
21:07 seatek having these many layers of abstraction seems like it would make finding memory leaks VERY difficult
21:08 seatek yeah nqp.... i've been kinda ignoring that... ;)
21:08 evalable6_ joined #perl6
21:09 AlexDaniel m: say 42
21:09 camelia rakudo-moar db61aa: OUTPUT«42␤»
21:11 seatek ok, why does nqp exist? ;)
21:12 seatek i'm guessing optimization
21:12 seatek is that what rakudo is written in?
21:14 BenGoldberg nqp is indeed what rakudo is written in.
21:15 BenGoldberg It exists because it's easier to write a program which compiles/interprets nqp than one which runs perl6 directly.
21:15 mst seatek: nqp is 'not quite perl'
21:15 moritz nqp is bootstrapped. Booting a full Perl 6 compiler is much harder
21:15 seatek yeah i'm looking through it and it seems very terse \
21:15 moritz but you need to have something at least semi-bootstrapped, because how much compile time and run time are inetrmingled
21:15 seatek gotcha
21:17 seatek so all perl6 code gets interpreted by nqp, which in turn calls moarvm or jvm through a nqp-defined api that is bascially the same
21:18 seatek you just need to decide what bits of moarvm need to get called to fulfill the perl6 user's desires
21:18 seatek and that's up to nqp
21:19 seatek does nqp handle most of the call stacks, or is that at moarvm?
21:19 seatek god it's probably both
21:20 seatek with the weirdness perl6  can do
21:20 seatek how is anyone sane/
21:20 seatek ?
21:20 FROGGS rakudo grammar and actions (the parser) are written in NQP
21:20 AlexDaniel seatek: it's easy, we are not sane
21:20 FROGGS the rakudo built-ins, the setting" is written in Perl 6
21:20 seatek hehe
21:21 djbkd joined #perl6
21:21 seatek interesting
21:21 seatek so perl6 is *somewhat* "bootstrapped" in then
21:22 AlexDaniel well, nqp is
21:22 AlexDaniel and not perl6 but rakudo
21:23 seatek k
21:24 AlexDaniel seatek: https://github.com/rakudo/rakudo/bl​ob/nom/src/Perl6/Grammar.nqp#L1085
21:25 seatek i like looking at MoarVM better ;)
21:26 FROGGS seatek: that explains something about backends, nqp, and rakudo: https://www.youtube.com/watch?v=XgPh5Li3k4g
21:27 mst seatek: PERLCEPTION
21:27 AlexDaniel seatek: why? Grammar.nqp looks very Perl 6-ish
21:27 seatek AlexDaniel: yeah i just noticed that..
21:28 AlexDaniel seatek: in fact, I pointed directly to the place where the fun begins :)
21:28 seatek i had only just started getting into to the grammars
21:29 seatek i could just whatever i wanted and be done with you guy's excuses! ;)
21:30 seatek i need to find the link between rakudo and moarvm -- is ther ea place where that API is defined?
21:32 FROGGS seatek: https://github.com/perl6/nqp/blob/master/sr​c/vm/moar/QAST/QASTOperationsMAST.nqp#L2108
21:33 dalek ecosystem: 50515a9 | (Pawel Pabian)++ | META.list:
21:33 dalek ecosystem: Rename META.info to META6.json to be more compatible with S22 spec.
21:33 dalek ecosystem: review: https://github.com/perl6/e​cosystem/commit/50515a9875
21:33 FROGGS seatek: that's moar... every backend has its own mapping
21:34 djbkd joined #perl6
21:37 FROGGS seatek: nqp registers ops, like nqp::rename which can be called like a subroutine
21:38 FROGGS these ops are used in the setting, and this way you call into moarvm
21:39 evalable6_ joined #perl6
21:39 AlexDaniel m: say 42
21:39 camelia rakudo-moar db61aa: OUTPUT«42␤»
21:39 timotimo right, you can have ops defined by just mapping to an instruction on MoarVM, or by manually compiling the op into other low-level things by yourself
21:39 timotimo both kinds of example are in the OperationsMAST
21:41 timotimo on the JVM side you'll see ops from nqp::foobar space be mapped directly to method calls on a static object
21:44 seatek i see why it's so nice to be able to develop moarvm in tandem rather than jvm now. these seem to be most 1-to-1 mappings.
21:44 FROGGS would be weird if that wouldnt be the case
21:45 pochi joined #perl6
21:45 AlexDaniel .oO( “here, we developed a virtual machine that is completely incompatible with rakudo, let's use it!” )
21:45 seatek yeah -- so when you make a new mapping for moarvm -- do you try to make a similar one in the jvm?
21:46 mst AlexDaniel: that was called parrot
21:46 AlexDaniel mst: :D
21:46 BenGoldberg joined #perl6
21:47 mst AlexDaniel: also, if you didn't mail in yet, feel free to cc me on the report
21:47 AlexDaniel mst: I did
21:47 mst ok
21:47 mst just realise I should've said that earlier
21:48 FROGGS seatek: yes, the op that is exposed to rakudo will be named identically
21:49 FROGGS seatek: though adding ops does not happen often these days
21:49 FROGGS there might be new ones when udp support will be implemented...
21:49 mst I just want unix domain sockets :(
21:50 seatek we don't have that?
21:52 seatek is one of the directions of development to implement features of jvm in moarvm? i should probably watch that video before i talk more
21:52 seatek actually i should probably get work done instead of getting distracted ;)
21:52 seatek damn
21:54 seatek how important is it to keep moarvm and jvm capabilities in sync?
21:54 seatek is that a thing?
22:04 sQuEE joined #perl6
22:07 AlexDaniel seatek: well, ideally it is super important
22:08 AlexDaniel seatek: in reality rakudo-jvm needs more love
22:12 * FROGGS nods
22:16 khw joined #perl6
22:19 FROGGS joined #perl6
22:58 pat_js joined #perl6
23:00 dalek whateverable: 98c9c73 | (Aleks-Daniel Jakimenko-Aleksejev)++ | / (2 files):
23:00 dalek whateverable: Authorize when connecting to freenode
23:00 dalek whateverable:
23:00 dalek whateverable: When connecting to freenode you can use your nickserv login:pass pair
23:00 dalek whateverable: as a server password (delimited by :), and it will authorize
23:00 dalek whateverable: you automatically.
23:00 dalek whateverable: review: https://github.com/perl6/wha​teverable/commit/98c9c730aa
23:00 dalek whateverable: 8fc3153 | (Aleks-Daniel Jakimenko-Aleksejev)++ | Whateverable.pm6:
23:00 dalek whateverable: Do not reply to notices
23:00 dalek whateverable:
23:00 dalek whateverable: If we ignore private messages, we should ignore notices as well.
23:00 dalek whateverable: Hoping to resolve this issue soon though.
23:00 dalek whateverable: review: https://github.com/perl6/wha​teverable/commit/8fc3153d9c
23:00 dalek whateverable: 65bca16 | (Aleks-Daniel Jakimenko-Aleksejev)++ | Evalable.p6:
23:00 dalek whateverable: Exclude privileges from nicknames
23:00 dalek whateverable:
23:00 dalek whateverable: Another fix to the camelia detector hack.
23:00 dalek whateverable: review: https://github.com/perl6/wha​teverable/commit/65bca16e40
23:09 pat_js how would this perl5 look like in perl6? (I'm especially interested in the assignment part.
23:10 pat_js # p5: ($dirs, $name) = $file =~ m{^(.*)/([^/]+)$}
23:10 pat_js I want $dirs and $name to be strings…
23:10 pat_js this is how far I got: my ($dirs, $name) = (map({~$_}) <== (m{^(.*) \/ (<-[/]>+) $})[0,1]) given $file;
23:11 pat_js but this looks like a monster…
23:11 pat_js and it throws warnings, if there match…
23:11 bjz joined #perl6
23:11 pat_js s/match/is no match/
23:19 seatek pat_js: i don't know if you're wanting to use matching like that, but for that task i'd just use the IO stuff
23:19 seatek m: my $path = '/var/tmp/myfile'; say $path.IO.basename, ' ', $path.IO.dirname;
23:19 camelia rakudo-moar db61aa: OUTPUT«myfile /var/tmp␤»
23:21 pat_js seatek: yes I do, that's why I'm asking.
23:22 pat_js but in this case, I might as well use the IO stuff.
23:22 pat_js why wouldn't I want to use matching like this?
23:23 pat_js seatek: thank you
23:24 seatek well personally i avoid regex stuff whenever i can ;)
23:26 AlexDaniel m: my $file = ‘test/foo/bar/filename’; my ($dirs, $name) = ($file ~~ m/^(.*)‘/’(<-[/]>+)$/)[0, 1]; say $dirs; say $name
23:26 camelia rakudo-moar db61aa: OUTPUT«「test/foo/bar」␤「filename」␤»
23:26 AlexDaniel pat_js: it is actually not that different
23:26 AlexDaniel pat_js: actually if you want to make it a bit better…
23:27 AlexDaniel m: my $file = ‘test/foo/bar/filename’; $file ~~ m/^$<dirs>=.* ‘/’ $<name>=<-[/]>+ $/; say $<dirs>; say $<name>
23:27 camelia rakudo-moar db61aa: OUTPUT«「test/foo/bar」␤「filename」␤»
23:27 AlexDaniel ah, damn, these are match objects
23:28 AlexDaniel m: my $file = ‘test/foo/bar/filename’; $file ~~ m/^$<dirs>=.* ‘/’ $<name>=<-[/]>+ $/; say ~$<dirs>; say ~$<name>
23:28 camelia rakudo-moar db61aa: OUTPUT«test/foo/bar␤filename␤»
23:28 cdg joined #perl6
23:28 pat_js AlexDaniel: yup, that's why I had that map in there
23:29 AlexDaniel m: my $file = ‘test/foo/bar/filename’; my ($dirs, $name) = ~«($file ~~ m/^(.*)‘/’(<-[/]>+)$/)[0, 1]; say $dirs; say $name
23:29 camelia rakudo-moar db61aa: OUTPUT«test/foo/bar␤filename␤»
23:29 pat_js But then I got “Nil” warnings
23:29 AlexDaniel m: my $file = ‘test/foo/bar/filename’; my ($dirs, $name) = ($file ~~ m/^(.*)‘/’(<-[/]>+)$/)[0, 1]».Str; say $dirs; say $name
23:29 camelia rakudo-moar db61aa: OUTPUT«test/foo/bar␤filename␤»
23:30 AlexDaniel pat_js: but if I were you I wouldn't parse paths like this…
23:30 pat_js my $file = 'no slash'; ($dirs, $name) = ($file ~~
23:30 pat_js m/^(.*)‘/’(<-[/]>+)$/)[0, 1]».Str; say $dirs;
23:30 pat_js say $name
23:30 AlexDaniel yeah, fair enough!
23:30 pat_js m: my $file = 'no slash'; ($dirs, $name) = ($file ~~ m/^(.*)‘/’(<-[/]>+)$/)[0,1]».Str; say $dirs;say $name
23:30 camelia rakudo-moar db61aa: OUTPUT«5===SORRY!5=== Error while compiling <tmp>␤Variable '$dirs' is not declared. Did you mean '&dir'?␤at <tmp>:1␤------> 3my $file = 'no slash'; (7⏏5$dirs, $name) = ($file ~~ m/^(.*)‘/’(<-[␤»
23:31 pat_js m: my $file = 'no slash';my ($dirs, $name) = ($file ~~ m/^(.*)‘/’(<-[/]>+)$/)[0,1]».Str; say $dirs;say $name
23:31 camelia rakudo-moar db61aa: OUTPUT«Index out of range. Is: 1, should be in 0..0␤  in block <unit> at <tmp> line 1␤␤Actually thrown at:␤  in block <unit> at <tmp> line 1␤␤»
23:32 AlexDaniel m: my $file = ‘no space’; if $file ~~ m/^$<dirs>=.* ‘/’ $<name>=<-[/]>+ $/ { say $<dirs>; say $<name> } else { say ‘nah, cannot parse that’ }
23:32 camelia rakudo-moar db61aa: OUTPUT«nah, cannot parse that␤»
23:32 AlexDaniel m: my $file = ‘yes/space’; if $file ~~ m/^$<dirs>=.* ‘/’ $<name>=<-[/]>+ $/ { say $<dirs>; say $<name> } else { say ‘nah, cannot parse that’ }
23:32 camelia rakudo-moar db61aa: OUTPUT«「yes」␤「space」␤»
23:32 AlexDaniel pat_js: it all depends on how short you want it
23:32 AlexDaniel and on your reasoning why you cannot use basename…
23:33 ugexe m: say $*CWD.parts; # this handles volume as well, unlike a basic regex
23:33 camelia rakudo-moar db61aa: OUTPUT«{basename => camelia, directory => /home, dirname => /home, volume => }␤»
23:36 pat_js AlexDaniel: of course I can use basename, and will probably, but this was an Ideom I used often in perl5 and would miss, that's why I asked.
23:39 AlexDaniel well I'm still not sure what this ideom does
23:41 timotimo could we make the search on doc.perl6.org somehow "fuzzy"?
23:42 AlexDaniel timotimo: likely
23:42 timotimo like that it'll find "starts-with" when you search "startswith" or "starts_with"?
23:42 AlexDaniel timotimo: perhaps a ticket will be a good start
23:43 AlexDaniel the search itself needs more love too. Who knows, maybe that will spark up some interest
23:43 timotimo cool
23:43 timotimo i'll ticket
23:47 cognominal joined #perl6

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

Perl 6 | Reference Documentation | Rakudo