|
01:30
SmokeMachine_ joined
01:39
SmokeMachine left,
SmokeMachine_ is now known as SmokeMachine
02:40
frost joined
08:11
discord-raku-bot left
08:12
discord-raku-bot joined
10:51
frost left
|
|||
| gfldex | m:``` | 14:14 | |
| sub needle(\b) { | |||
| sub is-pentagon($c is raw) { (1+sqrt(1+24*$c))%%6 } | |||
| sub P($n is raw) { $n*(3*$n-1) div 2 } | |||
| for (1..^b) -> \s { | |||
| my \bp = P(b); | |||
| my \sp = P(s); | |||
| if is-pentagon(bp + sp) && is-pentagon(bp - sp) { | |||
| return |(b, s); | |||
| } | |||
| } | |||
| } | |||
| sub infix:<notnilor>(\maybenil, \alternative) { | |||
| maybenil =:= Nil ?? alternative !! maybenil | |||
| } | |||
| say (^ā).hyper(:batch(8), :degree(16)).map({.&needle notnilor Empty }).head; | |||
| say now - BEGIN now; | |||
| ``` | |||
| It took me a whole blogpost to realise that HyperSeq are inherently lazy. | |||
| stevied | I can't seem to place a variable inside %?RESOURCES accessor: `%?RESOURCES<$tmpl>.slurp` | 14:53 | |
| but `%?RESOURCES<something.json>.slurp` works | |||
| ok, figured it out. need {} to do interpolation | 14:56 | ||
| ugh. | |||
| How do I dynamically load a class at runtime? I'm not getting anywhere with: | 16:59 | ||
| ``` | |||
| my $tmpl = basename $config; | |||
| my $tpl_class = "Karabiner::Templates::$tmpl"; | |||
| require ::("Karabiner::Templates::ActivateApps"); | |||
| my &class_create = ::("Karabiner::Templates::ActivateApps::&create"); | |||
| ``` | |||
| ok, got it. the examples here helped: docs.raku.org/language/packages#in...entry-::() | 17:47 | ||
| I got this: | 18:08 | ||
| ``` | |||
| my $tmpl = basename $config; | |||
| if (try require ::("Karabiner::Templates::$tmpl")) === Nil { | |||
| } | |||
| ``` | |||
| it keeps throwing an error: `Use of Nil in string context` | 18:09 | ||
| how can I test if the file gets required in? | |||
|
18:10
Util_ left
|
|||
| Anton Antonov | I am not sure what you mean. The "easy answer" is "by scanning the code." | 18:12 | |
| stevied | I'm trying to follow the example at: docs.raku.org/language/modules#require | 18:16 | |
| it has example code to determine if a module is loaded. | |||
| I can't get it to work. I keep getting the error `Use of Nil in string context` | |||
| no idea how to fix it | |||
| Anton Antonov | Do you mean this: | ||
| ``` | |||
| # Use return value to test whether loading succeeded: | |||
| (try require Foo) === Nil and say "Failed to load Foo!"; | |||
| ``` | |||
| (It seems so -- I read more carefully you previous messages.) | 18:18 | ||
| stevied | yes, I tried that already. got the same error | ||
| Anton Antonov | Meaning, "got it" not "keep doing that". | ||
| stevied | right | ||
| Anton Antonov | Very strange! See this: | 18:30 | |
| Ah, I pasted the wrong screenshot -- I have an assignment to `$val`. | 18:31 | ||
| It looks like this works: | 18:42 | ||
| ``` | |||
| use silently; | |||
| silently { requireĀ ::("Lingua::" ~ $namePart ~ '7') } | |||
| ifĀ ::("Lingua::" ~ $namePart ~ '7') Ā ~~Ā FailureĀ { | |||
| Ā Ā Ā Ā sayĀ "FailedĀ toĀ load!"; | |||
| } | |||
| ``` | |||
| I am using the "silently" module : raku.land/zef:lizmat/silently | 18:43 | ||
| stevied | hmm. ok. why so I need that? | ||
| do | 18:44 | ||
| Anton Antonov | Otherwise you will get the `Nil` message... š | 18:45 | |
| Basically, sweeping that message under the rug... | |||
| stevied | ok. but I'm totally lost. this seems insane | ||
| Anton Antonov | It is not good. | ||
| Definitely a discrepancy with what is documented. | |||
| stevied | alright, so I should just chalk it up to a big of ugliness and hope they fix it? | ||
| bit | |||
| Anton Antonov | Hmm... yeah, this needs to be reported. | 18:47 | |
| *I am not that this today though...* | |||
| *I am not doing that today though...* | |||
| stevied | ok | ||
| I can do it but I won't really be able to explain what's going on in the report | |||
| when I run the require function inside silently{}, I get an error saying it can't find my module | 19:00 | ||
| `No such symbol 'Karabiner::Templates::ActivateApps'` | 19:01 | ||
| i don't get that error when run outside of `silently` | |||
| something feels badly broken. | 19:03 | ||
| yeah, so I got this: | 19:13 | ||
| ``` | |||
| my $tmpl = basename $config; | |||
| my $blah = (require ::("Karabiner::Templates::$tmpl")); | |||
| say $blah.raku; | |||
| ``` | |||
| that returns: | 19:14 | ||
| `Failure.new(exception => X::NoSuchSymbol.new(symbol => "Karabiner::Templates::ActivateApps"), backtrace => Backtrace.new)` | |||
| but I know that the module is getting loaded because the rest of the code uses it | 19:16 | ||
| when the module doesn't exist at all, I get a different error: | 19:18 | ||
| ``` | |||
| Could not find Karabiner::Templats::ActivateApps in: | |||
| file#/Users/stevedondley/git_repos/raku/modules/steve/Karabiner-CompModGenerator/lib | |||
| inst#/Users/stevedondley/.raku | |||
| inst#/Users/stevedondley/rakudo-moar-2021.12-01-macos-x86_64-clang/share/perl6/site | |||
| inst#/Users/stevedondley/rakudo-moar-2021.12-01-macos-x86_64-clang/share/perl6/vendor | |||
| inst#/Users/stevedondley/rakudo-moar-2021.12-01-macos-x86_64-clang/share/perl6/core | |||
| ap# | |||
| nqp# | |||
| perl5# | |||
| in sub generate_output at /Users/stevedondley/git_repos/raku/modules/steve/Karabiner-CompModGenerator/lib/Karabiner/CompModGenerator.rakumod (Karabiner::CompModGenerator) line 9 | |||
| seems like it's throwing an error when it shouldn't be | |||
| Anton Antonov | Yeah, more or less this what I get too. | 19:53 | |
|
20:03
qorg11 left
20:05
qorg11 joined
|
|||