🦋 Welcome to Raku! raku.org/ | evalbot usage: 'p6: say 3;' or /msg camelia p6: ... | irclog: colabti.org/irclogger/irclogger_log/raku
Set by ChanServ on 14 October 2019.
blah69 I have two questions. Is there a way to delete a variable, and is there a way to print all the variables in current scope (I'm not sure if I'm saying this correctly). 00:12
[Coke] not like there is for hash elements, no 00:17
(regarding the deletion)
eery You can set it to (Any), which is the value an "undefined"/unset variable has 00:18
[Coke] (by default) 00:19
I am sure there is some UPPERCASE:: thing you can poke into for the variables in the current block.
blah69 Gotcha. Python has locals() and globals() which will return list of variables. I'm not sure if theres anything similar in raku.
jnthn m: { my ($a, $b) = 1, 2; dd MY::.kv } # you can get hold of variables like this
camelia ("\$b", 2, "\$a", 1, "\$*DISPATCHER", Mu, "\$_", Any).Seq
tellable6 2020-06-27T23:32:11Z #raku-dev <AlexDaniel> jnthn can you file a ticket about signal()? You definitely can describe it better than me. Thanks! colabti.org/irclogger/irclogger_lo...06-27#l194 00:20
jnthn You'll see a few implicitly declared ones too
The set of symbols in a lexical scope is fixed at compile time, so there's no way to actually delete one.
[Coke] jnthn++ 00:21
blah69 jnthnthanks 00:22
jnthnt hanks
jnthn thanks
Doc_Holliwood *cough* 00:45
cpan-raku New module released to CPAN! Math::Combinatorics (0.0.4) by 03ELCARO 00:53
SmokeMachine vrurg: hi! Why the iOS issue was closed? 03:26
khoguan Hello, whould you tell me how to zef install Text::CharWidth, which is in CPAN but not in p6c and zef search fails to find it. 03:55
nine SmokeMachine: I guess vrurg closed it because no one was gonna work on it anyway. Porting to such a platform won't happen because someone is seeing an issue and thinks "let's get our issue count down" but because someone is interested in doing it or simply curious and there they won't need a ticket. 09:45
Geth ecosystem: 284a164761 | (Jonathan Stowe)++ | META.list
Rename repo of GD
10:32
SmokeMachine nine: that makes sense. 12:50
cpan-raku New module released to CPAN! Red (0.1.10) by 03FCO 13:53
Geth ¦ problem-solving: AlexDaniel assigned to jnthn Issue Raku needs a modern doc format that is familiar to most people github.com/Raku/problem-solving/issues/207 14:31
Geth ¦ problem-solving: lizmat unassigned from jnthn Issue Raku needs a modern doc format that is familiar to most people github.com/Raku/problem-solving/issues/207 14:53
rustemb hello! 16:03
softmoth Hi! 16:04
rustemb how are you?
softmoth All, the docs (Language/02-reading-the-docs) mention "It is planned to add a feature for C<p6doc> (in conjunction with C<META6.json> changes) to extract B<all> Raku pod in files included with the installed distribution." I'm currently the main developer for p6^H^Hrakudoc, and would love to know if there's any discussion on this archived somewhere. 16:06
softmoth rustemb, I'm doing well, thanks! Writing you from my travel trailer in the mountains of Georgia, USA, on a beautiful afternoon. 16:07
rustemb Awesome! 16:08
[Coke] softmoth: do you mean docs.raku.org/programs/02-reading-docs ? 16:10
softmoth Oops, yes.
[Coke], generally I was looking to see if there's anything defined in distribution.meta saying "here's the docs users might care to read" 16:11
AFAIK, App::Mi6 has a setting that lets you declare which file it uses to produce README.md. I assume skaji would have used META if something were defined there. So I suspect this has been discussed but never formalized. 16:12
softmoth It's easy enough to do a heuristic like "search everything in .meta<provides resources> for .lines.starts-with('=head1')" which would probably be close to what users want. 16:17
softmoth But I think that should either be formalized & documented for module authors ("All files with .extension eq any(«rakudoc rakumod '' pod6») containing at least one line that starts with '=head1' will be concatenated [in what order?] as top-level documentation for the distribution." As I write it out, it seems insufficient. It does feel like there should be a "documentation" key similar to "provides"; e.g., "documentation" 16:34
: { "zef" : ["bin/zef", "lib/Zef/CLI.rakumod" ], "Zef::CLient" : "lib/Zef/Client.rakumod" }
But probably this has been hashed out already previously, I'm just not sure where to look (an open issue on Raku/doc or something? 16:36
)
softmoth JJMerelo, Hi! Maybe you know about what I just wrote? colabti.org/irclogger/irclogger_lo...06-28#l228 16:42
softmoth (RE: META6.json describing what docs are available in a distribution) 16:43
JJMerelo No, there's nothing that I know of
But it would be great if your rakumod could do something like that. 16:44
rakudoc, sorry
ShimmerFairy softmoth: if you're talking about things like "install the README.rakudoc of a module", then it's worth noting that pure-document files can be written as "modules" that don't actually contain code. 16:45
Just slap a "unit module MyModule::README;" (with whatever module name you like of course) in the ambient text and you're good to go. 16:46
JJMerelo What shimmerfairy says is correct 16:47
You don't even need to name it anything at all. Just put it in the "provides" section and it will be precompiled and installed
it would be nice if that was processed by rakudoc. I don't know if it is, to be fair.
softmoth I've rewritten rakudoc's guts pretty much, since none of that was working anyways. 16:48
JJMerelo softmoth++
softmoth So it will definitely process those things once I'm through with it.
JJMerelo That would be great. 16:49
ShimmerFairy The closer we can get to texinfo's `info` program, the better (it's the neatest part of texinfo IMO) 16:50
softmoth ShimmerFairy, I may ask for your feedback in a little bit, if you're available for that. 16:54
(little bit: a week, maybe?0
ShimmerFairy sure. I'm thinking of starting work on Pod again soon (probably in my old SUPERNOVA repo), so my mind's in the documentation space again. 16:55
guifa So I came into a weird situation: in a test file, I parse a grammar using :args(,,). When I call the test file directly, (raku t/foo.t) the test passes and works fine. But when zef calls it, the arg disappears after the first time that it’s used (it’s passed along to a token) 16:58
melezhik .tell JJMerelo NP, you can take a look at this meanwhile - sparrowdo.wordpress.com/2020/06/22...g-sparrow/ 16:59
tellable6 melezhik, I'll pass your message to JJMerelo
softmoth ShimmerFairy: Good. We may need a big cleanup metaproject. There's: several attempts at a Pod::TreeWalker fix for all the Pod::To::* not-implemented-here redundancy; the cry for a low-level rewrite (move Pod to NQP language braid) to remove a bunch of Pod parsing limitations and make $=pod contents much richer; the /doc split (Raku/doc #2983); rakudoc & maintaining a doc index for speedy lookups; modules.raku.org docs display 17:02
& searching; ...
JJMerelo melezhik I've got to turn the new book to Apress in two weeks time. 17:03
melezhik yeah, I see , NP
tellable6 2020-06-27T17:52:54Z #raku <JJMerelo> melezhik I'm swamped now (with the book and other things). Let me get back to you later.
JJMerelo I'm almost there, but not quite yet. So until July 15th, I'm afraid I can't do a lot of stuff...
melezhik I just shared what I've already got , at least from my point of view to the problem ...
ShimmerFairy Yeah, I'm working out writing essentially a "new" S26 at the moment; apart from some minor syntax fixups that I'd like to have, my main interest is working out the AST of a Pod document, and how you pipe that to rendered output (specifically how to avoid the combinatorial explosion of custom blocks/M<> codes and output formats)
softmoth guifa, "after the first time that it's used" makes me think this may be an issue with precompilation somehow. Is there a constant that shouldn't be baked into the pre-compiled bytecode? 17:04
guifa softmoth: I’m not sure. I haven’t examined the precomp yet, it’s just surprising that zef would get different results. If I use —force-install, the code actually runs fine FWIW 17:06
I’m going to try this afternoon to golf it down if I can 17:07
sena_kun JJMerelo, ping? 17:31
softmoth ShimmerFairy, I'm very interested in that S26 work, if you want to bounce ideas off of someone. 17:32
ShimmerFairy softmoth: Yeah, I'll show it soon. I will say though, the main addition I'd like to make is being able to do things like =defn<The Term> the meaning , since I've never liked defn's weird "the first line of text is special" behavior, and that <> attachment can be used by other blocks for other neat things. 17:34
(defn's old behavior would still be supported for backwards-compat of course)
softmoth Nice. My main itch is that code annotations float out at the top level, making them impossible to format properly. E.g., github.com/softmoth/perl6-pod-to-m...-611251062 17:38
But IIRC there's a significant chunk of cool stuff in S26 that isn't implemented (or is implemented in a different way that isn't quite as cool). 17:39
I know tbrowder has worked a bunch on Tables and some other low-level stuff, but there's a limit to what can be done without fixing NQP. 17:40
ShimmerFairy Declarator blocks (those #| and #= things) have always been kind of weird (I don't consider them a kind of block declaration while existing S26 does because of this). Pod could definitely stand to be a bit more doxygen-esque for documenting declared things :)
what about NQP gets in the way of Pod, ooc?
And I actually want to add some kind of =rawtable block for LaTeX-esque raw tables (not necessarily stealing LaTeX syntax tho), for when you can't be bothered to make visually pretty tables. (They'd be easier on the parser too.) 17:42
softmoth It's been over a year since I looked at it, but I seem to recall the pod bits are extracted as just flat strings and then parsed separately, so things like pairs are not parsed the way Raku defines them, you have to use very simple pair syntax or it breaks. And other similar hacks with has dereference, etc.
ShimmerFairy My description of colonpair/fatarrow stuff limits what types of data you can use, and they have to be literal values, to avoid that icky run-code-in-documentation business. 17:44
I would like to keep Pod parsing in Rakudo as much as possible, simply because the more that's put in NQP, the more NQP objects you have to wrap up in Raku wrappers that expose all the same methods and attributes. 17:45
JJMerelo sena_kun pong 17:48
softmoth ShimmerFairy, fair enough, there's probably a way to do it well outside of the main Perl6 grammar. Probably that needs to be reflected in the design doc; right now (from reading comments in the code and my impression from S26) it is viewed as a hacky shortcoming rather than a planned separation of concerns.
JJMerelo But very busy at the moment...
sena_kun JJMerelo, oh, was hoping you are having some nice rest on Sunday. Any ideas when it'll be cool for you to re docs? 17:49
JJMerelo Probably late next week...
ShimmerFairy softmoth: Pod is theoretically its own grammar on the language braid, it's just not done that way in practice at the moment in rakudo. And doing work in my own repo naturally suggests a separated grammar/actions collection :) 17:50
sena_kun JJMerelo, I see. Will ping you then in this case. o7
JJMerelo sena_kun :-) OK 17:52
sena_kun JJMerelo, just to clarify, I am not sure how busy you are, what will be really helpful is "look at a couple of drafts and write maybe 5-10 sentences of feedback", nothing more involved on this stage. If you are really busy beyond than, then hope you are doing fine. :) 17:54
JJMerelo I'm afraid yes. 17:55
17 days to Apress book deadline.
sena_kun I see. Good luck with your deadline!
JJMerelo Thanks! 17:56
cpan-raku New module released to CPAN! LibUSB (0.0.2) by 03GARLANDG 20:26