00:04 dogbert17 joined 00:07 dogbert11 left, Xliff left 00:21 dogbert11 joined 00:23 dogbert17 left 00:46 sena_kun left 00:56 Xliff joined 01:00 titsuki_ left 01:01 sena_kun joined
Xliff nine: Well, another strike out, here. I thought that file locking would block for as long as it needed, yet this comes up almost immediately -- "Could not obtain blocking, exclusive lock: Failed to lock filehandle: 9 in block <unit> at /home/cbwood/Projects/rakudo-precomp-nolock/tools/build/install-core-dist.p6 line 35" 01:24
Ah! Maybe not. Now have it working through "make install"... and with the right version! This is a good sign. 01:35
TreyHarris Xliff: Thinking a bit more about it, as a sysadmin originally, I think seeing Raku and NativeCall, many Perl/Python/Ruby-only coders who are intimidated by C would very well think--"gee, that looks a lot easier than C, I can handle that". So beefing up the "marshalling/unmarshalling" info (which is pretty well covered in the NativeCall tutorial, but does assume you know, e.g., the difference 01:40
between a struct an union and how enums work)--how to get data from a Raku data structure, into a native call, and back out again--would actually probably be a very good thing for giving Raku more killer app areas
I've wanted a Proc::ProcessTable port for awhile, maybe when my current engagement ends I should do the port babel-style as a tutorial on how to create a NativeCall interface based solely on proc(5) and procinfo(8) and header files without referring to C source. 01:43
Dealing with jiffies and strftime might be a bit of an issue. 01:46
Or maybe not: modules.raku.org/dist/Date::Calend...an:JFORGET (jforget++) 01:48
Xliff TreyHarris: Actually, that sounds like fun. 01:58
Pretty much 90% of p6-GtkPlus was written that way (from the .h files... no .c knowledge necessary aside from how to read the API)
If you'd be interested in help, I'd be glad to pitch in. 01:59
TreyHarris I did a simple p5 wrapper and that was so easy, a port seemed unnecessary. But it's simple enough (particularly if I just seed it with Linux and Darwin or something and accept PR's for any other OS's) that I think it would be a good exercise.
Xliff True, enough. 02:00
TreyHarris Xliff: sure, I'll loop you in when I have a skeleton. What editor do you use, out of curiosity?
Xliff Atom these days, with a sprinkling of vim. 02:01
TreyHarris Okay. I haven't had a look at what new LP tools are out there these days, but the last time I did around 2015, Org-mode was teh siht if you used Emacs. But I don't think it matters--I think for these sorts of things, weave/tangling isn't really necessary except once, when you're writing the English part. After that, you pull the code out and do any future coding in the native files and leave the 02:04
literate source alone as an artifact
I doubt I'd even publish the org or web or whatever files except rendered as html 02:06
Xliff Sounds like a plan, then. 02:07
TreyHarris oh, interesting. some people are using jupyter for that these days. makes sense.
Xliff Hah! Sure does. 02:08
TreyHarris The one thing about the p5 wrapper I did to Proc::ProcessTable is that its interface is very un-Rakuish, so if you wanted to glance at it on CPAN and give me any thought on a more Raku interface, that'd be awesome 02:09
Xliff Hmmm.... OK 02:10
TreyHarris It's mostly because of the lack of proper iterables or lazies in Perl, so, seems ripe for Rakuification 02:11
Xliff metacpan.org/release/Proc-ProcessT...ssTable.pm <- This one?
TreyHarris huh, I thought it was this one: github.com/jwbargsten/perl-proc-processtable but its VERSION is 0.02, where the one you're linking to is 0.59, so that's odd 02:13
Xliff Oh. I am looking at that one, too.
TreyHarris ah, looks like that's just an old snapshot... but... the version regressed? hmm 02:14
oh, no, every .pm has its own independent VERSION and I wass looking at Proc.pm 02:15
Xliff Hmm... we can replace the use of Storable with a JSON file. 02:16
TreyHarris yeah, I used YAML
JSON's smarter for anything being used for more than just me for a one-off :-) 02:17
Xliff Heh. 02:19
Where's your wrapper?
TreyHarris On a VM on a share on a machine whose power supply I need to get around to replacing :-) It was stupid, stupid though. I think I copied the... oh, no, I just eliminated the cache_ttys option because that's not an expensive operation on Linux 02:22
But I just cloned the source and removed the whole Storable thing 02:23
Xliff HAH!
I'd almost want to write this as pure raku... 02:26
Burt that might be me suffering from Not Invented Here...
TreyHarris Could you do pure Raku on a /proc-less OS, though? 02:30
Xliff Ah. Nope.
Depends on how difficult reading the process table is, though.
Would need need a C-Helper lib for all the OSes that did not support /proc 02:31
So we'd have to abstract the table representation.
02:45 sena_kun left 02:52 Xliff left 02:56 Xliff joined 02:59 sena_kun joined
Xliff Files=1302, Tests=109848, 180 wallclock secs (27.17 usr 4.08 sys + 3180.22 cusr 170.38 csys = 3381.85 CPU) 03:04
^ TEST_JOBS=20 ... no lock on .precomp
Will try my firehose on it, next. 03:05
\o/ 03:37
Parallel compile: p6-GLib + p6-GIO + p6-Pango + p6-GDK + p6-GtkPlus < 1800s
Original compile: p6-GtkPlus by itself takes 1918.1 seconds 03:38
Geth rakudo: Xliff++ created pull request #3454:
Removes full directory lock on .precomp, allowing for faster parallel compilation
04:45 sena_kun left 04:59 sena_kun joined 06:46 sena_kun left 07:00 sena_kun joined 07:30 domidumont joined 08:08 AlexDaniel joined, AlexDaniel left, AlexDaniel joined 08:46 sena_kun left 09:00 sena_kun joined
nine Xliff: we absolutely do not want to rely on file modification time stamps. On FAT32 the precision is 2 full seconds. That's why I replaced all time stamp checks with checksums. 09:09
Xliff: this code works for checking if a precomp file is up-to-date already: github.com/rakudo/rakudo/pull/3454...b22e84L239 09:11
09:41 domidumont left 09:42 domidumont joined
lizmat Files=1302, Tests=109837, 211 wallclock secs (28.50 usr 8.12 sys + 2936.30 cusr 276.18 csys = 3249.10 CPU) 10:16
nine No candidate found for 'zef'. 10:20
You'd think that I of all people would have an easy time fixing this error. But...
10:45 sena_kun left 11:00 domidumont left
Geth rakudo: 593db2d7e4 | (Stefan Seifert)++ | tools/install-dist.p6
Remove deprecated support for implicit Distribution::Builder prefix

