»ö« 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.
lookatme_q what's this ? `(this space intentionally left blank)`. I saw it on the weekly report page 00:43
lucs m: moo 01:03
evalable6 (exit code 1) 04===SORRY!04=== Error while compiling /tmp/qRhqUp3LHc
Undeclared routine:
moo used at line 1
lucs Ah, evalable6, okay. 01:04
lucs Whaddya mean, too private? 01:04
I have to pollute the channel to try stuff with evalable6? 01:05
AlexDaniel lucs: try perlbot for that
r: say 42
perlbot AlexDaniel: 42␤
lucs Ah, thanks :) 01:06
AlexDaniel it's slightly different, but it is restricted enough to let you run random stuff :)
and camelia is on a forced vacation… :)
lucs Yeah, what happened to her?
AlexDaniel someone, uh… killed her
lucs That's not nice :( 01:07
AlexDaniel lucs: the one on the bottom: github.com/perl6/whateverable/wiki...re-welcome
lucs Heh 01:08
Juerd 01:09
s/ //
lucs How do I fix the following to get a Foo in $foo? 01:17
r: my $class-name = 'Foo'; class Foo { }; my $foo = "$class-name"::new; print $foo.perl
perlbot lucs: 5===SORRY!5=== Error while compiling /tmp/lt1TdZcC6n␤Confused␤at /tmp/lt1TdZcC6n:1␤------> 3 class Foo { }; my $foo = "$class-name":7⏏5:new; print $foo.perl␤ expecting any of:␤ colon pair␤[Exited 1]
ugexe ::($class-name).new 01:31
lucs Super. Thanks 01:32
jmerelo squashable6: status 04:26
squashable6 jmerelo, ⚠🍕 Next SQUASHathon in 3 days and ≈7 hours (2019-04-06 UTC-14⌁UTC+12). See github.com/rakudo/rakudo/wiki/Mont...Squash-Day
jmerelo yay!
Geth doc: 535e7abb77 | (JJ Merelo)++ | doc/Language/syntax.pod6
Adds back the syntax page for number literals, closes 2704
06:01
doc: 20330bd89c | (JJ Merelo)++ | doc/Type/Junction.pod6
Adds "defined" to Junction

