Perl 6 language and compiler development | Logs at colabti.org/irclogger/irclogger_log/perl6-dev | For toolchain/installation stuff see #perl6-toolchain | For MoarVM see #moarvm
Set by Zoffix on 27 July 2018.
00:29 ufobat left 01:08 fake_space_whale joined, p6bannerbot sets mode: +v fake_space_whale 01:24 percY-Fj joined 01:27 percY-Fj left 01:31 ZzZombo left 02:09 ZzZombo joined, p6bannerbot sets mode: +v ZzZombo 02:30 lizmat left 02:55 lizmat joined, p6bannerbot sets mode: +v lizmat 03:00 lizmat left 03:03 seven-elevenjt joined 03:05 seven-elevenjt left 03:26 ultrasparcwz joined 03:27 p6bannerbot sets mode: +v ultrasparcwz, Guest64244 joined 03:32 ultrasparcwz left 03:34 Guest64244 left 03:40 fjmorazanMT joined 03:41 p6bannerbot sets mode: +v fjmorazanMT 03:43 fjmorazanMT left 04:11 ZzZombo_ joined, p6bannerbot sets mode: +v ZzZombo_ 04:14 ZzZombo left, ZzZombo_ is now known as ZzZombo 04:34 robertle left 05:17 ufobat joined, p6bannerbot sets mode: +v ufobat 05:45 fake_space_whale left 05:51 bokchoyiB joined 05:52 p6bannerbot sets mode: +v bokchoyiB
samcv [Tux]: curious what the performance of DBD::CSV is? and if you do any caching of indexs? 05:53
05:55 bokchoyiB left
nine
.oO(The caller's language is the callsite's language - is eminently speshable)
06:10
06:25 codenixeM joined, p6bannerbot sets mode: +v codenixeM
[Tux] samcv, DBD::CSV is (for now) only implemented in perl5. I never really checked performance against other database drivers 06:26
samcv yeah i know it's perl 5 only. but was just curious
[Tux] as DBD::CSV takes all CSV in memory, I guess it also depends on how many tables/files you have and how many records each file has 06:27
samcv to be honest i just had the thought about if any database drivers were made with CSV as a backend and was gonna ask you. then i googled it and saw you wrote one :)
ah, it's fully in memory?
and you write it out at the end? it doesn't write to disk with each write? 06:28
[Tux] it might, but I don't think DBD::CSV is very useful for using it to update CSV's, it is way more useful to see a set of CSV's as a database
06:29 codenixeM left
samcv ah i understand 06:30
[Tux] tux:/tmp 510 > wc -l xx.csv
200001 xx.csv
tux:/tmp 511 > time qscsv c f xx
SCHEMA: merijn, TABLE: xx
[.]
select count (*)
from xx
count
------
200000
3.701u 0.059s 0:03.77 99.4% 0+0k 56+0io 1pf+0w
samcv also curious if you've had a chance to use utf16 support at all 06:31
[Tux] not yet. swamped in $work
samcv ok np
06:44 robertle joined 06:45 p6bannerbot sets mode: +v robertle 07:31 lizmat joined, p6bannerbot sets mode: +v lizmat
lizmat Files=1255, Tests=75814, 338 wallclock secs (15.38 usr 5.23 sys + 2363.73 cusr 253.03 csys = 2637.37 CPU) 07:31
Geth rakudo: ccworld1000++ created pull request #2341:
Perl6-architecture
07:32
|Tux| Rakudo version 2018.09-72-g687a3cbb0 - MoarVM version 2018.09-123-g0191bd9cf
csv-ip5xs0.932 - 0.935
csv-ip5xs-207.314 - 7.382
csv-parser21.034 - 21.686
csv-test-xs-200.422 - 0.434
test8.011 - 8.054
test-t1.712 - 1.733
test-t --race0.793 - 0.814
test-t-2029.201 - 30.080
test-t-20 --race11.072 - 11.205
08:11
lizmat m: my constant $a = INIT now; dd $a # perhaps this should warn / explode ? 08:29
camelia Mu
08:29 Ven` joined 08:30 p6bannerbot sets mode: +v Ven`
nine Interesting read: nadiaeghbal.com/user-support 08:57
08:58 aklSj joined, p6bannerbot sets mode: +v aklSj 09:02 aklSj left 09:07 L joined, p6bannerbot sets mode: +v L, L left 09:08 lance_w[m] joined, p6bannerbot sets mode: +v lance_w[m], lance_w[m] left 09:09 MotigYy joined 09:10 p6bannerbot sets mode: +v MotigYy 09:13 MotigYy left 09:56 ZzZombo left 10:21 scovit joined 10:22 p6bannerbot sets mode: +v scovit 10:24 ExtraCrispy joined, p6bannerbot sets mode: +v ExtraCrispy 10:30 brrt joined 10:31 p6bannerbot sets mode: +v brrt
lizmat www.reddit.com/r/perl6/comments/9l...for_perl6/ # maybe up timotimo's alley ? 10:43
brrt brrt-to-the-future.blogspot.com/201...fork2.html 10:44
lizmat already reddited, hackernews and weekly'd that :-) 10:49
10:58 ZzZombo joined, p6bannerbot sets mode: +v ZzZombo
brrt really? :-) 11:20
11:27 ExtraCrispy left 11:28 ExtraCrispy joined, p6bannerbot sets mode: +v ExtraCrispy 11:31 ExtraCrispy left 11:40 ExtraCrispy joined, p6bannerbot sets mode: +v ExtraCrispy 11:44 Culator|AwaypE joined 11:45 p6bannerbot sets mode: +v Culator|AwaypE 11:46 Culator|AwaypE left
tbrowder__ hi, folks 11:54
i'm working on some pod stuff in core and i'm going to try something with assertions in the grammar. 11:55
i would appreciate any comments on the atempt shown in the upcoming gist
gist.github.com/tbrowder/476d7e61f...1d73308731 11:56
lizmat m: CATCH -> \ex { dd ex } # why don't we allow a signature with a CATCH block ? 12:03
camelia 5===SORRY!5=== Error while compiling <tmp>
Missing block
at <tmp>:1
------> 3CATCH7⏏5 -> \ex { dd ex } # why don't we allow
expecting any of:
scoped block
lizmat m: CONTROL -> \ex { dd ex } # or a CONTROL block for that matter ?
camelia 5===SORRY!5=== Error while compiling <tmp>
Missing block
at <tmp>:1
------> 3CONTROL7⏏5 -> \ex { dd ex } # or a CONTROL block
expecting any of:
scoped block
lizmat m: LAST -> \que { dd que } # and we allow it when it *doesn't* make sense ? 12:04
camelia ( no output )
12:04 stmuk_ joined
lizmat m: LEAVE -> \ex { say "leaving" } # worse, we silently don't call the phaser ? 12:05
camelia ( no output )
lizmat m: LEAVE { say "leaving" } # worse, we silently don't call the phaser ?
camelia leaving
12:05 p6bannerbot sets mode: +v stmuk_, int0x27hZd joined 12:06 stmuk left, p6bannerbot sets mode: +v int0x27hZd 12:08 int0x27hZd left
lizmat m: dd BEGIN -> \ex { say "leaving" } # aha, it compiles as a block and returns that , hmmm 12:19
camelia -> \ex { #`(Block|65481528) ... }
lizmat m: BEGIN -> \ex { say "leaving" } # but doesn't execute it 12:20
camelia ( no output )
12:21 cognominal-p6 left, cognominal-p6 joined 12:22 p6bannerbot sets mode: +v cognominal-p6 12:25 robertle_ joined 12:26 p6bannerbot sets mode: +v robertle_
brrt is there a portable way to write 'is native('libc')' 12:32
rather than specifying the actual file name of libc.so.6
jnthn lizmat: Because the point of CATCH/CONTROL is to topicalize, and the exception is only handled if something `succeed`s (the idea being to use `when` to match it)
lizmat but I guess we should at least put in a warning for "LEAVE -> \foo { }" 12:34
because that will just sink the block, afaics
jnthn m: LEAVE 42 12:35
camelia WARNINGS for <tmp>:
Useless use of constant integer 42 in sink context (line 1)
jnthn Yeah, I guess a pointy block in sink context wants to be one of the things that trips that warning 12:36
Rather than it being anything special about phasers
lizmat m: -> { 42 }
camelia WARNINGS for <tmp>:
Useless use of constant integer 42 in sink context (line 1)
lizmat m: -> $_ { 42 } 12:37
camelia WARNINGS for <tmp>:
Useless use of constant integer 42 in sink context (line 1)
jnthn Hm, that's a bit dubious
It's the block that's in sink context, it's never called so the 42 isn't
So I'd argue that warning is a bit off
lizmat
.oO( blog post driven bug discovery :-)
12:41 cognominal-p6 left, cognominal-p6 joined 12:42 p6bannerbot sets mode: +v cognominal-p6
AlexDaniel squashable6: next 13:09
squashable6 AlexDaniel, ⚠🍕 Next SQUASHathon in ≈20 hours (2018-10-06 UTC-12⌁UTC+14). See github.com/rakudo/rakudo/wiki/Mont...Squash-Day
13:13 brrt left 13:14 robertle_ left 13:16 ExtraCrispy left 13:19 brrt joined 13:20 p6bannerbot sets mode: +v brrt
tbrowder__ .ask moritz can you please look at my grammar gist referenced above and see if it looks reasonable? thanks! 13:49
yoleaux tbrowder__: I'll pass your message to moritz.
moritz tbrowder__: the thing that looks a bit dodgy is that you try to match a regex against a match object (and not a string) 13:51
yoleaux 13:49Z <tbrowder__> moritz: can you please look at my grammar gist referenced above and see if it looks reasonable? thanks!
moritz tbrowder__: I don't know how forgiving NQP is when it comes to that 13:52
13:53 MrReaderll joined 13:55 MrReaderll left 14:01 liori_ joined 14:02 p6bannerbot sets mode: +v liori_
lizmat m: { UNDO say "undone"; LEAVE say "left"; say "doing"; 0 } # shouldn't this also need to say "undone" ? 14:08
camelia doing
left
14:08 liori_ left
lizmat m: { UNDO say "undone"; LEAVE say "left"; say "doing"; Nil } 14:08
camelia doing
left
undone
lizmat aha... so the return value should not be definite ? 14:09
jnthn: so returning a defined value is a "successful block exit" ? 14:10
that term is used a lot in docs.perl6.org/language/phasers but never really defined? 14:11
I guess the definition is "if foo.defined" 14:12
m: { UNDO say "undone"; LEAVE say "left"; say "doing"; Failure.new } 14:13
camelia doing
Failed
in block <unit> at <tmp> line 1

left
undone
jnthn lizmat: It's a definedness test, yes 14:22
So that a Failure counts as not being successful 14:23
lizmat right
I guess I'll update the doc to elaborate on what constitutes a successful exit from a block
14:29 cognominal-p6 left 14:47 ExtraCrispy joined, p6bannerbot sets mode: +v ExtraCrispy 15:08 brrt left 15:09 pmurias joined, p6bannerbot sets mode: +v pmurias 15:14 ExtraCrispy_ joined, ExtraCrispy_ left 15:20 gunixBA joined 15:21 gunixBA left 15:24 fake_space_whale joined 15:25 p6bannerbot sets mode: +v fake_space_whale 15:26 Ven` left 15:32 pmurias left 15:33 pmurias joined, p6bannerbot sets mode: +v pmurias
pmurias .tell Zoffix the question is --encoding meant to be only the encoding of the source files on the command line? 15:39
yoleaux pmurias: I'll pass your message to Zoffix.
15:45 pmurias left 15:46 pmurias joined, p6bannerbot sets mode: +v pmurias
tbrowder__ jnthn: i have 4 Gb RAM, can I speed up commaide with some increased default java VM setings? 15:48
default shows Xms128m, Xmx750m, reseved=240m 15:49
15:52 stmuk joined, p6bannerbot sets mode: +v stmuk
jnthn tbrowder__: Can try. There's a file under bin/comma64.vmoptions (without the 64 if you're on 32-bit) 15:53
15:53 Ven` joined 15:54 p6bannerbot sets mode: +v Ven`, stmuk_ left
tbrowder__ ok, any recommendations? speed seems ok after the sluggish startup... 15:54
jnthn tbrowder__: Also, if you downloaded the very latest release, we've just tracked down and fixed a performance regression affecting auto-complete and reference resolution in some projects.
tbrowder__ ok, i have 2018.9 now, i won't bother you any more for a while. thanks! 15:55
jnthn Yeah, there'll be a 2018.10 within days that addresses that :)
tbrowder__ cool, bye
jnthn Also, highlighter speedup is coming, though it's potentially disruptive enough I'm going to work on it right after the next release, so we can use it internally for a week or two before subjecting others to it. 15:57
15:58 fake_space_whale left 16:00 cognominal-p6 joined 16:01 p6bannerbot sets mode: +v cognominal-p6 16:09 Ursulaes joined, p6bannerbot sets mode: +v Ursulaes 16:12 thykkakF joined, p6bannerbot sets mode: +v thykkakF 16:13 thykkakF left 16:14 Ursulaes left 16:16 Ven` left 16:18 Ven` joined, p6bannerbot sets mode: +v Ven` 16:27 brrt joined 16:28 p6bannerbot sets mode: +v brrt 16:40 Ven` left 17:06 robertle_ joined 17:07 p6bannerbot sets mode: +v robertle_ 17:20 ExtraCrispy left 17:27 brrt left 17:28 dutchfish joined, brrt joined, p6bannerbot sets mode: +v dutchfish 17:29 p6bannerbot sets mode: +v brrt 17:32 dutchfish left 17:40 brrt left
AlexDaniel . 18:42
yoleaux 17:55Z <jmerelo> AlexDaniel: I just spend a good while debugging p6-river until I found this... github.com/AlexDaniel/foo-dependencies-self
AlexDaniel .tell jmerelo great, I'm happy to help :P 18:43
yoleaux AlexDaniel: I'll pass your message to jmerelo.
19:07 pmurias left 19:08 pmurias joined, p6bannerbot sets mode: +v pmurias
lizmat slightly disappointed that this doesn't work: 20:53
m: LEAVE say "stayed {now - ENTER now} seconds"; sleep 2
camelia stayed 0.0011323 seconds
lizmat or should it? jnthn?
it seems like the ENTER is considered to be inside the LEAVE thunk, incorrectly assuming that's a block ? 20:54
so the ENTER phaser got assigned to the wrong block ?
m: for 42 { KEEP say "keep"; $_ } # another over-eager useless use :-( 21:02
camelia WARNINGS for <tmp>:
keep
Useless use of $_ in sink context (line 1)
21:06 robertle_ left 21:16 Zoffix joined, p6bannerbot sets mode: +v Zoffix
Zoffix . 21:16
yoleaux 15:39Z <pmurias> Zoffix: the question is --encoding meant to be only the encoding of the source files on the command line?
Zoffix ,tell pmurias that's my understanding yes. --encoding tells the compiler what encoding to use when parsing code to run (source files, EVAL, and I'm guessing `-e` too). But I'm no expert on this. This is just going off the speculations. I forget which one it was by IIRC it got something there 21:17
.tell pmurias that's my understanding yes. --encoding tells the compiler what encoding to use when parsing code to run (source files, EVAL, and I'm guessing `-e` too). But I'm no expert on this. This is just going off the speculations. I forget which one it was by IIRC it got something there
yoleaux Zoffix: I'll pass your message to pmurias.
21:17 Zoffix left 21:18 Zoffix joined, p6bannerbot sets mode: +v Zoffix
Zoffix lizmat: no, it shouldn't. You're measuring ENTER of that block you're interpolating into the string. You should use the $() coercer to interpolate instead: 21:19
m: LEAVE say "stayed $(now - ENTER now) seconds"; sleep 2
camelia stayed 2.0013595 seconds
lizmat aaahh duh :-)
Zoffix AlexDaniel: sent out a Tweet for squashathon 21:20
lizmat m: LEAVE say "stayed " ~ (now - ENTER now) ~ " seconds"; sleep 2
camelia stayed 2.00138376 seconds
lizmat yup
21:25 pmurias left
tbrowder__ moritz: can i stringify it? 21:38
explicitly, or ast it? 21:39
hm or try to get the hash value for the key :V%? 21:40
:V?
but other than that, is my use of the assertion correct? 21:41
lizmat m: { POST * == 42; 666 } # too bad we don't do WhateverCode here 21:42
camelia WARNINGS for <tmp>:
Useless use of constant integer 666 in sink context (line 1)
lizmat m: { POST { $_ == 42 }; 666 } # as opposed to this 21:43
camelia WARNINGS for <tmp>:
Useless use of constant integer 666 in sink context (line 1)
Postcondition '{ $_ == 42 }' failed
in block at <tmp> line 1
in block <unit> at <tmp> line 1
21:45 Zoffix left
lizmat hmmm... I wonder if the exception "Postcondition '{ ... }' isn't actually a security risk because it show the verbatim code of the block ? 21:48
21:48 dct joined, p6bannerbot sets mode: +v dct
jnthn Showing bits of source code shouldn't generally be a security risk, otherwise open source would be in trouble... :P 21:53
lizmat if it is a large piece of code, with many newlines, it will still be quoted verbatim 21:57
which may be considered at least a bit LTA ?
tbrowder__ .ask moritz assuming i get the ~~ correct, is the assertion part correct?
yoleaux tbrowder__: I'll pass your message to moritz.
jnthn lizmat: Maybe, but what'd you propose instead? 22:02
lizmat limit it to 100 characters like we do in other places, and possibly change newlines with ␤ ? 22:03
22:04 MasterDuke joined, p6bannerbot sets mode: +v MasterDuke, MasterDuke left, MasterDuke joined, herbert.freenode.net sets mode: +v MasterDuke, p6bannerbot sets mode: +v MasterDuke
jnthn lizmat: Can do 22:06
lizmat jnthn: I can do too :-) 22:07
jnthn Yeah, but you more likely *will* do :P
lizmat yup
but not tonight... a bit groggy from non-code writing :-) 22:08
22:09 xeaguAF joined
jnthn haha :) 22:09
22:09 xeaguAF left
lizmat goes off to get some sleep 22:09
22:32 Dal1980kA joined 22:33 fake_space_whale joined, p6bannerbot sets mode: +v Dal1980kA
AlexDaniel Zoffix: thanks! 22:33
22:34 p6bannerbot sets mode: +v fake_space_whale 22:38 MasterDuke left 22:44 Dal1980kA left 22:49 MasterDuke joined, p6bannerbot sets mode: +v MasterDuke, MasterDuke left, MasterDuke joined, herbert.freenode.net sets mode: +v MasterDuke, p6bannerbot sets mode: +v MasterDuke 23:05 stmuk_ joined 23:06 p6bannerbot sets mode: +v stmuk_ 23:07 stmuk left 23:20 lizmat left 23:26 lizmat joined, p6bannerbot sets mode: +v lizmat 23:53 ZzZombo left