Better be explicit. AFAIK Inline::Python was the only module depending on this and has been fixed already.
rakudo: 4c6c02789c | (Stefan Seifert)++ | tools/install-dist.p6
Add a --build-only option for install-dist.p6

When packaging, build, test and install can be separate steps and tests may need building before them.
11:01 sena_kun joined
Geth rakudo: 411db10ec5 | (Stefan Seifert)++ | tools/install-dist.p6
Make building optional when installing in install-dist.p6

When --build-only is used in a previous step, we may skip it at installation time.
11:19 patrickb joined
patrickb o/ 11:20
tellable6 2020-01-29T15:50:49Z #raku-dev <tony-o_> patrickb yes - i can write that up, i'll probably write something up friday or after i get some buy in from ugexe on how we're going to consume this huge meta file
Xliff nine: Can that check be deferred until after the lock is obtained? 11:46
nine it must be 11:47
otherwise the precomp file could become outdated while you were waiting for the lock
Xliff 'k. Will update later. 11:49
Updated, but not tested. I have to get ready for $dayJob. 12:26
12:30 domidumont joined 12:46 sena_kun left 13:01 sena_kun joined 13:07 titsuki_ joined 13:29 lucasb joined 13:52 titsuki_ left 14:45 sena_kun left
nine So, who's at FOSDEM this weekend? And how can I meet any of you today? 14:46
[Coke] hopes folks have fun at FOSDEM!
[Coke] wonders if he was at the last perl conference in canada. 14:49
15:00 sena_kun joined
Geth rakudo/cci-precomp-build: 6504be7b37 | (Patrick Böker)++ | 5 files
Add a CI precomp release build pipeline

This uses CircleCI.
15:47 ufobat joined
Geth rakudo: patrickbkr++ created pull request #3455:
Add a CI precomp release build pipeline
16:16 Kaiepi left 16:17 Kaiepi joined 16:45 sena_kun left 16:50 domidumont left 16:51 domidumont joined 17:00 sena_kun joined
[Tux] I cannot guarantee measurements, as I will be skiing next week, and "ssh" is a typical problem in the WiFi options in French accommodations. 17:15
17:28 |Tux| left
[Tux] Rakudo version 2020.01-54-g411db10ec - MoarVM version 2020.01.1-24-g073676116
csv-ip5xs0.721 - 0.728
csv-ip5xs-205.802 - 6.370
csv-parser22.883 - 23.433
csv-test-xs-200.382 - 0.395
test7.312 - 7.938
test-t1.810 - 2.058
test-t --race0.841 - 0.847
test-t-2030.441 - 32.490
test-t-20 --race9.077 - 9.229
AlexDaniel [Tux]: try mosh :) 18:10
oh, or you mean that it's blocked altogether?
18:14 MasterDuke joined
MasterDuke is it just me, or has test-t gotten a little slower recently? 18:17
18:46 sena_kun left 18:49 domidumont left 18:50 domidumont joined 18:54 domidumont left 19:02 sena_kun joined
Geth roast: d72a1652c3 | (Christian Bartolomäus)++ | 3 files
[JVM] Fudge some newly added tests for supply
19:28 vrurg left 19:43 Kaiepi left 19:44 Kaiepi joined
Geth rakudo: 6504be7b37 | (Patrick Böker)++ | 5 files
Add a CI precomp release build pipeline