Refs #2703 (because it wasn't there) and also #2632 (because it documents autothreading)
synopsebot_ Link: doc.perl6.org/language/syntax
Link: doc.perl6.org/type/Junction
japh is there a perl6doc tool somewhere? 08:09
yoleaux 20 Feb 2015 11:36Z <nine_> japh: niner.name/talks/Leapfrogging the bootstrap/Leapfrogging the bootstrap.pdf is your best bet for now. Page 37 and following. Or have a look at the tests. They should be somewhat instructive. And feel free to ask me any time here.
japh O.O 08:10
that's not at all what I asked for 08:11
kawaii releasable6: status 08:32
releasable6 kawaii, Next release in ≈18 days and ≈10 hours. 0 blockers. 0 out of 147 commits logged
kawaii, Details: gist.github.com/8069d8bc979e342324...a45bfd0651
kawaii hm
antoniogamiz o/
kawaii \o
antoniogamiz japhb: maybe this github.com/perl6/doc/tree/master/bin?
that's the doc from the command line 08:33
kawaii working on a module which I'll be using in a Discord bot to accept and execute commands but figured why not write a module that could be used in _any_ kind of bot to interpret commands... What is the namespace convention of these kind of plug and play modules that help you build other programs? 09:35
Originally it was going to be `Discord::CommandHandler`, but since I'm making it generic... I'm not sure
antoniogamiz Bot::CommandHandler? 09:36
kawaii ¯\_(ツ)_/¯
japh antoniogamiz, thank you, perfect 09:58
wrote my first .p6 today and might do again :) 09:59
(('.', |$*REPO.repo-chain())>>.Str X~ </doc/>).grep: *.IO.d # that's just magic for now though haha 10:00
discord6 <timotimo> moarperf now shows when objects of a given type got freed 11:20
<timotimo> cdn.discordapp.com/attachments/557...nknown.png
jnthn m: dd (1-0.00342) ** -0.5; dd ((1-0.00342) ** -0.5).Rat; dd ((1-0.00342) ** -0.5).Rat(epsilon => 1.0e-20, :fat) 13:26
evalable6 1.0017143986880508e0
<584/583>
FatRat.new(584, 583)
ugexe Not sure I’ll be able to figure out a polyglot base35 encoder and decoder. I think it’ll require bitwise operations...
Other than that something like Base64 is otherwise not that difficult to port to polyglot 13:27
jnthn Wonder if anyone knows whether a) we're really losing precision that exists in the .Rat conversion above, and b) if it's possible to do better?
ugexe Perlglot 13:28
jnthn Ah, and alternatively, does anyone know of a slower, but more precise, way of dealing with franctional exponents on Rat if willing to pay for the calculation? 13:31
tobs jnthn: nothing short of full-blown algebraic numbers comes to mind 13:38
I remember how betrayed I felt by the "math that works" slogan in P6 talks when I discovered 2.sqrt is a Num and nto a polynomial :) 13:40
jnthn Well, yeah, the concrete problem I have is that we picked Rat for precision in financial calcs, which makes sense, except there's like one formula that raises to a negative fractional power (I think some depreciation thingy) and dumps things back into Num land 13:41
And then the conversion back to a Rat loses precision, so we're doing worse than Num all the way by that point :S
timotimo you can build your own interval "search" algo 13:42
to get arbitrarily amounts of precision
jnthn I'm guessing there ain't a module for this already... :)
timotimo not that i know of
i do believe you'll tend to get irrational numbers when square-rooting and such 13:43
and some-kind-of-rooting is what's part of fractional exponentiation
jnthn That's fine, I don't need all the precision, just not to do "worse than Excel" :P 13:43
I'm still not sure if it's a shortcoming in Num.Rat, however 13:44
timotimo you can probably use the regular formula that makes an ieee float from its three parts
that'll give you a rational number "naturally"
then you should be able to subtract from what .Rat gives you
you probably know all this 13:45
just saying i don't know of a better way off-hand
jnthn Hmm...if we can get it that way "naturally" why is .Rat doing a convergence algorithm?
timotimo so that the number is prettier i guess? 13:46
jnthn Hm, perhaps, yes
timotimo if you are okay with getting a fatrat, that's probably not necessary?
jnthn Passing :fat and a tiny epsilon doesn't help, alas
Hm, I'm guessing there's no better way to get the parts of a double than to just grab the bits? 13:47
timotimo not to my knowledge 13:48
it's probably not better to log2 the value
or i guess log16
jnthn aye
Will try that out and see if it gets me more precision than the standard .Rat conversion 13:49
timotimo i wonder if there's something easily reachable to get 128bit (or whatever) floating point arithmetic. like, via nativecall or something
jnthn Dunno; I know it's tricky in MoarVM 'cus we assume all the VM registers are 64-bit wide 13:50
timotimo aye, it'd have to be done with Buf8
or CArray or whatever
jnthn gist.github.com/jnthn/a066fed40bfe...c7ff9e9422 14:14
Once I remember that the bits in the mantissa have an implicit 1. before them, it worked out OK :P 14:15
hasuwiz Good evening everyone :) 14:21
pmurias ugexe: on the js backend I'll move the uname shell command calling inside the nqp::uname op 14:28
hasuwiz: good evening 14:33
thundergnat m: say ((1-0.00342) ** -0.5).Str.Rat; say ((1-0.00342) ** -0.5).Str.Rat.nude; # Certainly no worse precision than Num 14:48
evalable6 1.0017143986880508
(2504285996720127 2500000000000000)
thundergnat though no better either.
thundergnat Better than a direct Rat coercion though. 14:49
jnthn hah, I should have thought of that one :) 14:54
dogbert17 jnthn: haven't you made a mistake here? 15:04
m: dd ((1-0.00342) ** -0.5).Rat(epsilon => 1.0e-20, :fat)
evalable6 FatRat.new(584, 583)
dogbert17 m: dd ((1-0.00342) ** -0.5).Rat(1.0e-20, :fat)
evalable6 FatRat.new(49223339, 49139095)
jnthn dogbert17: oh, epsilon isn't a named arg? 15:11
*sigh* 15:12
timotimo omg, was that what caused the precision issue? 15:18
lizmat clickbaits p6weekly.wordpress.com/2019/04/01/...kes-today/ 15:23
japhb jnthn: float mantissas have an implicit leading 1. *unless* they are denormals (en.wikipedia.org/wiki/Denormal_number) (Or of course one of the other special number formats, such as Inf and NaN.) 15:41
jnthn japhb: ah, yes, those'd need accounting for also, I guess 16:08
Xliff \o 17:30
m: role A { method aa { say "EEeeeeyyy!"; }; my $a = A.new.aa 17:31
evalable6 (exit code 1) 04===SORRY!04=== Error while compiling /tmp/gbqmheG93R
Missing…
Xliff, Full output: gist.github.com/da88458e08ae0392cb...f329522d14
Xliff m: role A { method aa { say "EEeeeeyyy!"; }; }; my $a = A.new.aa
evalable6 EEeeeeyyy!
ugexe pmurias: I considered that for the jvm backend too 17:44
cpan-p6 New module released to CPAN! FindBin (0.2.3) by 03LEMBARK 18:31
New module released to CPAN! Term::Choose::Util (1.2.4) by 03KUERBIS
New module released to CPAN! Term::TablePrint (1.4.3) by 03KUERBIS
New module released to CPAN! Term::Form (1.2.0) by 03KUERBIS
New module released to CPAN! Term::Choose (1.5.2) by 03KUERBIS
New module released to CPAN! Acme::Cow (0.0.4) by 03ELIZABETH
New module released to CPAN! Algorithm::HierarchicalPAM (0.0.1) by 03TITSUKI
tyil interesting
cpan-p6 New module released to CPAN! Term::Choose::Util (1.2.4) by 03KUERBIS 18:32
New module released to CPAN! Term::TablePrint (1.4.3) by 03KUERBIS
New module released to CPAN! Term::Form (1.2.0) by 03KUERBIS
New module released to CPAN! Term::Choose (1.5.2) by 03KUERBIS
New module released to CPAN! Acme::Cow (0.0.4) by 03ELIZABETH
New module released to CPAN! Algorithm::HierarchicalPAM (0.0.1) by 03TITSUKI
tyil ok, that's not great
tyil ok, found the issue there 18:33
jackfly26 hi 19:28
anyone online?
jackfly26 hi 19:28
lucasb what's cooking? 19:29
moritz just us bots :D 19:31
woolfy lizmat and I went to Concerto Record Store in Amsterdam because Todd Rundgren came over to sign his autobiography. lizmat gave him a Camelia, and he was quite happy with it. He knows about Perl. He will check it out. 19:39
www.flickr.com/photos/wendyga/32581642557/
Camelia oversees the booksigning... www.flickr.com/photos/wendyga/3258...otostream/ 19:41
bartolin nice :) 19:43
tyil jackfly26: hi there 19:47
.bots
cpan-p6_ 03cpan-p6_:121.0.1 (2019-04-02T19:02:20Z) reporting for duty! [Perl 6] 02git.tyil.nl/perl6/app-cpan-uploadannouncer-irc
tyil good bot
antoniogamiz hahaha
tadzik :D 19:48
guifa So three cheers for grammars/actions. There was a proposal on the main Fluent project github to add a specific reference type that would basically combine two things that already existed. Literally took five minutes to code it up and it seemed like it was going to actually be a substantial amount of work for the other languages / reference implementations :-) 19:59
jackfly26 so inactive 20:49
im having issues with some grammars 20:50
theyre technically nqp but should be the same
p6: say (1..5).eager 20:51
evalable6 (1 2 3 4 5)
jackfly26 cool
jackfly26 hi vike 20:52
jackfly26 whoms'td've is online 20:54
11why my code no work
timotimo hi 20:57
jackfly26 hi 20:59
timotimo what kind of issue are you experiencing?
it's not matching when you expect it to? or is there an exception or something?
jackfly26 kinda
hastebin.com/ebutuwitaq.xml 21:00
the function won't match when i use the brackets as parameters
timotimo did you try any kind of tracing? 21:01
jackfly26 i cant
this is nqp
timotimo then you haven't heard of --rxtrace yet!
it's not very good, i don't think
jackfly26 well its running for parrotvm
so i dont do nqp command directly
timotimo parrot you say? 21:02
jackfly26 yes
timotimo i thought nqp doesn't run on parrot any more
jackfly26 well i guess it does
lucasb what's your rakudo version? 21:03
jackfly26 umm
again that shouldnt matter because its nqp 21:04
6.c
lucasb what's your nqp version?
jackfly26 umm
i got it yesterday
timotimo right, it shouldn't matter if you're not using any rakudo in your thing
lucasb no, in months :)
jackfly26 oh
2018.10 for perl6
oh its same for both 21:05
timotimo i've long forgotten how to work with parrot 21:06
lucasb I'm surprised nqp still works with it even :)
jackfly26 lol
well im using the pct
timotimo i mean, there are no pir files in the nqp repo, so ... how does it even have anything to run?
oh
that's ... 21:07
jackfly26 also what does the red username mean
parrot compiler tools
timotimo where does the pct live? in the parrot repository? 21:08
ah yes
well, i'm not sure what to tell you 21:09
Xliff Is ::?CLASS lexical?
timotimo the last meaningful change to ptc seems to from 2011
jackfly26 umm 21:10
timotimo i don't think anybody in here can help you meaningfully with exactly what ptc can or can't do compared to the nqp we have
jackfly26 oof sorry i was on discord
its the same nqp i think
its just a perl 6 grammar too
timotimo yeah, except it's a lot older
jackfly26 or soo parrot says
or so parrot says
timotimo there have been some bugfixes to the grammar stuff in the last 8 years 21:11
jackfly26 oh
its 2018
version
so should be ok
timotimo not sure when ptc and nqp diverged
jackfly26 pct* 21:12
timotimo parrot doesn't seem to have a release newer than 2016, where did you get a ptc with a 2018 version number?
jackfly26 huh 21:13
yeah
lemme check the github
maybe it gets the latest version when i run make 21:14
timotimo what did you download and compile? how did you even find pct? 21:15
pmurias jackfly26: why are you using parrot?
jackfly26 to work ona language 21:17
parrot.org had it in the tutorial
i just pulled from the parrot github
and ran Configure.pl make make install
also parrot says rakudo uses parrot 21:18
timotimo rakudo dropped support for parrot a couple years back
jackfly26 also i just realized i ran nqp instead of parrot-nqp
so it is the 2016 version
timotimo github.com/rakudo/rakudo/commit/9a...3d1fc65ccb - february 2015 21:19
pmthium.com/2015/02/suspending-rakudo-parrot/ - a blog post about it
i'm sorry to say you're working off of a tutorial that may have bitrotted a little too much to be used 1:1 21:20
however, there is good news
github.com/edumentab/rakudo-and-nq...als-course - check the "pre-built PDFs" link in the readme 21:21
timotimo though i guess if you continue to use parrot-nqp maybe things will work out? though you don't really have a way forward if you want to develop the language itself much further 21:22
jackfly26 i guess 21:28
sorry i just i realized i had an outdated list of reserved keywords