🦋 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. |
|||
00:00
Tirifto left
00:15
oddp left
00:16
oneeggeach left
00:18
tony-o_ joined
00:19
Petr37 left
00:43
leont left
00:51
_jrjsmrtn joined
00:52
__jrjsmrtn__ left
00:54
mowcat left
01:07
nebuchadnezzar left
01:42
jdjohnston joined
|
|||
jdjohnston | Why is the docker version of rakudocs different from the online version? Most noticeably, it still says "Perl 6" | 01:43 | |
Is there an easy way to update the docs in the container? | 01:46 | ||
02:02
molaf left
02:03
cooper joined
|
|||
jdjohnston | Gotta go. I'll try again some other time. | 02:04 | |
02:04
jdjohnston left
02:05
Manifest0 left
02:06
Manifest0 joined
|
|||
raku-bridge | <勉人> how do i print a combining character as a noncombining character? | 02:07 | |
02:09
Jimbolli joined,
Jimbolli left
|
|||
raku-bridge | <勉人> my $chars = "가 \x[302E] \x[302F]"; $chars .= split(" "); $chars».uniname».say; this just returns HANGUL SYLLABLE GA instead of all 3 characters that i wanted because the second 2 are combining characters | 02:12 | |
02:14
molaf joined
|
|||
[Coke] | guessing we haven't updated the docker container in ages. | 02:20 | |
ah, he's gone. | 02:21 | ||
02:49
gnufr33dom joined
03:04
Xliff joined
|
|||
Xliff | o/ | 03:04 | |
03:12
k-man left
|
|||
[Coke] | \o | 03:12 | |
03:14
zacts joined
03:15
zacts left
03:38
k-man joined
03:42
melezhik joined
|
|||
Xliff | m: use NativeCall; my bool $a; | 03:43 | |
camelia | ( no output ) | ||
03:44
melezhik left,
zacts joined
03:46
zacts left
|
|||
[Coke] | try "uninames" to at least see the extra combining char info | 04:00 | |
m: my $chars = "가 \x[302E] \x[302F]"; $chars .= split(" "); $chars».uninames.say | 04:01 | ||
camelia | ((HANGUL SYLLABLE GA SPACE HANGUL SINGLE DOT TONE MARK SPACE HANGUL DOUBLE DOT TONE MARK)) | ||
[Coke] | m: my $chars = "가 \x[302E] \x[302F]"; $chars .= split(" "); $chars.uninames.say | ||
camelia | Cannot resolve caller uninames(Seq:D); none of these signatures match: (Str:D $str) in block <unit> at <tmp> line 1 |
||
[Coke] | m: my $chars = "가 \x[302E] \x[302F]"; $chars.NFC[2].uniname.say # convert it to NFC instead of NFG | 04:07 | |
camelia | HANGUL SINGLE DOT TONE MARK | ||
04:10
Xliff left
04:12
xelxebar left
04:13
xelxebar joined
04:37
lucasb left
|
|||
raku-bridge | <勉人> thanks | 04:38 | |
04:44
andrzejku joined
04:52
nebuchadnezzar joined
05:14
aluaces joined
05:16
xinming left,
xinming joined
05:25
bocaneri joined
05:27
zacts joined,
xinming left
05:28
xinming joined
05:46
xelxebar left
05:50
xelxebar joined
06:05
zacts left
06:11
zacts joined
06:13
dolmen joined
06:16
hungrydonkey left,
hungrydonkey joined
06:20
ufobat joined
06:24
dolmen left
06:36
wamba joined
06:43
gnufr33dom left
06:53
tejr left
|
|||
Geth_ | doc: fa676ce2be | (Daniel Sockwell)++ (committed using GitHub Web editor) | doc/Type/Pod/Block/Code.pod6 Remove documentation for (nonexistent) `allowed` method (#3528) Thanks! |
06:54 | |
linkable6 | Link: docs.raku.org/type/Pod::Block::Code | ||
DOC#3528 [closed]: github.com/Raku/doc/pull/3528 Remove documentation for (nonexistent) `allowed` method | |||
07:00
samcv left
07:02
kensanata joined
|
|||
xinming | $ ./rakudo-m -e 'say \() ~~ :(Int :$page)' | 07:04 | |
m: ./rakudo-m -e 'say \() ~~ :(Int :$page)' | |||
camelia | 5===SORRY!5=== Error while compiling <tmp> Malformed postfix call at <tmp>:1 ------> 3.7⏏5/rakudo-m -e 'say \() ~~ :(Int :$page)' |
||
xinming | m: say \() ~~ :(Int :$page) | ||
camelia | True | ||
xinming | m: say \() ~~ :(Int() :$page) | ||
camelia | False | ||
xinming | This is a bug, should be reported. ;-) | ||
07:05
aluaces left
07:06
rindolf joined
07:14
JJMerelo joined
07:19
xinming left,
xinming joined
07:27
samcv joined
07:33
Sgeo left
07:48
dakkar joined
07:50
pecastro joined
08:00
kensanata left
08:01
leont joined
08:05
reach_satori left,
reach_satori joined
|
|||
cpan-raku | New module released to CPAN! Random::Names (0.0.3) by 03ELIZABETH | 08:27 | |
08:29
xinming left
08:30
xinming joined
09:01
oddp joined
09:10
zacts left
09:13
markoong joined
09:17
xinming left,
xinming joined
09:18
zacts joined
09:22
zacts left
09:31
aluaces joined
09:32
markoong left
09:35
markoong joined
09:36
schlaftier left
09:37
schlaftier joined
09:38
kktt007 joined,
hungryd91 joined,
hungrydonkey left
09:56
zacts joined,
JJMerelo left
10:08
rbt left
10:14
zacts left
|
|||
holyghost | I'm doing ok with AI in scheme for language features (e.g. for raku), I chose several things from C++ STL, Java and Smalltalk | 10:20 | |
It's an actor based system | |||
Now I have to learn Ada and Eiffel, still :-) | |||
gnats == Ada on most systems | 10:21 | ||
or gnat, I don't remember | |||
Earlier, there was such Ada support in gcc | |||
So I am working for raku in scheme, which is nice :-) | 10:23 | ||
I chose scheme because of for AI, I might do something for raku in its implementation later on | 10:25 | ||
nqp, AFAIK and raku itself | 10:26 | ||
That way, we have some AI support, I'm doing several algorithms | 10:27 | ||
guile extensions for nqp are probably out of the question, but do note it | |||
I use scheme48 and scsh, as it's also a swiss army knife of UNIX, it was made on BSD | 10:28 | ||
linux has guile more | |||
Thing is, the revised scheme report (below 7) has portable scheme, guile and scsh are incompatible extensioned though | 10:29 | ||
10:29
yangzq50 joined
|
|||
holyghost | so e.g. there's a vector-ref no list-ref | 10:29 | |
and so on :-) | 10:30 | ||
I started with r3rs in 1995, until r6rs (revised scheme reports) evrything's a pretty good language system | 10:31 | ||
r7rs is broken by compatibility IIRC | |||
Again, it's based on actors which I can do magically in raku itself | 10:35 | ||
we probably don't have the money and karma for actors in the nqp base | 10:36 | ||
10:36
kktt007 left
|
|||
holyghost | in raku it's slower | 10:36 | |
Altreus | What's the incantation to know if a number is an integer? | 10:40 | |
10:40
hungryd91 left
|
|||
Altreus | ~~ Int? | 10:41 | |
nar :( | |||
tadzik | m: say so 5.0.Int == 5 | 10:42 | |
camelia | True | ||
tadzik | does that work for you? I'm not sure if you mean a typecheck, or a logical "does it have something after the dot" | 10:43 | |
Altreus | the latter - I was trying to avoid using it twice because then I have to get it into a variable | ||
The XY problem is I'm trying to specify "power of 2" | |||
therefore log($_, 2) is an int | |||
tadzik | m: subtype EffectivelyInt of Numeric where { $_.Int == $_ }; say so 5.0 ~~ EffectivelyInt; say so 5.1 ~~ EffectivelyInt | 10:44 | |
camelia | 5===SORRY!5=== Error while compiling <tmp> Two terms in a row at <tmp>:1 ------> 3subtype EffectivelyInt of Numeric7⏏5 where { $_.Int == $_ }; say so 5.0 ~~ E expecting any of: infix infix stopper po… |
||
tadzik | grr | ||
Altreus | subset :D | ||
tadzik | oh yes :D | 10:45 | |
Altreus | I just did the exact same | ||
tadzik | m: subset EffectivelyInt of Numeric where { $_.Int == $_ }; say so 5.0 ~~ EffectivelyInt; say so 5.1 ~~ EffectivelyInt | ||
camelia | True False |
||
Altreus | yes I could do two and that would be simpler | ||
lizmat | use Bits; sub powerof2(Int:D $value) { $value > 1 && bitcnt($value) == 1 }; say powerof2 16 # True | 10:46 | |
Altreus | 1 is a power of 2 :) | 10:47 | |
but 16 is the min for this function anyway apparently | |||
lizmat | use Bits; sub powerof2(Int:D $value) { $value > 0 && bitcnt($value) == 1 }; say powerof2 16 # True | ||
10:48
xinming left
|
|||
lizmat | 16? 1 is | 10:48 | |
10:48
sena_kun joined
|
|||
Altreus | no I mean the function I'm writing | 10:48 | |
lizmat | ah, ok *phew* :-) | ||
Altreus | to which the constraint is relevant | ||
:) | |||
SmokeMachine | m: say 42.WHAT =:= Int | 10:49 | |
camelia | True | ||
Altreus | what is this magic | 10:50 | |
m: say so log(4,2).WHAT =:= Int | 10:51 | ||
camelia | False | ||
Altreus | :( | ||
10:51
xinming joined
10:52
Xliff joined
|
|||
SmokeMachine | Hum!! you dont what the type! sorry I thought you wanted to differentiate Int from it's specialisations, sorry... | 10:52 | |
holyghost | m: say so log(4,2).WHAT =:= # ? | ||
camelia | 5===SORRY!5=== Error while compiling <tmp> Missing required term after infix at <tmp>:1 ------> 3say so log(4,2).WHAT =:= # ?7⏏5<EOL> expecting any of: prefix term |
||
SmokeMachine | *its | 10:53 | |
holyghost | m: sy log(4,2).WHAT =:= Float | ||
camelia | 5===SORRY!5=== Error while compiling <tmp> Undeclared name: Float used at line 1. Did you mean 'Num'? Undeclared routine: sy used at line 1. Did you mean 'so'? |
||
SmokeMachine | m: say so log(4,2).WHAT =:= Num | ||
camelia | True | ||
holyghost | lol | ||
An actor based system :-) | 10:56 | ||
10:59
Xliff-con joined
|
|||
Xliff-con | \o | 11:00 | |
holyghost | 'lo Xliff | ||
Xliff-con | Hi. I'm slumming from a console, ATM. Attempting to compile Rakudo on a Raspberry Pi. It's tied to my second monitor, which is where my GUI client exists. | 11:01 | |
Unfortunately, I can't get the damned thing to switch windows. | |||
:( | |||
I'm assuming someone has attempted this on the latest Pi hardware? | |||
OK. Compiling core.c -- This will be interesting. | 11:03 | ||
htop | 11:04 | ||
11:05
wamba left
11:07
xinming left
|
|||
Xliff-con | CORE.c.setting - 273 seconds! | 11:08 | |
Opotimize took another 33 | |||
11:09
xinming joined
|
|||
Xliff-con | Mast took another 57 seconds | 11:09 | |
timotimo | woof | 11:11 | |
is it swapping at all? | |||
though if it were swapping, the difference would be between 10x and 1000x i guess | |||
Xliff-con | No. | ||
Core module install took another 55 seconds. | 11:12 | ||
I knew I was in for it when the MoarVM compile took perceptibly long. My desktop compiles that in 5-10 seconds. | |||
But build completed no problem! | |||
Probably best, in this situation, to install from binaries. | 11:13 | ||
Geth_ | advent: cd41b55c51 | Altai-man++ (committed using GitHub Web editor) | 20th/README.md Add an article mention for 20th anniversary advent |
11:15 | |
Xliff-con | Still...decent enough once it's running. Now to install zef | ||
....and.... we're off! | 11:16 | ||
timotimo | is this a pi 2 or 3? | 11:18 | |
Xliff-con | Latest. I just bought it in June | ||
Pi 4. 3 cores. 4GB | 11:19 | ||
timotimo | the performance is still a little bit sobering | ||
Xliff-con | Yes, it is. | ||
:( | |||
Still, aside from the time it was a hassle free installation. | |||
timotimo | :) | ||
Xliff-con | Installing rakudo star is probably the recommended thing to do for this platform. | 11:20 | |
11:20
markong joined,
markoong left
|
|||
Xliff-con | *I* wanted to install from sources because...well... I'm aparantly a masochist. | 11:20 | |
timotimo | once we have a jit, things will be a little faster, but also there's a little bit of memory overhead to it, too | ||
Xliff-con | I thought we already had JIT! | ||
timotimo | parts of it | 11:21 | |
Xliff-con | OK. | ||
Xliff-con goes to install p6-GLibg | |||
timotimo | everything except the writing of native machine code on arm | ||
Xliff-con | First I need the deps. Oh, that will be fun! | ||
Oh. ARM. Right. LOL | |||
Altreus | how do I define a subset that only runs the condition when the value is defined? | 11:28 | |
I feel like putting "not defined or" all the time is going to get old | |||
I was kind of expecting only a defined type would be tested in the first place | 11:29 | ||
er, a defined value | |||
Since the type object ... doesn't have a value to test | 11:30 | ||
lizmat | m: dd 4 ~~ Int:D | 11:31 | |
camelia | Bool::True | ||
lizmat | m: dd Int ~~ Int:D | ||
camelia | Bool::False | ||
Altreus | I mean that I want to constrain the value passed to the function, IF a value is passed | 11:32 | |
requiring that an undefined value passes the type checks of a subset is inconsistent with allowing an undefined value not to contain required properties of a class | 11:33 | ||
11:38
wamba joined
|
|||
Altreus | In fact it seems all subsets implicitly expect definedness. | 11:47 | |
m: subset ReallyInt of Int where { $_.Int == $_ }; say so Int ~~ ReallyInt; say so Int ~~ Int; | |||
camelia | Invocant of method 'Bridge' must be an object instance of type 'Int', not a type object of type 'Int'. Did you forget a '.new'? in block <unit> at <tmp> line 1 |
||
Altreus | well | 11:48 | |
m: subset ReallyInt of Int where { $_.Int == $_ }; say so Int ~~ Int; say so Int ~~ ReallyInt; | |||
camelia | True Invocant of method 'Bridge' must be an object instance of type 'Int', not a type object of type 'Int'. Did you forget a '.new'? in block <unit> at <tmp> line 1 |
||
Altreus | m: say Int.Int ~~ Int | 11:49 | |
camelia | True | ||
Altreus | The actual condition should survive the test... | ||
timotimo | github.com/raku-community-modules/...set-Helper | 11:51 | |
11:52
xinming left,
xinming joined
|
|||
timotimo | Altreus: did you see this module? | 12:08 | |
Altreus | no :o | ||
12:12
molaf left
12:13
Altai-man_ joined
|
|||
holyghost | JJMerelo : I would like to upload a package to CPAN, since you blocked my account, just this once | 12:13 | |
JJMerelo : It's on github.com/theholyghost2/p6-Random-...-Boltzmann | 12:14 | ||
Altreus | timotimo: hey it covers my use case! | 12:15 | |
:D | |||
holyghost | JJMerelo, it needs 1 test, the rand function in BoltzmannFunction.pm6, then one can upload, it compiles | ||
.seen JJMerelo | |||
tellable6 | holyghost, I saw JJMerelo 2020-07-22T11:38:09Z in #raku-dev: <JJMerelo> Please propose yourself with a PR or directly if you've got the privs. | ||
12:16
sena_kun left
|
|||
Altreus | ah good old zoffix | 12:16 | |
holyghost | JJMerelo : wait a minute, I dunno where to do a pull request PR | ||
JJMerelo : I cannot login into CPAN | 12:18 | ||
I don't know where to propose :-) | |||
timotimo | why is $.kB rw when it's a constant? | 12:19 | |
Altai-man_ | holyghost, just leave it at github. | 12:20 | |
timotimo | holyghost: Int.rand, like it's used in method rand, will give you a warning and return 0, so you're immediately using a division by zero in your code | ||
$!T = 1.227 * 10,* -23; # <- this line from HawkingTemperature.pm6 seems like it has a typo | 12:21 | ||
holyghost: definitely do write that test before you consider pushing it up to cpan | 12:23 | ||
holyghost | timotimo : a random number in the positive integer range does get close to a 0 in a long time :-) | 12:24 | |
Altreus | when people start blocking you, that's an opportunity to re-evaluate your home truths | ||
tadzik | m: my $a = Int.rand; say $a | ||
camelia | Invocant of method 'Bridge' must be an object instance of type 'Int', not a type object of type 'Int'. Did you forget a '.new'? in block <unit> at <tmp> line 1 |
||
Altreus | what is this Bridge that I also saw? | 12:25 | |
timotimo | m: say Int.rand | ||
camelia | Invocant of method 'Bridge' must be an object instance of type 'Int', not a type object of type 'Int'. Did you forget a '.new'? in block <unit> at <tmp> line 1 |
||
Altreus | I feel like Raku has a lot of complexity inside it, and the high-level programmer needs to know it | ||
timotimo | Altreus: it's how many types can be made to conform to Real (i think?) for calculation? | ||
holyghost: it would have been good to first confirm if it actually does what you think | 12:26 | ||
m: say Int.Range.rand | |||
camelia | Can not get a random value from an infinite range in block <unit> at <tmp> line 1 |
||
timotimo | you can't use this more correct form either | ||
and also, you weren't even asking for the positive range of int, the code would, if it had been correct this way, have given you negative values as well | |||
holyghost | Altreus : oy, I'm getting rusty :-) | 12:27 | |
12:27
yangzq50 left
|
|||
holyghost | m: say Int.new.rand | 12:28 | |
camelia | 0 | ||
holyghost | m: say Int.rand | 12:29 | |
camelia | Invocant of method 'Bridge' must be an object instance of type 'Int', not a type object of type 'Int'. Did you forget a '.new'? in block <unit> at <tmp> line 1 |
||
holyghost | The above compiled on the server | ||
timotimo | of course it compiles | ||
compiling correctly is the absolute bare minimum | 12:30 | ||
you can write a lot of BS that compiles that's still useless | |||
tadzik | yeah, the language is not "static" enough for compilation to mean much | 12:31 | |
no language is, really. But especially not something as dynamic as Raku :) | |||
Xliff-con | cd..cd .. | 12:32 | |
holyghost | .tell Xliff, if you'd like to update the perl6 compiler on the server, Int.rand compiles whereas AFAIK it doesn't in raku. It'd be nice to keep the old compiler also by naming the new one raku on the command line, if that's doable *gnolly bows to the priest*" | ||
tellable6 | holyghost, I'll pass your message to Xliff | ||
holyghost | Int.rand is as clear as my fucking ass in OOP :o| | 12:33 | |
Altreus | sure it is, means give me a random number between 0 and undefined | ||
tadzik | not sure what OOP has to do with it | 12:34 | |
holyghost | tadzik : class method | ||
tadzik | what about it? | ||
Altreus | The existence of a class method is not sufficient to determine what it does | ||
holyghost | right | ||
tadzik | the error tells you exactly that this is *not* a class method | ||
holyghost | sure | ||
Altreus | So you've said you understand that you can run a class method, but you've not said that you've understood that your example is not one | 12:35 | |
holyghost unhails his python code | |||
Altreus | Int.rand is python? | ||
tadzik | I can imagine an Int.rand meaning "give me something between min- and maxint", but that doesn't make much sense when your ints auto-upgrade to bigints | ||
Altreus | I can imagine what it does *with arguments* | ||
absolutely | 12:36 | ||
tadzik | yes, those make it quite a lot clearer :) | ||
moritz | Int.rand is a design smell to me | ||
why would an Integer class know how to create a random number? | |||
holyghost | *drink! girls!* | ||
Altreus | m: say 4.rand | ||
camelia | 0.36316631285077294 | ||
holyghost | father Ted | ||
Altreus roflmao | |||
tadzik | m: say 4.Int.rand | 12:38 | |
camelia | 1.6837977401117348 | ||
tadzik | *blink* | ||
Altreus | m: say 4.rand | 12:39 | |
camelia | 3.8379443138531912 | ||
holyghost | m: say Int.Int.0.rand | ||
camelia | 5===SORRY!5=== Error while compiling <tmp> Malformed postfix call at <tmp>:1 ------> 3say Int.Int.7⏏050.rand |
||
tadzik | that's not something I'd expect out of Int.rand :P | ||
[Coke] | m: say 4.rand.Int | ||
camelia | 2 | ||
Altreus | tadzik: you mean not-an-int? | ||
tadzik | Altreus: yeah, going back to what moritz++ said | ||
if it's in the context of an Integer I'd expect to roll a random Integer | |||
Altreus | Presumably it's inherited | ||
[Coke] | docs.raku.org/routine/rand - "Returns a pseudo-random Num" | 12:40 | |
Altreus | Yeah but how do you know it's in context of an integer? | ||
holyghost | moritz : a random number is positive definite between [0+, Inf[ | ||
Altreus | It's just as likely to be an accident that it was an Int than any other Numeric | ||
holyghost | in python you have such a method IIRC also randint(0,10) | ||
[Coke] | m: say ^100.pick | ||
camelia | Potential difficulties: Precedence of ^ is looser than method call; please parenthesize at <tmp>:1 ------> 3say ^1007⏏5.pick ^100 |
||
holyghost | the last is raku one | ||
[Coke] | m: say (^100).pick | ||
camelia | 35 | ||
[Coke] | ^^ there's a different way to approach that | 12:41 | |
tadzik | that smells of just bad Liskov to me | ||
or not | |||
tadzik hurt himself in his confusion | |||
holyghost | [Coke] I need a float random [0,Inf[, 1/ Int.new.rand | ||
m: say Int.new.rand | |||
camelia | 0 | ||
holyghost | which is stupid ^^ | ||
Altreus | random numbers in computing are usually considered to be between 0 and 1, not 0 and inf | 12:42 | |
holyghost | I don't need interval limits for it | ||
Altreus | cos inf is big and 1 is not | ||
tadzik | Int narrows down a Numeric, and so the inherited .rand does no longer make much sense, is what I'm trying to say | ||
[Coke] | I don't understand your syntax. | ||
moritz | IMHO the best design would be: | ||
holyghost | Altreus : ANSI C | ||
moritz | * a Random class that can be initialied with a seed | ||
holyghost | tadzik : right, so I was right too, see Xliffs message | 12:43 | |
moritz | * the random class can generate random Ints and Nums | ||
Altreus | tadzik: but rand uses the number to define the upper bound; this should not affect the type of number returned | ||
rand is always defined as Rat, or whatever | |||
moritz | * a dynamic variable $*RANDOM or so that is pre-initialized | ||
holyghost | no moritz, again, I'm talking ANSI C : rand, srand | ||
moritz | holyghost: yes, that's horrible, because it keeps global state | ||
Altreus | Changing method rand(Rat --> Rat) to method rand(Int --> Int) seems ... bad | ||
If you did rand(4.Int) and rand(4.Rat) would you expect the former to return an int? | 12:44 | ||
holyghost | Altreus: AFAIK rand should have no args, srand has a seed | ||
didn't know about Rat | |||
Altreus | basically, rand doesn't change its behaviour and that seems more correct to me | 12:45 | |
POLA | |||
12:45
aluaces left
|
|||
holyghost | exagerating, if you cannot use libc class wise, some could get confused | 12:45 | |
tadzik | Altreus: right, I understand. I just don't like it :) | ||
holyghost | I'm not saying raku syntax is dumb, but I used a lot of random number generating functions in python | 12:46 | |
tadzik | I'm with moritz here | ||
holyghost | and arc4random() on macs in objc | ||
tadzik | it's a different responsibility entirely, and the awkwardness becomes apparent when you consider seeding | ||
Altreus | So you want a new language to behave like old languages? | ||
Just use those ones | |||
This one is doing things differently and this is one of those things | |||
holyghost | no Altreus, just for fast hacking's sake | ||
moritz | if you make PRNGs explicitly instantiatble, you can do very coll things with that | 12:47 | |
Altreus | just learn the behaviour | ||
moritz | like, have different threads with the PRNG seed | ||
or several asynchronnously running simulations with different seeds in the same thread | |||
holyghost | arc4random is non-pseudo random for example, and does not take arguments, neither does /dev/urandom or /dev/random | 12:48 | |
Altreus | but those things don't give you ints, they give you bytes | 12:49 | |
they don't even give you numbers | |||
just bytes | |||
typless things | |||
unformatted | 12:50 | ||
holyghost | but as the name says they're randoms | ||
Altreus | They're random but they're not structured | ||
holyghost | a float modulus and your on (I know it's int based) | ||
Altreus | We're talking about structured random | ||
holyghost | then shift | ||
moritz | holyghost: that's the beauty of putting the generator into a dynamic variable: you can replace it withn one of your choice, as long as it keeps interface compatiblitiy | 12:51 | |
Altreus | you can't use /dev/urandom without knowing how much you want and waht you want to treat it as | ||
But you *can* use rand(x) without knowing those things | |||
what you actually know is what you want the max to be | |||
And the rest is done for you: you get a Numeric value | |||
This defines how big it is and what its structure is | 12:52 | ||
It's like you want a high-level language to be a low-level language | |||
holyghost | sure, I wrote way too many lines of python 10 years ago, for pygame games and I used randint(X,Y) for a Quest For Glory character sheet system | ||
Altreus | but this isn't python | ||
this is raku | |||
holyghost | indeed | 12:53 | |
Altreus | So it works like this, not like that | ||
holyghost | randint(X,XX) uses the same things as in raku, so there :o) | ||
problem is mostly the float randoms | 12:54 | ||
therefor 1 / Int.new.rand(0,1000000), SFY | |||
or something similar which compiles | |||
0,Inf I guess | |||
Altreus | why create an object to marshal this routine? | 12:55 | |
12:55
|oLa| joined
|
|||
Altreus | m: rand(1,3) | 12:55 | |
camelia | 5===SORRY!5=== Error while compiling <tmp> Unsupported use of rand(N). In Raku please use: N.rand for Num or (^N).pick for Int result. at <tmp>:1 ------> 3rand7⏏5(1,3) |
||
Altreus | It even tells you what to do | 12:56 | |
holyghost | WAM | ||
m: Inf.rand | |||
camelia | ( no output ) | ||
holyghost | m: Int.rand(Inf) | ||
camelia | Too many positionals passed; expected 1 argument but got 2 in block <unit> at <tmp> line 1 |
||
holyghost | m: Inf.new | 12:57 | |
camelia | ( no output ) | ||
holyghost | m: rand | ||
camelia | ( no output ) | ||
holyghost | m: rand(Inf) | ||
camelia | 5===SORRY!5=== Error while compiling <tmp> Calling rand(Num) will never work with signature of the proto (*%) at <tmp>:1 ------> 3<BOL>7⏏5rand(Inf) |
||
holyghost | botcherous | ||
12:58
kensanata joined
|
|||
tadzik | ....what do you expect rand(Inf) to return? | 12:58 | |
m: say Inf.rand | |||
camelia | Inf | ||
tadzik | looks correct %) | 12:59 | |
Altreus | I'm pretty sure a random number bounded by Inf runs into the halting problem :P | ||
holyghost | rand is a C function for perl5 and raku I guess | ||
Altreus | ? | 13:00 | |
holyghost | TMTOWTDI | ||
Altreus | It's a raku function for raku | ||
holyghost | ok | ||
Altreus | a perl5 function for perl5 | ||
a C function for C | |||
there aren't very many names for things ... languages tend to share | |||
holyghost | I just need some different things for my random code | ||
right | |||
m: rand(0,Inf) | 13:01 | ||
camelia | 5===SORRY!5=== Error while compiling <tmp> Unsupported use of rand(N). In Raku please use: N.rand for Num or (^N).pick for Int result. at <tmp>:1 ------> 3rand7⏏5(0,Inf) |
||
holyghost | you see, that was python | ||
use pick, ok | |||
Altreus | ok and python has the same chance of picking inf than any other number? | ||
holyghost | s/different/several | ||
Altreus | as | ||
holyghost | I meant randint(0,5) Inf is not in python AFAIK | 13:02 | |
Altreus | And that wasn't the Inf you input, that was the number just before the Inf that you input, because rand's return value will never equal the upper bound | ||
holyghost | indeed | ||
Altreus | So don't say it :P | ||
an upper bound of inf is impossible with 2 seconds of thought | |||
[Coke] | m: my @a = gather for ^10000 { take Inf.rand} ; @a.unique.say # hey, it... works... | 13:04 | |
camelia | (Inf) | ||
holyghost | if only I didn't have to type 100000000000.rand :-) | 13:07 | |
even if it's a Rat | |||
13:09
|oLa| left
|
|||
timotimo | m: say int64.Range.rand | 13:10 | |
camelia | 8.04785272651649e+18 | ||
timotimo | m: say int64.Range.rand | ||
camelia | -3.398761726145194e+18 | ||
timotimo | m: say int64.Range.rand | ||
camelia | -4.0153277634563707e+18 | ||
[Coke] | m: 10¹¹.rand | ||
camelia | ( no output ) | ||
[Coke] | m: 10¹¹.rand.say | ||
camelia | 96400714556.83554 | ||
holyghost | m: Int32.Range.rand | 13:11 | |
camelia | 5===SORRY!5=== Error while compiling <tmp> Undeclared name: Int32 used at line 1. Did you mean 'int32', 'uint32'? |
||
holyghost | stupid scheme | ||
m: say In32.Range.rand | |||
camelia | 5===SORRY!5=== Error while compiling <tmp> Undeclared name: In32 used at line 1. Did you mean 'int32'? |
||
holyghost | m: say Int32.Range.rand | ||
camelia | 5===SORRY!5=== Error while compiling <tmp> Undeclared name: Int32 used at line 1. Did you mean 'int32', 'uint32'? |
||
holyghost | right | 13:12 | |
oddp | int32, buddy. | ||
holyghost | m: int32.Range.rand | ||
camelia | ( no output ) | ||
oddp | m: say int32.Range.rand | ||
camelia | 1100084852.5297184 | ||
oddp | m: say int32.Range.rand.Int | ||
camelia | 835444890 | ||
holyghost | nice | ||
I use uint32_t in GBA games ;-) | 13:13 | ||
Altreus | Surely Inf.rand is really just an implied upper bound that's really big | ||
holyghost | cool | ||
Altreus | cos you can't risk rolling a number that doesn't fit in memory and that's basically guaranteed given how many numbers up to inf are bigger than your memory | ||
m: say Inf.rand | 13:14 | ||
camelia | Inf | ||
Altreus | or you just alway get inf | ||
not really what was intended I think :D | |||
makes sense though | |||
tadzik | it's not wrong :P | ||
perhaps not very useful though | 13:15 | ||
timotimo | there is actually a highest number below Inf that a Num can represent | ||
Altreus | Well if a random number between 0 and X is just rand() * X, then all numbers between 0 and inf are either 0 or inf | ||
holyghost | y * sin(x) for a nice game AI (throttles upward down on your screen :-) | 13:17 | |
going left to right | |||
ok I updated my code to int64.Range.rand instead of Int.rand | 13:21 | ||
we divide by 48 :-) | 13:22 | ||
and 1 sometimes :-) | |||
13:23
Xliff left,
Xliff-con left
13:27
thundergnat joined
|
|||
thundergnat | m: sub is-po2 ($_ where * > 0) { .msb === .lsb }; say "$_: ", .&is-po2 for 1..8; | 13:28 | |
camelia | 1: True 2: True 3: False 4: True 5: False 6: False 7: False 8: True |
||
13:28
thundergnat left
13:30
Petr37 joined
|
|||
Petr37 | gday. how can i generate html in Raku? i can't find any module ... | 13:31 | |
moritz | Petr37: modules.raku.org/search/?q=template | ||
Altreus | timotimo: I still get an undef error using subset-is | 13:32 | |
:( | |||
Petr37 | moritz, thanks! | ||
Altreus | Any ideas? github.com/shuppet/p6-api-discord/...38fa8175cb | 13:34 | |
Hard to show it usable but the error is: Invocant of method 'Bridge' must be an object instance of type 'Int', not a type object of type 'Int'. Did you forget a '.new'? | 13:35 | ||
If I call the method with no arguments | |||
13:37
aluaces joined
|
|||
Altreus | oh! | 13:40 | |
It's probably the constraint on the method itself, right? | |||
damn | |||
er - in the arguments I mean | |||
timotimo | yeah, quite probably | 13:43 | |
m: sub test(:$blorp where 16 <= (* // 16) <= 4096) { say "yay" }; test(); test(blorp => 1000); test(blorp => 999999999) | 13:44 | ||
Altreus | This inability to natively use constraints on optional values seems very broken | ||
camelia | Cannot resolve caller Real(Whatever:D: ); none of these signatures match: (Mu:U \v: *%_) in sub test at <tmp> line 1 in block <unit> at <tmp> line 1 |
||
timotimo | m: sub test(:$blorp where 16 <= ($_ // 16) <= 4096) { say "yay" }; test(); test(blorp => 1000); test(blorp => 999999999) | ||
camelia | yay Constraint type check failed in binding to parameter '$blorp'; expected anonymous constraint to be met but got Int (999999999) in sub test at <tmp> line 1 in block <unit> at <tmp> line 1 yay |
||
timotimo | stdout and stderr get interleaved wildly, but this works ^ | 13:45 | |
not optimal, though | |||
Altreus | what does this mean? Type check failed in binding to parameter '&check'; expected Callable but got List ($( )) | ||
I just made another subset for that range :D | |||
13:46
xinming left
|
|||
timotimo | looks like you passed an empty list accidentally? | 13:46 | |
what does the code look like? | |||
Altreus | sec | ||
13:47
MasterDuke joined
|
|||
Altreus | github.com/shuppet/p6-api-discord/...akumod#L64 | 13:47 | |
13:47
xinming joined
|
|||
timotimo | ah | 13:47 | |
%image-formats{*}:exists is not what you want | 13:48 | ||
you can * (elem) %image-formats, or possibly just %image-formats | |||
m: my %if = <jpeg .jpeg png .png>; say "png" ~~ %if; say "pnm" ~~ %if | |||
camelia | True False |
||
timotimo | just smart-matching will do the exists check i believe | ||
Altreus | that seems like a bizarre thing to have to avoid | 13:49 | |
gotta say I'm getting a lot of aggro from raku :P | |||
where's my dwim | |||
timotimo | some things accept * as an argument | ||
like 1..* for example | |||
Altreus | :\ why not other things | 13:50 | |
* things seem to pass off as a shortcut to { $_ } but they frequently don't behave that way | |||
timotimo | but also putting * inside method calls and such | ||
[Coke] | is there a particular case that is confusing for you? | 13:51 | |
or a particular place you need * that isn't supported? | |||
timotimo | whatever-currying happens when you put operators next to the *, method calls and regular sub calls don't curry | ||
Altreus | [Coke]: %image-formats{*}:exists apparently does not function as I expect | ||
[Coke] | what do you expect? | 13:52 | |
Altreus | I expect it to return a boolean indicating whether the argument exists as a key in the hash | ||
I do not understand what actually happened, which is why I asked for help in the first place | |||
But apparently it didn't compile to a callable at all | 13:53 | ||
dakkar | ooh nice | 13:54 | |
m: my %a=(a=>1,b=>2);say %a{*}:exists | |||
camelia | (True True) | ||
13:54
cpan-raku left
|
|||
[Coke] | what is "subset-is" ? | 13:54 | |
Altreus | from Subset::Helper | 13:55 | |
Now I get: Constraint type check failed in binding to parameter '$format'; expected API::Discord::User::ImageFormat but got Str ("PNG") | |||
13:55
cpan-raku joined,
cpan-raku left,
cpan-raku joined
|
|||
Altreus | Even though "PNG" ~~ %image-formats is true | 13:55 | |
dakkar | the WhateverCode goes straight through the subscript operator, so you get a list of True | ||
13:55
codesections joined
|
|||
Altreus | I see | 13:55 | |
This is not the sort of thing I expect to have to understand :/ | |||
There's a lot of this in raku | |||
dakkar | WhateverCode is very magic | ||
Altreus | I still don't understand why I was having an error mapping the same array twice | ||
Something to do with Seqs | 13:56 | ||
dakkar | probably because it was a Seq and not an Array | ||
[Coke] is trying to golf this down. there's a lot in your code. | |||
dakkar | Seq can be scanned once | ||
Altreus | well it was an array before the map | ||
dakkar doesn't have enough context, and should be working | |||
Altreus | [Coke]: just this (with raku -MSubset::Helper) gist.github.com/Altreus/f0a2170378...692de8de8b | 13:57 | |
in fact | 13:58 | ||
[Coke] | subset ImageFormat of Str where subset-is {%image-formats{$_}:exists}; | 13:59 | |
Altreus | I've updated it to not use subset-is | ||
let me try that | |||
14:00
aluaces left
|
|||
[Coke] | if I run your example as "a.raku" it outputs PNG | 14:00 | |
14:00
maggotbrain left
|
|||
[Coke] | what is your raku version? | 14:00 | |
14:00
aluaces joined
|
|||
Altreus | This is Rakudo version 2020.01 built on MoarVM version 2020.01.1 | 14:00 | |
[Coke] | the original {*} doesn't work in 2020.06+, but your gist example did. might be worth updating. | 14:01 | |
14:01
maggotbrain joined
|
|||
Altreus | I'll kick it off | 14:01 | |
14:06
gnufr33dom joined
|
|||
kawaii | I like how easy it is to download a new version of Rakudo now without needing to compile anything | 14:06 | |
tellable6 | 2020-07-22T22:29:16Z #raku <SmokeMachine> kawaii now this works: www.irccloud.com/pastebin/uVZiQ0Da/ | ||
14:10
markong left
|
|||
timotimo | i'm only at the keyboard intermittently, i wonder how the version with %image-formats directly worked | 14:14 | |
(or didn't work) | |||
14:14
sena_kun joined
14:16
Altai-man_ left
|
|||
Voldenet | 'without needing to compile anything' – not if someone uses gentoo ;) | 14:18 | |
14:18
pi4 joined
|
|||
codesections | Or you count byte-compiling raku code :) | 14:18 | |
Voldenet | but on gentoo things aren't installed, they just emerge | 14:19 | |
codesections | »ö« | 14:20 | |
14:21
pi62 joined
14:22
Kaiepi left,
Kaiepi joined
14:23
Kaiepi left
14:24
Kaiepi joined
14:25
Kaiepi left
14:26
pi62 left
|
|||
pi4 | q | 14:27 | |
14:27
andrzejku left
14:31
Geth_ left
14:32
Geth joined
14:37
vrurg left
14:38
vrurg joined
14:44
Petr37 left
|
|||
tbrowder | hi, folks! | 14:48 | |
kawaii | o/ | 14:49 | |
tbrowder | i wonder if we have a problem with installing modules with a "bin" entry in their META6.json file? | 14:50 | |
kawaii: \o | |||
does zef overwrite an existing bin file of the same name but different module? | 14:51 | ||
holyghost | ambiguity of raku gets better every day | 14:54 | |
oh well | |||
tbrowder | if so, then that seems to be a future problem unless we do something to at least warn of the problem via zef. | ||
holyghost: how do other langs or distros handle that problem? | 14:55 | ||
i don't think it's solely a raku problem. | 14:56 | ||
check out debian for example | |||
codesections | tbrowder: many langs don't let you install binary packages via the language package manager | ||
14:57
dre joined
|
|||
tbrowder | i think perl does | 14:57 | |
14:58
dre left,
gnufr33dom left
|
|||
tbrowder | but i'm not sure | 14:58 | |
i have had similar problems with npm | |||
codesections | and, for distros, they traditionally solve the problem by being fully in control of their repos and making sure that the packages with the same name refer to the same code | 14:59 | |
holyghost | it's zef not cpan on the command line | ||
tbrowder | yes | ||
holyghost | as far as I understand you, zef does not install needed libs (in C for example) | ||
but you knew that I guess | |||
codesections | (I think Nix and Guix have a more advanced solution, but I don't fully understand it) | ||
tbrowder | but i use perl modules with raku and use cpanm to install perl modules | 15:00 | |
15:02
eaterof joined
15:03
eater left
|
|||
lizmat | hmmm... I guess I should give it a less obvious name | 15:04 | |
tbrowder | let me see if i get a warning from zef... | 15:05 | |
cpan-raku | New module released to CPAN! Hash2Class (0.0.4) by 03ELIZABETH | 15:08 | |
15:11
MasterDuke left
|
|||
cpan-raku | New module released to CPAN! Hash2Class (0.0.5) by 03ELIZABETH | 15:16 | |
New module released to CPAN! Hash2Class (0.0.6) by 03ELIZABETH | 15:24 | ||
15:47
skids joined,
KnightLautrec[m] left
15:51
Sgeo joined
|
|||
holyghost | lizmat : so you're hacking some perl6/raku, I see :-) | 15:52 | |
lizmat | yeah, got bored with working on Raku itself | 15:53 | |
holyghost | sure, ga | ||
(ga == go ahead, ust to make sure) | 15:58 | ||
*just | |||
16:00
kensanata left
16:13
Altai-man_ joined
16:16
sena_kun left,
abraxxa left
16:36
dakkar left
16:40
jmcgnh left
|
|||
tbrowder | lizmat: see my pr for h2c | 16:42 | |
lizmat | holyghost: understood :-) | 16:43 | |
16:47
ufobat left
16:50
jmcgnh joined
16:53
xinming left
16:54
melezhik joined,
xinming joined
|
|||
melezhik | I am impressed how easy it was to install Raku on mac OS using rakubrew, great tool! | 16:55 | |
it took me a few seconds to install the latest distribution of Rakudo with zef | |||
and all PATHs are here and everything within my home, pretty neat! | 16:56 | ||
lizmat | :-) | ||
melezhik | works as a charm | ||
and Sparrow works on mac os too, it only requires gnu-tar (instead of standard mac bsd tar), which is not big deal with homebrew | 16:57 | ||
so I am ready for a battle )))) | |||
kawaii | the only gripe I have with Raku's module ecosystem is that modules don't tell you what package you're missing when they fail to install, and some guesswork is required to search through apt and figure it out | 17:09 | |
IIRC, some work is being done/discussed around this topic | |||
melezhik | kawaii do you system dependencies for Raku modules? | 17:10 | |
you -> you mean | |||
kawaii | yep | ||
melezhik | well, it's quite discussed problem ))), let me get you some links | 17:11 | |
that could be of interest | |||
kawaii | that would make for interesting reading, thanks :) | ||
melezhik | github.com/ugexe/zef/issues/356 , github.com/Raku/ecosystem/issues/505 | 17:12 | |
but if you want my view on this - use could Sparrowdo to manage system dependencies for you raku modules | 17:14 | ||
if you take a look at this "patches" that are used in RakuDist - github.com/melezhik/RakuDist/tree/...es/patches | 17:15 | ||
you'll get an idea | |||
basically you may install Raku modules using Sparrow: `package-install "gcc openssl openssl-devel"; zef "Cro::TLS";` | 17:18 | ||
that is it | |||
at least this is how you can get _repeatable_ deploy scenarios for your Raku code | 17:19 | ||
SmokeMachine | melezhik: does that RakuDist Red test environment still exist? | 17:24 | |
melezhik | SmokeMachine it does, do you need it? | 17:25 | |
17:25
dataangel joined
17:26
skids left
|
|||
rypervenche | kawaii: Do you know if it's possible to send audio (I guess via a buffer using ffmpeg) to a bot in API::Discord? Or would that need to be added to the module? | 17:29 | |
SmokeMachine | Yes, I'm planing to take a look at those Pg problems this weekend, and try to do a CI schema to test all the tests on PG, if possible | 17:30 | |
kawaii | rypervenche: not possible at this time, IIRC Raku would need a module to handle the Opus codec (all that Discord supports), and we have no code in the module to handle voice at all yet anyway - also the voice endpoints on Discord's API are ENTIRELY undocumented :D | ||
17:31
skids joined
|
|||
rypervenche | kawaii: And what if the source/file were already in the Opus codec? Would that be possible at this time? | 17:32 | |
Oh, I missed the "we have no code" part. | |||
kawaii | voice stuff is the very last thing on our roadmap for the module, because it's going to be annoying/difficult | 17:33 | |
rypervenche | All righty. I was just curious since I'm learning to write a bot. :) | 17:34 | |
kawaii | rypervenche: there's a link to our Discord server in the README if you have questions and stuff :) | 17:39 | |
there's not really many people there, but feel free to ping me if you need help | |||
SmokeMachine | kawaii: you are playing with discord bot + Red, maybe you could gimme some help on a old project of a IRC bot + Red: github.com/FCO/RedBot/blob/whateve...in/red-bot :) | 17:44 | |
tony-o_ | [Coke]: i have a raku nightly building | 18:01 | |
tellable6 | 2020-05-29T17:39:25Z #raku-dev <patrickb> tony-o I'm still interested in your revamp of the ecosystem. Are you still planing on going forward with that? | ||
2020-06-11T10:58:35Z #raku-dev <patrickb> tony-o I'm still interested in creating a more robust p6c ecosystem. But I'm currently kind of blocked by you spearheading a similar effort. Is there anything I can do to speed things up on your side? | |||
tony-o_ | .tell patrickb ugexe just told me there's been some pining for it. currently working on it again. | 18:02 | |
tellable6 | tony-o_, I'll pass your message to patrickb | ||
tony-o_ | [Coke]: hub.docker.com/repository/docker/t...do-nightly | 18:04 | |
18:04
tony-o_ is now known as tony-o
18:08
skyl4rk left
18:10
ensamvarg3 left,
melezhik left
18:11
skyl4rk joined
18:14
MetroMSI joined,
wklew joined
|
|||
tony-o | kawaii: nine, ugexe, and i discussed the system deps problem a few years ago at PTS. not sure if we agreed on anything for it | 18:14 | |
18:15
sena_kun joined
|
|||
tony-o | kawaii: this was the test for it: github.com/tony-o/p6-warthog | 18:15 | |
18:15
wklew left
18:16
wklew joined,
Altai-man_ left
18:23
Black_Ribbon joined,
bocaneri left
|
|||
[Coke] | tony-o: sorry, what was that in reference to? | 18:28 | |
18:30
codesections left
|
|||
tony-o | docker images for raku | 18:30 | |
ah, sorry, that might've been from last night - my buffer wasn't scrolling since i rejoined the channel. | 18:34 | ||
[Coke] | i think it was docker images for raku docs that we were discussing. | 18:35 | |
but I may have been mistaken. | |||
anyway, thanks. :) | |||
cpan-raku | New module released to CPAN! Hash2Class (0.0.7) by 03ELIZABETH | 18:36 | |
tony-o | [Coke]: i can add a docs image to that nightly if that's interesting. | 18:37 | |
18:51
Kaiepi joined
|
|||
cpan-raku | New module released to CPAN! PDF::Tags (0.0.2) by 03WARRINGD | 19:02 | |
19:03
codesections joined
19:14
Possum joined
|
|||
cpan-raku | New module released to CPAN! Hash2Class (0.0.8) by 03ELIZABETH | 19:24 | |
19:26
xelxebar_ joined,
xelxebar left,
sena_kun left
19:27
sena_kun joined
|
|||
[Coke] | tony-o: ask jj. | 19:40 | |
19:42
skids left
19:46
skids joined
|
|||
rypervenche | What exactly is the expanded equivalent of this? my API::Discord $discord .= new :$token; | 19:50 | |
SmokeMachine | my API::Discord $discord = API::Discord.new :$token; | 19:51 | |
timotimo | no need for the colon after new? | ||
SmokeMachine | timotimo: yes, sorry: my API::Discord $discord = API::Discord.new: :$token; | 19:52 | |
timotimo | m: class T { method test(*%a) { .say for a } }; my T $t = T.new :blorp | ||
camelia | 5===SORRY!5=== Error while compiling <tmp> Undeclared routine: a used at line 1 |
||
timotimo | oops | ||
m: class T { method test(*%a) { .say for %a } }; my T $t = T.test :blorp | |||
camelia | blorp => True | ||
timotimo | it does work without the colon! | ||
SmokeMachine | odd | ||
timotimo | not so surprising | ||
SmokeMachine | adverb? | 19:53 | |
rypervenche | Ahh, I should add the colon I guess. | ||
I originally had "my $discord = API::Discord.new(:$token);", but I thought I should probably add a type constraint. | 19:54 | ||
19:56
skids left,
aborazmeh joined,
aborazmeh left,
aborazmeh joined,
markong joined
19:57
aborazmeh left
19:58
skids joined
20:00
Possum left
|
|||
guifa | rypervenche: I believe named arguments don’t actually have to be indicated as arguments per se with and could even be stacked: | 20:01 | |
m: class A { method a(*%a) { say %a } }; A.a :1a:b(2):c<3>:d('4') | 20:02 | ||
camelia | {a => 1, b => 2, c => 3, d => 4} | ||
20:04
Petr37 joined
|
|||
guifa | I think but don’t quote me that named args like that are first given to the operator, and those pass them through if they can’t do anything with them | 20:04 | |
oddp | Btw., thanks for the july grant report. And have a fun and relaxing vacation! | 20:05 | |
20:11
Petr37 left
20:13
Altai-man_ joined
|
|||
cpan-raku | New module released to CPAN! Red (0.1.25) by 03FCO | 20:13 | |
20:16
sena_kun left,
wklew left
20:20
andrzejku joined
20:27
rindolf left
20:37
Altai-man_ left
20:38
sena_kun joined
20:48
Black_Ribbon left
20:49
xinming left,
xinming joined
20:52
andrzejku left
20:55
kensanata joined
20:56
wklew joined
21:14
abraxxa joined
21:18
Black_Ribbon joined
|
|||
tony-o | hey all. a heads up that i submitted a tpf grant request for building out an autonomous raku ecosystem. | 21:31 | |
21:35
gordonfish left
|
|||
kawaii | tony-o: are these grant requests publically logged and/or discussed anywhere? | 21:35 | |
tony-o | kawaii: they are. they're on the TPF site, i just submitted this one so it isn't on there yet (www.perlfoundation.org/) | 21:36 | |
21:37
gordonfish joined
|
|||
tony-o | kawaii: here is a gist of the proposal: gist.github.com/tony-o/07fdf8b3a0f...4131ac224b | 21:37 | |
kawaii | thanks! | 21:38 | |
21:43
aluaces left
21:47
wamba left
21:50
abraxxa left
21:55
abraxxa joined
22:00
tejr joined
22:03
squashable6 left
22:04
skids left
22:05
squashable6 joined
22:06
Xliff joined
22:07
markoong joined
22:08
markong left
|
|||
Xliff | Ahhh... I think I just did a nice bit of meta-programming.... | 22:10 | |
tellable6 | hey Xliff, you have a message: gist.github.com/2ad36d59c036273fbf...8995a429e1 | ||
Xliff | repl.it/@Xliff/AvariciousRectangul...ng#main.p6 | ||
Actually, that's... | |||
repl.it/@Xliff/AvariciousRectangul...#main.raku | |||
Generates method calls from C typing information in POD comments. :) | 22:11 | ||
22:11
abraxxa left
22:12
abraxxa joined
22:13
Altai-man_ joined
22:15
Petr37 joined
22:16
sena_kun left,
aborazmeh joined,
aborazmeh left,
aborazmeh joined
|
|||
Petr37 | sorry... Cro Services or Bailador for web development? | 22:17 | |
Xliff | Cro. I don't know if Bailador is still under development. | ||
Petr37 | Xliff, thanks 😊 | 22:19 | |
Xliff | yw | ||
oddp | Since when are they requiring this clowning around with the google captchas on repl.it? :( | 22:27 | |
Xliff | oddp: What? When? | 22:28 | |
I haven't hit a captcha on repl.it all day... | |||
oddp | Solved two and it's still not showing me code. | ||
Xliff | Which link? Mine? | ||
oddp | Yeah. | 22:29 | |
Xliff | Huh! Still not getting one and I logged out. Lemme try something else. | ||
oddp: Try this one -- glot.io/snippets/fpkmj1j6d5 | 22:30 | ||
oddp | Thanks. All good. | 22:31 | |
22:31
Petr37 left
|
|||
Xliff | Yeah. I generally don't like glot.io because it's hard to see the code. | 22:31 | |
I wonder if this would make a good blog post.... | |||
22:38
marcusr left
22:39
kensanata left,
marcusr joined
22:40
marcusr left
22:42
marcusr joined
22:45
leont left
23:01
aborazmeh left
23:02
tejr left
23:05
OpenZen joined
23:09
tejr joined
23:17
tejr left
23:22
tejr joined
|
|||
cpan-raku | New module released to CPAN! Red (0.1.26) by 03FCO | 23:33 | |
23:41
markoong left
23:44
pecastro left
23:54
Maylay left
23:57
Maylay joined
23:59
DarthGandalf left,
schlaftier9 joined,
schlaftier left,
schlaftier9 is now known as schlaftier
|