🦋 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:05 john_parr_ joined, john_parr_ left 00:08 seanrobert left
AlexDaniel` `@$¢XR**@$¢` heh 00:13
00:29 seanrobert joined, mowcat left 00:31 e left 00:47 seanrobert left, john_parr joined 00:52 sena_kun joined 00:53 john_parr is now known as st_elmo, Altai-man left 01:08 edk_ joined 01:22 AlexDani` joined 01:24 AlexDaniel left 01:30 xelxebar left, xelxebar joined
rypervenche What would the Raku equivalent of the Python 「"in" in ["in", "out"]」 be? 01:34
01:45 molaf left 01:57 molaf joined
rypervenche Oh... 02:15
Ⓜ say "in" (elem) ("in", "out");
m: say "in" (elem) ("in", "out"); 02:16
camelia True
02:40 MilkmanDan left 03:21 seanrobert joined 03:30 AlexDani` left, AlexDani` joined 03:31 st_elmo left 03:33 seanrobert left
Geth doc: 455d2f7c2d | Coke++ | doc/Language/subscripts.pod6
Correct name of named argument to STORE

  ... also in example (which didn't compile) and text
linkable6 Link: docs.raku.org/language/subscripts
03:57 rindolf joined 04:10 wamba joined 04:14 wamba left 04:15 wamba joined 04:30 skids left 04:51 Altai-man joined 04:53 sena_kun left 05:43 wamba left 05:54 wamba joined 05:57 skyl4rk left 05:58 wamba left 05:59 Marcool joined, wamba joined
Marcool Hi all, trying to update raku to moar-2020.07 on a raspberry pi is failing with the rather cryptic "make: *** [Makefile:1136: blib/CORE.c.setting.moarvm] Terminated", is there a way to get more information about the failing part? Passing --debug to make helps elsewhere but that is part of the "The following step can take a long time, please be patient. Stage start : 0.001 etc." segment and --debug 06:00
tellable6 2020-05-21T15:46:30Z #raku <MasterDuke> Marcool: maybe run it under strace and see where it's actually looking?
Marcool makes not difference to output there. 06:01
timotimo Marcool: on the raspberry pi it's quite possible that you're running out of RAM. do you have a swap file or partition set up?
tellable6 2020-08-15T21:55:57Z #raku <melezhik> timotimo I've broken down the Arrays VS Lists principal in Sparrow6 args stringification mechanism - github.com/melezhik/Sparrow6/blob/...-vs-arrays
2020-08-15T23:22:03Z #raku <melezhik> timotimo `<>` works here - github.com/melezhik/Sparrow6/blob/...r.pm6#L126
2020-08-16T03:47:22Z #raku <melezhik> timotimo hopefully now I nailed it down - github.com/melezhik/Sparrow6/blob/...args-array
06:02 skyl4rk joined
Marcool timotimo: oh… i never thought of that! how simple. I used to have 2Gb and recently reduced it I think… That would certainly be a good explanation I'll check 06:03
timotimo dmesg may have a bit of extra information about the crash 06:05
06:08 xinming left 06:09 xinming joined
Marcool timotimo: nothing of any help on dmesg, but it's actually earlyoom that's killing it a while before I get to 90% :D 06:14
timotimo: you nailed it!
timotimo earlyoom possibly saved you from a couple of minutes of a locked-up system maybe 06:15
i'm glad i have earlyoom on my desktop system
Marcool timotimo: yeah it's helped me out with a few memory-leaky pieces of code in the past I love it too 06:17
Geth ecosystem: kjkuan++ created pull request #525:
Add my fork of Fcntl module
06:47 xinming left 06:48 xinming joined 06:50 gnufr33dom left
Marcool timotimo: cool! build completed :D 07:00
now new question: is there a simple way to reinstall local (i.e not in the ecosystem) modules with zef after a rakudobrew upgrade? 07:01
i've kind of fiddled together a find command with an execute flag but dependencies tend to make it tedious… 07:02
timotimo as long as the distribution was initially installed with something like zef, the sources should be in the installation as well, and whenever stuff gets updated, rakudo should rebuild from source 07:03
Marcool oh… that's not what I have been noticing :/ I am using zef to install my modules, but on upgrade (rakudobrew build moar 2020.07; rakudobrew global moar-2020.07 for instance) they are no longer installed in "that version" 07:04
timotimo oooh rakudobrew 07:05
that's a tool specifically made to keep different versions as separate as possible
07:10 zacts joined
Marcool timotimo: oooooh yes… 07:11
so if I had a single system installed version and just upgraded that as versions came out, installed modules would be re-built/installed ?
timotimo yeah, it's kind of trying to keep you from doing what you want there :)
i hope i'm remembering this correctly and not spouting falsehoods 07:12
Marcool yeah but I see the trade-off. At least you know things work in a certain configuration and it's super easy to switch back and forth. If I upgrade and some module breaks, then I have to uninstall/reinstall raku to downgrade back to a working configuration
timotimo well, we're usually running all modules's test suites when doing releases 07:13
07:16 Sgeo left
Marcool I'm sure some of my modules will fail sooner or later :D 07:16
(they're not in the ecosystem just local) 07:17
timotimo that makes it more difficult for us to keep stuff working :)
Marcool sure, and I do plan to upload them at some point… but most of them are just a mess at this point :D
I don't mean that I don't want to give back, nor that I don't want to help though, of course! I very much appreciate all you folks hard work 07:18
timotimo i understand the feeling behind not wanting to push code that isn't very pretty
07:25 abraxxa joined 07:30 dolmen joined 07:34 Manifest0 left
Geth ecosystem: 4a707cc0a1 | (Jack Kuan)++ (committed using GitHub Web editor) | META.list
Add my fork of Fcntl module

This is needed for the `Shell::DSL` PR.
ecosystem: 4508ed1ec9 | (Juan Julián Merelo Guervós)++ (committed using GitHub Web editor) | META.list
Merge pull request #525 from kjkuan/patch-2

Add my fork of Fcntl module I think it's OK now, but I guess it needs a bit of tweaking on the test side...
07:36 abraxxa left 07:38 dakkar joined, leont joined, Marcool left 07:40 molaf left 07:41 dolmen left 07:43 Manifest0 joined 07:52 abraxxa joined 07:56 abraxxa left 07:57 abraxxa joined 08:17 rockxloose left 08:18 rockxloose joined 08:46 edk_ is now known as e 08:51 sena_kun joined 08:53 Altai-man left 09:10 ChoppedBacon left
Geth advent: 6ac631658a | (Elizabeth Mattijsen)++ (committed using GitHub Web editor) | 20th/articles/rfc200.md
More of woolfy++ tweaks
gfldex lolibloggedalittle: gfldex.wordpress.com/2020/08/17/de...or-dynvar/
09:12 Black_Ribbon left 09:16 ChoppedBacon joined 09:19 Marcool joined, wamba left 09:22 hungrydonkey joined 09:26 Marcool left 09:33 hungrydonkey left 09:35 hungrydonkey joined 09:53 wamba joined 10:00 stoned75 joined 10:14 wamba left 10:39 MilkmanDan joined 10:47 stoned75 left 10:48 stoned75 joined 10:59 Cabanossi joined 11:17 JJMerelo joined
codesections Upon reflection, I've decided I really dislike the way `».` uses the nodality of a routine to call either `deepmap` or `nodemap`. It's not *that* bad (and I recognize that it's well documented, including in the Traps to Avoid page), but I wish we'd budgeted an extra operator to call `deepmap`, and had made `».` always use `nodemap` 11:42
11:44 Tirifto joined 11:46 JJMerelo left 11:53 hungrydonkey left
codesections (and yes, I realize I'm being petty: the solution is nearly always to write `.map(*.method)` instead of `».method`, which costs only 4 characters. But still, Raku is *usually* so good at avoiding "smart" behavior that actually doesn't dwim that this stands out 11:53
11:54 terminatorul joined
terminatorul Hello ! 11:54
codesections hi!
terminatorul I run into a MoarVM panic with a short script: 11:55
role SqlInfo does X::Control{ has $.message = "Sql Info X::ControlFlow";}warn("Warning message");say "Exiting now";CONTROL{ when (SqlInfo) {say .message;.resume }}
Am I doing something wrong please ? 11:56
Sorry, how do you paste code here ?
"MoarVM panic: Trying to unwind over wrong handler"
codesections The way you pasted code is generally fine. You can also evaluate it here like this:
m: say 'hello world!'
camelia hello world!
codesections terminatorul: I'm not sure. I reproduced the panic with that code. I haven't used phasers all that much (or the CONTROL phaser at all), so I may not be the best person to help. 12:02
Oh! 12:03
m: role SqlInfo does X::Control { has $.message = "Sql Info X::ControlFlow"}; warn 'Warning message'; say "Exiting now"; { CONTROL { when (SqlInfo) { say .message; .resume }}
camelia 5===SORRY!5=== Error while compiling <tmp>
Missing block
at <tmp>:1
------> 3hen (SqlInfo) { say .message; .resume }}7⏏5<EOL>
codesections role SqlInfo does X::Control { has $.message = "Sql Info X::ControlFlow"}; warn 'Warning message'; say "Exiting now"; { CONTROL { when (SqlInfo) { say .message; .resume }}} 12:04
evalable6 Warning message
Exiting now
in block <unit> at /tmp/oCe6kliAiV line 1
codesections terminatorul: That works ^^^^, and the only difference to your code is the extra block around the CONTROL block 12:05
terminatorul Oh ... but that is wrong
I mean it already has a different semantic
codesections ok, right. But I believe CONTROL cannot be used in the global scope, because it's a phaser that runs on block exit 12:06
lizmat docs.raku.org/syntax/CONTROL 12:07
I guess the text can be confusing
but CONTROL runs whenever a control exception is thrown
just like CATCH 12:08
you could see CONTROL as a CATCHer of benevolent exceptions
codesections (lizmat definitely knows this way better than I do, so listen to her over me :) )
12:08 hungrydonkey joined
terminatorul I don't find anything against CONTROL in global scope... 12:09
I am trying to create an exception class for warnings or notifications from SQL statements run with ODBC 12:10
Based on how the language warnings display output but do not interrupt the program flow
Yet they can still be caught and processed differently if the application needs to 12:11
So could I create a similar exception in my module ?
lizmat m: CONTROL { say "caught a $_.^name() exception" }; next
camelia caught a CX::Next exception
next without loop construct
in block <unit> at <tmp> line 1
lizmat m: CONTROL { say "caught a $_.^name() exception" }; warn "foo:
camelia 5===SORRY!5=== Error while compiling <tmp>
Unable to parse expression in double quotes; couldn't find final '"' (corresponding starter was at line 1)
at <tmp>:1
------> 3ht a $_.^name() exception" }; warn "foo:7⏏5<EOL>
expecting …
lizmat m: CONTROL { say "caught a $_.^name() exception" }; warn "foo"
camelia caught a CX::Warn exception
MoarVM panic: Trying to unwind over wrong handler
lizmat interesting
m: warn "foo"
camelia foo
in block <unit> at <tmp> line 1
lizmat m: CONTROL { say "caught a $_.^name() exception" }; warn "foo"
camelia caught a CX::Warn exception
MoarVM panic: Trying to unwind over wrong handler
lizmat m: CONTROL { }; warn "foo"
camelia foo
MoarVM panic: Trying to unwind over wrong handler
terminatorul The panic shows when you CONTROL a class derived from X::Control; doing this appears to break built-in warn() 12:13
lizmat m: CONTROL { say "caught a $_.^name() exception" }; redo
camelia caught a CX::Redo exception
redo without loop construct
in block <unit> at <tmp> line 1
lizmat m: CONTROL { say "caught a $_.^name() exception"; .resume }; redo
camelia caught a CX::Redo exception
This exception is not resumable
in block <unit> at <tmp> line 1
lizmat hmmm
lizmat continues working on the RWN 12:14
sena_kun tells me it's a long standing issue: github.com/rakudo/rakudo/issues/1605 12:16
terminatorul So could I still create a warning-like exception class for my SQL commands ? 12:19
lizmat Yes, you can, you should make sure your class does the X::Control role 12:21
m: CONTROL { dd $_ }; class Foo does X::Control { }; Foo.new.throw
camelia Foo.new
control exception without handler
in block <unit> at <tmp> line 1
lizmat m: CONTROL { say "caught a $_.^name() control exception" }; class Foo does X::Control { }; Foo.new.throw 12:22
camelia caught a Foo control exception
control exception without handler
in block <unit> at <tmp> line 1
lizmat m: CONTROL { say "caught a $_.^name() control exception"; .resume }; class Foo does X::Control { }; Foo.new.throw
camelia caught a Foo control exception
Cannot find method 'sink' on 'BOOTException': no method cache and no .^find_method
in block <unit> at <tmp> line 1
terminatorul I would like the warning-like behavior, meaning I would like my exception to be resumed by default ... by the runtime
Is this possible ?
lizmat probably, but I don't have a boilerplate for that available 12:24
looks to me it would be a good SO question: stackoverflow.com/questions/tagged/raku
terminatorul Is there a way to inherit CX::Warning, but parameterize my exception like I can parameterize a role ? 12:25
Another issue I have: some multi-byte strings, like "sş tţ", will send interactive raku into an error loop repeating a message like: "Malformed UTF-8 near bytes .. ad" 12:26
Apparently interactive raku is trying to read utf-8 strings from the console, but the default encoding in Windows is NOT utf-8, but depends on locale
12:27 john_parr_ joined
terminatorul In my case the string encoding used by the operating system is iso-8859-1 12:27
12:31 john_parr_ left 12:38 hungrydonkey left 12:42 stoned75 left
lizmat terminatorul: sorry, am busy with the RWN and was distracted... 12:42
I don't have an immediate answer
12:43 stoned75 joined 12:51 Altai-man joined 12:53 sena_kun left 13:01 terminatorul left 13:02 __jrjsmrtn__ joined 13:03 _jrjsmrtn left
rir lizmat: Could you consider Rakudo/Test.rakumod/done-testing returning Bool for passing or not? 13:07
lizmat what would be considered "passing" ? 13:08
no tests failed and correct number of tests when number of tests was specified ? 13:09
rir lizmat: Yes, you type faster than I!
lizmat I guess a PR would be considered :-) 13:10
Q: why would you need it ?
13:10 xinming left 13:11 xinming joined
rir I want to turn tests around when actually coding by not testing when last passed and no dependencies have chained. 13:11
That without running a multi-level make. 13:12
13:13 gnufr33dom joined
rir Thanks, I'll work on a PR. 13:14
13:17 stoned75 left 13:23 stoned75 joined 13:25 hungrydonkey joined 13:34 zacts left, zacts joined 13:40 terminatorul joined 13:43 terminatorul left 13:50 zacts left
holyghost where to start to learn NQP, good links or something ? I can port my theorem prover 13:53
codesections holyghost: The link I was given was edumentab.github.io/rakudo-and-nqp...s-day1.pdf which is from 2013 – I'm not aware of anything more recent, but I'd love to learn otherwise 13:55
holyghost codesections : thanks a lot, I already have those on my server :-) 14:00
I fogot 14:01
lizmat and another Rakudo Weekly News hits the Net: rakudoweekly.blog/2020/08/17/2020-...ion-types/ 14:03
holyghost ok, so now to go from scheme lists to nqp lists :o| 14:07
14:08 skids joined
holyghost Is there an elegant way in nqp to implement actors ? 14:17
e.g. an object that understands messages
ok, I'll manage with a messaging system in a class or something like that 14:20
dakkar holyghost: github.com/jnthn/oo-actors ? 14:23
I'm not sure why you'd want to do it at the nqp level, though
holyghost well, because of a better system but I need to look into it that it is usable in raku's nqp layer 14:25
14:25 cpan-raku left 14:26 cpan-raku joined, cpan-raku left, cpan-raku joined, Sgeo joined
dakkar I don't understand that sentence 14:27
holyghost dakkar : I need to understand if classes are used in the implementation of raku in nqp 14:28
if they are not, I'd better not use nqp classes myself
14:29 hungrydonkey left, hungryd61 joined
moritz they are 14:30
(as a simple `git grep` can reveal pretty quickly) 14:31
dakkar github.com/Raku/nqp/blob/master/sr...rld.nqp#L4 ← just as an expample
holyghost: wait, are you writing a compiler for some non-raku language, in nqp? 14:32
holyghost thanks, I understand
dakkar (are there other reasons to use nqp instead of raku?) 14:33
holyghost no, that's my scheme rsr3 implementation in C at github.com/theholyghost2/racul
dakkar : I want to add a split method without delimiters 14:34
dakkar to what?
Raku `Str`?
holyghost the delimiters and result get theorem proved
to Str yes
a stream or collection in my scheme code
dakkar I still can't understand most of what you write 14:35
holyghost a theorem prover is handy in a compiler, but machines are not always fast enough for it
dakkar : for example,
dakkar are you trying to do compile-time correctness checks for Raku, via a theorem prover running in the compiler?
holyghost split ("a b\n c\t \r\n\") the theorem prover calculates the delimiter 14:36
dakkar uh? why would that ever have a single solution?
[Coke] I would recommned implementing in Raku instead of nqp if possible.
dakkar I mean, the delimiter that the programmer meant is obviously "\0", and there just happen to be a single element 14:37
what would the theorem be, there?
holyghost as I said it is usable on streams and arrays 14:38
dakkar : the theorem calculates several delimiters by logic theory, function theory and object theory 14:39
dakkar I'd love to see that theorem…
holyghost sure, that's what I want to do 14:40
dakkar when you say "works on arrays"… could you give me an example? input and output
codesections I just realized that the feed operator is much more powerful than I'd known: 14:41
m: say 1 ==> { $_ + 1 }()
camelia 1
codesections m: say (1 ==> { $_ + 1 }())
camelia 2
14:42 stoned75 left
holyghost dakkar : I did a prototype in scheme : (define (enter-validities) 14:42
;; NOTE that the key is a number (to be hashed) and the value
;; of the dictionary is a predicate
((*validities 'add) 0 (make-theorem-prover-predicate
;; p and q (as booleans)
(cons (make-theorem-prover-precondition '(
(make-theorem-prover-predicate-item 'operator-and 'and )
(make-theorem-prover-predicate-item 'boolean 'p )
(make-theorem-prover-predicate-item 'boolean 'q )
;; is q and p
dakkar codesections: it's a very fancy way to pass arguments ☺
codesections dakkar: It is :D
dakkar holyghost: ehrm, don't flood the channel ☺ 14:43
holyghost sorry, forgot pastebin
dakkar no worries, happens to the best of us
codesections And, importantly (at least to me) it's a fancy way to pass arguments from left to right *without* needing to give them a name
14:44 stoned75 joined
holyghost dakkar : HTH, I'm afk for a while 14:44
dakkar we didn't get anything past the first 10 lines…
holyghost ok, WAM 14:45
dakkar, you see the types such as boolean, the precond and the posterior 14:46
of the predicate
dakkar and nothing else
holyghost that will be added to function logic, e.g. f : a -> a + n 14:47
for hashing towards the best delimiters
dakkar how does that help guessing what to split a random string on?
it's not a decidable proposition!
holyghost it's a better system for it, although it is slower
I just want to create a patch for it, nothing more 14:48
or a PR
more code, more fun :-)
dakkar why would I even want my program to guess?
holyghost to alleviate 14:49
to program split faster for example 14:50
dakkar I'm sure I'm missing something… it feels like a debugging nightmare to me
holyghost :-)
dakkar again, in your example of `split ("a b\n c\t \r\n\")`, how would your magic ever guess that the correct delimiter to split on is `\0`? 14:51
holyghost or " "
my magic will be programmed
holyghost bows
[Coke] Makes no sense to me. 14:52
dakkar you said "it works for arrays"
can you show an example of it working? 1-2 lines of code, input, output
holyghost not yet, sorry
dakkar how do you know it's working, then? 14:53
holyghost I'll give a simple example :
dakkar thank you
holyghost f : x -> y : x := x + hash, then use risk function theory to find the most common delimiter 14:54
hash is e..g a random number
I need to elevate the simplicity of the f
dakkar I see no arrays there
holyghost but you can prove that more or less 14:55
the array is a type within the object theory of the theorem prover
e.g. in the scheme code above '('array etc.
dakkar ok, so when you said "it works for arrays and streams" you were referring to the prover, not to the "guess the delimiter" thing? 14:56
holyghost both
dakkar can you show me an example of "guess the delimiter" working?
as in, "given this input, it guesses this delimiter"?
holyghost ok,
('array a b c), you hash the array then you find " " 14:57
e.g. an argmax/minimax to be simple
s/to be simple/as a simple theory/ 14:58
dakkar I'm not asking _how_ it guesses
holyghost It still stays a theorem prover however
dakkar I'm just asking _what_ it guesses
you say that given a three-element array containing three lower-case latin letters, the guessed delimiter is U+0020 14:59
holyghost one or several delimiters, split without a delimiter argument (non-perl wise) then returns a split lists with guessed delimiters
dakkar : with an object theory, one might use a 'iterator type 15:00
dakkar I'm not interested in the implementation, right now
holyghost the object theory as a theory for the theorem prover
dakkar I'm trying to figure out the expected result
holyghost a good split :-) 15:01
dakkar again, given the input string `"a b c\td e f\ng h i"`, I see no sensible code that would guess that the correct value to split on is `"|\n"`
15:02 MilkmanDan left
holyghost sure, it stays a statistic for example 15:02
I'm not sayinng its theorem proves everything, that's probably what you wanted to hear 15:03
dakkar and code that would return the equivalent of `(" ","\n","\t",/<ws>/,/<ws>+/).map: { $input.split($_) }` feels not very useful to me
15:03 MilkmanDan joined
dakkar (a theorem doesn't prove anything, a theorem gets proven) 15:04
holyghost I use statistics for it too
It' a holly theorem prover :-)
anyway, I'll show you the code in nqp 15:05
if I may
dakkar I fear we are using two different definitions of "theorem"
holyghost when it's finished, I made a prototype which works a bit
dakkar : I use theories
Geth doc/baggy-typo: 14dca27dc4 | (Stoned Elipot)++ | doc/Type/Baggy.pod6
holyghost sublogic, functional logic, object theory logic
Geth doc: stoned++ created pull request #3562:
holyghost dakkar : I'm going afk now, thanks for the talk
dakkar sure, have fun!
holyghost as I said, I'll show you the code for it, when it's done
it's done when it's done 15:07
dakkar as always
lizmat holyghost: santé 15:20
Geth doc: 14dca27dc4 | (Stoned Elipot)++ | doc/Type/Baggy.pod6
doc: 53021e905a | (Elizabeth Mattijsen)++ (committed using GitHub Web editor) | doc/Type/Baggy.pod6
Merge pull request #3562 from Raku/baggy-typo

15:21 stoned75 left
linkable6 Link: docs.raku.org/type/Baggy 15:21
15:22 gordonfish left 15:27 stoned75 joined 15:48 terminatorul joined
terminatorul Hello 15:48
Is there a way to read a CStruct with an embedded native array inside ?
I am trying to follow the example in the Native calling interface, but the nativesizeof() is always wrong and the script crashes 15:49
And now I get "CStruct representation attribute not yet fully implemented"
Is that correct ?
dakkar would that be something like `struct { int foo[4]; }` ? 15:50
terminatorul Yes
dakkar ew, ugly C
I suspect that, as far as NativeCall is concerned, that's not an array (i.e. not a pointer)
terminatorul My struct is 15:51
typedef struct _cpinfoexA { UINT MaxCharSize; BYTE DefaultChar[MAX_DEFAULTCHAR]; BYTE LeadByte[MAX_LEADBYTES]; WCHAR UnicodeDefaultChar; UINT CodePage; CHAR CodePageName[MAX_PATH];} CPINFOEXA, *LPCPINFOEXA;
From the WinAPI documentation
dakkar I guessed win32 by the weird consonant mashup 😜
stoned75 am I wrong thinking that *-N on .pick/pickpairs/grab/grabpair is not documented ? 15:52
dakkar terminatorul: the `CArray` is a pointer type github.com/rakudo/rakudo/blob/mast...akumod#L92 15:53
so not what you want, there
lizmat stoned75: could very well be
stoned75 perhaps not even roasted ?
terminatorul Could I map the native array to a memberd declard as "HAS Str $name" ? 15:55
Or could I use HAS CArray[] instead ?
dakkar I'm pretty sure Str maps to `const char *`
`has CArray $.foo` would expect a pointer in the struct, too 15:56
lizmat stoned75: could very well be as well
stoned75 lizmat: eheh :)
dakkar terminatorul: I don't see any obvious way to tell NativeCall "there's 300 bytes here, map them to a Buf" 15:57
dakkar doesn't know enough about NativeCall 15:58
terminatorul I will use a Buf as the structure and serialize the members manually
Thank you guys !
lizmat terminatorul+
holyghost m: @a.what 16:04
camelia 5===SORRY!5=== Error while compiling <tmp>
Variable '@a' is not declared
at <tmp>:1
------> 3<BOL>7⏏5@a.what
holyghost m: my @a = (); @a.what 16:05
camelia No such method 'what' for invocant of type 'Array'. Did you mean any
of these: 'Rat', 'flat'?
in block <unit> at <tmp> line 1
holyghost m: my @a; @a.flat;
camelia ( no output )
holyghost m: my @a; @a.Rat;
camelia ( no output )
holyghost m: my @a = (1 2 3); @a.flat 16:07
camelia 5===SORRY!5=== Error while compiling <tmp>
Two terms in a row
at <tmp>:1
------> 3my @a = (17⏏5 2 3); @a.flat
expecting any of:
infix stopper
statement end
statement modifier
dakkar holyghost: not lisp, you need commas ☺
holyghost m: my @a = (1,2,3); @a.flat
camelia ( no output )
dakkar also you may want to `say` things 16:08
holyghost ok
m: my @a = (1,2,3); @a.say
camelia [1 2 3]
holyghost nice :-)
dakkar it's similar to the rakudo repl, but won't just print the results of expressions
16:08 xinming left
holyghost dakkar : how do I return the type of @a ? 16:09
m: my @a = (1,2,3); @a.what.say;
camelia No such method 'what' for invocant of type 'Array'. Did you mean any
of these: 'Rat', 'flat'?
in block <unit> at <tmp> line 1
dakkar m: my @a;say @a.^name 16:10
camelia Array
dakkar for example
holyghost thanks
dakkar but that's a string, not a class
holyghost sure
dakkar m: my @a;say @a.^HOW
camelia 5===SORRY!5=== Error while compiling <tmp>
Cannot use .^ on a non-identifier method call
at <tmp>:1
------> 3my @a;say @a.^HOW7⏏5<EOL>
expecting any of:
method arguments
16:11 xinming joined
dakkar m: my @a;say @a.HOW.^name 16:12
camelia Perl6::Metamodel::ClassHOW+{<anon>}
dakkar ah, there it is 16:13
m: my @a;say @a.WHAT
camelia (Array)
dakkar that is the (stringifiacation of) the type objecgt 16:14
(it's been too long since I played with raku…)
holyghost thanks 16:15
16:22 guifa` joined 16:42 dakkar left 16:45 AlexDani` is now known as AlexDaniel, AlexDaniel left, AlexDaniel joined
leont lizmat: small correction on the weekly: I wrote the RFC22 article (JJ posted it as I didn't have the right wordpress credentials and this was easier) 16:45
lizmat aaaah... will fix 16:46
fixed 16:47
leont++ # excellent article
leont :-)
16:49 mowcat joined 16:52 sena_kun joined 16:53 Altai-man left 17:02 finanalyst joined 17:12 guifa` left
codesections weekly: bsdimp.blogspot.com/2020/08/a-35-ye...nd-in.html 17:28
notable6 codesections, Noted! (weekly)
codesections (not directly Raku related, but about Larry's Patch and dealing with code that's been there since the beginning) 17:30
(also, I didn't get a chance to say it earlier, but thanks for the Weekly again this week lizmat++)
18:02 mowcat left 18:21 Sauvin left 18:29 stoned75 left 18:31 MilkmanDan left 18:36 stoned75 joined 18:47 JRaspass joined 18:53 Black_Ribbon joined
codesections When enforcing some invariant in a POST block, is it considered more idiomatic to throw an exception when the invariant is violated, or to return False? 19:19
[Coke] ... or Failure? 19:22
codesections Yeah, or Failure. Is that your preference?
It looks like Roast returns a Bool, for what that's worth: github.com/Raku/roast/blob/master/....t#L65-L67 19:23
[Coke] no preference, just mentioning the option 19:29
19:31 skids left 19:44 vrurg left 19:45 vrurg joined 19:54 guifa` joined 19:56 stoned75 left 20:33 codesections left 20:43 codesections joined 20:46 codesections left 20:50 codesections joined 20:51 Altai-man joined 20:53 sena_kun left 21:03 melezhik joined 21:11 MilkmanDan joined 21:29 skids joined 21:42 bigdata joined, melezhik left 22:00 bigdata left
Geth advent: 1f6c45beb7 | Altai-man++ | 20th/articles/rfc28.md
Minor tweaks
advent: 630399793c | Altai-man++ | 20th/articles/rfc84.md
Add RFC 84 article
22:15 rindolf left 22:29 mowcat joined 22:37 gordonfish joined 22:46 guifa` left 22:47 melezhik joined
melezhik .tell tony-o - here the list of aws related sparrow plugins, including the ones to work with lambdas - rakudist.raku.org/hub/search?q=aws 22:48
tellable6 melezhik, I'll pass your message to tony-o
tbrowder jj 22:50
jjmerelo: how often are public-facing doc pages regenerated? do i need to trash my browser cache to see an update? 22:52
tellable6 tbrowder, I'll pass your message to JJMerelo
melezhik .tell tony-o some of aws plugins might now work as they were created for old version of Sparrow written in Perl, but these ones (lambda related) should work - rakudist.raku.org/hub/search?q=function
tellable6 melezhik, I'll pass your message to tony-o