🦋 Welcome to the MAIN() IRC channel of the Raku Programming Language (raku.org). Log available at irclogs.raku.org/raku/live.html . If you're a beginner, you can also check out the #raku-beginner channel!
Set by lizmat on 6 September 2022.
tonyo ergo444: did you reinstall fez or is it using precomp from the older version of rakudo? 01:08
tellable6 tonyo, I'll pass your message to Ergo444
ugexe I doubt they’ll know the later part of that question 01:09
That being said the compiler id gets used in the precomp id I’m pretty sure so that shouldn’t be possible 01:13
guifa_ hmm, seems to be an issue with nqp::while 02:13
nm I got it. I think something changed over the past week or two because old code even outside of RakuAST went weird 02:20
rf Won 250$ at that hackathon for best technical solution lol, unfortunately wasn't able to use Raku, but I did use some Perl 02:43
perryprog \o/
you can send it to me, thanks
Anton Antonov “[…] but I did use some Perl” — I think we should ban @rf from IRC for awhile. And/or ask him as a redemption to re-write his monad and humbugs in Perl or Python. 12:42
I personally, would be satisfied with a video of @rf manually writing — pen on paper — “Raku is better than Perl” 1000 times. 12:44
lizmat :-) but seriously? 12:45
Anton Antonov Ok, i might have went overboard. (Especially, renaming “Hummingbird” as “humbug”.) But I think @rf should provide details about the hackathon and why Perl was the tool of choice. 12:49
… “went” == “gone”…
Voldenet always pick right tool for the job, if your problem requires a lot of segfaults pick C and so on 13:28
Aedil 2/3 14:47
perryprog Voldenet, right! Like if it requires a lot of buffer overflows and other memory safety issues and avenues for security vulnerabilities, pick C. 15:25
Nemokosch And if it requires action at a distance, pick Perl? 15:28
Nah, even better: pick /bin/sh
rf Morning folks 16:11
tonyo .tell rf i put ryml out into the world 16:20
tellable6 tonyo, I'll pass your message to rf
tonyo no good docs or anything, just available via zef
rf tonyo: :O 16:21
Excited to play with it more, I haven't found really any bugs with your new fez
tonyo excellent news 16:22
do you have a `bundlers` key in your fez config by chance? 16:25
[Coke] was surprised to turn on youtube today and have the home screen on the TV have an entire row of Anton Antonov. 16:41
So, Twitch VODs, MTGA, CollegeHumor/DropoutTV, and Anton. 16:42
tonyo rf: i'll get around to more fez/module maintenance work sometime soon-ish..finally getting ready to launch an app and do all of the business-y happy horse that goes along with that 16:52
rf tonyo: I know that feeling haha, I just joined a start-up part time 17:01
guifa_ tonyo: I'm getting a 'null regex not allowed' message with fez upload today 17:17
guifa_ swears he must just do things in the weirdest way possible to catch so many bugs on fez hahha 17:18
rf Are you on the dist branch or using the latest release @gufia_? 17:20
guifa_ latest release
The error is with handling commented out lines in .gitignore
I deleted those and it uploaded without problem 17:21
rf Yeah there is some weirdness with the current release and the globber for .gitignore 17:29
If you have time you should try the dist branch and see if it is still broken
guifa_ yeah, right now though it looks like there's a server side issue — once I took away the commented lines, things appeared to upload okay, but the module's def not showing up 17:31
rf Hmm, I think its mostly on fez' side but not sure @tonyo 17:32
guifa_ hrm this time it seemed to work 17:33
oh nm, I think it was zef is having trouble finding it 17:35
Looks like i need to make sure to do a zef update anytime i do a fez upload on a dependency if I up the min version on the main one 17:38
tonyo guifa_: dist branch or main? 17:39
guifa_ tonyo: main one (e.g. when I had the error, did a zef install fez --force to make sure I was on the most up to date release) 17:40
not sure if it's just from lines like `# comment` or from lines like `###############` (I think it's the latter, probably) 17:41
raku.land/zef:guifa/Intl::Format::Number <-- finally got this updated 17:48
Performance is back down to an order of a magnitude slower than .Str which is not bad, given it calls .Str 1-3 times depending on the number 17:49
But even better, there's an option to grab a RakuAST::Sub node, so you can incorporate it into other modules super easy 17:51
avuserow hey folks. I'm finding myself writing methods where I want a parameter that is either of type Foo or undefined (usually Any). Is there a better way to get this behavior than making a subset type like `subset MaybeX where X | Any:U` ? 18:15
rf X:U 18:17
Or just X I think...
avuserow my use case is to allow something like `method do-something(MaybeInt $a, MaybeBool $b) {...}` and then allow `self.do-something(10, Nil)` or `self.do-something(Nil, True)`. In reality both calls would be `self.do-something(%data<a>, %data<b>)`
tonyo guifa_: is that in your gitignore? 18:18
avuserow basically I want MaybeInt to be "integer or nil but definitely not string, list, other classes, etc"
rf method bar(Foo $x) { given $x { when Foo:D { #not nil } when Foo:U { # Probably nil } } } avuserow 18:19
Something like that I think
docs.raku.org/language/haskell-to-...-_nutshell the "Maybe" section on this page is where I got that from 18:20
avuserow m: class Foo {method bar(Bool $x) {dd $x}}; Foo.new.bar(True); my $a; Foo.new.bar($a); Foo.new.bar(3) # second one fails and I want it to work, third one should fail 18:21
camelia Bool::True
Type check failed in binding to parameter '$x'; expected Bool but got Any (Any)
in method bar at <tmp> line 1
in block <unit> at <tmp> line 1
avuserow unfortunately I have untyped Any here, since my input is ultimately from json :(
rf I wouldnt even use types here personally
Subset is probably your best bet 18:23
guifa_ tonyo: yes 18:26
gitignore should ignore all lines beginning with #
tonyo it should be doing that already 18:31
i'll take a look
if you're game, would you mind switching to the dist branch? 18:32
rf: i know ... i'm also working at a start up + have my own + trying to maintain fez
and working out some stuff in zef to enable hosted or hostable private repos for orgs since it sounds like we're at the point where people are starting to use this more "in production" (not to start another debate as to what that means) 18:33
guifa_ tonyo: yeah. I'll try to find a good place for a die so i'm not polluting the ecosystem lol 18:43
tonyo good place for a die? 18:45
guifa_ "process-gitignore; apply-gitignore; die; do-upload" 18:47
lol
tonyo ahhhhh
it should be easier in the dist branch, all of the globbing is moved to Fez::Bundle
or, it's centralized there and the only enabled packager is Fez::Util::Pkg 18:48
Anton Antonov @Coke "was surprised to turn on youtube today and have the home screen on the TV have an entire row of Anton Antonov." -- Hmmm... a video or two would be not too unexpected, but entire row makes think there is something else at play... 18:50
@guifa_ "raku.land/zef:guifa/Intl::Format::Number <-- finally got this updated" -- On related note, I recently implemented parsing inf Azerbaijani numeric word forms. 18:51
guifa_ that reminds me I need to do RBNF and see if there's a way that I can somehow make it go in reverse (shoudl be mostly feasible) 18:52
Anton Antonov @guifa_ You mean, from Raku source code of grammars generate corresponding BNF? 18:55
guifa_ Sort of. So in CLDR they have a set of Rule Based Number Formatters. But they're designed to go from an numeric value to a string. But it should be possible to generate a Raku grammar that does that parses the reverse, and then produces numeric value. 18:56
unicode-org.github.io/icu-docs/api...ml#details 18:58
Anton Antonov I see -- yeah, seems useful. 18:59
[Coke] anton - Your channel was the row. 20:36
Anton Antonov @Coke — ok. 🙂 20:39
rf tonyo: Yeah I get it, startups are hard to keep up with cant imagine working in 2, I work for a enterprise and a startup on the side its fairly manageable 21:18
Anton Antonov @rf And not teaching Haskel as a second side? 23:44
rf I teach new technologies to my enterprise job, which included Haskell a while ago :) 23:49
Anton Antonov Corrupting the youth?! 23:59
rf Absolutely!