🦋 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. |
|||
timotimo | Xliff: if you can reproduce it, can you try if the typical MVM_ env vars change anything? | 00:18 | |
i may be of more use tomorrow, not any more today :) | 00:19 | ||
Xliff | Fair enough. | 00:22 | |
OK. Before you split, what were those vars again? | |||
timotimo | MVM_SPESH_DISABLE, MVM_JIT_DISABLE, MVM_SPESH_INLINE_DISABLE, all individually | 00:48 | |
why not also SPESH_OSR_DISABLE and SPESH_PEA_DISABLE just for fun | 00:49 | ||
Xliff | Thanks! | 01:03 | |
01:09
klapperl joined
01:10
HoboWithAShotgun left
|
|||
xinming | SmokeMachine: In postgres, There is something like json_column->>'json_key' = 'value' In this case, What is the right ast to generate the json_column->>'json_key'? NOTE, The 'json_key' can not be placeholder, So, It should be passed as literal string. | 01:22 | |
Xliff | xinming: What does the model look like. Can you post an example? | 01:31 | |
01:33
wildtrees left
|
|||
xinming | Xliff: create table test ( id serial, json_column json ); :-) | 01:36 | |
Xliff | That's not the Red def though, is it? | ||
xinming | I have patched version of Red which generates right sql for json | ||
The default Red def doesn't work with postgres jsonb | 01:37 | ||
json* | |||
Xliff | OK, so you need some way to tell Red to generate the json_column, right? | ||
Do you have a fork I can look at? | 01:38 | ||
xinming | I don't have that. | ||
hmm, I created pull request | |||
Xliff: github.com/FCO/Red/pull/404 | |||
Xliff: The json/jsonb one need to be patched. | |||
Xliff: I don't mean to generate the json_column, I need the json op in postgres db. | 01:39 | ||
Let's json, The result sql will be something like, SELECT ... FROM ... WHERE json_column->>'json_key' = 'value'; | |||
Xliff | Yeah, that's probably beyond my current understanding of Red... sorry. | 01:42 | |
xinming: Yeah, you will have to talk to SmokeMachine about that. | 01:51 | ||
It looks like that has to be done by .translate | 01:52 | ||
02:40
pdcawley left,
pdcawley joined
02:41
cpan-raku left
02:43
cpan-raku joined,
cpan-raku left,
cpan-raku joined
02:44
pdcawley left
02:53
rindolf joined
|
|||
rindolf | hi all | 02:53 | |
03:29
colomon_ joined,
colomon left,
colomon_ is now known as colomon
03:42
wtwt5237 joined
|
|||
wtwt5237 | could someone please help me with zef? I installed perl6, and cannot find it under /bin? | 03:43 | |
sorry if I am missing something obvious. | |||
03:44
hythm joined
|
|||
rindolf | wtwt5237: hi | 03:46 | |
wtwt5237: how did you install perl6? | 03:47 | ||
hythm | wtwt5237, I install rakudo with `rakudobrew build moar-blead`, then I nstall zef with 'rakudobrew build zef`, then I find zef in ` /home/hythm/.rakudobrew/versions/moar-blead/install/share/perl6/site/bin/zef ` | 03:48 | |
wtwt5237 | thanks! | 03:49 | |
hythm, let me give that a try. thanks! | 03:50 | ||
hythm | np, I also add rakudobrew bin directory to $PATH as instructed in rakudobrew README.md | 03:51 | |
Xliff | You can do 'rakudobrew mode shims' and not have to worry about $PATH if you have the environment set correctly. | 03:53 | |
hythm | good to know | 03:58 | |
Xliff | :) | 04:00 | |
good night! ;) | |||
04:00
Xliff left
|
|||
hythm | gn | 04:00 | |
wtwt5237, I think you need to switch to moar-blead `rakudobrew switch moar-blead` before installing zef | |||
wtwt5237 | trying these. thanks all! | 04:01 | |
04:08
kurahaupo joined
04:45
wtwt5237 left
05:14
hythm left
06:09
jmerelo joined
|
|||
jmerelo | releasable6: status | 06:09 | |
releasable6 | jmerelo, Next release will happen when it's ready. There are no known blockers. 248 out of 463 commits logged (⚠ 9 warnings) | ||
jmerelo, Details: gist.github.com/bf470eba700c1eb866...ac51539b1b | |||
06:09
sena_kun joined,
jaldhar joined
06:10
jaldhar left,
jaldhar joined
06:12
jaldhar left,
jaldhar_ joined
06:25
jaldhar_ left
06:26
jaldhar_ joined
06:44
xkr47 left
06:49
wamba joined
06:55
jaldhar_ left
06:56
jaldhar_ joined
06:59
jaldhar_ left
07:00
jaldhar_ joined
|
|||
SmokeMachine | xinming: I think it could be something like: `Red::AST::JsonItemStr.new: .json-column, ast-value “json-key”` | 07:09 | |
07:12
stoned75 left
|
|||
SmokeMachine | xinming: but I think it’ll need a specific translation for that ast... that could be something like: `multi method translate(Red::AST::JsonItemStr $_, $context?) { my ($lsql, @l) := do given self.translate: .left, $context { .key, .value }; my ($rsql, @r) := do given self.translate: .right, $context { .key, .value }; “{ $lsql }->>{ $rsql }” => [|@l, |@r] }` | 07:19 | |
And the column’s AT-KEY will need to return a rw container... | 07:24 | ||
And do something like this to be possible to be used on update: github.com/FCO/Red/blob/master/lib...te.pm6#L16 | 07:26 | ||
xinming: ^^ | |||
xinming: I think we’ll need to change the update a little... the key expect to be a column name, but should be an AST... | 07:29 | ||
07:29
Altai-man_ joined
07:32
sena_kun left
07:34
mid_home left
07:35
jmerelo left
07:38
xkr47 joined
|
|||
SmokeMachine | xinming: here: github.com/FCO/Red/blob/master/lib...eq.pm6#L70 | 07:38 | |
xinming: github.com/FCO/Red/blob/master/lib...ate.pm6#L8 | 07:40 | ||
07:41
linfir joined
|
|||
SmokeMachine | xinming: and here: github.com/FCO/Red/blob/master/lib...L.pm6#L651 | 07:42 | |
07:44
Altai-man_ left
07:50
wbn joined
07:54
sena_kun joined
07:59
linfir left
08:01
wamba left
|
|||
ZzZombo | m: 'asd' ~~ /<ident>/ | 08:03 | |
camelia | ( no output ) | ||
08:10
kurahaupo left
08:11
kurahaupo joined
08:19
sena_kun left
08:27
kensanata joined
08:28
pdcawley joined
08:32
pdcawley left
08:51
wamba joined
|
|||
ZzZombo | m: say 'asd' ~~ /<ident>/ | 08:53 | |
camelia | 「asd」 ident => 「asd」 |
||
ZzZombo | "<ident>Identifier. Also a default rule." -- what does it mean? | 08:55 | |
08:56
wamba left
09:06
wamba joined
09:13
daxim left
09:16
mid_laptop joined,
daxim joined
09:21
wamba1 joined
09:22
wamba left
09:30
ufobat joined
09:36
wamba1 left
09:39
wamba joined
|
|||
ZzZombo | m: my $a = 'asd'; say 'asd' ~~ /<.$a>/ | 10:09 | |
camelia | 「asd」 | ||
ZzZombo | m: my $a = 'asd'; say 'asd' ~~ /<$a>/ | 10:10 | |
camelia | 「asd」 | ||
ZzZombo | huh, this works. | ||
m: my $a = 'asd'; say 'asd' ~~ /{$a}/ | |||
camelia | 「」 | ||
10:20
wamba left
10:22
abraxxa joined
|
|||
abraxxa | I'm trying to write a grammar for FireHol firewall rule definitions and might found a parser bug | 10:22 | |
10:23
Wahnberger joined
|
|||
Wahnberger | Hi there: is the an elegant way to get the last part of a string, splitted by an given seperator? | 10:23 | |
10:23
wamba joined
|
|||
Wahnberger | something like: my $foo = $d.Str.split( / \\ / ).last; | 10:23 | |
abraxxa | paste.scsys.co.uk/587097 | 10:24 | |
the commented token was my first try that doesn't work | |||
10:35
sena_kun joined,
wamba left
10:52
wamba joined
10:54
mid_laptop left
10:55
wamba left
11:02
wamba joined
11:05
daxim left
11:10
daxim joined
11:29
Altai-man_ joined
11:32
sena_kun left
|
|||
Juerd | Wahnberger: If you use 'tail' instead of 'last', that should work :) | 11:36 | |
lizmat | also, if you want the last N, you can do .tail(N) | 11:37 | |
Wahnberger | ahh :) | 11:39 | |
11:47
jaldhar_ left
11:48
jaldhar_ joined
11:49
jaldhar_ left
|
|||
lizmat | conversely, if you only want the first, you can do .head | 11:50 | |
11:50
jaldhar_ joined
|
|||
lizmat | and .head(N) for the first N | 11:50 | |
also, if you want a certain number of elements: | 11:51 | ||
you can just treat the result of split as an array | 11:52 | ||
m: dd "123456789".comb[5,0,7] | |||
camelia | ("6", "1", "8") | ||
11:53
jaldhar_ left
11:54
jaldhar_ joined
|
|||
Wahnberger | is head inside similar to a perl split like (split(/ bla /))[1] ? | 11:54 | |
and tail | |||
slice..in perl | 11:55 | ||
11:55
jaldhar_ left
11:56
jaldhar_ joined
|
|||
lizmat | head / tail are methods on Seq uences | 11:56 | |
many method produce them | |||
*methods | |||
$filename.IO.lines is one of them | |||
$filename.IO.lines.head(3) | |||
will give you the first 3 lines of the file indicated by $filename | 11:57 | ||
Wahnberger | i see | ||
lizmat | so nothing specific about split | ||
it's just a method that produces a Seq | |||
Wahnberger | saved 3 lines of code now :D | 11:58 | |
11:58
mid_laptop joined
12:03
jaldhar_ left
12:04
jaldhar_ joined
12:05
jaldhar_ left
12:06
jaldhar_ joined
12:07
jaldhar_ left
12:08
jaldhar_ joined
|
|||
jjatria | How can you get a key / value slice from a Hash? I'm thinking of something like `%foo{qw( a b c )}` in Perl | 12:25 | |
Altai-man_ | can you provide an example of input/output? | ||
jjatria | Sure, one second | 12:26 | |
Altai-man_ | m: my %foo = a => 42, b => 50; say $_ => %foo{$_} given 'a'; | ||
camelia | a => 42 | ||
Altai-man_ | or, hmm, do you want slicing? | ||
jjatria | Well, I'm after what in Perl is called a slice, but not just for keys _or_ values, but for both | 12:27 | |
Altai-man_ | m: my %a = a => 32, b => 50; say %a<a b>; | ||
camelia | (32 50) | ||
jjatria | So, closer to what you posted first | ||
Altai-man_ | ah, ok | ||
jnthn | m: m: my %a = a => 32, b => 50; say %a<a b>:kv; | ||
camelia | (a 32 b 50) | ||
jnthn | m: m: my %a = a => 32, b => 50; say %a<a b>:p; | ||
camelia | (a => 32 b => 50) | ||
jnthn | Depending on whether you want a flat view of Pair objects | ||
*or Pair objects | |||
jjatria | Oh, perfect. Thanks! | 12:28 | |
ZzZombo | m: say '/etc/passwd'.IO.slurp | 12:36 | |
camelia | bin:x:1:1:bin:/bin:/bin/bash daemon:x:2:2:Daemon:/sbin:/bin/bash ftp:x:40:49:FTP account:/srv/ftp:/bin/bash games:x:12:100:Games account:/var/games:/bin/bash lp:x:4:7:Printing daemon:/var/spool/lpd:/bin/bash mail:x:8:12:Mailer daemon:/var/sp… |
||
12:38
mid_laptop left
|
|||
ZzZombo | m: say '/etc/shadow'.IO.slurp | 12:39 | |
camelia | Failed to open file /etc/shadow: Permission denied in block <unit> at <tmp> line 1 |
||
12:43
lucasb joined
12:45
wamba left,
jaldhar_ left
12:46
jaldhar_ joined
13:04
mid_laptop joined
13:09
daxim left
|
|||
lizmat | *phew* :-) | 13:11 | |
13:16
daxim joined
13:26
lizmat_ joined
13:27
jaldhar_ left
13:28
jaldhar_ joined
13:30
jaldhar_ left,
jaldhar_ joined,
lizmat left
|
|||
Wahnberger | how can i get the http status code from a Cro Get? I thought something like that would work but doesnt: my $head = await $resp.head; (works) and then say $head{"status"}; (wont work)? | 13:30 | |
13:30
sena_kun joined
|
|||
Wahnberger | it says "Type Cro::HTTP::Response does not support associative indexing." | 13:30 | |
13:32
Altai-man_ left
|
|||
lizmat_ | $head.status ? | 13:32 | |
13:33
lizmat_ is now known as lizmat
|
|||
Wahnberger | args :/ | 13:33 | |
13:34
mid_laptop left
|
|||
timotimo | o/ | 13:35 | |
ZzZombo | m: :our $a = 'a' | 13:37 | |
camelia | 5===SORRY!5=== Error while compiling <tmp> Two terms in a row at <tmp>:1 ------> 3:our7⏏5 $a = 'a' expecting any of: infix infix stopper statement end statement modifier statement… |
||
ZzZombo | m: sub a { :our $a = 'a' } | ||
camelia | 5===SORRY!5=== Error while compiling <tmp> Two terms in a row at <tmp>:1 ------> 3sub a { :our7⏏5 $a = 'a' } expecting any of: infix infix stopper statement end statement modifier … |
||
ZzZombo | m: token a { :our $a = 'a' } | 13:38 | |
camelia | Potential difficulties: Useless declaration of a has-scoped method in mainline (did you mean 'my token a'?) at <tmp>:1 ------> 3token 7⏏5a { :our $a = 'a' } |
||
ZzZombo | m: my token a { :our $a = 'a' } | ||
camelia | ( no output ) | ||
ZzZombo | m: :our | 13:50 | |
camelia | WARNINGS for <tmp>: Useless use of ":our" in sink context (line 1) |
||
ZzZombo | m: :our.say | 13:51 | |
camelia | our => True | ||
[Coke] | m: given .WHAT for {} # but there IS a block. | 13:52 | |
camelia | 5===SORRY!5=== Error while compiling <tmp> Missing block at <tmp>:1 ------> 3given .WHAT for 7⏏5{} # but there IS a block. |
||
13:57
wamba joined
|
|||
Wahnberger | is there a way to split a multiline output which i get from a qqx{} shell command into an array? | 13:57 | |
13:57
jaldhar_ left
13:58
jaldhar_ joined
|
|||
[Coke] | .lines ? | 13:58 | |
m: "hi\nthere\nfriend".lines.say | |||
camelia | (hi there friend) | ||
[Coke] | m: dd "hi\nthere\nfriend".lines | 13:59 | |
camelia | ("hi", "there", "friend").Seq | ||
14:00
mid_laptop joined
|
|||
Wahnberger | :) | 14:00 | |
..hard to learn and then easy to use.. | |||
14:13
jaldhar_ left
14:14
jaldhar_ joined
|
|||
lizmat | Wahnberger: well, once you realize you can use .lines on IO objects as well as strings, as well as on supplies | 14:18 | |
and know there is a .words method as well | |||
you should expect to be able to use .words the same way everywhere as well | |||
AlexDaniel | uuuuhhhhhhhh | 14:20 | |
timotimo | heyo AD | 14:21 | |
AlexDaniel | processing output from tools can be a bit more difficult | ||
abraxxa | how can i match any word but not 'custom' in a grammar? | ||
AlexDaniel | I don't even remember what's the right way to do it, is it .split(“\n”) ? | ||
timotimo | <!before "custom">\w+ | ||
AlexDaniel | it's definitely not .lines | 14:22 | |
abraxxa | i've read about lookahead assertion but that doesn't help as I don't want to match something based on what is before or after it | ||
AlexDaniel | or is it .lines if you run it on .IO but not strings? | ||
timotimo | what you want is to reject matching a thing if it was a thing | ||
which is equivalent to matching something and then refusing the match when at its end there's a thing you don't like in front of the match position | |||
AlexDaniel | lizmat: and that's the thing, you can realize it, of course, but it does different things, if I'm not mistaken | ||
abraxxa | timotimo: hm...hard to grasp but it seems to work, thanks! | 14:23 | |
AlexDaniel | like | ||
m: say “foo\rbar”.lines[0] | |||
camelia | foo | ||
AlexDaniel | I think it doesn't do that on IO stuff, but I'm not sure | 14:24 | |
timotimo | splitting by /\n/ will do "smart" newline stuff | ||
splitting by /\x[a]/ (or whatever the ascii code for newline is) will only accept the actual \n character | 14:25 | ||
lizmat | right | ||
afaik :-) | |||
AlexDaniel | what do you mean right | ||
abraxxa | is there a way to define the same regex for multiple different named tokens or rules? | 14:26 | |
i've defined a quoted-string token which i use in some other named tokens but don't want it to show up in the match object | |||
as it's just a helper token | |||
lizmat | define it as a regex, and use that ? | ||
AlexDaniel | m: dd “foo\r\nbar”.split(/\x[A]/) | 14:27 | |
camelia | ("foo\r\nbar",).Seq | ||
AlexDaniel | so clearly that didn't split by \n | ||
timotimo, lizmat: this is something we actually have to fix in the language, somehow | 14:29 | ||
timotimo | \r\n is not \n | ||
just like ä isn't a | |||
blame the unicode consortium | |||
14:29
jaldhar_ left
|
|||
timotimo | all we can do is document better or unconfuse in some other way | 14:30 | |
14:30
jaldhar_ joined
|
|||
AlexDaniel | what does unicode consortium has to do with processing output from qqx | 14:32 | |
we have to actually make it possible, not document the excuses | |||
maybe it's already possible, I don't remember | 14:33 | ||
14:35
jaldhar_ left
14:36
jaldhar_ joined
|
|||
lizmat | it's the unicode consortium, afaik, who decided that \r\n is a single codepoint | 14:37 | |
14:37
abraxxa left
|
|||
lizmat | different from \r and \n | 14:37 | |
AlexDaniel | lizmat: it has nothing to do with how you process output from unix commands | 14:38 | |
14:38
daxim left
|
|||
AlexDaniel | in which case the output is separated with \n, that's it | 14:38 | |
[Coke] wonders why "it's definitely not lines" | 14:41 | ||
AlexDaniel | [Coke]: well, it depends. What are you processing? Is it purely text, or some \n-separated output? The latter is very common | 14:42 | |
[Coke]: looking at docs.raku.org/type/Proc::Async | |||
“whenever $proc.stdout.lines { # split input on \r\n, \n, and \r” | |||
El_Che | lo | ||
AlexDaniel | pretty sure I wrote that comment | ||
because it drives me crazy :) | 14:43 | ||
14:43
daxim joined,
jaldhar_ left
14:44
jaldhar_ joined
|
|||
AlexDaniel | actually, makes me wonder if that's what it actually does | 14:44 | |
maybe the comment is wrong | 14:45 | ||
no, the comment is right :) | 14:47 | ||
jnthn | Probably Blob wants to have a `.split` | ||
[Coke] | even though .lines splits on more than just \n, if you're not expecting random \r characters, why not use it? | ||
timotimo | \r\n being a grapheme gives a little bit of friction with old-timey tools | ||
14:47
jaldhar_ left
|
|||
jnthn | I suspect for every time there are \r's that are undesirably eaten by .lines, there's thousands more times where the result of using .lines is that one's code is portable if run on Windows. | 14:48 | |
14:48
jaldhar_ joined
|
|||
[Coke] | jnthn++, right. | 14:48 | |
timotimo | don't forget you can use :v to get the thing back that was split on | ||
AlexDaniel | … absolutely wrong | ||
timotimo | with split, but not with lines | ||
if you .lines on an IO with :!chomp, do the line endings stay with the line strings? i would expect them to. | |||
jnthn | Probably, yes. | 14:49 | |
AlexDaniel | you guys go try to process output of something, then struggle once you get \r, then say this nonsense | ||
timotimo | unix tools don't output text, they output "text" :P | 14:50 | |
AlexDaniel | when you're processing output of some tool, you're typically expecting the line to be in some format | ||
once you get \r in there, it splits the line in half | |||
timotimo | i wonder if changing the .in-nl on Proc::Async's pipes by default is more wtf than dwim | 14:51 | |
and maybe \r\n and \n is a saner selection than \r \r\n and \n | 14:52 | ||
AlexDaniel | it's not… | ||
14:52
abraxxa joined
|
|||
AlexDaniel | but we should only have two sets of options, that's right | 14:52 | |
jnthn | No, the sane thing to do is to work at byte level if you're actually processing output that should be treated as an octet stream | ||
And we should make that easier | 14:53 | ||
14:53
abraxxa left
|
|||
timotimo | unix: text is the ultimate exchange format | 14:53 | |
unicode consortium: hold my beer | |||
jnthn | :) | ||
timotimo | but yes, 100% on Blob.split | ||
14:54
abraxxa joined
14:55
abraxxa left
15:08
abraxxa joined
15:09
abraxxa left
15:23
jaldhar_ left
15:24
jaldhar_ joined
15:29
Altai-man_ joined
15:32
sena_kun left
15:35
jaldhar_ left
15:36
jaldhar_ joined
15:37
ggoebel joined,
jaldhar_ left
15:38
jaldhar_ joined,
rindolf left
15:55
jaldhar_ left
15:56
jaldhar_ joined
16:07
jaldhar_ left
16:08
jaldhar_ joined
16:27
jaldhar_ left
16:28
jaldhar_ joined
|
|||
lizmat | m: for ^1000000 { my %h = a => 42, b => 666 }; say now - INIT now | 16:30 | |
camelia | 2.11986731 | ||
lizmat | m: class A { has $.a; has $.b }; for ^1000000 { my $obj = A.new(a => 42, b => 666) }; say now - INIT now | 16:31 | |
camelia | 0.4957836 | ||
lizmat | morale: don't use hashes as fake objects in Raku, it's 4x as slow as using classes / objects | ||
16:35
wamba left
|
|||
[Coke] | lizmat: nice. | 16:36 | |
lizmat | same goes for accessors: | 16:37 | |
m: my %h = a => 42, b => 666; for ^10000000 { my $a = %h<a> }; say now - INIT now | |||
camelia | 0.72105429 | ||
lizmat | m: class A { has $.a; has $.b }; my $obj = A.new(a => 42, b => 666); for ^10000000 { my $a = $obj.a }; say now - INIT now | ||
camelia | 0.5161566 | ||
lizmat | feels like material for a blog post | 16:40 | |
perhaps an advent post ? | |||
AlexDaniel | lizmat: damn | 16:47 | |
AlexDaniel rewrites a bunch of code | |||
:D | |||
I wonder… | |||
6c: class A { has $.a; has $.b }; for ^1000000 { my $obj = A.new(a => 42, b => 666) }; say now - INIT now | 16:48 | ||
Geth | doc: bafa925464 | finanalyst++ | doc/Language/compilation.pod6 new compilation tutorial |
16:49 | |
committable6 | AlexDaniel, gist.github.com/b68f2aa208fd71f31f...dce2a5a6ab | 16:51 | |
AlexDaniel | 6c: for ^1000000 { my %h = a => 42, b => 666 }; say now - INIT now | ||
timotimo | once hashes that don't escape are translated to sets of registers, creating hashes and not using them will be ridiculously fast, and this benchmark if used exactly as shown will become very misleading | 16:52 | |
16:53
finanalyst joined
|
|||
brass | lizmat: that seems like it would be a good blog post, it's good to know | 16:53 | |
16:54
joule joined
|
|||
[Coke] | yah, any optimizations that go into NQP to make things faster need to be revisted as other things are made faster, neh? | 16:54 | |
finanalyst | hi all, an apology. I just drafted a new tutorial for the docs on compilation based on a talk by niner. But by mistake I commited it rather than posting as a PR | 16:55 | |
brass | Is there a doc that explains what nqp does and how it fits in with rakudo and moarvm? | ||
committable6 | AlexDaniel, gist.github.com/e45da1c5e2f3387f44...32efc186bc | ||
timotimo | no problem, git makes it easy to revert stuff | 16:56 | |
brass | I want to learn more about how they all fit together | ||
finanalyst | timotimo: I don't quite know how to revert it from the main repo | ||
timotimo | it's just the one commit, right? | ||
finanalyst | yse | ||
yes | |||
last one | |||
timotimo | in that case just "git revert master" will do it | ||
lizmat | finanalyst: but you didn't push yet, right ? | 16:57 | |
finanalyst | github.com/perl6/doc/commit/bafa92...0c87b62c0a | ||
timotimo | i see the commit notification up there | ||
lizmat | ah, ok, you did push | ||
finanalyst | lizmat: yep. it was a mistake. I thought I was push ing to my forked repo | ||
16:58
jaldhar_ left,
jaldhar_ joined
16:59
jaldhar_ left
|
|||
finanalyst | would someone please tell me how to reverse my commit? | 17:00 | |
17:00
jaldhar_ joined
|
|||
Grinnz | git-revert, as timotimo said | 17:00 | |
it will create a new commit reversing the commit (you can't change history you've pushed) | 17:01 | ||
Geth | doc: eb0c073de5 | finanalyst++ | doc/Language/compilation.pod6 Revert "new compilation tutorial" This reverts commit bafa9254643d3dca86e8bed2bc58ab0c87b62c0a. |
17:02 | |
finanalyst | OK done. I'll make a PR now. | 17:03 | |
17:04
mid_laptop left
|
|||
Grinnz | now is a good time to do it on a branch instead of master, too ;) | 17:04 | |
17:09
wamba joined
17:13
jaldhar_ left
17:14
jaldhar_ joined
|
|||
Geth | doc: finanalyst++ created pull request #3082: new compilation tutorial |
17:16 | |
17:27
jaldhar_ left
17:28
jaldhar_ joined
17:30
sena_kun joined
17:32
Altai-man_ left
17:39
finanalyst left
17:43
jaldhar_ left
17:44
jaldhar_ joined
17:47
jaldhar_ left
17:48
jaldhar_ joined
17:51
kensanata left
17:59
jaldhar_ left
18:00
jaldhar_ joined
18:03
jaldhar_ left
18:04
jaldhar_ joined
18:07
chloekek joined
18:21
mid_home joined
18:25
cpan-raku left
18:26
cpan-raku joined,
cpan-raku left,
cpan-raku joined
18:29
jaldhar_ left
18:30
jaldhar_ joined
18:35
wamba left
18:36
wamba joined
18:56
ufobat left
19:11
Xliff joined
|
|||
Xliff | o/ | 19:11 | |
timotimo: On github.com/Xliff/p6-GtkPlus/issues/40 | |||
19:11
jaldhar_ left
|
|||
Xliff | timotimo: Setting MVM_SPESH_DISABLE=1 fixes the issue | 19:12 | |
19:12
jaldhar_ joined
|
|||
Xliff | timotimo: Setting MVM_SPESH_DISABLE=1 fixes the issue | 19:13 | |
oops | |||
MVM_SPESH_INLINE_DISABLE also works | |||
SPESH_OSR_DISABLE and SPESH_PEA_DISABLE have no effect. | 19:15 | ||
Thanks! | |||
19:15
jaldhar_ left
19:16
jaldhar_ joined
19:17
mla joined
19:18
jaldhar_ left,
jaldhar_ joined
|
|||
timotimo | can you check if setting MVM_SPESH_NODELAY makes the problem appear much quicker? | 19:19 | |
Xliff | Setting MVM_SPESH_NODELAY also eliminates the issue | 19:22 | |
timotimo | hm. interesting | 19:26 | |
19:27
lichtkind left,
jaldhar_ left
19:28
jaldhar_ joined
19:29
jaldhar_ left,
Altai-man_ joined
19:30
jaldhar_ joined
19:32
sena_kun left
|
|||
timotimo | do we have something nice for "give me an array shallow-cloned from this other array, except index X should have object A in it? | 19:35 | |
javascript has the wordy-but-working Object.assign({}, [...arr], {[X]: A}) | 19:36 | ||
i'd like something that can also work with something immutable | |||
19:37
Xliff left
19:42
jaldhar_ left,
jaldhar_ joined
19:45
jaldhar_ left
19:46
jaldhar_ joined
19:49
jaldhar_ left
19:50
jaldhar_ joined,
daxim left
19:52
wildtrees joined
|
|||
Kaiepi | m: sub clone-with-replacement-at(@arr, Int:D $idx, Mu $obj is raw) { @arr.WHAT.new: |@arr[0..$idx-1].clone, $obj, |@arr[$idx+1..*].clone }; say clone-with-replacement-at [1,2,3,4,5], 2, 42 | 19:53 | |
camelia | [1 2 42 4 5] | ||
Kaiepi | something like this timotimo ? | ||
19:55
daxim joined
|
|||
wildtrees | what does that : | notation do? | 19:55 | |
19:57
patrickb joined,
jaldhar_ left
|
|||
Kaiepi | | makes a Slip out of the array given, : does a method call in this case | 19:58 | |
m: sub clone-with-replacement-at(@arr, Int:D $idx, Mu $obj is raw) { @arr.WHAT.new: |@arr[0..$idx-1].clone, $obj, |@arr[$idx+1..*].clone }; say clone-with-replacement-at((1,2,3,4,5), 2, 42).^name | |||
camelia | List | ||
19:58
jaldhar_ joined
|
|||
timotimo | i was hoping for something shorter, not longer :D | 19:58 | |
Kaiepi | hm | 19:59 | |
timotimo | not that big a deal | 20:01 | |
though the javascript version of that code also allows an arbitrary amount of replacements at once | |||
jnthn | I'm pretty sure the .clone ain't needed there | ||
If you're slicing then you're already getting a List back | 20:02 | ||
timotimo | right | ||
jnthn | Also, 0..^$idx instead of -1, and $idx^..* on the other side :) | ||
Also, no need for .WHAT.new, just .new | 20:03 | ||
timotimo | and probably head($n) and tail(* - $n) maybe | ||
jnthn | That's at lesat some saving :) | ||
20:03
jaldhar_ left
20:04
jaldhar_ joined
20:05
jaldhar_ left
20:06
jaldhar_ joined
20:08
jaldhar_ left,
jaldhar_ joined
|
|||
patrickb | o/ | 20:08 | |
tellable6 | 2019-11-07T08:40:24Z #raku-dev <El_Che> patrickb: thank you for your work. I think we are in the same page. I was also thinking on building on CentOS 6 | ||
2019-11-07T08:41:45Z #raku-dev <El_Che> patrickb: we need to add macos instructions once we try that out | |||
patrickb | El_Che: I hope we'll manage to make the upcoming release the first that also offers precompiled archives. | 20:10 | |
El_Che | Good plan. I would like to add relocatble .tar.gz to rakudo-pkg, maybe have a look at mac and win as well. Depending on time | 20:15 | |
patrickb | What's still to be decided is how we promote those precompiled releases on the website. | 20:17 | |
El_Che | patrickb: I think there is a use case for precompiled packages (certainly if in a repo) and precompiled tar.gz | 20:20 | |
patrickb | I'd guess we somehow need to put that on rakudo.org/files. Ugh, some more opitions are listed on raku.org/downloads (including your rakudo-pkg packages). Those pages really need some tidying and streamlinification. | ||
El_Che | yes, they are ajungle | ||
patrickb | Step 1. - Find out who is to decide on how the website can change. | 20:22 | |
Step 2. - Find someone with a website affinity. | |||
El_Che | we're also in a situation where more distributions have rakudo | ||
patrickb | I think the raku.org download page needs to go. It should just link to rakudo.org and have a sentence or two about potential alternative implementations. | 20:24 | |
El_Che | Download should be in one page, in my view yes. And as long there aren't competing compilers, there is no need to complicate things | 20:25 | |
20:26
daxim left
|
|||
patrickb | Also when we have multiple compilers it's clearer when the different implementations have their own download page on their own domains. raku.org is not about implementations. | 20:27 | |
And then I'd remove the words "official" and "3rd party" from the download page. Just offer downloads and don't classify them. | 20:28 | ||
20:31
daxim joined
|
|||
patrickb | is the rakudo.org repository seriously placed in the perl6 org?!? github.com/perl6/rakudo.org | 20:31 | |
timotimo | well, for anything in the rakudo org you need a CLA i believe? | 20:33 | |
if you want a commit bit | |||
20:33
jaldhar_ left
20:34
jaldhar_ joined
20:41
dumarchie joined
|
|||
dumarchie | Hi, can anyone tell me how to re-export an enum? | 20:41 | |
I would expect it to be a common use case for a role to export an enum and for a class implementing the role to re-export the enum. | 20:44 | ||
timotimo | you'd do it the same way you re-export anything else, i believe | 20:45 | |
our TheEnum is export = OtherPackage::TheEnum perhaps? i'ven't done this yet | 20:46 | ||
AlexDaniel | patrickb: regarding step 1, you decide. If you feel that others may object, then you submit it as a PR to the problem-solving repo | 20:47 | |
timotimo: you don't need to sign CLA for rakudo.org changes | |||
dumarchie | I tried sub EXPORT, the enum symbol is exported but the enumerated values are not. | 20:48 | |
timotimo | yes because it's in the perl6 org on github :) | ||
AlexDaniel | yep | ||
timotimo | ah, i see | ||
it's probably not enough to simply "import TheEnum;" in the class body | |||
rba | patrickb: I think too we need to make it more simple for the people to fine the releases. | 20:49 | |
timotimo | actually, i think you can't put an "our" scoped thing into a role? | ||
AlexDaniel | timotimo: ah, I misread the conversation, that's exactly what you said :) | ||
AlexDaniel runs away | |||
timotimo | no you will stay here and atone for your sins | ||
just one tone will be enough | |||
rba | patrickb: And we need to just offer all the options, src, pkgs and star vx. plain rakudo. | ||
patrickb | rba: Just what I think. | ||
AlexDaniel screams in F sharp | 20:50 | ||
rba | AlexDaniel: I had to sign a CLA, but I don't have access to rakudo org in github... Hmmm.... | ||
patrickb | I suspect just flying under the radar and doing the changes to the websites directly will be a lot less hassle than going through problem-solving... | ||
AlexDaniel | .oO( youtu.be/5Ju8Wxmrk3s?t=56 ) |
||
[Coke]: can you confirm that rba signed a CLA? | 20:51 | ||
rba | patrickb: If you like you create a PR and I setup a separate hosting based on the PR, then we can fiddle arround till we feel fine and repleace the prod ones... | ||
El_Che | CLA sounds so ORacle :) | ||
patrickb | rba: I like that idea | 20:52 | |
AlexDaniel | patrickb: that's right, and you can always do it later if people start complaining :) | ||
dumarchie | "import TheEnum;" in the class body does not work indeed | ||
patrickb | I'll try to put something together. | ||
rba: On a different topic. Can you imagine making that MacOS of yours somehow available for testing and release work for raku devs? | 20:53 | ||
rba | patrickb: You mean ssh access? | 20:54 | |
patrickb: On the mac? | |||
patrickb | ssh would be the obvious choice, yes. | ||
rba: It was you talking about a MacOS mini catching dust, was it? | 20:55 | ||
rba | patrickb: As the idea came up with running Blin on it as well and now ssh access, I have to extend my DMZ first. But yes why not. Just don't use all my bandwith... :-) | ||
El_Che | patrickb: travis has mac builds, looking at it for creating pkgs | ||
rba | patrickb: Yes. I wanted to have a look at the macmini this weekend. | 20:56 | |
patrickb | El_Che: That'd be a nice solution. | ||
rba crosses fingers to have time. | |||
AlexDaniel | rba: not sure if you've seen my answer: colabti.org/irclogger/irclogger_lo...11-07#l183 | ||
ah, a bit earlier even: colabti.org/irclogger/irclogger_lo...11-07#l165 | 20:57 | ||
rba | Realised github actions could start own runners, then I started thinking... | ||
patrickb | rba: No hurries. | ||
rba | AlexDaniel: Need to check, but thought that mac is 64 bit. | 20:58 | |
AlexDaniel | rba: sure, but it doesn't mean you'll be able to run linux binaries there | ||
rba | AlexDaniel: ack | 20:59 |