This uses CircleCI.
rakudo: 6c5615ecf1 | (Patrick Böker)++ (committed using GitHub Web editor) | 5 files
Merge pull request #3455 from rakudo/cci-precomp-build

Add a CI precomp release build pipeline
19:49 patrickb left
TreyHarris (Asked in #raku, but this may be more of a #raku-dev question): From docs.raku.org/language/numerics#Allomorphs : "Keep in mind that allomorphs are simply subclasses of the two (or three) types they represent." '(or three)'? What's a three-type allomorph? 19:50
19:54 vrurg joined
rba Enjoy your time at FOSDEM... 20:10
TreyHarris (Answered in #raku--historical artifact. I've already pushed a fix.) 20:11
20:18 lucasb left
[Tux] AlexDaniel, it *is* my holiday :) 20:23
and I've been in accommodations where *all* VPN's were blocked 20:24
MasterDuke [Tux]: where are you going? i'm going to austria in 5 weeks, first time boarding in the alps 20:29
TreyHarris MasterDuke: boarding? Like at Lugano airport? 20:31
MasterDuke snowboarding
TreyHarris oh, snowboarding. d'oh
MasterDuke ha
TreyHarris heh, I thought you meant boarding a plane in the alps
MasterDuke that would also be a first
[Tux] Alpe d'Huez (Oz) 20:33
I'm going to StAnton (Austria) first week of March 20:34
TreyHarris m: nice 20:36
camelia 5===SORRY!5=== Error while compiling <tmp>
Undeclared routine:
nice used at line 1
TreyHarris Lugano airport is the one used in flight sim demos because it's soo impressive 20:37
MasterDuke that's when we're going to Sankt Veit im Pongau. i'm looking forward to it. i was in park city, ut the beginning of this month and had great snow there 20:39
20:45 sena_kun left 21:01 sena_kun joined
Xliff m: sub a { LAST { say "Hi!" }; return True }; a; 21:26
camelia ( no output )
Xliff m: sub a { LEAVE { say "Hi!" }; return True }; a;
camelia Hi!
japhb MasterDuke: user-images.githubusercontent.com/...32ba5e.png is a graph of test-t times I use as an example in my github.com/japhb/Terminal-QuickCharts README. I've not updated that graph in a while because, well, it's depressing. After it stops dropping, it just hops a couple times after that but never again has an obvious downward slope. 21:28
MasterDuke the -20might be more interesting now 21:33
tux.nl/Talks/CSV6/images/test-t-d90.png is pretty jumpy, but there does seem to be a *slight* upward trend 21:35
21:58 Ven`` joined 22:02 Ven`` is now known as Ven_de_Thiel
japhb Do we have a prefered image posting spot, similar to gist for text? 22:13
sena_kun nope 22:17
japhb Gah, that's annoying. 22:23
Well fudge. OK, anyone can do this: Maximize a terminal window for best effect; then: `git clone github.com/japhb/Terminal-QuickCharts.git; cd Terminal-QuickCharts; zef --deps-only install .; wget tux.nl/Talks/CSV6/speed-all.log; raku -I lib examples/csv-timings` 22:27
MasterDuke: ^^ Easier to read history 22:28
22:45 sena_kun left
Xliff Heh 22:45
Xliff takes the plunge
Ooh, spiff! 22:46
m: sub a (Int $a) { say "WTF" }; my @a = <1 2 3>; a(@a) 22:50
camelia 5===SORRY!5=== Error while compiling <tmp>
Calling a(Positional) will never work with declared signature (Int $a)
at <tmp>:1
------> 3Int $a) { say "WTF" }; my @a = <1 2 3>; 7⏏5a(@a)
japhb Xliff: Thank you. But as you can see, MasterDuke has a point; you can see the slow rise starting near the end of Q2. 22:52
Xliff Yeah.... 22:57
23:00 sena_kun joined
Xliff m: multi sub a (Int $a) { say "WTF" }; multi sub a (@a) { say 'As expected!' } ; my @a = <1 2 3>; a(@a) 23:03
camelia As expected!
Xliff m: multi sub a (Int $a) { say "WTF" }; multi sub a (@a) { say 'As expected!' }; my @a = <1 2 3>; a(@a)
camelia As expected!
rba .tell patrikb Please have a look at rakubrew.org - need your feedback. 23:28
tellable6 rba, I haven't seen patrikb around, did you mean patrickb?
rba .tell patrickb Please have a look at rakubrew.org - need your feedback.
tellable6 rba, I'll pass your message to patrickb
Geth rakudo: 15621b8e8d | (Elizabeth Mattijsen)++ | src/Perl6/Compiler.nqp
Make sure raku -v mentions Raku

Rather than Perl *sigh* this should have been in the 2020.01 release. :-(