»ö« Welcome to Perl 6! | perl6.org/ | evalbot usage: 'p6: say 3;' or rakudo:, or /msg camelia p6: ... | irclog: irc.perl6.org or colabti.org/irclogger/irclogger_logs/perl6 | UTF-8 is our friend!
Set by moritz on 22 December 2015.
thou Probably a FAQ but I can't seem to find the answer to this: is it possible to stream results of MyGrammar.parse() asynchronously as a Seq or something? So I can, say, `for gather MyGrammar.parsefile($*IN, …) { ... }`? Or is making repeated .subparse() calls the only way to do this? gist.github.com/softmoth/99ec805b2...904b562bed 00:19
AlexDaniel thou: well, yeah, .parse can't do it because it can fail at the end of the input. So it simply cannot give you a meaningful intermediate result 00:25
thou: you can either use subparse, or maybe you can also try Actions
thou: but subparse is probably what you need
AlexDaniel oh yeah, you already know about actions 00:27
thou Yeah, OK. Thanks. 00:47
moritz good morning 04:23
yoleaux 28 Sep 2017 22:24Z <Zoffix> moritz: reminder that you're listed as steakholder for github.com/perl6/6.d-prep/blob/mas...ls-imply-d
grondilu m: module A { sub f is export { say "ok" } }; module B { import A; sub EXPORT { A::EXPORT() } }; import B; f; 04:23
camelia 5===SORRY!5=== Error while compiling <tmp>
Undeclared routine:
f used at line 1
moritz can we please go back to calling our language #perl6, pretty please, until we've reached a consensus on what to name it?
grondilu how do I re-export?
moritz am I supposed to explain to people that Perl 6, we we (or some of us) called "Rakudo" for some time, now uses #6lang as a twitter hashtag, but until we decide yet something else? 04:24
it's a freaking PR disaster right now
geekosaur grondilu, I think you have to do more work than that, there's a discussion somewhere in the docs about the namespaces involved 04:29
and iirc much of the intended machinery for automating that kind of thing doesn't exist or doesn't work yet
geekosaur docs.perl6.org/language/modules#in...sub_EXPORT but it's the sections above you'll likely need to work around it 04:31
TEttinger moritz: you didn't hear? 6lang is leetspeak for blang, which is what all the 90s kids are calling a new synthetic drug that induces heavy nostalgia. it's a mix of buzzfeed and slang 04:51
AlexDaniel the real disaster is when somebody asks me what language do I use, I answer “perl 6”, and they say “ah, perl…” 05:01
thou m: grammar G { regex TOP { \d } }; my $str = '123'; my $g = G.new; for ^3 { $g.subparse($str, :c).say }
camelia 「1」
「1」
「1」
AlexDaniel so people are actively against different names and are calling for a consensus. Do I have any other choice than going with something I can use today? 05:02
thou Is this a known issue? Or am I calling it wrong? :continue() adverb not working with .parse / .subparse 05:03
thou Trying to avoid this: $str .= substr: $/.pos; # Remove previously matched portion 05:04
Todd Hi. I am trying to come up with a non system call that will tell me if a file exists. So far I have `perl6 -e 'my $x="eraseme.txt".IO.f;say $x'` which will give me a "True" if it exists, but it will crash and wag the finger at me if not. Is there any method to just get a "False" back? 05:05
AlexDaniel thou: I think it should be :pos($/.to) 05:06
weabot Todd "file".IO.e
AlexDaniel m: grammar G { regex TOP { \d } }; my $str = ‘123’; my $g = G.new; for ^3 { $g.subparse($str, :pos($/.to // 0)).say }
camelia 「1」
「2」
「3」
AlexDaniel thou: like this ↑. Where did you find :c named arg?
thou AlexDaniel, very cool. Docs are wrong apparently. 05:07
geekosaur shouldn't a Filire treated as a Bool produce False instead of throwing?
Todd Perfect! Thank you!
geekosaur er, Failure...
TEttinger AlexDaniel: camelian? the logo is camelia perched on a chameleon made of carnelian?
geekosaur oh, apparently you have to explicitly .Bool it? that seems kinda unfortunate 05:08
thou AlexDaniel, p6doc -f Grammar.parse 05:08
thou (And my memory from a couple years back. :-) 05:09
AlexDaniel thou: I filed an issue here: github.com/perl6/doc/issues/1583 05:11
thou: feel free to edit it or to comment on it… or whatever you feel appropriate
thou AlexDaniel, cheers 05:12
AlexDaniel geekosaur: what do you mean by “treated as a Bool”? 05:13
geekosaur hm, I guess that is ambiguous in the context I used it... 05:14
AlexDaniel geekosaur: for example, prefix ? calls Bool and it works, $f ?? … !! … works too
geekosaur in some sense, I am expecting .f to produce a Bool
geekosaur but I have to be explicit here in certain cases (like .say) or it throws 05:14
AlexDaniel but that's a method call on a Failure! :)
or is it 05:15
geekosaur I am expecting a Bool
if it is a Failure, I expect it to coerce to Bool
the point of .f is explciitly testing, that is why it is docced as Bool
AlexDaniel hmm
geekosaur this is pedantically right but is also a bomb laid at a conscientious programmer who tries to test before using and then gets burned by a Bool suddenly blowing up as an exception. This is LTA 05:16
geekosaur that said, having a Bool return type silently act like a coercer might also be LTA... 05:17
DWIM, WAT 05:18
and on the third hand there is the revelation that .e *does* behave like this 05:19
which is, at best, inconsistent
AlexDaniel sounds like some material for a ticket 05:20
Todd the "e' comes back True for bth fiels an direcories. 05:23
This comes back for only files: $ perl6 -e 'my $x="p6-OS-Clipboard".IO.f.Bool;say $x' False [tony@rn4 linuxutil]$ perl6 -e 'my $x="eraseme.txt".IO.f.Bool;say $x' True
maybe the "e" option has a booboo in it too? 05:24
geekosaur we were just discussing that 05:27
theres an argument that could be made that it makes sense insofar as -e is a different operation internally. but that argument doesn't work unless that operation is exposed, whereas tests .e .f etc. do not expose it 05:28
(perl 5 half-exposes it with the magic _ parameter, but that's an even worse solution imo)
I will probably write it up as a bug, with additional discussion of the various possibilities 05:29
meanwhile, if you saw my latest, prefix ? operator acts like the .Bool but is shorter 05:30
m: say ?"blurfl".IO.f
camelia False
geekosaur we also discussed the autocoerce thing that I had expected, which is also a bit more complex than it looks at first blush :/ 05:31
(basically, amking a Bool return type autocoerce is probably the right thing here, but not necessarily always. ALthough if there's some clever way to specify it as a coercion type in a signature, that might also work)
Todd Any chance of yo guys checking if I capitolized "If" with this strnage error message? 05:53
SmtpIni
perl6 -c CheckRaid.pl6 ===SORRY!=== Error while compiling /home/linuxutil/CheckRaid.pl6 Unexpected block in infix position (missing statement control word before the expression?) at /home/linuxutil/CheckRaid.pl6:61 ------> If not "$SmtpIniFileName".IO.f.Bool⏏ { CreateSmtpIni() }; expecting any of: infix infix stopper postfix
Todd The compiler -c option missed teh single =, but the run time caught it. Any chance of making the -c catchi it too? 05:58
for %SmtpIni.kv -> $key, $value { if ( $key = "to" )
geekosaur suddenly feels like it's 2007 again 06:08
and of course it has to be the file tests...
(just realized what is bothering me about autocoercing Failure to Bool in all cases... and it reveals an edge case in the autocoercion in other circumstances as well) 06:09
geekosaur anyway the edge case here: speaking in unix terms, ENOENT should be a Failure that autocoerces to Bool. What of EIO? Non-autocoercing Failure? Hard exception? It's kinda a different level of failure than 'file not found'. 06:14
geekosaur added that to his notes... which is why he didn't just go ahead and file the bug immediately
geekosaur still thinking through the edge cases and such 06:14
Todd I am stumped. What is "write bytes requires an object with REPR MVMOSHandle (got VMNull with REPR Null)"??? vpaste.net/KKpDY Line 52 is "else { $SmtpHandle.print( "$key=\n" ); }" 06:19
geekosaur that is an internal error 06:20
and I just got a different internal error while poking at it 06:21
geekosaur pyanfar Z$ 6 'my $key; $*OUT.write: "$key=\n"' 06:21
Use of uninitialized value $key of type Any in string context.
Methods .^name, .perl, .gist, or .say can be used to stringify it to something meaningful.
in block <unit> at -e line 1
Type check failed in binding to parameter '$buf'; expected Blob but got Str ("=\n")
in block <unit> at -e line 1
geekosaur the last part is the internal error; wtf is $buf? 06:21
geekosaur anyway I think what happened is that it thinks the "=" is part of the variable expansion 06:22
and sure enough: 06:23
pyanfar Z$ 6 'my $key = "y"; $*OUT.write: "$key=\n"'
Type check failed in binding to parameter '$buf'; expected Blob but got Str ("y=\n")
in block <unit> at -e line 1
hm, no, more complex than that; I changed to brace and still get the error. write method is doing something screwy
and I missed that the Str now has the y in it... 06:24
geekosaur so, anyway: not a problem with your code, someone broke the write method 06:24
huggable, rakudobug
huggable geekosaur, Report bugs by emailing to [email@hidden.address] See also: github.com/rakudo/rakudo/wiki/rt-introduction
Todd "$key\=\n" did not work; neither did `$key ~ "=\n"`
any work around? 06:25
ad an idea. Will check
geekosaur .print however seems to work for me. which suggests what is broken in your case is $SmtpHandle is a VMNull... but that should never happen, or at least never show up at perl 6 level 06:26
(VMNull is a moarvm internal thing that should never, ever leak out to rakudo) 06:27
Todd preassigning everything to a valiable did not work. how do I use .print? 06:28
geekosaur again, you need to doublecheck that $SmtpHandle is what you think it is 06:29
somehow it is making it into perl 6's guts as a moarvm undefined value 06:30
I would have expected it to be caught if it weren't an IO::Handle, so apparently something is wrong with the IO::Handle that is not being caught until far too late 06:31
Todd else { "$key=\n".$SmtpHandle.print } gives me a missing block.
Todd How do I check $SmtpHandle? 06:42
This is weird as it only goofs up inside the for loop. 06:43
This even goofs up: $SmtpHandle.print( "key\n" ); All the rest is commented out 06:44
Todd I will post on the mailing list. 06:48
geekosaur that thing you tried earlier is extremely confued. you still think foo.bar and bar(foo) are exactly the same thing, right? 06:58
they are only exactly the same thing in javascript and lua 06:59
they are *almost* the same thing in perl 5.
Todd another much simpler question. How do I get the first character in a string? This does not work: $ perl6 -e 'my $x="xabc"; say $x[0];' 07:00
geekosaur they are different in perl 6, and that is why you had the problem before on the mailing list where I pointed out that you needed to use a colon instead of a comma
this is not just because we felt like it. they are different things
geekosaur substr 07:00
a string is not simply a list of characters 07:01
Todd $ perl6 -e 'my $x="xabc"; say substr $x, 0..0;'
Todd Works. Thank you! 07:01
japhdc I am trying to use whenever IO::Socket::Async.listen... The -> $conn { whenever $conn { part works fine... But can I continue executing other parts of my script and effectively leave the listener in the background? 08:32
Zoffix moritz: TBH, I'm with AlexDaniel on this. You're asking us to go back to being the butt end of jokes until a concensus is reached on something that was claimed to be unalterable and unconsensuable 2 years ago. If two people calling the language something else to get a feel for an alternate name is causing a "PR nightmare" then we got bigger problems than naming. 09:42
Zoffix japhdc: yeah, you can. 09:44
moritz Zoffix: ok, PR nightmare is too strongly worded, but it does sow confusion 09:46
Zoffix m: my $x="xabc"; say $x.comb.head
camelia x
stmuk I think things are confusing enough with perl 6 v rakudo v rakudo star without throwing a new name into the muddle
moritz Zoffix: also, I'm picking up mixed messages from you. I thought you wrote that others convinced you that we should *add* something to the "Perl 6" name, yet you don't seem to practice that either with "Rakudo" or with "6lang" 09:47
seems like you offer a compromise without actually offering a compromise 09:48
Zoffix Sure, it does, but no one's forcing you to use it. As I've said, so far I've seen just one other person use the name. How much confusion does that cause exactly? Sounds like observation bias.
moritz well, also depends on the visibility 09:49
if we make fanfare around the squashaton for example, and that uses 6lang or rakudo as the language name, that spreads it
I don't really know what to do, except ignore everything that isn't at least "Perl 6 $something" branded 09:50
Zoffix moritz: I don't recall writing that someone convinced me of anything. I did state that enough people opposed *an entire name change* that we won't do it, but extending the official name will let people who don't want to sow confusion with "perl" in the name to use just the extension on its own and those who feel "perl" brings something to the table can still use it. The conf video suggested instead of an 09:52
extension, a *second name* can be invented and users will use whichever of the two the find more palatable
DrForr The "second name" is probably what I'd use for marketing courses, because as much as I truly hate to say it, emphasizing a break from the old Perl style does help attendance and encourages people with the "new language" vibe. 09:54
Zoffix If there's anything I'm convinced about is that "perl" in the name is a bad idea. The amount of people that were just following along with the name but after the first blog came out they came forward and shared their experiences and how they always have to start with preamble that it's not "perl" but a different language and people still crack jokes even after that.
El_Che The cyclical new discussions make me think that the older name discussions weren't really resolved and that any name with "Perl 6" in it isn't really a solution or a rebranding. I would say keep "Perl 6" and accept the reputation breakage for Perl 5 and 6, or pick something new. All the "compromises" sound way worse to me
stmuk I've no problem with increased use of "rakudo" but "6lang" I don't like 09:55
robertle the people that react negative to the word "perl" do that for a (perceived, personal) reason. I guess that reason is still valid with perl 6, whatever it is called. so renaming it doesn't help, and perhaps the "Problem" does not need solving? it's just horses for courses... 09:58
El_Che Also, all the lang-implementation thing sound like an early optimazation about hypothetical implementations (if this would block the Rakudo-name use)
robertle: the problem is the 6, not perl 09:59
Zoffix El_Che: There won't be a concensus. I'm looking at an 8-page bikeshed of just about whether .flatmap is confusing. And language name is something that's a lot easier to have an opinion on
El_Che Zoffix: I am not optimistic eather
Zoffix: hence, option 1 10:00
Zoffix robertle: the main negatives I hear: (a) it's outdated (b) it's got too many special cases. I see neither as true in 6lang
El_Che: that's why the name never changed in the past. People just give up without solving the problem.
El_Che well, I don't believe the boat has sailed has liz puts it 10:01
Zoffix El_Che: and now AlexDaniel and I said, screw that. But people are telling us: give up
stmuk ignore the naysayers on reddit
El_Che yes, perl6 exists from 2000, but for most people it's a new language
Zoffix stmuk: what about naysayers on Twitter?
El_Che so, the breakage, imho, would be in the head of the people on this channel (or probably #perl6-dev)
and not on the outside world 10:02
Zoffix stmuk: what about a teacher who said they don't want to teach 6lang because they don't want their students to be subjected to ridicule? Ignore too?
teatime stmuk: I invariably get "huhhaw, *perl*" any time I mention perl5 or perl6. has been that way forever. no matter where I am. it makes me sad, it's stupid, but it's true.
stmuk Zoffix: that sounds like nonsense to me .. no sensible teacher judges a book by its cover 10:03
Zoffix stmuk: what book? 10:03
El_Che stmuk: you should be surprised (talking about university level)
stmuk Zoffix: I mean the content of a language is more important than its name
Zoffix stmuk: the teacher in this case knows and loves the language, but they know their students will be made fun of for learning "perl" and they told me the don't want to have that happen 10:04
stmuk El_Che: probably not since many teachers are far from sensible
El_Che stmuk: of course, for someone that knows the language
stmuk: someone that left perl in 2005 won't look "back" to Perl 6
Zoffix: there are indeed different problems based on expectation. 10:05
1. People don't look at Perl 6 because of the unjust bad perl 5 rep
stmuk Zoffix: students often complain about languages they are taught. on my course many asked for C++ rather than the functional language Miranda they were taught. Any sensible teacher would ignore that.
El_Che 2. People look at Perl 6 expecting a new Perl 5 and are disappointed (speed, libs) 10:06
3. People that don't care about Perl 5 at all (no negative bias), but do not look at Perl 6 because they don't see it as new
(or modern)
DrForr I keep forgetting to mention Inline::Perl5, but even when I do, it's like "So perl 6 can't exist without perl 5? Why should I use Perl 6 then?" Which is unfair, but if you're of a conservative bent it's an argument. 10:07
El_Che 4. Pissed of Perl 5 programmers that don't like the 6 making the 5 obsolete
(that's the case I can think of right now)
stmuk "perl" in the name is a double edged sword. Many will laugh (as they laugh about PHP, Rust whatever) but others will have happy memories of perl and be more positive 10:08
El_Che DrForr: on French they use the term "usine à gaz" (gasworks company)
El_Che You don't want your code to depend on 2 runtimes IRL 10:08
El_Che stmuk: certainly! 10:08
stmuk: the nostalgia is useful, but we also need the new car smell 10:09
different users, different expetactions
stmuk rakudo is the new car smell
Zoffix stmuk: I feel I'm not explaining it right. It's not students complaining. It's not the teacher dismissing the language. It's the teacher not wishing to teach the language because their students will be told they're learning a dead, unwanted language, despite them learning a new language with a bad name
El_Che stmuk: if it was the name of lang/implementation, sure
stmuk Zoffix: I understand exactly that you mean. 10:10
Zoffix "No true Scottsman would do X"
Zoffix So ignore it. No true Scottsman would use reddit. So ignore it. No true Scottsman would claim Perl is dead. So ignore it. So ignore everyone who is confused about the name :/ 10:11
stmuk I think this whole renaming debate (which has been going on for years) is just a total dead end
El_Che so in short, I value (and like) Zoffix's naming efforts, but his hands are tied by the "compromise" making the benefit of the bother small
DrForr El_Che: I agree, the thing is that all of CPAN didn't spring fully-formed from the head of Larry, and people these days seem to expect a fully-formed ecosysten out of the box. Now, truty be told the people in this channel are the ones developing that ecosyste, and there aren't as many people as the perl5 crew working on it.
stmuk if you want a new name use "rakudo" don't invent yet another
El_Che DrForr: yes. Hammer + nail + head :) 10:12
DrForr: the thing is that a random dev would expect CPAN when he hears "Perl 6"
Zoffix stmuk: you can't ignore everything and everyone. There are people opposed to "rakudo" because it blurs the distinction between language and implementation.,
DrForr Okay, here's a wack idea. 10:13
El_Che DrForr: but that wouldn't be the case for 6lang, Rakudo, or a random new lang
stmuk Zoffix: there is only one implementation now
Zoffix DrForr: let's hear it :)
stmuk: no, there are two. There's also fanlang
El_Che DrForr: eg. a lot of golang modules are crap
but noone complains because it's "new"
stmuk Zoffix: there is only one open source implementation now
Zoffix heh
stmuk: and if I'm to give you a link to a third implementation right now, will you say "there's only one working open source implentation right now"? :P 10:14
El_Che moritz: could run a 2nd edition of his book with some search and replace :) 10:14
Zoffix stmuk: I'm also not bluffing :) Though it'd take me a while to find the link 10:15
stmuk Zoffix: does it pass roast :P
Zoffix probably not 10:16
stmuk El_Che: he could sell two books. double the profit!
El_Che :)
DrForr Shim zef so that when a requested perl6 module isn't available it reports "falling back to perl 5" (with language appropriate to not piss off people that are pissed that 6 "took over" perl5) and either wraps or adds something to the doco to indicate :from<Perl5> if they actually have Inline::Perl5 on their system. Gives us more modules to work with in the ecosystem, but would be nightmarish for migration... Maybe there's the germ of an idea in th 10:17
Zoffix DrForr: wouldn't a person find the module first before installing it by typing arbitrary module names with zef? 10:18
El_Che DrForr: twitter needs to upgrade your irc char limit, it seems :)
robertle Zoffix: sorry, was away from the keyboard for a moment. My experience is that neitehr the outdated nor the "6" is the problem, but that perl (both 5 and 6) are "big" languages, and that there are many different ways to achieve the same goal. compare that to java or python, and you can see why some people have problems with perl: it's just incredibly hard to train people up to a given and common standard.
if you are running a large development team with some churn and people who do this for a living rather than for love, then this is a concern... and I think that is why some people react badly when they hear "perl". renaming it does not change that at all
Zoffix Yeah, got cut off at "gem of an idea in th"
DrForr I haven't tried zef beyond installing the perl6 modules I need; if this behavior is already there... 10:19
robertle if that is the problem however, then there is no solution...
arguably that isn't even a problem
DrForr "Maybe there's the germ of an idea somewhere." is all I really said.
El_Che DrForr: Inline Perl and similar solutions are great in a get-shit-done setup. However, if the hat you wear is not one as dev but admin or architect, less great 10:20
Zoffix robertle: sure, but that's not the only negative and a unique name does address other problems. Not to mention it also addresses the conflict with Perl 5 community.
El_Che robertle: that's not a perl thing, but a small -vs- big lang discussion 10:21
for some things golang is fantastic
for other stuff you're creating the same function again and again to do something to a list
it all depends on what you do and what you want to minimize
DrForr I know. I'm looking at it as more of a bridge until we can actually get proper 6 modules in the ecosystem. At least the modules are marked with a :from<Perl5> so they'll be easier to spot when migrating, but OTOH the 5 modules are pretty stable so there's not as much concern about upgrading those. 10:22
El_Che My point is that the brigde will collapse and burn at the same time and give your perl 6 project a terrible name 10:23
Zoffix DrForr: IMO that bridge will hinder getting proper 6 modules in ecosystem. If someone's lacking a module right now, they're told to use Perl's module via Inline::Perl5. If they didn't have that option, the pain would be more severe to make more people write 6 modules
El_Che best case scenario is that everything work as expected, but it take a collocal effort to setup and maintain
s/collocal/collosal/ 10:24
Zoffix Well, not that bridge, but rather the fact that we have options other than having modules in ecosystem is what stunts it
Well this was fun :) 10:25
DrForr Then the issue in my mind resolves to having time and people to implement what needs to be done from 5 in 6 and do it the right way.
Zoffix crawls back into #perl6-dev hole to hack on 6.d o/ 10:25
DrForr And I'm late for lunch. 10:25
El_Che He left before I told him I liked his dronkenChicken nick 10:26
and that it would be a *great* lang name
(I would certainly buy the t-shirt)
DrForr Incidentally I'm starting to build out the pure-perl6 parser thus making Perl6::Parser live up to its name.
El_Che nice 10:27
El_Che lunch
stmuk we should give it a unicode name that will go down well with the people on twitter and reddit
(warning not serious suggestion)
DrForr And as a consequence I need a good grammar debugger, so I intend to take thorough notes. I've got an idea on a split-horizon debugger setup for later.
lizmat
.oO( TPLFKAP6 )
10:32
stmuk "Symbol" 10:35
Xliff OK. Why would I get "Cannot find method 'sink': no method cache and no .^find_method" when doing the foillowing: try { CATCH { when X::HTTP::Response { .resume; # Error occurs here; }; }; ... }; 10:55
lizmat++ says this happens when nqp calls are made in sink context, but why would that happen on .resume? 10:56
Is there something missing from the Exception declaration?
lizmat I assume it's subclassed from Exception ? 10:58
Xliff Yep. Checked that. 10:59
lizmat could you do something like "say .resume.^name" 11:01
Xliff Sure
lizmat the resume is not supposed to return: but if it does, what is it then? 11:01
Xliff lizmat: Looks like .resume doesn't exist in the context at all. 11:04
Xliff Any kind of access to it drops the error. 11:04
Including "say .resume.^name"
lizmat weird 11:04
Xliff !_!
Xliff lizmat: If you want context, you can find the actual code, here: github.com/Xliff/p6-webservice-eve...SO.pm6#L99 11:08
lizmat Xliff: why try *and* a CATCH ? 11:09
Xliff That's the way the docs had it written when I first wrote that code. What would you suggest to replace it?
(Said code was originally written over a year ago)
Xliff lizmat: Error occurs when try is removed. 11:16
lizmat sorry, out of ideas :-( 11:20
perhaps rakudobug it
preferably with a golfed example :-)
Xliff I know. Trying to find one is the problem.
I will work on it. Thanks for the help.
Geth ecosystem/robertlemmen-patch-1: b013b2f346 | (Robert Lemmen)++ (committed using GitHub Web editor) | META.list
Add CucumisSextus to ecosystem

CucumisSextus is a Cucumber-like BDD test framework
see github.com/robertlemmen/perl6-cucumis-sextus
12:31
Geth ecosystem: robertlemmen++ created pull request #368:
Add CucumisSextus to ecosystem
13:19
[Coke] moritz++
Xliff Well, fixed my problem, but it was more a workaround. 13:21
Xliff Instead of "when X::HTTP::Response { .resume }" I can do "when X::HTTP::Response { $response = .response }", which is what I really want. 13:22
jdv79 lizmat: should i bug that pos attr thing? 13:26
Geth ecosystem: b013b2f346 | (Robert Lemmen)++ (committed using GitHub Web editor) | META.list
Add CucumisSextus to ecosystem

CucumisSextus is a Cucumber-like BDD test framework
see github.com/robertlemmen/perl6-cucumis-sextus
14:10
ecosystem: e0e61cd9c1 | (Robert Lemmen)++ (committed using GitHub Web editor) | META.list
Merge pull request #368 from perl6/robertlemmen-patch-1

Add CucumisSextus to ecosystem
timotimo robertle: the readme contains the background scenarios section twice and the tables section is missing some `` for preformatting 14:17
robertle timotimo: thanks! 14:20
timotimo np :) 14:22
Xliff Whooo! 14:50
\o\
/o/
\o\
Xliff fixed code and finally got API working. 14:50
ugexe DrForr: yes that is the eventual idea... zef graph all dependencies, then hand off the appropriate parts of the graph to whatever external tool handles it (cpanm/apt-getwhatever for from:<Perl5>) 15:41
jdv79 very nice! 15:42
jdv79 approves
Herby__ \o 16:14
timotimo yo herb 16:20
jnthn Heads up for anyone using IO::Socket::Async::SSL: today I some landed fixes, one for it occasionally disordering messages (actually rooted in a bug in Supply.schedule-on in Rakudo; now using something else to avoid that) and another that could very occasionally cause deadlocks under load. Version bumped, uprading suggested. 17:29
tony-o jnthn++ 18:23
lancew Hi all, anyone here able to invite people to the bailador slack? 19:21
geekosaur I think I have to just not respond to those list messages any more. I can't handle someone who can only handle things in complete isolation from each other, one tiny morsel at a time, no exceptions. 19:50
rindolf geekosaur: are you talking about Todd? 19:51
geekosaur And metaops are probably going to be completely opaque to them because you can't make sense of them with their components in complete isolation from each other
HoboWithAShotgun is there a way to find out which modules are currently installed? (in perl6). i mean i can't just look into the filesystem 20:36
with in perl6 i mean from within a perl6 program 20:37
moritz I'm sure there's a zef command for that 20:39
zef list --installed
HoboWithAShotgun goes amd reads some source code 20:46
geekosaur HoboWithAShotgun, if you insist on not using a tool like zef, you will have to learn about CompUnitRepos 20:51
and then you will discover that some details are per management tool, so you may *still* have to use e.g. zef
geekosaur although for just this question the CUR APIs may well be enough 20:53
ugexe m: say $*REPO.repo-chain.map(*.?installed).map(*.Slip).grep(*.so).map(*.meta<name>); # for modules that are "installed". zef does some extra stuff to also list non-installed modules (anything from -Ifoo, or PERL6LIB=foo) 20:59
camelia (zef CSV::Parser Inline::Perl5 CORE)
HoboWithAShotgun apparently. i looked at zef which is a perl5 script which exec()s a perl6 script that calls CompUnit::RepositoryRegistry.run-script("zef", :dist-name<zef>, :$name, :$auth, :$ver); 21:01
timotimo HoboWithAShotgun: it's probably a perl5 script made by rakudobrew 21:02
ugexe those are wrappers installed by rakudo/CUR
yeah that too^
HoboWithAShotgun now how do i find the actual script without doing a full text search 21:03
looking at the repository at github i could
timotimo "rakudebrow which" is a thing, but that just finds the perl6 script for you
i.e. the one you're already looking at 21:04
ugexe `zef locate bin/zef` BUT thats just another wrapper! the real code is in `zef locate Zef::CLI` 21:05
HoboWithAShotgun my problem is i want to create a factory for which i don't know the number of products beforehand. i want to count everything under a certain namespace to be a product
timotimo buggable: eco Pluggable 21:06
buggable timotimo, Pluggable 'Find plugin classes or modules': github.com/tony-o/perl6-pluggable
HoboWithAShotgun looks the right hammer for that nail. ty 21:07
ugexe HoboWithAShotgun: if you can accept the constraint they *must* be installed, then the code above should work
HoboWithAShotgun you mean it won't find any local libraries? 21:08
ugexe if you install to a local library yes. if its not installed (you just git clone it and -Ilib for example) then no 21:09
HoboWithAShotgun that's a bummer but no dealbreaker 21:10
but thanks for making me aware
HoboWithAShotgun should be easily patched though, github.com/tony-o/perl6-pluggable/...ggable.pm6 line 118 21:16
ugexe that will actually handle non-installed local libraries. 21:18
timotimo last change may 18th, i wonder if any major changes to CUR happened since then
HoboWithAShotgun bummer. $*REPO.repo-chain is an immutable list
mst yes, because it's a list view onto a singly linked list 21:22
it would make no sense for it to be mutable
Xliff nqp::getlexcaller(q|$?USAGE|) <-- Doesn't work any mo.
Was it removed? 21:23
ugexe $*USAGE now
Xliff Ah! ugexe++;
HoboWithAShotgun goes to feed his frog 21:28
meh, i don't know, the animal is not himself since obama turned him gay with chemicals 21:35
AlexDaniel whateverable: 845db2e47f | (Aleks-Daniel Jakimenko-Aleksejev)++ | 3 files
I ♥ systemd

This commit resolves many long-standing problems:
  …
21:39
.tell nine Geth is down
yoleaux AlexDaniel: I'll pass your message to nine.
AlexDaniel moritz: thanks 21:48
Xliff AlexDaniel: You need to tell me why systemd is so great. 22:00
I've had my share of problems with it.
AlexDaniel Xliff: it's awesome for creating services. Do you want virtual /tmp? That's one line. Read-only filesystem? There you go. Memory limit? One line. Your process is misbehaving a lot? Two lines to set up a watchdog. Restart automatically? Sure. With a delay? Of course. 22:02
you can do all that yourself, but I don't have a spare month of time for all this 22:03
Xliff AlexDaniel: You have examples of those?
AlexDaniel Xliff: github.com/perl6/whateverable/commit/845db2e47f
note that this commit is very tradeoff-ish and things are still not entirely (or maybe at all) secure (each perl6 execution from every bot should be seccomp-ed to get it about right). But I can take this half-solution right now 22:05
Xliff AlexDaniel: Ah! I see!
I haven't done systemd services yet, so this is new to me. The problems I've had were distro and installation related.
AlexDaniel++ 22:06
AlexDaniel Xliff: another cool thing is that you can write *user* services. There are some limits, but generally you don't need root to get this kind of stuff working
PrivateTmp doesn't work without root though, unfortunately 22:07
Xliff Yeah, that's a real plus.
unclechu hey guys, is there any package for dbus interface? 23:18
timotimo buggable: eco dbus 23:22
buggable timotimo, Nothing found
AlexDaniel unclechu: it is marked as a wanted module here: github.com/perl6/perl6-most-wanted...les.md#ipc 23:32