»ö« 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.
00:05 llfourn joined 00:10 llfourn left 00:27 mowcat joined 00:28 Manifest0 left 00:33 Manifest0 joined 00:37 sjn left 00:40 sjn joined 00:41 lichtkind left 00:56 luyang177 joined
luyang177 sub go($n) { say $n.VAR.^name; }; go(10); 00:57
evalable6 Scalar
luyang177 I thougnt $n is just a value without Scalar Container
00:57 netrino left
luyang177 sub go($n is rw) { $n = 7; say $n.VAR.^name; }; go(10); 01:01
Parameter '$n' expected a writable container, but got Int value 01:02
why 'sub go($n) { say $n.VAR.^name; }; go(10);' output 'Scalar' instead of Int 01:03
01:07 luyang177 left
JappleAck sub go(\n) { say n.VAR.^name; }; go(10); 01:08
evalable6 Int
JappleAck docs.perl6.org/language/mop#VAR
01:14 molaf left 01:24 JappleAck left 01:27 molaf joined 01:31 JappleAck joined
guifa p6: my $a = DateTime.new(now); say $a.clone(year=>0) 01:32
evalable6 0000-05-01T01:32:31.990345Z
guifa What is the year here? 1 BC ?
01:46 molaf left 02:00 Manifest0 left 02:05 kurahaupo left 02:06 kurahaupo joined, kurahaupo left, kurahaupo joined, Manifest0 joined, llfourn joined 02:11 kurahaupo left, kurahaupo joined 02:12 llfourn left 02:13 mowcat left 02:15 kurahaupo left, kurahaupo joined 02:18 kurahaupo left 02:19 kurahaupo_ joined 02:30 kurahaupo_ left 02:31 kurahaupo joined, Manifest0 left
elcaro guifa: kinda. if you consider all historical time to be in Gregorian 02:34
guifa Well, Gregorian doesn’t consider 0 to be a valid year. Gregorian goes 4, 3, 2, 1, -1, 2, 3
guifa is working on DateTime formatting
(let’s just say it makes different measurement and number systems look like a cake walk lol) 02:35
elcaro yeah, but in the context of the DateTime type, year 0 is 1BC in Gregorian... but it wouldn't really be the 1BC from history, because of changes to the calendar in recent ceturies 02:36
02:36 Manifest0 joined 02:42 Manifest0 left
guifa Right. I just need to know what it’s considering it before pumping it into formulae to calculate year numbers for other calendar systems :-) 02:43
Actually, the better question is whether it uses a cut off date to switch automatically to Julian. Hm… 02:44
02:47 Manifest0 joined 02:49 hythm_ joined 02:51 kaare_ left, kaare__ joined 02:56 kurahaupo left 02:57 kurahaupo joined
kurahaupo guifa: yeah, having year numbers change in March or July instead of January is unsettling 02:59
03:00 ddddddd joined 03:01 zacts joined
guifa oh FINALLY. Minus the time zone stuff and non-gregorian year/cycle calculation and handling fall backs for non-existent widths, I’ve got date formatting working. Shouldn’t take long to handle the fallbacks, 03:09
guifa does a dance
03:27 JappleAck left 03:29 Manifest0 left, JappleAck joined 03:34 Manifest0 joined 03:49 ddddddd left 03:50 Cabanossi left 03:57 Cabanossi joined 03:59 Manifest0 left 04:01 hythm_ left 04:04 Manifest0 joined, [particle] joined, cpan-p6 left, cpan-p6 joined, cpan-p6 left, cpan-p6 joined 04:08 llfourn joined 04:10 zacts left 04:12 llfourn left 04:21 ddddddd joined 04:31 zacts joined 05:01 Manifest0 left 05:09 Manifest0 joined 05:10 sauvin joined 05:32 Manifest0 left 05:36 ddddddd left, Manifest0 joined 05:41 Manifest0 left 05:46 Manifest0 joined 05:56 llfourn joined 05:59 dominix joined 06:01 llfourn left 06:07 dominix_ joined 06:10 dominix left 06:23 dominix_ is now known as dominix
holyghost I have a main loop for my perl6 Quest For Glory game system, Gargoyle's Quest seemed too daft due to copyright infringements 06:26
It uses SDL 1.2 06:27
and is a Delegate/MVC
The meaning is you just do QFGMain.new.qfg_mainloop; in a script to call on the modules/classes 06:28
then override where you like
dominix Client: HexChat 2.14.1 • OS: Ubuntu "bionic" 18.04 • CPU: Intel(R) Core(TM) i7-8559U CPU @ 2.70GHz (548MHz) • Memory: Physical: 15,2 Gio Total (13,9 Gio Free) Swap: 957,0 Mio Total (957,0 Mio Free) • Storage: 641,0 Go / 2,5 To (1,8 To Free) • VGA: 8086:3ea5 @ Intel Corporation 8th Gen Core Processor Host Bridge/DRAM Registers • Uptime: 36m 3s 06:33
06:34 dominix left 06:37 jmerelo joined
holyghost hi JJ 06:37
I've managed to start a game system using SDL 1.2, SDL module
It uses the bare minimum available 06:38
I hope I can do some sierra ripoffs with it :-)
06:38 aindilis left
jmerelo releasable6: status 06:38
releasable6 jmerelo, Next release in ≈4 days and ≈12 hours. 2 blockers. 132 out of 255 commits logged (⚠ 2 warnings)
jmerelo, Details: gist.github.com/e6755f60332944e3ba...ecee2a1c04
jmerelo holyghost: hi 06:39
06:42 [particle] left, aindilis joined 06:44 aindilis` joined 06:48 aindilis` left, Manifest0 left 06:49 aindilis` joined
holyghost I'm too drunk to continue, I guess I better not make a delegate/MVC game system on its own, I'll use things from Quest For Glory games to make system 06:52
s/make/make a 06:53
Then I can do the same thing for other game systems/games
06:53 Manifest0 joined
holyghost MVC is stupid in a perl module to make evrything from 06:54
06:54 aindilis` left 07:07 Manifest0 left 07:08 aindilis` joined
cpan-p6 New module released to CPAN! Game::QFG (0.1.1) by 03HOLYGHOST 07:11
07:12 molaf joined 07:13 Manifest0 joined
cpan-p6 New module released to CPAN! Game::QFG (0.1.2) by 03HOLYGHOST 07:27
holyghost ^-- Keeponlaffin and Erasmus will be in it for sure :-) 07:30
07:40 rindolf joined 07:46 zakharyas joined 07:51 squashable6 left 07:55 squashable6 joined, ChanServ sets mode: +v squashable6 07:56 araraloren joined 07:57 llfourn joined
cpan-p6 New module released to CPAN! Game::QFG (0.1.3) by 03HOLYGHOST 07:58
holyghost ^-- now I need to program AIs with multiple constraints 08:01
I also need to make my own backgrounds for the rooms
08:02 llfourn left 08:05 scimon joined 08:33 Manifest0 left 08:38 Manifest0 joined 08:51 Geth left 08:52 Geth joined 08:58 domidumont joined 09:03 llfourn joined 09:07 llfourn left 09:13 molaf left 09:15 zakharyas left 09:20 _jrjsmrtn joined 09:21 __jrjsmrtn__ left 09:39 llfourn joined 09:43 mniip left 09:44 llfourn left 09:46 mniip joined 09:51 llfourn joined 09:56 llfourn left 10:01 a3f left, a3f joined, a3f left, a3f joined 10:03 Black_Ribbon left 10:08 squashable6 left 10:11 squashable6 joined 10:12 zakharyas joined 10:20 llfourn joined
moritz hi all. Has anybody been able to do something useful with the data I have recovered? 10:22
ufobat_ m: my $match = "yada" ~~ /a(d)a/; .say for $match.^methods
evalable6 (exit code 1) ast
Died with X::Method::NotFound
in block <unit> at /tmp/wZCgE9fWlM line …
ufobat_, Full output: gist.github.com/3c20aff168e950b7f7...9885ae4aeb
ufobat_ is this the expected behaviour?
m: my $match = "yada" ~~ /a(d)a/; say $match.^methods
evalable6 (ast made STR MATCH CURSOR_NEXT CURSOR_OVERLAP CURSOR_MORE INTERPOLATE INTERPOLATE_ASSERTI…
ufobat_, Full output: gist.github.com/39c9fea8bc6935d215...0764ef8cd4
ufobat_ moritz, jmerelo: Grammar::ErrorReporting is using self.pos and self.target but those 2 are not documented, i was wondering if there are more usefull methods/public attributes which are not included in the documentation 10:25
10:25 llfourn left
moritz ufobat_: it's documented in docs.perl6.org/type/Cursor 10:26
which is a superclass of Grammar
I don't know why they aren't shown on the page for Grammar though
that sounds like a bug in htmlify, unless somebody changed the behavior intentionally 10:27
ufobat_ docs.perl6.org/type/Grammar#Type_Graph doesnt include cursor
meh :-( 10:28
moritz that might explain it
jmerelo ufobat_: quite a few...
moritz it says Grammar is Match
it's not, it's Cursor
m: say Grammar ~~ Match 10:29
evalable6 True
moritz m: say Grammar.^mro
evalable6 ((Grammar) (Match) (Capture) (Cool) (Any) (Mu))
jmerelo moritz: there's no bug in htmlify.p6. htmlify.p6 is a big bug itself.
moritz jmerelo: that's a pretty cynical view
jmerelo moritz: I would say informed, but whatever.
ufobat_ if grammar is no cursor, your module coudn't do self.pos and self.target, because its a role for a grammar, no?
moritz m: say Cursor.^roles 10:30
evalable6 (exit code 1) No such method 'gist' for invocant of type 'NQPMatchRole'. Did you mean 'ast'?
in block <unit> at /tmp/kvT5slruIN line 1
jmerelo ufobat_: anyway, dependencies are not in htmlify.p6, but in type-graph.txt
ufobat_ m: grammar {}.^methods.perl
evalable6 (exit code 1) Died with X::Method::NotFound
in block <unit> at /tmp/uOD9BJJAGq line 1
moritz m: say Cursor.mro
evalable6 (exit code 1) No such method 'mro' for invocant of type 'Match'
in block <unit> at /tmp/EjuQChGrFX line 1
moritz m: say Cursor.^mro
jmerelo ufobat_: would be grateful if you created an issue.
evalable6 ((Match) (Capture) (Cool) (Any) (Mu))
moritz m: say Cursor.HOW.^name 10:31
evalable6 Perl6::Metamodel::ClassHOW
ufobat_ i need to leave now but i will create an issue this evening, unless you or moritz did. cya
moritz I don't understand this. Grammar ~~ Cursor is true, Cursor is a class (not a role), but Grammar.^mro doesn't mention Cursor 10:32
jmerelo moritz: that's one of the problems with htmlify.p6, it's using metadata stored in files instead of using introspection. And very little, if any, of it is specified; none is tested.
moritz: let me see if I get this off the top of my head. At some point in time, Cursor was made a synonym for Match? 10:33
timotimo moritz: i believe Cursor := Match
moritz m: say Cursor === Match
timotimo m: say Cursor =:= Match
evalable6 True
True
jmerelo timotimo: I was going to check the source, but timotimo is muth better :-)
10:33 llfourn joined
moritz aaaah, that explains a whole lot 10:33
10:34 Sgeo__ left 10:35 Sgeo__ joined 10:45 sena_kun joined 10:53 jmerelo left
moritz ufobat_, jmerelo: github.com/perl6/doc/issues/2736 opened 10:54
11:06 lumin joined 11:35 kurahaupo left 11:36 kurahaupo joined, kurahaupo left, kurahaupo joined
rjbs alerts.perl6.org SSL seems broke 11:37
El_Che rjbs: that was a Zoffix' service, iirc. He left.
elcaro while we're on the subject of broken infrastructure... where can I download R* 11:38
rjbs Okay. Should the link from rakudo.org be removed, then?
elcaro rakudo.org still giving 500 - sServer error
11:42 pmurias joined 11:45 netrino joined 11:48 domidumont left
sena_kun elcaro, please, use links stated at perl6.org/downloads/ 12:00
tony-o_ m: my $x = Any.new; say to-json($x);
evalable6 {
"0": null
}
Saw 1 occurrence of deprecated code.
=====================================…
tony-o_, Full output: gist.github.com/50b069b2308dda9411...17727e02c7
tony-o_ weird 12:01
m: say Any.new.Str
evalable6 Any<93865634335344>
tony-o_ m: say to-json('Any<93865634335344>')
evalable6 "Any<93865634335344>"
Saw 1 occurrence of deprecated code.
===============================…
tony-o_, Full output: gist.github.com/5d4409d1c406b4e964...11d32dcc06
tony-o_ m: say Any.new.gist 12:02
evalable6 Any.new
tony-o_ m: say to-json('Any.new')
evalable6 "Any.new"
Saw 1 occurrence of deprecated code.
===========================================…
tony-o_, Full output: gist.github.com/3e4ccecb020b6b3260...9767553225
rjbs ~$ eval $( /Users/rjbs/.rakudobrew/bin/rakudobrew init Zsh ) 12:05
zsh: parse error near `()'
:(
Anybody know what that's about?
It's me forgetting "'s. 12:06
12:06 mowcat joined
rjbs ~$ rakudobrew nuke moar-2019.03.01 12:07
Undefined subroutine &Rakudobrew::Build::match_and_run called at /Users/rjbs/.rakudobrew/bin/../lib/Rakudobrew/Build.pm line 132.
:sob:
rjbs deletes everything, again, starts build, goes to work! o/ 12:08
12:11 cpage_ joined 12:20 Sgeo__ left, Sgeo__ joined 12:22 pminten joined
pminten Hi, what's the best place to report a confusing error if the user does something silly? 12:23
p6: class Foo {} ; sub bar(Foo $foo) { my $foo.^name }
evalable6 (exit code 1) ===SORRY!===
Cannot find method 'default' on object of type NQPMu
pminten (Stack trace is four entries all in Grammar.moarvm, so it's something that errors out early at the grammar level) 12:24
tobs pminten: that should go into github.com/rakudo/rakudo/issues I think 12:25
pminten thanks 12:26
moritz m: my $foo.^name 12:32
evalable6
moritz m: sub bar($foo) { my $foo.^name }
evalable6 (exit code 1) ===SORRY!===
Cannot find method 'default' on object of type NQPMu
moritz pminten: ^^ golfed it even further 12:33
m: my $foo; my $foo.^name
evalable6 Potential difficulties:
Redeclaration of symbol '$foo'
at /tmp/2rQ_Uy2IQi:1
------> 03my $foo; my $foo08⏏04.^name
pminten moritz, thanks, I'll use that in the bug report 12:34
12:36 Util joined 12:42 molaf joined 12:50 reach_satori left
pminten Interestingly `sub bar($foo) { my $foo }` = grammar error, `sub bar($foo) { my $foo = 1 }` = normal (redeclaration) error 12:52
moritz m: sub bar($foo) { my $foo } 12:56
evalable6 (exit code 1) ===SORRY!===
Cannot find method 'default' on object of type NQPMu
elcaro bisectable6: good=2018.04 bad=2019.03 sub bar($foo) { my $foo } 13:04
bisectable6 elcaro, Bisecting by exit code (old=2018.04 new=2019.03). Old exit code: 0
elcaro, bisect log: gist.github.com/a75d4426907e4e55e2...9055cad34f
elcaro, (2019-01-02) github.com/rakudo/rakudo/commit/42...54cdaf5187
elcaro I had an 2018.04 version laying around that gave me a normal redeclaration error for it, so figured it was introduced recently 13:05
moritz elcaro++
good thinking
pminten elcaro: thanks I'll add this info to the issue 13:06
13:12 zacts left 13:20 skids joined 13:26 pminten left 13:27 zacts joined 13:32 lucasb joined
Xliff m: role A { submethod BUILD (:$a) { say 'ROLE' }; }; class A { submethod BUILD(:$b) { say 'CLASS'; }; method new($b) { self.bless(:$b); }; method new ($a, $b) { self.bless(:$a, :$b) }; }; 13:33
evalable6 (exit code 1) 04===SORRY!04=== Error while compiling /tmp/JxOgrtIDKP
Redecla…
Xliff, Full output: gist.github.com/e58508f3bdc42114c6...600a360ca8
Xliff m: role A { submethod BUILD (:$a) { say 'ROLE' }; }; class A { submethod BUILD(:$b) { say 'CLASS'; }; multi method new($b) { self.bless(:$b); }; multi method new ($a, $b) { self.bless(:$a, :$b) }; }; 13:34
evalable6 (exit code 1) 04===SORRY!04=== Error while compiling /tmp/niZGaqDysX
Redecla…
Xliff, Full output: gist.github.com/404b1654007b2ef672...2b9c5e1839
Xliff m: role A { submethod BUILD (:$a) { say 'ROLE' }; }; class AA { submethod BUILD(:$b) { say 'CLASS'; }; multi method new($b) { self.bless(:$b); }; multi method new ($a, $b) { self.bless(:$a, :$b) }; };
evalable6
Xliff m: role A { submethod BUILD (:$a) { say 'ROLE' }; }; class AA { submethod BUILD(:$b) { say 'CLASS'; }; multi method new($b) { self.bless(:$b); }; multi method new ($a, $b) { self.bless(:$a, :$b) }; }; AA.new(3); AA.new(1, 2)
evalable6 CLASS
CLASS
Xliff m: role A { submethod BUILD (:$a) { say 'ROLE' }; }; class AA { submethod BUILD(:$b) { say 'CLASS'; }; multi method new($b) { self.bless(:$b); }; multi method new ($a, $b) { self.bless(:$a, :$b) }; }; AA.new(3); AA.new(1, 2); A.new(1) 13:35
evalable6 (exit code 1) CLASS
Default constructor for 'A' only takes named arguments
in block <unit> at /tmp/Ey_MYzEVlZ line 1

CLASS
Xliff m: role A { submethod BUILD (:$a) { say 'ROLE' }; }; class AA { submethod BUILD(:$b) { say 'CLASS'; }; multi method new($b) { self.bless(:$b); }; multi method new ($a, $b) { self.bless(:$a, :$b) }; }; AA.new(3); AA.new(1, 2); A.new(a => 1)
evalable6 CLASS
CLASS
ROLE
Xliff m: role A { submethod BUILD (:$a) { say 'ROLE' }; }; class AA { submethod BUILD(:$b) { say 'CLASS'; }; multi method new($b) { self.bless(:$b); }; multi method new ($a, $b) { self.bless(:$a, :$b) }; }; AA.new(3); AA.new(1, 2); A.new(b => 1)
evalable6 CLASS
CLASS
ROLE
Xliff m: role A { submethod BUILD (:$a) { say 'ROLE' }; method new-a($a) { self.bless(:$a) }; }; class AA { submethod BUILD(:$b) { say 'CLASS'; }; multi method new($b) { self.bless(:$b); }; multi method new ($a, $b) { self.bless(:$a, :$b) }; }; AA.new(3); AA.new(1, 2); AA.new-a(3) 13:37
evalable6 (exit code 1) CLASS
No such method 'new-a' for invocant of type 'AA'. Did you mean 'new'?
in block <unit> at /tmp/3udzLYKTn5 line 1

CLASS
Xliff m: role A { submethod BUILD (:$a) { say 'ROLE' }; method new-a($a) { self.bless(:$a) }; }; class AA does A { submethod BUILD(:$b) { say 'CLASS'; }; multi method new($b) { self.bless(:$b); }; multi method new ($a, $b) { self.bless(:$a, :$b) }; }; AA.new(3); AA.new(1, 2); AA.new-a(3)
evalable6 CLASS
CLASS
CLASS
13:38 pminten joined 13:52 pminten left
holyghost ok, I managed to build a AI engine for Game::QFG, I'll release it later this week 13:58
it's just message passing with some talk system, (originator, acceptor, friend-or-foe, msg-body) 13:59
I have to put it in the NPCs which are already in the module now
AI.pm6 is done however 14:00
14:03 zacts left 14:04 araraloren left, araraloren joined 14:16 zacts joined 14:17 zakharyas left 14:18 zacts left 14:19 zacts joined 14:27 Cabanossi left 14:30 pmurias left 14:32 Cabanossi joined 14:46 pmurias joined
Geth doc: softmoth++ created pull request #2737:
Map and Range: Iterable is a role; use 'does' not 'is'
14:51
doc: c14584b245 | (Tim Smith)++ (committed by Moritz Lenz) | 2 files
Map and Range: Iterable is a role; use 'does' not 'is'
14:53
15:00 zacts left, pochi_ joined 15:05 MilkmanDan left, domidumont joined 15:07 MilkmanDan joined 15:12 mowcat left
lumin hello guys, I'm a perl newbie and I write python3. What's the biggest advantage of perl6 over python3? I'd like to read tutorial about that first. 15:14
Thanks in advance
15:15 Black_Ribbon joined, zacts joined, eseyman left
sena_kun lumin, you can read docs.perl6.org/language/faq#Why_sh..._about_it? and choose whatever you see the most interesting options. :) 15:16
El_Che lumin: in my view, perl 6 is more expressive, has more stuff built in, has optional typing, has built-in real threading
moritz and grammars. Don't forget grammars! :D
15:16 pmurias left
El_Che lumin: downsizes: is does'nt have the size of the python of perl5 ecosystem, the runtime needs to get faster 15:16
sena_kun waves for great concurrency, grammars, easier syntax, MOP 15:17
veesh i really like perl6 in theory 15:18
El_Che sena_kun: I don't think it has easier syntax than python
lumin My first impression about perl{5,6} is that they are quite good at text processing. I tried some simple program and was impressed. Grammar is an amazing feature but it's not easy to understand
sena_kun El_Che, well, to me it is. Maybe not the right word. For most people I'd say word "expressive" fits here more, but it is just my own feeling that e.g. ??!! is more natural than `foo if True else bar` and cases like that. given/when presence and so on. 15:19
kawaii Perl 6 syntax is easier IMO, I can't even read Python that well due to the lack of ; etc...
lumin El_Che: the ecosystem is not a problem for me, as I'm just looking for fun :-)
El_Che sena_kun: in that optic, more expressive or natural. But the syntax gets complicated because there is more of it, and several ways to express the same thing. 15:20
lumin: in that case, jump in
15:20 zacts left
veesh it's pretty overwhelming 15:22
how many things you can do
sena_kun El_Che, cannot deny that. Sometimes I am thinking like "Hm, do we really need e.g. `my Foo @a` _and_ `my @a of Foo`" myself.
lumin well, python3's mandatory indentation is not that bad ... IMHO. The python language itself is very simple to learn
15:22 zacts joined
veesh python is meant to be read like english 15:22
lumin but perl5 scared me off with $_ when the first time I try to learn it
sena_kun don't Python has `_` or something? 15:23
veesh python has a lot of explicitness
15:23 zacts_pi joined
veesh i can't imagine that they'd have anything like a default variable 15:23
moritz sena_kun: only in ipython (the REPL), I believe 15:24
otherwise it's convention to use _ as a variable that you never want to read from 15:25
_, status = some_action_that_returns_a_tuple()
15:25 zacts is now known as Guest19553
veesh that's pattern matching 15:25
oh got what you meant 15:26
sena_kun moritz, I just did 2 + 2 using my linux box python(cpython it is, I believe) and _ after that prints me 4, so in a way similar to $_, just a lot less useful, as you can't contextualize.
lumin oh, you mentioned ipython. Is there any fancy interactive shell for perl6? I think that would provide a better learning expereince
15:27 zacts_pi is now known as zacts, Guest19553 left
moritz sena_kun: but only in interactive mode 15:27
veesh perl6 has a repl by default 15:28
just use it
moritz but not as fancy as ipython, and needs readline installed to be usable
veesh though my terminal gets messed up with the unicode characters
sena_kun moritz, sigh. well, I wanted to say that there is nothing odd with "implicit" variables, if _ in python is ok, I don't see why $_ or $! in Perl 6 is suddenly a no-no. 15:29
lumin veesh: I thought perl6's default REPL is just like python's, but I'm wrong. At least the perl6's features completion, nice 15:30
moritz sena_kun: and I'm just saying that regular (non-interactive) python doesn't have implicit variables 15:31
sena_kun moritz, can't deny that. don't have an idea of how many python folks know/use the feature though, probably not a few. 15:33
lumin Another question: how fast is perl6? compared with pypy?
(this should be a fair comparison since both of them have JIT) 15:34
sena_kun lumin, the performance is not spectacular right now, though folks are working on making it faster. not sure about saying "fair" here, as python was released in 1990, and Perl 6 in 2015. amount of time invested in JIT is a bit different for both cases. 15:35
timotimo pypy's jit is absolutely incredible, IMO
sena_kun: well, pypy hasn't had a jit that long 15:36
there was a module you could load that would jit stuff for you, i forgot what it was called
El_Che lumin: if speed is critical, stick to compiled languages like Go and Rust. Perl 6 runtime has still to get a lot faster
timotimo and then there was shedskin, a limited python to C++ compiler, iirc
and of course the project i forgot the name of that combined cpython with llvm 15:37
lumin timotimo: do you mean numba? github.com/numba/numba
This is dedicated for scientific computing
sena_kun timotimo, I suspect python already has had good publicity and a lot of folks volunteering to make it faster, nope? not like I am saying that "It isn't fair!11", just noting that the history is different. 15:38
lumin sena_kun: El_Che: thank you for the pointer. IIUC I should not try to throw heavy workload on perl6 currently 15:39
timotimo sena_kun: cpython has a "don't make it faster if it makes the code less readable" policy IIRC
El_Che lumin: well, you can, and for most stuff people do (web, backend,...), Perl 6 is certainly fast enough
timotimo numba isn't the one i meant
the one i'm refering to has been deprecated for a long time
El_Che bl 15:40
bbl
sena_kun timotimo, I certainly don't have an expertise to talk about those things, so I'll just sit silently in my corner. ;)
lumin I edit code with vim. Did you noticed that the perl6 syntax obviously slowed vim down ... 15:44
That's the most complicated syntax plugin I've ever seen ...
sena_kun has used emacs, but eventually switched to using Comma 15:45
15:46 mowcat joined
sena_kun though I still open emacs for typing Perl 6 down occasionally when it's a single file script I need to edit quickly 15:46
araraloren The font render of IDEA is not good :/ 15:47
veesh what plugin are you using for the highlighting? 15:48
lumin veesh: Just the one shipped by vim8.1 15:49
veesh i thought it didn't come with one
moritz $ dpkg -S /usr/share/vim/vim80/syntax/perl6.vim 15:51
vim-runtime: /usr/share/vim/vim80/syntax/perl6.vim
at least the vim that comes with ubuntu ships with perl6.vim by default
lumin I went throguh some docs and I found the Grammar feature of perl6 is the most attractive one to me. 15:53
Thank you guys for the pointers!
moritz lumin: shameful plug, if you want to go more in depth on the grammar feature, you might enjoy www.apress.com/us/book/9781484232279 by yours truly 15:56
also available on amazon 15:58
lumin moritz: Thanks for the (author's) recommendation. I think I'm first trying it out with the online docs :-)
moritz lumin: sure thing, enjoy :D 16:00
lumin oops, I think I got in to a trouble with grammar... 16:03
can I paste short code here? 16:04
moritz if it's more than one line, please use a pastebin or github gists
lumin OK. I wrote this: paste.debian.net/1081056/ 16:05
the 'content" rule doesn't work when the pattern is ".*". but pattern "x*" matched.
moritz lumin: rules don't backtrack
so .* eats the rest of the string 16:06
make it token content { <-[}]>* } instead
that is, "everything up to (but excluding) the first }"
lumin It worked. I think I need more time to understand it ... 16:08
16:17 raschipi joined 16:25 scimon left 16:26 kurahaupo left, kurahaupo joined 16:27 Cabanossi left 16:28 pminten joined 16:33 Cabanossi joined 16:41 zacts left 17:06 zacts joined 17:08 kurahaupo left, kurahaupo joined 17:34 raschipi left 17:35 Guest79393 left, success joined, success is now known as Guest67789 17:51 zacts left 17:58 pecastro joined 18:04 sena_kun left 18:14 pminten left 18:15 jmerelo joined 18:16 molaf left
jmerelo releasable6: status 18:17
releasable6 jmerelo, Next release in ≈4 days and ≈0 hours. 2 blockers. 132 out of 272 commits logged (⚠ 2 warnings)
jmerelo, Details: gist.github.com/d4da215975827f62b5...053fc6e42e
Xliff \o 18:20
TimToady sneaks out of his burrow and wishes everyone a happy May Day... 18:22
Geth doc: ada7adfd4f | (JJ Merelo)++ | 3 files
Eliminates skipped test
El_Che hi TimToady, happy to see you! 18:23
Xliff o7, TimToady!
18:24 sauvin left, sena_kun joined
timotimo toaday is a good day 18:27
jmerelo Hey, TimToady, good to see you again! 18:31
Xliff timotimo: Yep. Just passed 10kloc on GooCanvas! 8-)
Pango: 9784. GtkPlus: 112157. WebkitGTK: 13534. SourceViewGTK: 10708. AMTK: 1996. GooCanvas: 10210 18:33
jmerelo Docs are on the 11k range 18:34
Xliff m: say 9784 + 112157 + 13534 + 10708 + 1996 + 10210
evalable6 158389
jmerelo Rakudo, if I remember correctly, 30k
Xliff: what's GooCanvas?
Xliff developer.gnome.org/goocanvas2/2.0/index.html
jmerelo Xliff: nice 18:35
Xliff jmerelo: Thanks!
18:36 zakharyas joined
timotimo .o( is that like wobbly windows but for graphs? ) 18:37
that looks useful 18:40
AMTK may refer to one of the following:
America's Most Talented Kid, a former U.S. talent/reality TV series
Amtrak, the National Railroad Passenger Corporation of the United States, which has a reporting mark AMTK
(i've found the actual thing already, but i thought that was somehow funny) 18:41
ufobat_ what if you have a file like lib/Foo/Bar.pm6 which contains classes and/or roles that don't start with Foo::Bar. a) is it bad style? b) is it harmless? c) could there be some name collitions? 18:55
timotimo harmless; your consumer will have to deal with name collisions with whatever tricks necessary 18:57
19:00 domidumont left
jmerelo ufobat_: but it sure is bad style... 19:04
Geth doc: 55a6d7a992 | (JJ Merelo)++ | doc/Type/Range.pod6
Correct definition for Range
19:05
ufobat_ what tricks are available to deal with those collisions?
19:06 cpan-p6 left 19:07 cpan-p6 joined, cpan-p6 left, cpan-p6 joined
maettu 19:08
timotimo well, there's the constant Bleep::Blorb = { use ...; Blorb } one
19:09 eseyman joined 19:10 maettu left
jmerelo Cool evolution of Documentation source, look, moritz, you're on tv :-) twitter.com/bortizmath/status/1123...1264832512 19:14
19:16 jmerelo left 19:31 araraloren left, Manifest0 left 19:37 Manifest0 joined 20:03 pmurias joined 20:07 ufobat__ joined 20:11 ufobat_ left
Geth doc: rafaelschipiura++ created pull request #2741:
Merge pull request #1 from perl6/master
20:22
20:23 Geth left, Geth joined 20:36 Xliff left 20:49 [Sno] left 20:50 netrino left 20:52 sno joined 20:53 aindilis` left 21:00 molaf joined 21:06 aindilis` joined, aindilis` left 21:07 aindilis2 joined 21:12 aindilis2 left 21:13 skids left, aindilis` joined 21:14 nightfrog left 21:17 mowcat left 21:18 aindilis left, aindilis` left 21:19 aindilis joined 21:21 Xliff joined
Xliff 21:37
21:38 kurahaupo left, kurahaupo joined, Xliff left 21:53 zacts joined
ugexe any reason you dont just add "Foo::Blorg" : "lib/Shit/Fart.pm6" to your META6.json? 21:59
timotimo because that's potty humour :) 22:01
22:06 aindilis left 22:34 zacts left, zakharyas left 22:39 pmurias left 22:55 casdr left, casdr joined 22:59 sena_kun left 23:07 Xliff joined 23:26 Manifest0 left 23:29 aindilis joined 23:31 Manifest0 joined 23:33 pecastro left 23:51 nightfrog joined