»ö« Welcome to Perl 6! | perl6.org/ | evalbot usage: 'p6: say 3;' or /msg camelia p6: ... | irclog: irc.perl6.org or colabti.org/irclogger/irclogger_log/perl6 | UTF-8 is our friend! 🦋 Set by Zoffix on 25 July 2018. |
|||
timotimo | pmurias: 6pad is featured in today's advent calendar post! | 00:01 | |
pmurias | timotimo: is the post up yet? | 00:02 | |
timotimo | almost! | 00:03 | |
pmurias | timotimo: can I have a sneak peek before going to bed? ;) | 00:04 | |
timotimo | it'll be up in just a minute! | 00:05 | |
published! | 00:07 | ||
perl6advent.wordpress.com/2018/12/...lar-level/ | |||
SmokeMachine | pmurias: thank you very much! I’ll test it as soon as possible! | ||
00:09
dct left
|
|||
pmurias | timotimo: you should have mentioned that earlier I would have got round to doing the "when there is some html in a pad" have it on by default instead of starting with the console ;) | 00:09 | |
timotimo | hah | ||
00:10
MasterDuke left
|
|||
pmurias | timotimo: I'll fix that tommorow, it's too late and I would just screw 6pad up at the worst moment | 00:13 | |
timotimo: also on a smaller screen the demos overflow in a bit of a weird manner | 00:14 | ||
timotimo | yeah, good call :) | ||
they do on my monitor, too ;_; | |||
i can't resize the thing vertically even though it shows a two-direction-arrow mouse cursor | |||
i thought that's perhaps just my machine being weird | |||
pmurias | the resizing is broken, just noticed it | 00:16 | |
well, more not implemented at all more then broken | |||
I copied the css from dart pad without noticing the cursor | 00:17 | ||
timotimo | ah, i see | 00:18 | |
pmurias | I'll get some sleep and try to fix it up tommorow | 00:19 | |
timotimo | have a good one! | ||
pmurias | if anyone wants to fix up the scroll bars, adding some css to github.com/perl6/6pad should fix it | ||
good night | 00:20 | ||
00:20
pmurias left
00:21
MasterDuke joined
00:22
p6bannerbot sets mode: +v MasterDuke
00:24
MasterDuke left,
graphene left
00:26
graphene joined
00:27
p6bannerbot sets mode: +v graphene,
MasterDuke joined
00:28
p6bannerbot sets mode: +v MasterDuke,
w_richard_w joined
00:29
p6bannerbot sets mode: +v w_richard_w,
MasterDuke left
00:50
w_richard_w left
00:53
oodani joined
00:54
p6bannerbot sets mode: +v oodani
00:58
confuseAcat19 joined
00:59
p6bannerbot sets mode: +v confuseAcat19
01:03
confuseAcat19 left,
zacts joined,
p6bannerbot sets mode: +v zacts
01:07
lizmat left
01:26
graphene left
01:28
graphene joined,
p6bannerbot sets mode: +v graphene
02:05
zacts left
02:07
zacts joined,
p6bannerbot sets mode: +v zacts
02:12
zacts left
02:19
movl left
02:28
molaf left
02:30
lucasb left,
lizmat joined,
p6bannerbot sets mode: +v lizmat
02:35
coet left
02:40
molaf joined
02:41
p6bannerbot sets mode: +v molaf
02:49
graphene left
02:50
graphene joined,
graphene left
02:52
graphene joined,
p6bannerbot sets mode: +v graphene
02:54
Kaiepi left,
zacts joined,
p6bannerbot sets mode: +v zacts
03:05
Kaiepi joined
03:06
p6bannerbot sets mode: +v Kaiepi
03:25
AlexDaniel left
03:29
ufobat___ joined
03:30
p6bannerbot sets mode: +v ufobat___
03:33
ufobat_ left
03:40
ryn1x_ joined
03:41
p6bannerbot sets mode: +v ryn1x_
03:47
ryn1x_ left
04:17
ryn1x_ joined
04:18
p6bannerbot sets mode: +v ryn1x_
04:21
Cabanossi joined,
p6bannerbot sets mode: +v Cabanossi
04:22
Cabanoss- left,
ryn1x_ left
04:23
zacts left
04:25
zacts joined,
p6bannerbot sets mode: +v zacts
|
|||
SmokeMachine | .tell pmurias I think there is a hardcoded path on rakudo.js... /home/pmurias/nqp/install/share/nqp/lib/nqp-js-on-js/node_modules/nqp-runtime | 04:53 | |
yoleaux | SmokeMachine: I'll pass your message to pmurias. | ||
SmokeMachine | .tell pmurias www.irccloud.com/pastebin/HgDTYu5K/ | 04:54 | |
yoleaux | SmokeMachine: I'll pass your message to pmurias. | ||
SmokeMachine | .tell pmurias nqp.libpath(["/home/pmurias/rakudo/node_modules/","/home/pmurias/nqp/install/share/nqp/lib/nqp-js-on-js/"]); | 04:56 | |
yoleaux | SmokeMachine: I'll pass your message to pmurias. | ||
04:59
zacts left
05:05
zacts joined,
p6bannerbot sets mode: +v zacts
|
|||
SmokeMachine | .tell pmurias when I changed `require("/home/pmurias/nqp/install/share/nqp/lib/nqp-js-on-js/node_modules/nqp-runtime")`to `require("nqp-runtime")` (and installed nqp-runtime) it just worked! Thanks | 05:05 | |
yoleaux | SmokeMachine: I'll pass your message to pmurias. | ||
05:16
ryn1x_ joined
05:17
p6bannerbot sets mode: +v ryn1x_
05:18
sauvin joined,
p6bannerbot sets mode: +v sauvin
05:35
zacts left
05:42
robertle left
05:46
Kaiepi left
05:49
ryn1x_ left
05:52
bioexpress joined,
p6bannerbot sets mode: +v bioexpress
05:54
curan joined,
p6bannerbot sets mode: +v curan
|
|||
bioexpress | Hello, could bugs in my Perl6 code cause such errors or do errors from Perl6 code look always different? | 05:55 | |
moar: malloc.c:2422: sysmalloc: Assertion `(old_top == initial_top (av) && old_size == 0) || ((unsigned long) (old_size) >= MINSIZE && prev_inuse (old_top) && ((unsigned long) old_end & (pagesize - 1)) == 0)' failed. | |||
*** Error in `/home/mm/.rakudo-star/bin/moar': realloc(): invalid next size: 0x00007f439f5b2650 *** | |||
*** Error in `/home/mm/.rakudo-star/bin/moar': double free or corruption (out): 0x00007f2d3005ef80 *** | 05:56 | ||
MoarVM panic: Heap corruption detected: pointer 0x7f4115e9cb00 to past fromspace | |||
MoarVM panic: Internal error: zeroed target thread ID in work pass | |||
06:20
cpage joined,
p6bannerbot sets mode: +v cpage,
jmerelo joined
06:21
p6bannerbot sets mode: +v jmerelo
06:23
bioexpress left
|
|||
holyghost | hi jmerelo | 06:24 | |
06:25
imcsk8 left
|
|||
jmerelo | hi | 06:26 | |
.tell AlexDaniel I no longer have access to hack.p6c.org | 06:27 | ||
yoleaux | jmerelo: I'll pass your message to AlexDaniel. | ||
06:47
vrurg left
07:00
dct joined,
p6bannerbot sets mode: +v dct
07:14
dct left
07:19
abraxxa joined,
p6bannerbot sets mode: +v abraxxa
07:23
abraxxa1 joined,
abraxxa left
07:24
p6bannerbot sets mode: +v abraxxa1,
lizmat left,
domidumont joined
07:25
p6bannerbot sets mode: +v domidumont
07:28
abraxxa1 left
07:29
movl joined
07:30
p6bannerbot sets mode: +v movl
07:32
kurahaupo_ joined
07:33
p6bannerbot sets mode: +v kurahaupo_,
robertle joined
07:34
p6bannerbot sets mode: +v robertle
|
|||
moritz | jmerelo: why not? | 07:35 | |
07:35
kurahaupo left
|
|||
moritz | oh, seems to be down | 07:36 | |
time to reboot | |||
07:37
dalek joined,
ChanServ sets mode: +v dalek,
p6lert joined,
Geth joined,
synopsebot joined,
ChanServ sets mode: +v Geth,
ChanServ sets mode: +v synopsebot,
p6bannerbot sets mode: +v dalek
07:38
p6bannerbot sets mode: +v p6lert,
p6bannerbot sets mode: +v Geth,
p6bannerbot sets mode: +v synopsebot
07:40
kurahaupo_ left,
kurahaupo joined
07:41
p6bannerbot sets mode: +v kurahaupo,
abraxxa joined
07:42
p6bannerbot sets mode: +v abraxxa
07:56
rindolf joined
07:57
p6bannerbot sets mode: +v rindolf
08:00
imcsk8 joined,
movl left
08:01
p6bannerbot sets mode: +v imcsk8
08:17
coet joined,
p6bannerbot sets mode: +v coet
08:19
kurahaupo_ joined
08:20
p6bannerbot sets mode: +v kurahaupo_
08:22
kurahaupo left
08:23
kurahaupo_ left,
kurahaupo joined
08:24
p6bannerbot sets mode: +v kurahaupo
08:30
lizmat joined,
p6bannerbot sets mode: +v lizmat
08:35
finanalyst joined,
p6bannerbot sets mode: +v finanalyst
|
|||
finanalyst | moritz: Are yon online? | 08:36 | |
Any one with permissions on docs.perl6.org? | 08:37 | ||
El_Che | finanalyst: pretty much everyone here I suppose | 08:38 | |
yoleaux | 5 Dec 2018 16:59Z <jmerelo> El_Che: look at th elines above for a bug report on the version of Perl needed in Ubuntu 14.04 packages. | ||
finanalyst | Is docs.perl6.org running with the new version of rakudo? It is now providing Pod::Defn and that could be blocking an update | 08:39 | |
El_Che | finanalyst: you can raise issues or send PRs to github.com/perl6/doc/ | ||
finanalyst: or be added to the org | |||
finanalyst | I have a commit bit to github, but not sure about permissions on the site | 08:40 | |
08:40
ufobat___ is now known as ufobat
|
|||
El_Che | I see | 08:40 | |
it'on the code it runs | |||
08:40
kurahaupo_ joined
|
|||
El_Che | probably moritz is the right person for that, maybe jmerelo | 08:41 | |
finanalyst | jmerelo asked me to contact someone here | ||
he has just twisted something and cant get to a computer | |||
08:41
p6bannerbot sets mode: +v kurahaupo_
|
|||
finanalyst | docs.perl6.org is running in that it is serving documents, but the documents are not being updated. | 08:42 | |
08:42
kurahaupo left
08:44
kurahaupo_ left,
kurahaupo joined
08:45
p6bannerbot sets mode: +v kurahaupo
|
|||
moritz | uhm, there was a squashaton related to the docs toolchain, no? | 08:45 | |
maybe somebody who participated in that should have a look -- I haven't touched that in ages | 08:46 | ||
otherwise, take a look at docs.perl6.org/build-log/build-201...+00:00.log | |||
Error while compiling /home/doc.perl6.org/doc/./build/Language/031-modules.pod6 | 08:47 | ||
Preceding context expects a term, but found infix = instead. | |||
Did you make a mistake in Pod syntax? | |||
at /home/doc.perl6.org/doc/./build/Language/031-modules.pod6:589 | |||
also, I haven't upgraded the rakudo that builds doc.perl6.org. No idea if anybody else did | 08:48 | ||
the build log says 2018.06-24 | |||
08:50
kurahaupo left
08:52
kurahaupo joined
08:53
p6bannerbot sets mode: +v kurahaupo,
kurahaupo left,
kurahaupo joined
08:54
p6bannerbot sets mode: +v kurahaupo
09:02
kurahaupo left
09:03
kurahaupo joined
09:04
p6bannerbot sets mode: +v kurahaupo
09:07
kurahaupo left,
tobs` joined
09:08
kurahaupo joined,
kurahaupo left,
p6bannerbot sets mode: +v tobs`,
kurahaupo joined
09:09
p6bannerbot sets mode: +v kurahaupo,
lizmat left,
yqt joined
09:10
p6bannerbot sets mode: +v yqt
09:26
[particle]1 joined,
p6bannerbot sets mode: +v [particle]1
09:27
[particle] left
09:33
[Sno] left
|
|||
finanalyst | moritz: syntax of modules.pod6 was not suspected. | 09:47 | |
If perl6 is 2018.06, then Rakudo is not providing Pod::Defn | 09:48 | ||
09:49
Kaiepi joined
|
|||
finanalyst | moritz: it seems that you wrote the code for 'disambiguation-files'. What was the rational for them? There are now >2000 such files. | 09:49 | |
Are they for perl6doc? | |||
09:49
sno joined
09:50
p6bannerbot sets mode: +v Kaiepi
|
|||
Kaiepi | so i spent a few hours trying to figure out why unicode was broken in urxvt after upgrading my os and it ended up being that i3 expects LC_ALL/LANG/LANGUAGE to be exported in .xsession/.xinitrc before it's started or else it'll just assume it's C | 09:50 | |
09:50
sena_kun joined,
p6bannerbot sets mode: +v sno
09:51
p6bannerbot sets mode: +v sena_kun
|
|||
Kaiepi | why it ignores .profile idk | 09:51 | |
mornfall | hmm, OS upgrades | 09:59 | |
i wanted to do that | |||
finanalyst | moritz: I have forked a fresh copy of docs.perl6.org and run make html. It had no problems with modules.pod6 | ||
09:59
lizmat joined,
p6bannerbot sets mode: +v lizmat
|
|||
moritz | finanalyst: re disambigutation files: you have a word "foo". That could refer to a type, to an operator, a sub, a constant, a keyword etc. | 10:00 | |
finanalyst: and the idea was that you could just use docs.perl6.org/foo and find everything that applies | 10:01 | ||
finanalyst | Aha. I have been using the search box for items that I know have a disambiguation file and I have not hit the disambiguation file. | 10:03 | |
moritz | the search box was a later addition :) | ||
finanalyst | So if we switch off disambiguation, everything else should then work. Writing the d-files takes a significant proportion of the build time | 10:04 | |
I have actually modified the makefile to set disambiguation to false, but the build is not happening. | 10:05 | ||
How can I trigger a new build? | |||
moritz | git push | 10:06 | |
you might produce 404s for people who use the disamiguation URLs directly | |||
Geth | doc: 0b41594dd0 | (Richard Hainsworth)++ (committed using GitHub Web editor) | doc/Language/modules.pod6 Update modules.pod6 trigger rebuild |
10:07 | |
synopsebot | Link: doc.perl6.org/language/modules | ||
lizmat | . | ||
10:11
zakharyas joined
|
|||
finanalyst | moritz: I notice that the last build log for docs.perl6.org was 3 Dec. There have been changes since then. | 10:11 | |
10:12
p6bannerbot sets mode: +v zakharyas
|
|||
finanalyst | No new build seems to have been triggered with my minor change to modules.pod6 | 10:12 | |
10:13
lucasb joined,
p6bannerbot sets mode: +v lucasb
|
|||
finanalyst | who would use disambiguation URLs directly? | 10:13 | |
moritz | me | 10:17 | |
finanalyst: docs.perl6.org/build-log/?C=M;O=A has the list of all build logs | |||
some are from today | |||
oh wait, no | |||
the git repo is at commit 0b41594dd07abd37f438ef923d1fb7379753fbba | 10:18 | ||
10:19
finanalyst left,
finanalyst joined
|
|||
moritz | perlpunks.de/paste/show/5c0a4948.5e5a.2c3 this is what the cron job executes | 10:20 | |
10:20
p6bannerbot sets mode: +v finanalyst
10:24
finanalyst left,
araujo joined,
araujo left,
araujo joined,
p6bannerbot sets mode: +v araujo,
finanalyst joined
10:25
p6bannerbot sets mode: +v araujo,
p6bannerbot sets mode: +v finanalyst
10:28
pecastro joined
10:29
p6bannerbot sets mode: +v pecastro
|
|||
sacomo | hi all | 10:30 | |
Kaiepi | m: (last if $_ == 5) or .say for 0..10 | ||
camelia | 0 1 2 3 4 |
||
Kaiepi | m: (last if $_ == 5) orelse .say for 0..10 | 10:31 | |
camelia | () () () () () |
||
sacomo | 6pad / javascript is working in Firefox 65 now | ||
Kaiepi | what's going on with the orelse version? | ||
nice sacomo | |||
sacomo | Kaiepi, it's pretty slick perl6.github.io/6pad/#baa305eff795...b83a9d4b26 | 10:35 | |
gfldex | m: (last if $_ == 5) orelse say $_.WHAT for 0..10 | 10:37 | |
camelia | (Slip) (Slip) (Slip) (Slip) (Slip) |
||
gfldex | Kaiepi: that is by design | 10:38 | |
at least the rebinding of $_ | 10:39 | ||
Kaiepi | oh | ||
Geth | doc: 2902d71dc0 | (Richard Hainsworth)++ (committed using GitHub Web editor) | Makefile Update Makefile Turn on disambiguation |
10:40 | |
gfldex | m: say (last if $_ == 5).WHAT for 1 | 10:41 | |
camelia | (Slip) | ||
gfldex | i'm not quite sure what a last statement should evaluate to | 10:42 | |
Kaiepi: I have asked the powers that be. You have at least spotted an ENODOC. | 10:44 | ||
10:55
kurahaupo_ joined
10:56
p6bannerbot sets mode: +v kurahaupo_
10:57
kurahaupo left
10:58
domidumont left
11:02
kurahaupo joined
|
|||
Kaiepi | m: say (*..0)[0..10] | 11:03 | |
camelia | (-Inf -Inf -Inf -Inf -Inf -Inf -Inf -Inf -Inf -Inf -Inf) | ||
Kaiepi | m: say (*...0)[0..10] | ||
camelia | No such method 'succ' for invocant of type 'Whatever'. Did you mean 'sum'? in block <unit> at <tmp> line 1 |
||
11:03
p6bannerbot sets mode: +v kurahaupo,
kurahaupo_ left
|
|||
finanalyst | .tell moritz would it be possible for you to upgrade the perl6 on docs.perl6.org ? JJ is not able to access the server at this moment | 11:05 | |
yoleaux | finanalyst: I'll pass your message to moritz. | ||
11:05
finanalyst left
11:07
kurahaupo left
11:10
scimon joined
11:11
p6bannerbot sets mode: +v scimon
11:13
Geth left,
synopsebot left
11:14
Geth joined,
ChanServ sets mode: +v Geth,
coet|login joined,
p6bannerbot sets mode: +v coet|login,
coet|login left,
coet left,
p6bannerbot sets mode: +v Geth
|
|||
moritz | .tell finanalyst I've updated rakudo. Enjoy :) | 11:18 | |
yoleaux | moritz: I'll pass your message to finanalyst. | ||
11:05Z <finanalyst> moritz: would it be possible for you to upgrade the perl6 on docs.perl6.org ? JJ is not able to access the server at this moment | |||
11:19
kurahaupo joined
11:20
p6bannerbot sets mode: +v kurahaupo
11:23
duffee joined
11:24
p6bannerbot sets mode: +v duffee,
kurahaupo_ joined
11:25
p6bannerbot sets mode: +v kurahaupo_
11:26
kurahaupo left
11:32
kurahaupo_ left
|
|||
duffee | Re: Advent Calendar - I'm looking for a WordPress ID for sunday's post and the instructions sent me here - currently shaping up at gist.github.com/duffee/9947a49b344...74df7af4a2 | 11:38 | |
sena_kun | ping moritz, ping jmerelo ^ | 11:39 | |
moritz | duffee: please tell me your wordpress.com username, or an email address | ||
abraxxa | I want to code a linux panel applet displaying the current day and week worktime from the hamster sqlite database but I"ve never done any non-Web UI programming. Can someone point me in the right direction how this is possible with Perl 6 | 11:45 | |
11:46
kurahaupo joined
|
|||
sena_kun | abraxxa, it depends on the panel. which one do you use? | 11:47 | |
abraxxa | I use XFCE but it seems they all work independent of the DE | ||
11:47
p6bannerbot sets mode: +v kurahaupo
|
|||
abraxxa | or at least gnome ones work in XFCE too or so | 11:47 | |
sena_kun | I think conky might be the most safe route, configuring it is another question. | ||
well, then you need to find a manual on how to write an applet for xfce-panel, what langauges are supported and so on. | |||
also, if there is an applet that will execute a command and show its output already written(probability is high), then you can just use it. | 11:48 | ||
abraxxa | too easy! :P | 11:49 | |
there was a blog post about UI programming I've tried and it was extremely easy | |||
but I can't remember which toolkit it used | |||
sena_kun | goodies.xfce.org/projects/panel-pl...mon-plugin <- this is it. :) | ||
the applet you "likely" want to use, I mean. | 11:50 | ||
11:50
kurahaupo left
|
|||
abraxxa | ah, GTK::Simple | 11:50 | |
this one www.tyil.nl/post/2018/03/20/perl6-...ogramming/ | 11:51 | ||
sena_kun | there is also GtkPlus - github.com/Xliff/p6-GtkPlus/ | ||
afk& | 11:52 | ||
Kaiepi | m: my $p = Promise.in(1000).then(-> $p { True }); $p.keep: False; await $p | ||
camelia | Access denied to keep/break this Promise; already vowed in block <unit> at <tmp> line 1 |
||
Kaiepi | m: my $p = Promise.in(1000).then(-> $p { True }); $p.vow.keep: False; await $p | 11:53 | |
camelia | Access denied to keep/break this Promise; already vowed in block <unit> at <tmp> line 1 |
||
abraxxa | GTK::Simple is GTK3 | ||
Kaiepi | is there a way to cancel a promise? | ||
11:53
|oLa| joined,
|oLa| left
|
|||
mornfall | Kaiepi: not if it's vow'd | 11:56 | |
tyil | sena_kun: is it worth to do a blog post on GtkPlus? | 12:04 | |
I'm mostly waiting for a Qt module, so I can compare GTK and Qt | 12:05 | ||
El_Che | QT, ugly everywhere :) | 12:15 | |
mornfall | tyil: don't hold your breath | 12:21 | |
tyil | El_Che: not my favourite either, but you cant deny its popular nonetheless | ||
El_Che | tyil: I am good at denial :) | ||
tyil | I'd rather make a fair comparison in how either can be used first | 12:22 | |
mornfall | are we talking qml or the legacy qt widgets? | ||
tyil | mornfall: I never made anything with Qt, so I have no clue | ||
I'd just like a module for it to be available in Perl 6 so I can play around with it | |||
mornfall | qt is huge :) | ||
tyil | I'm aware | 12:23 | |
I compile it from time to time | |||
mornfall | it has interfaces for stuff like bluetooth, gps, web browsing, probably telephony... basically covers everything :p | ||
so the question would sort of become which part of it you want in perl6 | 12:25 | ||
there are like 3 javascript interpreters in qt? | |||
tyil | the part that allows for making a gui | ||
a simple application interface | 12:26 | ||
mornfall | so traditional desktop stuff? | ||
tyil | like the one I can make with GTK | ||
mornfall | i don't think it has much of a future, to be honest | ||
El_Che | ? | 12:27 | |
mornfall | the widget set that qt keeps around | ||
El_Che | the rumours of the desktop's death have been greatly exaggerated | 12:28 | |
mornfall | no they haven't | ||
El_Che | I am typing this on a desktop | 12:29 | |
mornfall | i barely see any native desktop apps when i watch students work with computers | ||
tyil | yes, we are | ||
but we are the exception here | |||
El_Che | there is a difference with multi device usage and death of desktops | 12:30 | |
I use all of them | |||
tyil | looking at my own family, I think I'm the only one with a desktop | ||
mornfall | they live in the browser... they even write C code in a browser | ||
tyil | my sisters, parents, aunts/uncles/neices all use tablets and rarely a laptop | ||
Geth | doc: taboege++ created pull request #2500: Two Pod table fixes |
||
mornfall | it's not a 'desktop' if all you have it for is switching between browser windows | ||
El_Che | a desktop is also the interface | 12:31 | |
mouse, keyboard, bigger screen, powerful OS | |||
mornfall | not in the context of widget toolkits, it is not | 12:32 | |
El_Che | they react differently | ||
mobile-like widgets on desktops are a pest | 12:33 | ||
(or deskop apps on mobile) | |||
12:34
mrsolo joined,
p6bannerbot sets mode: +v mrsolo
|
|||
mornfall | my point was that desktop apps are dying out... you can't counter that point by saying people still use keyboards and mice | 12:34 | |
even bloody office suites live in the browser now | |||
El_Che | and they suck terribly | ||
mornfall | (and have been for a while) | ||
and people use them anyway | |||
so what gives? | |||
El_Che | I don't think people pay expensive licenses for office to use it on a browser | ||
mornfall | people mostly just use the free google versions :p | 12:35 | |
tyil | they actually do | ||
El_Che | I don't see people writing thesises or project charters on their phone | ||
for simple stuff, there is google indeed | |||
mornfall | isn't there a free tier on ms office in the browser too? | ||
12:35
timeless joined,
p6bannerbot sets mode: +v timeless
|
|||
mornfall | El_Che: people write theses in overleaf | 12:35 | |
tyil | El_Che: you'd be surprised what students nowadays use their phones for I guess | ||
mornfall | of course they do :) | ||
tyil | it wouldn't be the first time I'll see a student fill out some excel sheet on their phones | 12:36 | |
mornfall | sure they open a laptop for that, but that's for the keyboard, not for desktop apps | ||
tyil | because "it's easier than grabbing the laptop" | ||
El_Che | we need to check with jmerelo, he's a professor | 12:37 | |
12:37
pmurias joined,
p6bannerbot sets mode: +v pmurias
|
|||
tyil | I'm a student | 12:38 | |
tyil shrugs | |||
mornfall | i'm an assistant professor :p does that make my point more valid? ;-) | ||
vs.code is pretty popular | |||
El_Che | mornfall: yes, it does, as you can see what 'the' youth does | 12:39 | |
(we're all doomed) | |||
:) | |||
tyil | I find it odd that a student's perception of what students do is not valid, but their prof's perception is | ||
mornfall | the way i see it, there's a 3-way split | ||
El_Che | I was at dockercon this week, and many speakers we pushing Windows containers and using vs code | 12:40 | |
(bah) | |||
tyil: no one says it's not valid | |||
it's valid allright | |||
mornfall | there are the 'terminal people' (not too many, but still exists), there are the cloud people (vs.code or worse) and the middle road is the Java people | ||
Java people stick to their Java apps somehow | |||
tyil | it's just a strange argumentation to say "we need to ask someone else who isn't even in the target group that was addressed" | ||
mornfall | Java and PyCharm, unless PyCharm is actually an electron app? no idea actually | 12:41 | |
tyil | mornfall: no, PyCharm is a java based IDE iirc | ||
El_Che | mornfall: I am a terminal (vim) +'Java' person (IntelliJ for Go) | ||
:) | |||
no PyCharm is java | |||
== IntelliJ | |||
mornfall | yeah... there's a perl6 ide in java isn't there | ||
IDEA? | |||
El_Che | yes | ||
Comma is also IntelliJ based | 12:42 | ||
mornfall | the Java IDEs somehow keep on going | ||
El_Che | they are good | ||
mornfall | i guess the hardware finally caught up :p | ||
El_Che | and... fast | ||
mornfall | compared to electron, they seem fast | ||
i still remember waiting for eclipse or netbeans to redraw :D | |||
i guess netbeans are not a thing anymore | 12:43 | ||
tyil | "fast" is not the term I'd use | ||
El_Che | tyil: fast-on-my-hardware | ||
mornfall | tyil: it's not hard to beat a blob of javascript on speed | ||
tyil | idk, Comma still takes a couple seconds to become usable | ||
that doesn't strike me as "fast" when editors could start up in a split-second a decade ago | 12:44 | ||
El_Che | ok, true | ||
it's stays java | |||
but once it's up, it's fast | |||
tyil | it's acceptable in speed I guess | ||
El_Che | (they do the splash screen trick to work around the slow startup) | ||
splash screen + small windows to select which project to open) | 12:45 | ||
mornfall | yeah splash screens... people actually make startup slower on purpose to be allowed a splash screen :p | ||
El_Che | here they need in order to prevent people to open the app several times because nothing happens :) | ||
tyil | I had to make an app with a splash screen for uni once | 12:46 | |
we unironically had to make startup slower so we could show a splash screen | |||
>_> | |||
12:46
pmurias left
|
|||
mornfall | but compare to discord or some other spawn-of-cthulhu electron app | 12:46 | |
tyil | the splash screen was a required part of the assignment for some reason | ||
El_Che | slash screen is so silly | ||
mornfall | java doesn't seem slow in comparison to that | ||
12:46
domidumont joined
|
|||
El_Che | well, once warmed up, Java is pretty fast | 12:47 | |
mornfall | El_Che: but it gives users the feel that they are launching something substantial... something worth their money :p | ||
El_Che | mornfall: and then I think eclipse :) | ||
12:47
p6bannerbot sets mode: +v domidumont
|
|||
El_Che | (why do they make splash screens also ugly?) | 12:47 | |
mornfall | i'm pretty sure customers would feel cheated if apps just popped into existence in a split second, ready to use | 12:48 | |
even bloody spacemacs has a bloody progress bar starting up | 12:49 | ||
its only saving grace is that i don't close it | |||
12:54
pmurias joined,
p6bannerbot sets mode: +v pmurias
|
|||
pmurias | tyil: I feel most people who use java IDEs keep their editor open instead of openning and closing it for every edit | 12:55 | |
yoleaux | 04:53Z <SmokeMachine> pmurias: I think there is a hardcoded path on rakudo.js... /home/pmurias/nqp/install/share/nqp/lib/nqp-js-on-js/node_modules/nqp-runtime | ||
04:54Z <SmokeMachine> pmurias: www.irccloud.com/pastebin/HgDTYu5K/ | |||
04:56Z <SmokeMachine> pmurias: nqp.libpath(["/home/pmurias/rakudo/node_modules/","/home/pmurias/nqp/install/share/nqp/lib/nqp-js-on-js/"]); | |||
05:05Z <SmokeMachine> pmurias: when I changed `require("/home/pmurias/nqp/install/share/nqp/lib/nqp-js-on-js/node_modules/nqp-runtime")`to `require("nqp-runtime")` (and installed nqp-runtime) it just worked! Thanks | |||
El_Che | pmurias: amen, brother :) | 12:56 | |
pmurias | personally I just hate how UI style of IDEs, I could wait 20seconds more if they just gave me a vim in terminal look without all the GUI shit | 12:58 | |
tyil | pmurias: surely, but that's unrelated to the startup time | ||
whether I keep any program open or not doesn't really have anything to do with it's startup time | |||
12:58
pmurias left
13:00
pmurias joined,
p6bannerbot sets mode: +v pmurias
|
|||
pmurias | tyil: it's super related, if you do the open-and-close-vim between every program run starup time is super important | 13:00 | |
tyil: if you start it up once per day it's not | |||
tyil | I keep vim open for long sessions as well | ||
vim still starts up faster | |||
El_Che | (unrelated: unless you have the puppet plugin installed) | 13:01 | |
pmurias | tyil: yes, but it doesn't matter much how long it starts up | 13:02 | |
tyil | it does to me | ||
pmurias | why? | ||
tyil | when I want to stat working on a project, I want to start working on it now | ||
I dont want to have to wait for some editor to start up because of inefficient programming | |||
especially not when I'm on a laptop with limited power supply | 13:03 | ||
El_Che | not a lot beats vim on that kind of setup | 13:05 | |
tyil | nano, ed, joe, emacs (in some configurations, that is) | 13:06 | |
nvim/vi | |||
Geth | doc: e83b221936 | (Tobias Boege)++ | doc/Language/operators.pod6 Escape '+' in identity value table The '+' in "Arithmetic +" in the table of operator identity values acted as a column separator. Escape it. |
||
doc: 8b83e2ff5b | (Tobias Boege)++ | doc/Type/Str.pod6 Fix multi-line content in sprintf flag table |
|||
doc: a454e6adea | (Juan Julián Merelo Guervós)++ (committed using GitHub Web editor) | 2 files Merge pull request #2500 from taboege/identity-table Two Pod table fixes |
|||
13:07
dogbert17 joined
13:08
p6bannerbot sets mode: +v dogbert17
13:11
go|dfish joined,
p6bannerbot sets mode: +v go|dfish
|
|||
tyil | El_Che: my biggest issue with vim for Perl 6 is that it seems to be unbearably slow when using the vim-perl6 plugin to get decent syntax highlighting | 13:11 | |
but vim is so far the only editor that I can get to convert ascii ops to unicode ops as I write | 13:12 | ||
Perl6::Tidy seems to crash on every file I've tried | |||
(which supposedly should convert ascii ops to unicode ops) | |||
pmurias hates that vim is configured extended in vimscript crap | 13:13 | ||
13:13
gfldex joined
13:14
p6bannerbot sets mode: +v gfldex
|
|||
pmurias | it's interesting if a lot of people would use 'modern ide with a vim in terminal style interface' product | 13:14 | |
tyil | there's nvim for those people | 13:15 | |
I find viml to be much more approachable than lisp | |||
13:16
kensanata joined,
p6bannerbot sets mode: +v kensanata
|
|||
pmurias | tyil: I wouldn't be surprised if you enjoyed going to the dentist ;) | 13:16 | |
tyil | and having an actual programming language available for configuration is p nice | ||
kinof a weird remark to make | |||
SmokeMachine | I like vimscript too... | 13:17 | |
El_Che | my experience with vimscript was mostly trial-and-error | ||
not much doc around | |||
tyil | it's certainly not my fave lang, but as a lang to get into from nothing? vim is much easier to configure than emacs in that regard | ||
13:19
kurahaupo joined
13:20
p6bannerbot sets mode: +v kurahaupo
|
|||
pmurias | tyil: just a joke that you like something almost universally considered unpleasant ;) | 13:21 | |
timotimo: I added scroll bars to the 6pad dom output windows | 13:23 | ||
tyil | maybe by you, but certainly not "universally" | ||
sjn | tyil: pfft. everyone knows that pmurias has definotional authority over all things universal! :D | 13:25 | |
definitional* | |||
tyil | eh | 13:26 | |
I just dont think its adding anything wortwhile to the discussion to make a petty remark | |||
El_Che | sjn: there has been some talk to rename de Mu class to PMurias | ||
sjn waits for pmurias' defining wand and point at something, shouting "UNIVERSAL"! :) | 13:27 | ||
lizmat | guys, cut it out (that molar, I guess :-) | ||
sjn | El_Che: hehehe | ||
13:29
ChoHag left
|
|||
sjn | lizmat: now, dentist jokes - *those* give me a bad taste :) | 13:29 | |
lizmat | .oO( have another mint ) |
13:30 | |
sjn | hehe | ||
lizmat attempts to change the type of joke | |||
sjn | you pierced my jokes with a spearmint | ||
but sure, it was a breath of fresh air | 13:31 | ||
lizmat | .oO( leaky lozenges ) |
||
Woodi | hi today :) | ||
sjn | o/ Woodi | 13:32 | |
Woodi | new Knuth lecture, if someone didn't see it yet: www.youtube.com/watch?v=t9OcDYfHqOk | ||
so, linked lists can be represented as 3 column arrays :) and instant garbage collection is bad... | 13:33 | ||
also some bilion-nth $ business is just subset of resolving sudoku theory :> | 13:34 | ||
13:35
kurahaupo left,
kurahaupo joined
13:36
p6bannerbot sets mode: +v kurahaupo
|
|||
Woodi | and on the current topic ;) : I just almoust decided to learn QT5 apps making and you saying desktops are dead :) but, imo, it's like with VMS and game consoles and 8bit computers in 80's - PC was just more universal so it have a niche :) | 13:38 | |
13:45
abraxxa left
13:46
abraxxa joined
13:47
p6bannerbot sets mode: +v abraxxa
13:49
abraxxa left
13:52
kerframil joined,
p6bannerbot sets mode: +v kerframil
|
|||
Woodi | but maybe you are right with browser-future... eg. just released QT 5.12 LTS have just 3 years support. porting to 6 is predicted to be easy. but why rewrite app just after ~6 years, it's stupid. pure X apps have 20+ years and just works. but X is ending now. so: is pure PHP / CGI / server-side apps with basic HTML a long term recipe ? | 14:03 | |
14:04
pmurias left
14:05
pmurias joined,
p6bannerbot sets mode: +v pmurias
|
|||
pmurias | Woodi: I would rather port a Qt app in 3 year to a new version than use PHP over CGI | 14:08 | |
14:09
jmerelo left
|
|||
Woodi | pmurias: problem is that big IT companies enforce apps rewrite/recycling. I would realy like some stable GUI platform... | 14:12 | |
masak | Woodi: ooh, dancing links. thank you for the heads-up. :) | 14:14 | |
Woodi: you may or may not be familiar with my github.com/masak/dlx-simple | 14:15 | ||
(certainly a project that could benefit a little from getting closer to its full vision) | |||
14:16
curan left
14:17
AlexDaniel joined,
p6bannerbot sets mode: +v AlexDaniel
14:18
AlexDaniel left
|
|||
Woodi | masak: I must confess that after that video and some wikipedia I still don't get "dancing nodes" idea :) probably Knuth explain it when he shows "3D" linked list... | 14:18 | |
14:18
vrurg joined,
pmurias left
14:19
p6bannerbot sets mode: +v vrurg,
pmurias joined,
p6bannerbot sets mode: +v pmurias,
pmurias left
14:20
harrison joined
|
|||
masak | Woodi: the fundamental idea is this. if you want to remove node B in a doubly linked list, that is, go from A<->B<->C to A<->C (and B on the side)... | 14:20 | |
14:20
vrurg left
|
|||
masak | ...then B can still *keep* its links back to A and C (even when A and C now point to each other)... | 14:20 | |
14:20
p6bannerbot sets mode: +v harrison
|
|||
masak | ...and that's enough information to later *re-insert* B in-between A and C! | 14:20 | |
even cooler: you can do this many times over, as long as you're careful to re-insert in LIFO (stack-based) order | 14:21 | ||
the whole Dancing Links approach falls out from this "simple" observation | |||
kurahaupo | Doing it out of lifo order gets entertaining | ||
masak | main benefits of it: it's constant space, and it's *really* fast, since all we're doing is manipulating links (references) all over the place | 14:22 | |
Woodi | maybe I don't get "array on the side" part :) | ||
masak | no copying in the recursive call at all | ||
Woodi: maybe you need to start with doubly linked lists, then ;) | |||
they're not so common in Perl | |||
kurahaupo: LIFO order is just what a recursive search needs | |||
Woodi: in (singly and doubly) linked lists, all the element nodes are allocated separately, and can be in non-contiguous parts of memory. unlike an array, where they are always next to each other. | 14:23 | ||
Woodi: to know how to navigate between the nodes in a linked list, you have *links* (references) between the nodes. 1 in singly linked lists, 2 (backwards and forwards) in doubly linked. | 14:24 | ||
Woodi: think of it maybe as a 1D graph :) | |||
mornfall | wait, where did the part about linked lists being fast come from? | ||
Woodi | masak: hey, I got that part :) | 14:25 | |
masak | ok, just checking :) | ||
mornfall: linked lists in themselves are not especially fast, I guess | |||
mornfall: arrays can beat them on their own home turf, under some conditions | |||
mornfall: what's fast in DLX is the complete lack of value copying between recursive calls, which is unusual | 14:26 | ||
Woodi | probably picture at 23:50 makes me dizzy | ||
masak | mornfall: instead of producing a safe-to-mutate copy, DLX is able to restore the state completely on the way back up out of the recursion | ||
(again, because recursion means LIFO) | |||
14:26
tobs` left
|
|||
SmokeMachine | timotimo: excuse me, but im just curious... on `EVAL :lang<JavaScript>, 'HTMLElement.prototype.defined = function() { return true }';` were you inspired by MemoizedDOM? | 14:26 | |
mornfall | masak: DLX was the context i was missing | 14:27 | |
timotimo | SmokeMachine: i stole it. i have no idea if it's for anything :D | ||
masak | Woodi: allow me to also recommend the very readable and colorful PDF: arxiv.org/pdf/cs/0011047.pdf | ||
& | |||
Woodi | masak: thanx, checking | ||
mornfall | the whole state has to be sufficiently big for this to pay off either way | 14:28 | |
SmokeMachine | timotimo: :) | ||
timotimo: yes, I think you are not using that... I had to do that because I where testing the definiteness of a dom element... | 14:29 | ||
timotimo: great article! :) | 14:31 | ||
timotimo | thanks! | ||
Geth | doc: hchienjo++ created pull request #2501: Replace -v with --verbose |
14:32 | |
sena_kun | tyil, o/ re GtkPlus: I am not its author, but not really sure. I have tried it recently, just running some tests, and it was very promising. OTOH, it has some tests failing, some errors and even segfaults, so I think it is "work in progress enough" to wait. | 14:37 | |
tyil | sena_kun: alright, I'll leave it as is then (for now) :) | 14:38 | |
14:39
zakharyas left,
MasterDuke joined,
p6bannerbot sets mode: +v MasterDuke,
MasterDuke left,
MasterDuke joined,
herbert.freenode.net sets mode: +v MasterDuke,
p6bannerbot sets mode: +v MasterDuke
|
|||
sena_kun | I just suggested it because for _internal_ play with some UI in Perl 6, it might be cool, if one won't touch some features(and you usually don't want to use _all_ features of Gtk :) ). Also, additional testing can help author a lot with even bug reports, which is a plus if one isn't going to write some "enterprisey" stuff. | 14:40 | |
[Coke] | ARGH | 14:42 | |
I should have opened a ticket, I guess; the update of rakudo on the doc site has broken the build. | |||
docs.perl6.org/build-log/build-201...+00:00.log | |||
(there was a discussion in IRC days or weeksa go) | 14:43 | ||
it now dies with | |||
Cannot resolve caller handle(Pod::Defn{:term("Hap..., :part-config({anchored => True, h...), :toc-counter(Pod::To::BigPage::TO...), :part-number(35), :pod-name(/language/039-pod.pod6)); none of these signatures match: | |||
there was about the error in general: github.com/perl6/doc/issues/2424 | 14:44 | ||
but not a separate one to safely update rakudo on the site. | |||
so I would expect any new updates to not get pushed out until this breaking pod change that was introduced to rakudo is fixed. | 14:45 | ||
(or dealt with in Pod::To::Bigpage) | |||
14:51
MasterDuke left
15:01
AlexDaniel joined,
p6bannerbot sets mode: +v AlexDaniel
15:02
kensanata left
15:03
pmurias joined,
p6bannerbot sets mode: +v pmurias
15:05
yqt left
15:07
pmurias left
15:21
harrison left
15:23
kurahaupo left
15:26
kurahaupo joined,
p6bannerbot sets mode: +v kurahaupo
15:27
Actualeyes left
15:50
kurahaupo left,
kurahaupo joined
15:51
p6bannerbot sets mode: +v kurahaupo
15:53
zacts joined,
p6bannerbot sets mode: +v zacts
15:55
zacts left,
zacts joined,
p6bannerbot sets mode: +v zacts
16:13
kurahaupo left
16:14
kurahaupo joined,
p6bannerbot sets mode: +v kurahaupo
16:15
pmurias joined,
p6bannerbot sets mode: +v pmurias
16:20
pmurias left
16:25
lizmat left
16:27
census joined,
p6bannerbot sets mode: +v census
16:29
lizmat joined,
p6bannerbot sets mode: +v lizmat
16:33
raynold_ joined,
p6bannerbot sets mode: +v raynold_
16:34
pmurias joined,
p6bannerbot sets mode: +v pmurias,
census left
16:36
zacts left
|
|||
pmurias | timotimo: btw have you noticed anything you want improved in 6pad/rakudo.js? | 16:36 | |
SmokeMachine: the 0.28.0 parcel-plugin-nqp shouldn't hardcode the /home/pmurias path anymmore | 16:38 | ||
SmokeMachine | pmurias: thanks! | 16:39 | |
16:45
domidumont left
16:46
kurahaupo left,
kurahaupo joined
16:47
p6bannerbot sets mode: +v kurahaupo
16:48
robertle left
16:49
raynold_ left
16:58
araujo left
17:00
zacts joined,
p6bannerbot sets mode: +v zacts
|
|||
Altreus | So I'm doing this Discord API and I have a design question | 17:02 | |
Sometimes, the API sends us partial data and so I can construct a partial object | |||
I can use Attribute::Predicate to test whether I have a particular field set, and fetch the rest of the object if not | |||
However, I'd then like a value that looks undefined except to Attribute::Predicate, so if we have already fetched and the API said it was undefined, we don't fetch again | 17:03 | ||
Much like how Perl5's Moose can tell that an attribute has been explicitly set to undef, versus having not been set | |||
Also I kind of want to have a pre-fetch modifier on all the attributes so that if they haven't been set I can synchronously fetch them before returning the value ... is that even possible? | 17:04 | ||
I suppose the answer is yes but MOP | 17:05 | ||
mornfall | i would just add private attributes that specify whether the real thing was already fetched or not | ||
but that's kinda lowtech | 17:06 | ||
Geth | doc: 417fcc8692 | (Harrison Chienjo)++ | doc/Language/create-cli.pod6 Squashed commit of the following: commit c8eef326fc7efe6f0e09de6677e9dd1c1e7a9aa1 Author: Harrison Chienjo [email@hidden.address] Date: Fri Dec 7 17:25:16 2018 +0300 Replace -v with --verbose. |
||
doc: ec77bebbf9 | (Juan Julián Merelo Guervós)++ (committed using GitHub Web editor) | doc/Language/create-cli.pod6 Merge pull request #2501 from hchienjo/fix-cmd-typo Replace -v with --verbose |
|||
17:06
duffee left
|
|||
pmurias | Altreus: re pre-fetch modifier on attributes, it's not possible | 17:08 | |
Altreus | :( cry | 17:09 | |
pmurias | Altreus: you can't intercept attribute access at all, you can however have custom accessors | ||
Altreus | can I do them magically so I don't have to fill my file with boilerplate? | ||
pmurias | Altreus: yes | 17:10 | |
Altreus: you can add method with the MOP | |||
* methods | |||
Altreus | mop is not in my wheelhouse yet :D | 17:11 | |
I tried figuring it out a couple of times but I need to grasp some more fundamentals first | |||
17:13
scimon left
|
|||
Xliff | \o | 17:19 | |
mornfall | nobody likes the mop :( | 17:26 | |
kinda like continuations | |||
or even proper coroutines | 17:27 | ||
for most students, the call stack is about as much magic as they can stomach :p | |||
sena_kun likes MOP a lot | |||
17:28
japhb_ joined,
p6bannerbot sets mode: +v japhb_
17:31
domidumont joined
17:32
lizmat left,
p6bannerbot sets mode: +v domidumont
|
|||
Geth | doc: 04a027dbc0 | (JJ Merelo)++ | META6.json Upgrades Pod::to::BigPage closes #2424 |
17:34 | |
17:35
zacts left
|
|||
SmokeMachine | you could intercept attribute access if the were Proxy... at least until 2018.10 | 17:52 | |
17:54
pmurias left
|
|||
SmokeMachine | commit: 2018.10 class C { has $!a }; C.^add_multi_method: "a", method () is rw { self.^attributes.head.get_value: self }; C.^compose; my $c = C.new; $c.^attributes.head.set_value: $c, Proxy.new: FETCH => method { say "FETCH" }, STORE => method (|) { say "STORE" }; say $c.a; $c.a = 42 # <- Altreus pmurias | 17:58 | |
committable6 | SmokeMachine, ¦2018.10: «FETCHFETCHFETCHFETCHFETCHFETCHFETCHFETCHFETCHFETCHFETCHFETCHFETCHTrueSTORE» | ||
SmokeMachine | m: class C { has $!a }; C.^add_multi_method: "a", method () is rw { self.^attributes.head.get_value: self }; C.^compose; my $c = C.new; $c.^attributes.head.set_value: $c, Proxy.new: FETCH => method { say "FETCH" }, STORE => method (|) { say "STORE" }; say $c.a; $c.a = 42 | 18:01 | |
camelia | FETCH Cannot modify an immutable Bool (True) in block <unit> at <tmp> line 1 FETCH FETCH True FETCH |
||
18:02
pmurias joined,
p6bannerbot sets mode: +v pmurias
|
|||
pmurias | SmokeMachine: technically that's putting a Proxy into the attribute | 18:02 | |
you are intercepting the value being stored into the scalar taken from the attribute, not the attribute itself being accessed | 18:03 | ||
SmokeMachine | pmurias: yes, you are right, but that way you can "do that" that's how I mark an attribute as dirty on Red | 18:05 | |
18:11
Marcool joined
18:18
sauvin left
18:21
dct joined,
p6bannerbot sets mode: +v dct
|
|||
Xliff | Can you pass Nil to a NativeCall function expecting a callback? | 18:28 | |
18:30
Thaeus joined
18:31
|oLa| joined,
p6bannerbot sets mode: +v Thaeus
18:32
p6bannerbot sets mode: +v |oLa|
|
|||
Kaiepi | am i handling exceptions right here? hastebin.com/ajedoxenol.rb | 18:33 | |
AlexDaniel | hmm did we have any consensus on whether module exceptions should start with X:: ? | 18:35 | |
in other words X::MyModule::Sumtinwong vs MyModule::X::Sumtinwong | |||
sena_kun | in Cro we do the first one. | 18:37 | |
Kaiepi | hmm returning failures in methods that return promises might not be a good idea | ||
maybe if i wrap them in a promise | 18:38 | ||
18:38
|oLa| left
|
|||
El_Che | wouldn't MyModule::X::Sumtinwong result in less accidental overriding of exception classes? | 18:39 | |
(as it is scoped on the module level?) | 18:40 | ||
Kaiepi | depends on how you name it after the X | 18:41 | |
i've been doing X::<project name>::<error> | 18:42 | ||
18:43
coet joined,
p6bannerbot sets mode: +v coet
|
|||
El_Che | Kaiepi: I mean, they are both convention, but X:: is more liberal | 18:47 | |
18:48
Kaiepi left,
Kaiepi joined
|
|||
El_Che | it reminds me a little of _this_is_a_private_method_in_a_sister_languege() :) | 18:48 | |
18:49
p6bannerbot sets mode: +v Kaiepi
18:54
dct left
19:05
|oLa| joined
19:06
p6bannerbot sets mode: +v |oLa|
19:19
Kaiepi left,
Kaypie joined
19:20
p6bannerbot sets mode: +v Kaypie
19:21
Kaypie left
19:22
Kaypie joined,
p6bannerbot sets mode: +v Kaypie
19:23
Marcool left
19:24
zakharyas joined
19:25
p6bannerbot sets mode: +v zakharyas
19:30
zacts joined,
p6bannerbot sets mode: +v zacts
19:39
vike left
19:40
greppable6 left,
bloatable6 left,
bloatable6 joined,
greppable6 joined,
vike joined
19:41
p6bannerbot sets mode: +v bloatable6,
p6bannerbot sets mode: +v greppable6,
p6bannerbot sets mode: +v vike
|
|||
Geth | doc: 5c0d887690 | (Steve Mynott)++ | doc/Language/faq.pod6 update for 6.d release |
19:47 | |
19:50
Sgeo left
19:54
pmurias left,
pmurias joined,
p6bannerbot sets mode: +v pmurias
20:00
lizmat joined,
p6bannerbot sets mode: +v lizmat,
lizmat left
20:06
|oLa| left
20:08
lizmat joined,
p6bannerbot sets mode: +v lizmat
20:15
zacts left,
Sgeo joined
20:16
zakharyas left,
p6bannerbot sets mode: +v Sgeo
20:18
domidumont left
|
|||
mornfall | Cro keeps being mentioned... but can someone tell me what it actually is? | 20:21 | |
yes i have seen the homepage, it has a lofty blurb which tells me nothing, unfortunately | 20:22 | ||
when you say reactive distributed system, i think of erlang | |||
pmurias | a microservice oriented web framework | ||
mornfall | which is a bit of a buzzword itself... what does it actually do though? :) | 20:23 | |
El_Che | it offers and consumes http request with support for middleware | ||
like most http microservices or frameworks out there | 20:24 | ||
mornfall | so it's something like aiohttp for python asyncio? an http server + http client? | 20:26 | |
sena_kun | no | ||
give me a minute or something | |||
I'll try to write it up shortly, but easy to grasp | |||
:) | |||
El_Che | mornfall: something like the built-in http package in go | ||
or the echo webframework slightly on top | |||
mornfall | i don't know much about go, unfortunately | ||
El_Che | (becasue of the middleware) | ||
(I don't know much about python :) ) | 20:27 | ||
sena_kun | mornfall, do you know about Supply/Supplier? | ||
mornfall | sure | ||
sena_kun | ok, that'd be easier, so writing. :) | ||
El_Che | mornfall: or mojolicious if you know Perl 5? | 20:28 | |
mornfall | i know about distributed applications too and distributed computing, even MPI if need be :p | ||
El_Che: perl5 yes, but not mojolicious | |||
sena_kun | El_Che, I am sorry, but Cro is nothing like Mojolicious viewing from isides, I am afraid. :S It is not a web framework, but it can be. | 20:29 | |
mornfall | i'm looking at cro-http-middleware, because that's clearly the bit i don't get :) | ||
El_Che | sena_kun: the same approache to routing as a sub? | ||
mornfall | (to be honest, i don't really know what middleware normally means, but when you say middleware i imagine jboss :p) | 20:30 | |
sena_kun | El_Che, it does not matter. Cro::Transform and other primitives from Cro::Core are what makes it awesome. Everything else is just a plain application of a nice pattern. :) | 20:31 | |
though I am biased, of course. | |||
El_Che | hehe | ||
I didn't mean it's a copy | |||
mornfall | well, i mostly imagine a frankenstein of an object persistence layer along with a bunch of overengineered protocols based on XML-RPC | 20:34 | |
i think i might have passed a course on middleware that involved doing a practical project too, but i basically passed it with my eyes glazed over | |||
El_Che | mornfall: middleware on cro (or go for that matter) is just wrapping functions | ||
not like those in Java | |||
mornfall | to be fair, cro-http-middleware sounds a bit like aspect-oriented programming in disguise | ||
20:34
graphene left
|
|||
mornfall | (aspects are nice, but unfortunately i find it hard to factor things cleanly into aspects because usually there are semantic dependencies between things, and then it isn't nearly as neat as theory says it should be) | 20:36 | |
20:36
graphene joined
20:37
p6bannerbot sets mode: +v graphene
|
|||
mornfall | also there's a zeromq class... that does seem related to java middlewares? | 20:37 | |
20:38
Kaypie left
20:39
Kaypie joined,
p6bannerbot sets mode: +v Kaypie
|
|||
sena_kun | ok, so the basic idea is that you can, well, chain supplies. for example, you have a supply that gives you raw bytes from a socket. let's assume those bytes are actually plain HTTP/1.1 messages. You can write a nice incremental request parser to get those requests out. so our first supply gives us bytes, and our parser gives us requests already parsed... something like `whenever $bytes -> $message { (try to parse, if we have a complete | 20:41 | |
message, do something with the message) }`. but the code that does something with messages is not really nice to _compose_. To make it nicely composeable, we can do roughtly `supply { whenever $bytes { my $req = parse($_); emit $req } }` and then you can use this supply as a source of not some bytes anymore, but as requests. boom! in fact, Cro::Core describes a number of nicely designed primitives to have, for examples, "source of | |||
messages A", "transformer that takes a stream of messages A and turns those into stream of messages B", "sink of messages B"(for example, when you send response bytes into socket, there is no way from there), "Conditional transform" and others. Everything above is built around the core concept that you can create computational chains: HTTP, HTTP/2, ZeroMQ, WebSockets, more to come. Those are not main things here, just things where this | |||
pattern is applied nicely. | |||
20:42
yqt joined
|
|||
mornfall | did you just describe the Oleg left fold enumerators? :p | 20:42 | |
sena_kun | so it is more of a framework to do some `get-data.map.map.map-send`, but with modularity, async and _a lot_ of goodies out of the box. :) | 20:43 | |
mornfall, yup | |||
kind of | |||
20:43
p6bannerbot sets mode: +v yqt
|
|||
mornfall | okay, that's a language i can understand :p | 20:43 | |
i mean, it's what .lines does on Proc::Async's stdout/stderr supplies | 20:44 | ||
sena_kun | mornfall, you can see Cro as a thing that lets you build composable morphisms nicely in Perl 6, if you want. *yawns* | ||
mornfall | yes, it's a nice concept and having building blocks like that is useful | ||
sena_kun | yup, so that's about it. seeing Cro being compared to $some-web-framework just because it implements HTTP is a bit of underestimation if you ask me. :> | 20:45 | |
mornfall | i just absolutely hate writing the plumbing for those :P | ||
sena_kun | for end users, I think, things like http web server with quite a smart router are easier to get and use. but at the end of the day, well, given an example... | 20:47 | |
mornfall | i picked aiohttp in particular because that's based on coroutines and an event loop, which feeds the data from sockets into the coroutines in chunks, and aiohttp is part of the plumbing that'll dice the chunks into http-logical pieces | ||
but it does fall short of the full iteratee/enumerator treatment | 20:48 | ||
sena_kun | HTTP/2 is based on HTTP/1.1, but is actually binary protocol transferred using binary frames. in usual HTTP, our chain for a server is like `bytes->RequestParser->router->ResponseSerializer`. To do HTTP/2, we just took old components, already written, and sticked two more Cro::Transforms, composing it like: `bytes->FrameParser->RequestParser->Router->ResponseSerializer->FrameSerializer`. | 20:50 | |
haven't used aiohttp, so cannot compare. | 20:51 | ||
mornfall | i didn't either, i just force students to try it out :p | ||
sena_kun | heh | 20:52 | |
mornfall | asyncio and aiohttp is a pretty big step forward from anything else i have seen on python, tbh | ||
but that doesn't say much, because a lot of python out there is just garbage :( | |||
sena_kun | well, I haven't written anything in python for a couple of years, so dunno. | 20:53 | |
20:53
CaptHindsight joined
|
|||
pmurias | ' | 20:53 | |
20:53
CaptHindsight left
|
|||
pmurias | sorry | 20:53 | |
mornfall | (though there are a few sharp edges about perl6 that i already dislike, like its propensity to eat up exceptions :p) | 20:54 | |
(though some of that is my fault for taking an axe to it because i was time-constrained...) | 20:55 | ||
sena_kun | I got bitten by it too, sometimes. :/ | ||
pmurias | sena_kun: it could be a good idea to have a "What's the secret sauce?" style page in cro docs | ||
sena_kun | on the other hand, I really love features Perl 6 offers. :P | ||
pmurias, yup, that might be. Thanks for an idea! I'll file an issue, I guess. | 20:56 | ||
though I wonder if a page buried in the docs will be enough. | |||
I mean, we already have cro.services/docs/approach which describes, you know, `Approach`. | 20:57 | ||
it is not being reached by e.g. mornfall is another question. :) | 20:58 | ||
mornfall | i think my main problem is that looking at the main page and lightly browsing the docs didn't answer the question "what can this do for me"? | 20:59 | |
still, people keep mentioning Cro so well, it is probably good for *something*? :) | |||
sena_kun | :) | 21:00 | |
well, thanks a lot for mentioning it here. | |||
because such issues should be addressed as well as "normal" bug reports. :> | 21:01 | ||
21:06
kerframil left
|
|||
pmurias | mornfall: people use it as a web framework in Perl 6 | 21:08 | |
mornfall | yes, that makes sense, and i would at least consider the client parts instead of HTTP::UserAgent for my test clients | 21:10 | |
i even installed some Cro components when Cro came up in zef searches, but couldn't really make much sense of the homepage :p | 21:11 | ||
and i didn't need an http server | |||
sena_kun created a ticket | 21:12 | ||
mornfall | (that Cro has an http server was about the only obvious thing to me at the time :p) | ||
sena_kun | mornfall, I hope this bit of mis-understanding is cleared up now. :) | ||
21:13
xlat joined,
p6bannerbot sets mode: +v xlat
|
|||
mornfall | yes, though i will need to explore the APIs a bit to see how useful it's going to be for my purposes :-) | 21:14 | |
sena_kun writes yet another large Cro module in the meanwhile | 21:15 | ||
mornfall | async is good, especially if i can combine it into a single event loop with Proc::Async | ||
being able to fire off an http request and just react when it goes through would have saved me a lot of trouble :p | 21:16 | ||
sena_kun: i think the other thing that put me off is $ p6doc Cro::SSL → No Pod found in [...] | 21:20 | ||
(i have that command in history from a few days ago) | |||
sena_kun | Cro::TLS is a thing, Cro::SSL is deprecated. | ||
mornfall | yes, i just noticed on the web | ||
unfortunately zef search SSL doesn't find Cro::TLS | 21:21 | ||
sena_kun | unfortunately, I don't use `p6doc` and not really sure what it does. in, like, I get it gets you some docs, but what sources are used and what we can do to support it. | ||
mornfall | sena_kun: it just looks at the module and shows you the pod in the module | ||
sena_kun | well, the docs are written separately in our case, so no pod. :/ | 21:22 | |
mornfall | yeah, this is a disturbing trend in perl6 :( | ||
each module or family of modules has its own documentation in its own location | 21:23 | ||
sena_kun | why so? | ||
mornfall | well with perl5, i can get virtually anything from cpan, type man Module::Foo and get decent docs | ||
tbrowder | moritz: looks to me like advent day has a problem: the day is not highlighted on the calendar | ||
* day 5 | |||
mornfall | or perldoc | 21:24 | |
i fall back to zef look which gives me the source of the module, but it's a fair bit less convenient | 21:25 | ||
sena_kun | then it is likely disturbing, yes. | 21:26 | |
mornfall | sena_kun: the problem with everyone doing docs their way is that they become a lot harder to navigate... having docs instantly for every module is really convenient | 21:27 | |
sena_kun | mornfall, agreed | ||
21:28
dct joined,
p6bannerbot sets mode: +v dct
21:40
daxim left
|
|||
mornfall | sena_kun: if you don't mind me complaining so much, considering how i had to go to a website for Cro docs, it's odd that references to other modules or classes are not hyperlinked | 21:44 | |
sena_kun | I don't mind, can you give an example? | 21:45 | |
mornfall | (like, Cro::TLS says Cro::TLS::Connector is just like Cro::TCP::Connector but I have to navigate back to contents to find out what that actually means?) | ||
oh... maybe that's because Cro::TCP doesn't have docs?) | |||
-) | |||
sena_kun | yes | ||
that might be the reason | |||
mornfall | yeah i didn't find it yet, but assumed that was problem at my end | 21:46 | |
sena_kun | on the site we automatically replace stuff like `Cro::HTTP::Router` into an appropriate link, if there is one. | ||
mornfall | i see | ||
sena_kun | for example, if you open `Cro::HTTP::Server` page, stuff like `Cro::HTTP::Request`, `Response`, `Router` will have links. | 21:47 | |
or, rather, _be_ links. | |||
mornfall | indeed it works on other pages | ||
sena_kun | and fact that docs for small percent of classes are missing is a known issue. | 21:48 | |
mornfall | yeah, i usually go straight for the undocumented bit :) | ||
i hate to deal with people like me :p | 21:49 | ||
sena_kun | no problem, really. :) | ||
nothing is perfect and "Oh, folks, you have a flaw here, is it known or not really" is anyway way better than "Oh, something is wrong, this software piece is probably too bad to use, I'll pass". :) | 21:51 | ||
Voldenet | `nothing is perfect` - not true, perfection is | 21:53 | |
[Coke] | .seen finanalyst | 21:54 | |
yoleaux | I saw finanalyst 11:05Z in #perl6: <finanalyst> .tell moritz would it be possible for you to upgrade the perl6 on docs.perl6.org ? JJ is not able to access the server at this moment | ||
[Coke] | .tell finanalyst can you merge github.com/perl6/perl6-pod-to-bigpage/pull/33 and publish it, on the assumption that it will let us fix the doc generation for the public site? the upgrade to rakudo has broken it until we get the fix in. | 21:55 | |
yoleaux | [Coke]: I'll pass your message to finanalyst. | ||
sena_kun | mornfall, by the way, there is a #cro irc channel, so feel free to post there if questions/bug reports/etc. I am always keeping an eye on it while online, cannot say exaclty so about this channel. | ||
21:55
zacts joined
21:56
p6bannerbot sets mode: +v zacts
|
|||
[Coke] | .tell moritz in future, I think we should have some sort of test process before upgrade rakudo used to build the doc site. | 21:56 | |
yoleaux | [Coke]: I'll pass your message to moritz. | ||
21:59
dct left
22:00
xlat left
22:10
rindolf left
|
|||
moritz | can't we let travis build the site? | 22:17 | |
yoleaux | 21:56Z <[Coke]> moritz: in future, I think we should have some sort of test process before upgrade rakudo used to build the doc site. | ||
22:20
rindolf joined,
p6bannerbot sets mode: +v rindolf
|
|||
b2gills | mornfall: If you have 45min, you could watch this talk on Cro by jnthn: www.youtube.com/watch?v=CH6Hmc9liRs | 22:42 | |
Also the http stuff was added to Cro because that was the most likely use-case. (Meaning that isn't all it does.) | |||
mornfall | b2gills: i'll watch that (though i mostly figured what cro is/does from the conversation with sena_kun) | 22:56 | |
though right now i would rather appreciate docs on IO::Socket::Async::SSL which is referenced from Cro::TLS | 22:57 | ||
23:00
pyrimidine left
23:02
graphene left
23:03
irdr left
|
|||
El_Che | moritz: sure: docs.travis-ci.com/user/deployment/ | 23:03 | |
moritz: only problem is that many people would have access to the upload secret | |||
23:03
graphene joined
|
|||
El_Che | moritz: maybe a 2nd deploy repo with a travis cron | 23:04 | |
23:04
p6bannerbot sets mode: +v graphene
|
|||
mornfall | my Cro::Service... seriously :D | 23:08 | |
timotimo | yep! | ||
mornfall | what are you people :P | 23:09 | |
timotimo | serious punsters | 23:10 | |
23:21
yqt left
23:23
zacts left
23:26
kensanata joined,
p6bannerbot sets mode: +v kensanata
23:28
Actualeyes joined,
p6bannerbot sets mode: +v Actualeyes
23:35
holyghost left
|
|||
mornfall | well, i learned a few bits about react/supply and about signatures :-) | 23:42 | |
sena_kun | ;) | 23:43 | |
mornfall | i didn't know the typechecker was Turing-complete :P | 23:44 | |
timotimo | the "where" stuff is mostly run-time, though | ||
mornfall | yeah, a lot more of the typechecker happens at runtime than i would like :\ partially caused by dynamic everything | 23:45 | |
it's inconvenient that i can call non-existing methods without raising a compile-time alarm | 23:46 | ||
(even more so that i can then accidentally catch the exception it causes and never know that i have a typo in the program) | 23:47 | ||
pmurias | mornfall: how do you accidently catch exceptions? | ||
timotimo: did you notice stuff that needs to be improved when using 6pad? | |||
timotimo | pmurias: having to manually reset the contents of the HTML page, though that could be A Feature™ actually | 23:48 | |
mornfall | okay this wasn't what i intended, but moar(51917) in calloc(): bogus pointer (double free?) 0xdfdfdfdfdfdfdfdf | 23:49 | |
oops? | |||
pmurias | timotimo: thanks that should be easy to fix | ||
mornfall | m: Supply.from-list(1, 2).throttle( 1, { say 'dying'; die 'x' } ).tap( { .() } ) | 23:50 | |
camelia | dying | ||
mornfall | pmurias: ^^ this is how | ||
(the tap doesn't make sense, sorry about that) | 23:51 | ||
(it's a bona-fide accidental type error, nothing to do with my complaint about nonexistent methods :p) | 23:52 | ||
pmurias | timotimo: thanks for the feed back it really helps to make things sucks less ;) | ||
timotimo | \o/ | ||
mornfall | m: Supply.from-list(1, 2).throttle( 1, { say 'dying'; 1.() } ).tap( { say "tap"; } ) | ||
camelia | dying tap dying tap |
||
mornfall | m: 1.() | 23:53 | |
camelia | No such method 'CALL-ME' for invocant of type 'Int' in block <unit> at <tmp> line 1 |
||
timotimo | we need some more examples, like how to use canvas or maybe even webgl | ||
also, some examples showing how easy it is to include 3rd party modules, like maybe three.js? | |||
mornfall | > Supply.from-list(1, 2).tap( { .() } ) | 23:55 | |
moar(72755) in free(): Tap.new | |||
bogus pointer (double free?) 0xdfdfdfdfdfdfdfdf | |||
This is MoarVM version 2018.11 built with JIT support | |||
timotimo | that wasn't actually the exact pointer, right? | 23:58 | |
mornfall | timotimo: what do you mean? |