»ö« Welcome to Perl 6! | perl6.org/ | evalbot usage: 'p6: say 3;' or rakudo:, or /msg camelia p6: ... | irclog: irc.perl6.org or colabti.org/irclogger/irclogger_logs/perl6 | UTF-8 is our friend!
Set by moritz on 22 December 2015.
00:00 dogbert17 left 00:19 dogbert17 joined 00:33 mr-foobar left
Geth doc: 60b92278f2 | (Zoffix Znet)++ | doc/Type/IO/Path.pod6
[io grant] Change return value for `mkdir`

Per github.com/rakudo/rakudo/commit/c01ebea0a0
00:49
00:50 Cabanossi left 00:52 Cabanossi joined
Geth doc: 8d9537188f | (Zoffix Znet)++ | doc/Type/IO/Handle.pod6
[io grant] Expand IO::Handle/IO::Pipe.path docs

  - Add better example
  - Add docs for its value in IO::Pipe, per:
   Impl: github.com/rakudo/rakudo/commit/d46e8df4cb
   Tests: github.com/perl6/roast/commit/637500da24
00:53
00:55 Khisanth left 01:01 bjz left 01:08 Khisanth joined 01:19 LeCamarade left
Geth doc: fd8a5ed4d4 | (Zoffix Znet)++ | doc/Type/IO/Pipe.pod6
[io grant] Document IO::Pipe.path

Impl: github.com/rakudo/rakudo/commit/d46e8df4cb Tests: github.com/perl6/roast/commit/637500da24
01:29
doc: bd4fa6854d | (Zoffix Znet)++ | 2 files
[io grant] Document IO::Handle/IO::Pipe.IO
01:30
01:45 ilbot3 left 01:47 ilbot3 joined, ChanServ sets mode: +v ilbot3 01:49 Cabanossi left 01:52 Cabanossi joined 01:56 Sgeo__ joined 01:58 Sgeo_ left
Geth doc: 2aaf12a52e | (Zoffix Znet)++ | doc/Type/IO/Handle.pod6
[io grant] Document IO::Handle.Str
02:05
02:20 noganex_ joined 02:23 noganex left 02:45 zapwai left, Actualeyes left 02:46 labster left 02:51 Cabanossi left 02:52 Cabanossi joined, kurahaupo left 02:53 kurahaupo_ left 03:05 labster joined 03:07 Actualeyes joined 03:33 Cabanossi left
u-ou are there things to consider re garbage collection if you have two objects that refer to each other? 03:34
03:36 Cabanossi joined 03:43 khw left 03:50 ponbiki left
u-ou m: class A { has $.b is rw }; class B { has $.a is rw }; my ($a, $b) = (A.new, B.new); $a.b = $b; $b.a = $a; 03:52
camelia ( no output )
u-ou something like that?
Xliff Depends. 04:06
Scoping asside, there are reference counts. 04:07
Using your example, neither $a or $b are eligible for GC until both objects have a ref count of 0. At least that's how I understand it.
BenGoldberg Perl6's garbage collection is not the same as perl5's. 04:08
Xliff Am I even close then? ;p
BenGoldberg Perl5's uses reference counts, perl6's does not. 04:09
Xliff Then what does it use?
BenGoldberg perl6 is a more traditional reachability tracing GC.
Xliff Is there a medium level blog post that references how that example would work?
AlexDaniel (would be nice to find *any* blog post, actually) 04:10
BenGoldberg Hmm... it's a bit like how GC works in, say, java.
geekosaur probably want to check jnthn's blog
Xliff geekosaur: linky? 04:11
After googling: "reachability tracing garbage collection" I got here: en.wikipedia.org/wiki/Tracing_garb...collection
Which.... is a bit wordy. 04:12
But sounds like (and this is seat of pants reasoning), each class maintains an instance tree of sorts.
BenGoldberg In theory, when memory gets low, make a list of root objects and objects on the stack, and for each item in the list, mark it as 'live', then look at what other objects are reachable from that object; if they're not 'live' or in the list, then add it to the list.
Everything which isn't marked as 'live' then gets freed.
Xliff OK. A better explanation of where I was going. Thanks. 04:13
BenGoldberg In practice, we some serious optimization so that, most of the time, we only have to look at things which were recently allocated, instead of everything in memory. 04:14
Cause touching every single object in the entire program would be horribly costly.
geekosaur 6guts.wordpress.com/
sorry, had to dig, I use the pl6anet feed
Xliff geekosaur++ 04:15
u-ou Xliff: let me know if you find something interesting 04:16
Xliff u-ou: You are far more likely to discover something if you read for yourself! :) # It's Fryday! 04:17
u-ou yeah, I'm lookin :p
Xliff (yes, that y is supposed to be there)
u-ou ahh. saturday here though :P
Xliff Well, technically here too. 04:20
But the night is still young! 04:21
BenGoldberg ℐ𝓉'𝓈 ℱ𝓇𝓎𝒹𝒶𝓎! 04:22
Actually, it's Saturday, where I am. 04:23
geekosaur math italic's kerning kinda sucks for prose >.>
BenGoldberg 𝕴𝖙 𝖈𝖔𝖚𝖑𝖉 𝖆𝖑𝖜𝖆𝖞𝖘 𝖇𝖊 𝖜𝖔𝖗𝖘𝖊. 04:24
geekosaur that one's actually more readable in my font >.> 04:25
granted, not much
u-ou ¯\_(ツ)_/¯ 04:26
so my code example is safe?
AlexDaniel somebody say w􏿽xCC􏿽x9A􏿽xCC􏿽xBA􏿽xCC􏿽xB3􏿽xCC􏿽xAD􏿽xCC􏿽xAE􏿽xCC􏿽xA6􏿽xCC􏿽xBBo􏿽xCD􏿽x8B􏿽xCD􏿽xAC􏿽xCC􏿽x8F􏿽xCC􏿽x94􏿽xCC􏿽x84􏿽xCC􏿽x83􏿽xCC􏿽x8D􏿽xCC􏿽xB4􏿽xCD􏿽x94􏿽xCC􏿽xA9􏿽xCC􏿽xA0r􏿽xCC􏿽x94􏿽xCD􏿽xA6􏿽xCD􏿽x8F􏿽xCD􏿽x89􏿽xCD􏿽x95􏿽xCD􏿽x9A􏿽xCC􏿽xBA􏿽xCD􏿽x85􏿽xCC􏿽xAE􏿽xCC􏿽xAEs􏿽xCC􏿽x82􏿽xCC􏿽x84􏿽xCD􏿽xA9􏿽xCC􏿽x91􏿽xCD􏿽x9F􏿽xCC􏿽x98􏿽xCC􏿽x9E􏿽xCC􏿽xB1􏿽xCD􏿽x89􏿽xCC􏿽x9D􏿽xCC􏿽xBAe􏿽xCD􏿽xAC􏿽xCC􏿽x93􏿽xCC􏿽x93􏿽xCC􏿽x90􏿽xCC􏿽x85􏿽xCD􏿽x82􏿽xCD􏿽x89􏿽xCD􏿽x96􏿽xCC􏿽x97􏿽xCC􏿽xBB?̊̀̊̐ͬ?
said*
BenGoldberg I programmed perlbot with some macros to generate that text: "/msg perlbot call blackletter Your text here" and ..."cursive"...
geekosaur wonders whose clients just crashed...
Xliff BenGoldberg: I ♥ you. 04:27
BenGoldberg :)
samcv i smell some unicode abuse going on
Xliff BenGoldberg: Share your wisdom with me, sensei!
AlexDaniel oh no, unicode police
Xliff 𝓞𝓱 𝔂𝓪𝔂! 04:28
Google is yer frien'
AlexDaniel Xliff: there's also this: github.com/coke/p6-uni
ah wait, not this…
Xliff: this github.com/coke/p6-unicode-mangler 04:29
Xliff 𝔽𝕒𝕟𝕔𝕪 𝕗𝕒𝕟𝕔𝕪!
Alex: There's also lingojam.com/FancyTextGenerator
Which I just bookmarked.
AlexDaniel I prefer dogfood :P 04:30
Xliff Man. Y'all gonna hate me if I start hanging around back here and get drunk and P҉L҉A҉Y҉
Awww...
That one didn't work.
[􏿽xCC􏿽x85􏿽xCC􏿽xB2P][􏿽xCC􏿽x85􏿽xCC􏿽xB2L][􏿽xCC􏿽x85􏿽xCC􏿽xB2A][􏿽xCC􏿽x85􏿽xCC􏿽xB2Y] 04:31
Nope.
geekosaur first one seemed to work here 04:32
could hve used more space perhaps
Xliff I'm on WimpyWin
I refuse to go to 10
Generally, though this client has decent Unicode support.
BenGoldberg I'm using hexchat ... it has mostly decent unicode support, if you've got the right fonts installed... 04:34
geekosaur ^
BenGoldberg It doesn't do colored emoji yet, and it doesn't do the above the line/below the line things which make zalgo text possible. 04:35
Xliff Yes. I am on Hexchat
So geekosaur++ must have better fonts than I.
AlexDaniel still wonders how to get rid of colored emoji on his system…
Xliff Still looking at HTF rakudo generated a negative pointer via NativeCall 04:36
BenGoldberg Another fun unicode thingy: J‮,‭u‮r‭s‮e‭t‮k‭ ‮c‭A‮a‭n‮H‭o‮ ‭t‮i‭h‮d‭e‮i‭r‮B‭ ‮/‭P‮l‭e‮r
Which *looks* ok, until you try to select part of the text :)
AlexDaniel n‮H‭o‮ ‭t‮i‭h‮d‭e‮i‭r‮B‭ ‮/‭ 04:37
hm
Xliff Oh. LOL
04:51 isBEKaml joined
isBEKaml Heh. I just tried building 2017.1 R* distribution. It looks like building modules make still doesn't respect DESTDIR :-( 04:52
04:53 Ben_Goldberg joined 04:54 BenGoldberg left, Ben_Goldberg is now known as BenGoldberg
Xliff Oh. Wow. 05:03
05:04 Cabanossi left
BenGoldberg Which wow? 05:04
Xliff For some reason when a Perl created NativeCall object is passed to sprintf("%p") via NativeCall... it returns a 33-bit value on 32-bit machines 05:05
BenGoldberg I'd call that wierd :P
Xliff Yeppers. It's the reason I can't install DBIish right now. 05:06
05:06 Cabanossi joined
Xliff NativeHelpers::Blob pukes because of that particular test. 05:06
Passes everything else.
I am loathe to force install because.... weird SEGVs!
BenGoldberg would offer to help, but it's after 1am here... 05:07
G'night
05:07 BenGoldberg left
Xliff LOL! 05:07
Thanks, ben!i
Same time here!!!
05:17 r3m left 05:33 mr-foobar joined 05:35 skids left 05:49 isBEKaml left 05:54 v1_ joined
protium Any idea why I'd be getting this? 05:54
compiling src/jit/emit_posix_x64.o
1 warning generated.
linking 3rdparty/tinymt/libtinymt.a
linking 3rdparty/sha1/libsha1.a
linking libmoar.so
linking moar
./libmoar.so: undefined reference to `mp_set_long'
clang-3.9: error: linker command failed with exit code 1 (use -v to see invocation)
make: *** [Makefile:497: moar] Error 1
geekosaur when's the last time you updated? I suspect that's the libtommath issue and you need to nuke your source tree and start over (not something you did wrong, a bad update that hosed everyone else) 05:57
or at least nuke src/3rdparty/libtommath 05:59
samcv yeah just rm -rf 3rdparty/libtommath 06:07
and `make clean` `make realclean`
then run configure again
06:11 nadim joined
protium Using gentoo, but, ok, will try it 06:16
Thanks
samcv if that doesn't work let me know 06:17
geekosaur hm, gentoo should not hit that I'd think, it should always start form a clean build
protium That's what I thought
Really more of a perl5 guy
But I want to play about with 6
geekosaur so, I just checked logs and you also reported the same thing in November and was advised to build from source yourself 06:19
06:19 Cabanossi left
geekosaur nobody else has hit it, so presumably this is a gentoo ebuild bug 06:19
*were advised
protium Yes, you're very right, but I thought I'd try again now that it's 4 months later 06:20
And with a different build
geekosaur probably need to talk to the gentoo maintainer then
06:20 r3m joined
protium I did get 2016.09 working just fine 06:20
06:21 CIAvash joined, Cabanossi joined
samcv do people see things in both left and right frames heree? moarvm.github.io/MoarVM/ cause the left one isn't loading for me. even though it's there 06:22
and i can see the page going there manually
Ulti protium: for playing about check out github.com/tadzik/rakudobrew
you can specify the release but I rarely have problems building head
geekosaur samcv, chrrome is complaining about mixed security content 06:24
Mixed Content: The page at 'moarvm.github.io/MoarVM/' was loaded over HTTPS, but requested an insecure resource 'moarvm.github.io/MoarVM/moar/'. This request has been blocked; the content must be served over HTTPS.
samcv hm 06:25
i see
protium Ulti: Thanks, maybe that's the better way to go here
samcv that makes no sense geekosaur since i only specify relative folders and not actually http/https
and it works fine on my site that has super restrictive settigs 06:26
dammit github
06:26 isBEKaml joined 06:27 gdonald left
geekosaur .oO { githobbled again } 06:27
06:28 gdonald joined, r3m left
protium geekosaur: Are there any compiler directives that are not compatible? I am using clang -fno-omit-frame-pointer -fno-optimize-sibling-calls -Wno-logical-op-parentheses -D_REENTRANT -D_FILE_OFFSET_BITS=64 -DHAVE_LIBFFI -fPIC -O2 -march=amdfam10 -pipe -mcx16 -mpopcnt 06:29
06:29 r3m joined
samcv protium, i would not use libffi 06:30
well. uh
06:30 wamba joined
geekosaur has no idea 06:31
samcv i would use --has-dyncall if you want to use the local files, and not libffi
but that isn't causing your problem at least
protium, how are you building it? from gentoo's ebuild?
protium samcv: Yeah, though I was going to try a manual configure a sec 06:32
geekosaur samcv, I found a note about github.io and mixed security content, but the only hint is that pages generated via Jekyll may be doing their own thing that needs to be edited
samcv hmm. yeah i don't use jekyll. odd
the only difference between left and right frames is one is `moar` and one is `libmoar/` with a slash. but it shouldn't really matter. but 06:33
maybe there is some weirdness or proxying going on
geekosaur alsoit only seems to talk about absolute urls so maybe they're proxying to do https (that might be implied by the fact that it's configurable) and you muyst use absolute urls
because relative ones behind the proy would be http
*proxy
heh, didn't look up to see you already said that until I was done :) 06:34
or the slash, which would indicate they have some odd proxying rules 06:35
(that's a common gotcha in apache config, I know)
samcv yeah that's exactly what i was thinking 06:37
06:38 RabidGravy joined
geekosaur success 06:40
saw the commit, hit reload, got content
samcv yay 06:42
06:44 RabidGravy left
protium I wonder if it's possible that this is a problem related to using multiple cores. I normally use make -j5. I turned that off an went for just make and sure enough, it was slow, but it built 06:45
samcv nope shouldn't be an issue
i really like rakudobrew, you should check that out
uhm. but can i see the ebuild protium 06:46
ugexe timotimo: github.com/ugexe/zef/blob/reporter...I.pm6#L639 <- I have reporting almost working. Its just getting a 400 invalid request when posting... dunno why though - the request looks legit 06:47
06:47 xinming left 06:49 xinming joined 06:50 kerframil left
protium samcv: The ebuild is really simple. It just passes compile options to configure.pl 06:52
samcv protium, oh i see. it just compiles moarvm from the rakudo git 06:53
or something. oh there's a seperate dependency on moar
or not. idk i'm confused 06:54
have you just deleted all the perl 6 downloaded files so it can clone the repo again? 06:55
06:55 RabidGravy joined
samcv we made libtommath a sub repository, where before it was included in the repository, and git has issues, instead of removing the files which are removed it just vomits sometimes 06:55
RabidGravy Boom
protium samcv: It should be ok, I blew away the directory so it would redownload 06:57
RabidGravy afaik you can blow away nearly everything apart from the .git directory and it will just get everything that is missing 06:58
samcv yeah 07:00
07:01 isBEKaml left 07:15 gdonald left, gdonald joined
protium Ooh, I maybe know what this is 07:16
Does the repo inlcude a super new version of libtommath? 07:17
07:17 AlexDaniel left
protium Yeah, problem solved 07:18
So, for posterity, the ebuild specifies the system version of the math library 07:19
But does not set a minimum version
geekosaur not super new but has a patch that upstream hasn't yet applied iirc
07:19 Cabanossi left
protium Yeah, that's it 07:19
07:19 Actualeyes left
protium The ebuild should disable that flag and use the repo version and not the system version 07:19
And now it's 1:30am and I am going to bed 07:20
07:21 Cabanossi joined 07:24 bjz joined 07:25 labster left 07:26 labster joined
gfldex Grammar::Debugger is failing with bleeding rakudo, see travis-ci.org/gfldex/Task-Star#L1768 07:30
RabidGravy rebuilds rakudo and tests all the the things
I don't like it when my "fitness tracker" thingy gets all passive aggressive with a little bleep to suggest I should move more 07:31
07:31 ChoHag joined
geekosaur well, at least it looks like it's not another IO kill? 07:34
07:36 darutoko joined
gfldex geekosaur: I would be in favour of another IO kill. They tend to be easy to fix. 07:40
jnthn: blocker for Task::Star github.com/jnthn/grammar-debugger/issues/34 07:42
Xliff can MAIN be multi? 07:47
RabidGravy yes
Xliff Thankee! :)
Hey, RabidGravy! Long time... 07:48
RabidGravy :)
It's the day job - too much softwaring 07:49
07:55 azawawi joined
azawawi Good morning #perl6 07:55
RabidGravy boom 07:56
08:00 gdonald left, gdonald joined 08:01 Actualeyes joined
azawawi drinks his morning coffee in preparation of... :) 08:02
08:09 zacts left
RabidGravy There are a lot of TODO tests in my modules 08:11
I blame travis (and people not using the same OS as me,) for this
08:12 zacts joined
Xliff Is the fuzzy text matching that rakudo uses for variables exposed in the language itself? 08:14
s/variables/matching mispelled variables/
samcv i very much like to blame travis
Xliff I'd like to blame travis, but I expect he has enough blame already. 08:15
samcv nope
Xliff Rut roh
I suspect I know who this travis is, now.
s/who/what/
geekosaur [15 08:16:06] <Sequell> travis[2/2]: <Grunt> Travis can't be bargained with. Travis can't be reasoned with. Travis doesn't feel pity, or remorse, or fear. And Travis absolutely will not stop, ever, until your project is dead. 08:16
Xliff Oooo.... kay. Ba-dump-BUMP. I will not give up my day job.
ROFL. geekosaur++
RabidGravy to be fair the whole genre of continuous integration software is pretty bad, I spend at least part of my working week loathing Jenkins 08:17
Xliff <Travis> Come wit me if you vant your project to compile!
samcv travis won't ever stop going. slowly... and travis will never cease to always be out of date
08:18 Cabanossi left
Xliff Ahh... TRAVIS. Yet another way the internet has found to waste the computing cycles we've developed to try and beat Moore's Law with. 08:18
samcv Totally Really Always Very Slow Continuously In-updated 08:19
we can pretend in-updated is a word
Xliff Where's the first I?
samcv idk make up one
hating travis is only a part time job. and i try not to bring the work home with me. and scream in my sleep with nightmares 08:20
Xliff Tragically Redundantly Always Very Irritatingly Slow - Constantly Interrupted
samcv yes
Xliff OK. After that, I need another beer.
samcv there's this other CI that lets you ssh into failed builds and poke around
because it's actualy a sane service
08:21 Cabanossi joined
Xliff - Crimally Investigated? 08:21
s/Crimally/Criminally/ -- Maybe no on the eerbay.
samcv codeship.com/features/basic?hsCtaT...7188e406a5
way better than travis
look at this super helpful prompt cms.codeship.com/hs-fs/hubfs/codes...access.png 08:22
gives you so much useful information
one of those I's should be incompetant 08:23
Xliff we can always swap randomly out "Constantly Interrupted" with "Confusingly Incompetant"
RabidGravy Oooh Linux::Fuser appears broken by IO stuffs, Pg::Notify by stupid programmer 08:24
samcv one A could be aggrivating
geekosaur crappily irrelevant? 08:25
samcv yes 08:26
u-ou hello
what is the topic of discussion? 08:27
Xliff Is there a better/efficient way to determine a hash is empty other than doing "$hash.elems == 0" ??
travis-ci.org/
The only code I have on there is small and is part of a project I have in maintenance mode so I <lie>never have to use it again</lie>! 08:29
u-ou what's an idiomatic way to iterate over a list within a scalar? 08:31
guess that's just @() 08:32
RabidGravy you mean "for $list-in-scalar -> $v { .... }" or something else
u-ou well, that will iterate once
you can do @() or .list
El_Che gfldex: the packages are installed within the docker container that builds them. That's how you install them in the right OS 08:33
samcv @( ) can sometimes do weird things
u-ou like what?
samcv i usually do list
u-ou ok cool
I thought .list was a bit prettier too
samcv yeah i would go with that
u-ou I'm curious now. what weird things can @() do?
samcv and has better type checing and less exploding in case it can't do it
El_Che gfldex: 2 last steps are: install them, do perl6 -v 08:34
samcv from personal experience it's just less friendly to work with. somebody else might know better the difference between @( ) and .list but the error reporting at least is not quite as good
and i've found .list works in several places @( ) did not
RabidGravy but yes .list
u-ou okies
samcv or 08:35
use nqp; for nqp::decont($var) { } heh
which will un-scalar it
u-ou :P
RabidGravy de-ref style definitely doesn't feel perl 6 ish
samcv there's probably some perl 6 thing that does that, or something but i don't know it
u-ou yeah, I like list 08:36
samcv there's different codepaths though. and .list works more places cause it's a method
u-ou oh, was there an answer to Xliff's question about hash-emptiness?
samcv empty 08:37
u-ou ooh
samcv %hash.Bool
gfldex El_Che: i got it working, see github.com/nxadm/rakudo-pkg/issues/10
samcv they both are equally fast though by my benchmarking 08:38
gfldex El_Che: also, you gonna be famous! gfldex.wordpress.com/2017/04/14/sp...up-travis/ 08:39
Xliff Wha? 08:40
Why no empty in here? docs.perl6.org/type/Hash ???
s/empty/.empty/
u-ou Xliff: .Bool
Xliff Oh.
samcv there's no .empty for hashes 08:41
Xliff So "return unless ! $hash.Bool"
samcv or just return unless ! $hash
and it will do it automatically
u-ou or if $hash :p
08:41 rindolf joined
Xliff I will go with ! $hash 08:41
u-ou unless not seems kind of weird 08:42
but i guess it could work in some contexts
samcv depends on the code it's for
Xliff And I sincerely remember MONTHS AGO when I was struggling with trying to deref $list-as-scalar and had to use @( ) to get the behavior I wanted.
samcv aka return (in most cases) but if there's no hash, then don't
Xliff Mainly because it was from an Inline::Perl5 object.
samcv you mean unscalar it? 08:43
Xliff So now I will not futz with working code unless it breaks, again. At which point I hope I remember .list!
unscalar. LOL. yes
samcv .o(how do i put a scalar inside a scalar) 08:44
Xliff And the wandering commas means it's prolly time for another beer.
u-ou :D
Xliff $scalar = $scalar
samcv when you mix perl 6 and nqp you start to notice how things are containered much more
Xliff Of course, that answer is either overly simple... or really, really deep.
I tried nqp.
samcv well that sets the contents of one scalar to the contents of another 08:45
Xliff I just got back from rehab.
samcv nice
Xliff Or is that therapy?
Both?
samcv m: my $scalar1 = 10; my $scalar2 = $scalar1; say $scalar1.WHICH; say $scalar2.WHICH
camelia Int|10
Int|10
samcv m: my $scalar1 = 10; my $scalar2 = $scalar1; say $scalar1.WHERE; say $scalar2.WHERE
camelia 140218287408136
140218287408136
Xliff samcv: Actually, I was more jokingly answering you...literally. 08:46
samcv m: my $var; say $var.WHICH
camelia Any|U45528472
samcv ok there
that's the scalar
geekosaur m: my ($x, $y) = 5, 6; $x = VAR($y); dd $x
camelia Scalar $x = Int.new
El_Che gfldex: thx. Wouldn't it make sense to use install_zef_as_user?
samcv it doesn't have anything in it yet
Xliff m: my $scalar = 0; $scalar = $scalar;
camelia ( no output )
Xliff m: my $scalar; $scalar = $scalar;
camelia ( no output )
Xliff Wow! It compiled.
08:46 mouldysammich joined
geekosaur why wouldn't it? 08:47
Xliff Tautology?
samcv m: my $scalar1 = 10; my $scalar2; $scalar2 = $scalar1; say $scalar1.VAR.WHICH; say $scalar2.VAR.WHICH
camelia Scalar|37888088
Scalar|37888160
samcv see different scalars :)
proooof
El_Che gfldex: I would love to add zef to the package, but I find the different install path for user/root kind of confusing for a user
Xliff oooooh
(yes... it's bonzo for bedtime, me)
(or at the very least... removal of IRC voice privs) 08:48
samcv but yeah if you := bind it will always bind, but if you use = it will sometimes actually copy and other times point to the same spot (though if you modify one, it will have to alter a new one)
m: my %hash; say %hash.WHICH; %hash = 1,2; say %hash.WHICH 08:49
camelia Hash|69447696
Hash|69447696
samcv m: my %hash; say %hash.VAR.WHICH; %hash = 1,2; say %hash.VAR.WHICH
camelia Hash|61420960
Hash|61420960
geekosaur got a scalar contaning a scalar but can't figure out how to deref.. which I think is intentional; that's nqp-land 08:50
need to decont it 08:51
El_Che gfldex: maybe adding a pinpointed zef install for root would make sense, and leave the user install script there?
samcv nice i just used nqp::bind and it made it the same scalar 08:52
08:52 robertle joined
samcv m: my $a = 10; my $b; say $a.WHICH; say $b.WHICH; use nqp; nqp::bind($a,$b); say $a.WHICH; say $b.WHICh 08:52
camelia Int|10
Any|U37606808
Any|U37606808
No such method 'WHICh' for invocant of type 'Any'
in block <unit> at <tmp> line 1
samcv m: my $a = 10; my $b; say $a.WHICH; say $b.WHICH; use nqp; nqp::bind($a,$b); say $a.WHICH; say $b.WHICH
camelia Int|10
Any|U37410200
Any|U37410200
Any|U37410200
u-ou does binding happen behind the scenes with function parameters?
samcv functions?
oh
i don't think it binds
geekosaur unless you use is rw 08:53
samcv yea
geekosaur (there is also is copy)
samcv m: my $a = 10; my $b; say $a.WHICH; say $b.WHICH; use nqp; nqp::bind($a,$b); say $a.WHERE; say $b.WHERE
camelia Int|10
Any|U42268056
42268056
42268056
u-ou ah, so rw binds?
samcv yep
m: my $a = 10; my $b; say $a.WHICH; say $b.WHICH; $a := $b; say $a.WHERE; say $b.WHERE
camelia Int|10
Any|U15926680
15926680
15926680
samcv m: my $a = 10; my $b; say $a.WHICH; say $b.WHICH; $a := $b; say $a.VAR.WHICH; say $b.VAR.WHICH 08:54
camelia Int|10
Any|U24364440
Scalar|44167224
Scalar|44167224
samcv if you declare a sigilless variable it will always bind, even when you use `=`
u-ou m: my a = 1 08:55
camelia 5===SORRY!5=== Error while compiling <tmp>
Malformed my (did you mean to declare a sigilless \a or $a?)
at <tmp>:1
------> 3my a7⏏5 = 1
u-ou m: my \a = 1
camelia ( no output )
08:55 bjz left
u-ou why do we have sigilless variables? 08:55
samcv my ($a, $b); .WHICH.say for $a,$b; .VAR.WHICH.say for $a,$b; $a:=$b; .WHICH.say for $a,$b; .VAR.WHICH.say for $a,$b; 08:56
m:my ($a, $b); .WHICH.say for $a,$b; .VAR.WHICH.say for $a,$b; $a:=$b; .WHICH.say for $a,$b; .VAR.WHICH.say for $a,$b;
evalable6 Any|U35884456
Any|U35884456
Scalar|73607752
Scalar|73607824
Any|U35884456
Any|U35884456
Scalar|73607824
Scalar|73607824
samcv the start out as different scalars, but both have the same Any object (since they're not defined)
but when you bind they both *are* the same scalar
so that's why changing one affects the other 08:57
u-ou, also it's the same as declaring `is raw` to function parameters
which will not containerize it if possible or something
09:03 Cabanossi left
samcv also perl6 is so much fun 09:04
09:06 Cabanossi joined
u-ou i know 09:09
:P
are rakudo and moarvm all perl6/nqp, or is there some C in there as well?
samcv moarvm is in all C 09:10
perl6 is in perl6 and nqp
and most nqp commands are 1:1 with moarvm ops
u-ou ahhh
samcv which is why nqp is so much faster than perl6
like nqp::index calls a C function called MVM_string_index 09:11
and moarvm Model on a Runtime Virtual Machine. because it supports perl 6 object model 09:12
09:12 parv joined
samcv moarvm c function MVM_string_index takes a MVMString as a parameter, so that's a VM level object coded in c 09:13
although the perl 6 Str type has more fancy on top of it which enables some fancy extra things but behind it all is a dynamic C based virtual machine
Xliff will END phasers run in the event of a die()? 09:15
09:16 domidumont joined
samcv m: END say 'end'; say 'testing'; die 'oh no'; say 'after' 09:17
camelia testing
oh no
in block <unit> at <tmp> line 1

end
samcv yep
m: thingy { END thingy; say 'testing'; die 'oh no'; say 'after'; }; thingy 09:19
camelia 5===SORRY!5=== Error while compiling <tmp>
Undeclared routine:
thingy used at line 1
samcv m: sub thingy { END thingy; say 'testing'; die 'oh no'; say 'after'; }; thingy
camelia testing
oh no
in sub thingy at <tmp> line 1
in block <unit> at <tmp> line 1

testing
Unhandled exception: oh no
at <unknown>:1 (/home/camelia/rakudo-m-inst-1/share/perl6/runtime/CORE.setting.moarvm:print_exception)
from SETTING::…
samcv hahaha
09:20 domidumont left
samcv m: sub thingy { END thingy; say 'testing'; die 'oh no'; say 'after'; }; thingy; END thingy 09:20
camelia testing
oh no
in sub thingy at <tmp> line 1
in block <unit> at <tmp> line 1

testing
Unhandled exception: oh no
at <unknown>:1 (/home/camelia/rakudo-m-inst-1/share/perl6/runtime/CORE.setting.moarvm:print_exception)
from SETTING::…
09:21 domidumont joined
samcv but there's only one END. so it can't run multiple times 09:21
u-ou this is the END! 09:27
samcv starts writing a blog post on unicode and stuff i've been working on 09:34
so many things to write argh
unicode, string search. appimages, moarvm automatic coverage report and travis ci magic
may need to split it up into several maybe
though then maybe i will never finish the other blog posts... heh 09:35
geekosaur partial posts with "(to be continued)" 09:37
u-ou samcv link to your blog? :o 09:40
samcv cry.nu
u-ou no, wait
i already knew that >.<
RabidGravy takes a lazy "try" out of his oldest module
u-ou i forgot i had it bookmarked already :i
:I
samcv cry T_T
heh
u-ou I forget who's who, that's all :P 09:41
09:45 parv left
u-ou is there a way to have an attribute that is gettable but not settable? $. means it is settable at cons. time, right? 09:46
gettable meaning outside the object
guess you just write your own getter :p 09:47
09:49 labster left
geekosaur actually that does just a getter 09:50
you'd need has $.foo is rw; to get the setter
u-ou oh yeah.
RabidGravy except for the constructor
u-ou yeah
it's w at cons. time
geekosaur but so are $!foo-s 09:51
RabidGravy you could also provide a BUILD that doesn't initialize the attribute from the params
it's just the default BUILD will initialise any attributes supplied that have an accessor 09:52
azawawi github.com/azawawi/perl6-ncurses/b...-forms.pl6 # ncurses forms example :) 09:53
RabidGravy azawawi, you seem to be on a bit of a roll right now
azawawi Seems so. Catching up with someone i know :) 09:54
RabidGravy right, that's Linux::Fuser fixed 09:59
u-ou m: class A { has $!a; method m { say $!a } }; A.new(:a<foo>).m
camelia (Any)
u-ou geekosaur apparently not 10:01
RabidGravy hence my comment regarding the default BUILD
10:05 espadrine joined
samcv there we go cry.nu/perl6/indexing-unicode-things/ 10:07
hopefully pl6net picks it up it should be syndicated there 10:08
RabidGravy there, that's Pg::Notify fixed 10:09
what's next
Ooh IO::Path::Mode "Failed to symlink file: file already exists" 10:19
10:19 pmurias joined
pmurias hi 10:20
10:22 pmurias left
samcv yay cool. pl6anet.org worked and picked up my post 10:26
very good
u-ou (: 10:29
samcv okay all. i'm going to relax then go to bed. have a great night/day/*
moritz \o * 10:30
u-ou night samcv
nice post :)
samcv Unrecognized backslash sequence: '\o' 10:31
RabidGravy Oh, did the semantics of IO::Path.symlink change?
i.e. is it now $source.symlink($target) rather than $target.symlink($source) ? 10:33
which is fine by me if it has 10:34
well I;ve just answered my own question, swapped them round in this test and it passes 10:36
10:45 notbenh left, notbenh joined 10:52 titsuki left
RabidGravy right, IO::Path::Mode 10:56
10:59 espadrine left
u-ou goodnight 6ers 11:00
11:02 MasterDuke left 11:04 Cabanossi left 11:06 Cabanossi joined 11:30 pmurias joined
RabidGravy Oh, Webservice::Soundcloud is afflicted by the OpenSSL server name thing 11:34
github.com/sergot/openssl/issues/36 11:35
azawawi quick question, how do you represent NULL value in NativeCall given you're using an `is repr('CPointer')` 11:47
?
class ITEM is repr('CPointer'); my ITEM $item; # how to store NULL in it? 11:48
jnthn That's it :) 11:59
Type objects map to NULL
So $item there already will, if you pass it, pass a NULL
RabidGravy :) MAGICKS
jnthn Can assign ITEM to it if you need to "null it out" again after putting something else there 12:00
12:02 pmurias left
RabidGravy Hmm I think the greater good might be served by my fixing OpenSSL, which is something I wanted to avoid to be honest 12:02
12:03 Cabanossi left, pmurias joined
timotimo @( ) calls .cache for you 12:04
btw (replying to a very outdated conversation)
jnthn RabidGravy: If you fix it there then I can crib from it to fix IO::Socket::Async::SSL ;)
12:04 azawawi left 12:05 azawawi joined 12:06 Cabanossi joined 12:08 LeCamarade joined 12:09 raiph left 12:10 raiph joined
azawawi thx 12:10
my chromium went down and i didnt see the answer in time... damn you google
:)
12:11 raiph left 12:12 raiph joined
azawawi i like magick re type objects but if it was a bit more clear in the documentation :) 12:13
re "Once again, type objects are used to represent nulls." in nativecall documentation could use an example that state how to define null for example (maybe?) 12:15
El_Che hey azawawi, any chance some of the features of the atom editor tools would make it to the perl6 lang suppport (now the latter in in the perl6 org github repo)?
12:17 raiph left
RabidGravy jnthn, I'm struggling where to implement the fix 12:17
12:17 raiph joined
azawawi El_Che: you mean refactor them into separate modules, right? 12:18
El_Che: perl6-snippets, perl6-linter, ..etc 12:19
12:21 raiph left
El_Che azawawi: no I mean, both plugins are fantastic, but lacking separedly 12:21
12:21 raiph joined
El_Che together they would make a killer perl6 support plugin 12:21
azawawi El_Che: atom perl6 tools depends on perl6-language fyi
github.com/azawawi/atom-perl6-edit...e.json#L41 12:22
El_Che yes, but imho stuff like syntax highlighting should be part of the default plugin install
not something people install afterwards
I am pretty sure not everyone would agree :)
azawawi El_Che: i was thinking of dividing the functionality into several packages and then have a plugin that installs them all 12:23
RabidGravy Ah, I remember now, need to make the SSL_ctrl call thingy in the OpenSSL and then do something with it in IO::Socket::SSL
PITA
azawawi El_Che: that way people can install what they need, given that linter sometimes can become annoying 12:24
El_Che that would be nice, although maybe not clear for new users 12:25
I am thinking of vim where you need to install a trillion of stuff to get a nice support level for the lang 12:26
and comparing it with stuff like IntelliJ where you install 1 plugin and everything is supported for the lang
(just thinking out loud, not complaining by the way) 12:27
12:28 domidumont left
azawawi El_Che: cool 12:28
El_Che "You want to do Perl 6? Grab this pkg/installer and this plugin for atom and there you go 12:29
"
advanced users will find their way to vim and the like
azawawi sure so i will split them and then make perl6-lotr-edition install them all :) 12:33
El_Che I am curious what samcv has to say. She invested a lot of work in perl6 atom support
12:34 Cabanossi left
azawawi well im afraid to ask given I was too late merging her changes :) 12:35
azawawi ducks 12:36
12:36 Cabanossi joined
El_Che hehe 12:36
12:37 pmurias left 12:39 pmurias joined
azawawi El_Che: also i had a todo on a perl6-aligner :) 12:42
El_Che: vertical alignment of operators (sort of perltidy) 12:43
El_Che: github.com/adrianlee44/atom-aligner
moritz m: say 'ABCSSD' ~~ rx:i/ß/ 12:47
camelia 「S」
moritz that's wrong, afaict
it should match both S
m: say 'ß'.uc
camelia SS
moritz samcv: ^^ maybe something you're interested in 12:48
timotimo no
moritz no?
timotimo the unicode consortium backpedaled on that
... at least i think so
12:56 raiph left 12:57 raiph joined 12:58 raiph left, raiph joined 13:05 pmurias left
RabidGravy Dear OpenSSL THERE ARE TOO MANY STEENKIN MACROS IN ssl.h LOVE RABID 13:07
timotimo yeah :< 13:09
RabidGravy It makes me want to drink more beer 13:12
El_Che all right, hardening openvpn is easy, once you do the obvious (which took a while) 13:16
happy connection now on public wifis :)
RabidGravy Ooh I may have fixed it that 13:19
13:28 zapwai joined 13:33 espadrine joined
RabidGravy Rarr! that definitely fixed it, though the tests on WebService::Soundcloud are still failing for other reasons 13:35
I don't suppose anyone has commit on OpenSSL and want to look at github.com/sergot/openssl/pull/42 ? 13:38
13:41 robertle left 13:48 Cabanossi left 13:50 titsuki joined 13:51 Cabanossi joined
timotimo has no access 13:54
13:56 azawawi left
RabidGravy I think it's ugexe & sergot 13:57
13:59 robertle joined 14:05 robertle left 14:06 robertle joined
RabidGravy hahaha 14:15
RabidGravy fixes the pod in URI
another day another yak
Geth perl6.org: 999ee09084 | (Zoffix Znet)++ (committed using GitHub Web editor) | source/downloads/index.html
Remove rakudobrew from downloads

People don't bother reading its docs and have issues, and worse, get wrong recommendations to fix those issues.
Also, there seems to be little realization that rakudobrew by default builds a whatever random and untested dev commit happened to be HEAD.
14:17
14:20 kurahaupo joined
RabidGravy Ooh Soundcloud, you aren't consistent about the permalink-url use of https or http :-( 14:25
timotimo bah 14:26
you can't really file a bug or something, eh?
RabidGravy I'm sure I can 14:27
timotimo cool 14:28
RabidGravy meanwhile I'll TODO that test ;-)
14:29 Chinese_soup left
RabidGravy reports it via twitter in the first place 14:35
14:42 Khisanth left
timotimo mhm 14:49
14:56 Khisanth joined
RabidGravy so I think that's all the modules fixed up, apart from the stupid million year old liquidsoap on travis-ci 14:58
15:00 CIAvash left 15:05 mxco86 left, kent\n left 15:07 kent\n joined
timotimo ugh :) 15:08
RabidGravy boom 15:09
jnthn, BTW the fix for OpenSSL is github.com/sergot/openssl/pull/42/...f9543139bf
15:13 pmurias joined 15:17 mxco86 joined 15:19 Cabanossi left
TreyHarris Uhhh.... This is just weird (OT for Perl 6 the language, but perlish and on-topif for #perl6 the channel): gist.github.com/treyharris/1de6365...221c9bdb4e 15:20
I was trying to dig up the references to 'auto-new' for AlexDaniel, and "[e]grep" didn't turn up all the lines, but pcregrep did
RabidGravy everything's weird
ugexe++ # top merging :) 15:21
15:21 Cabanossi joined
TreyHarris Oh, missed the "Binary file matches", I've never seen grep decide after outputting lines that a file is binary after all. (And I swore I had a UTF8-clean IRC and shell path at this point, sigh....) 15:22
hrmph, my locale is entirely UTF8. whatev... 15:23
ilbelkyr IRC color codes and such might make it think it's binary; they start with literal control-Cs
TreyHarris ilbelkyr: good point... 15:24
ilbelkyr: ...but I see no color codes in my log generally and have weechat supposedly set to sanitize that. but maybe one inside an actual users' sent-text got into the log 15:25
I wonder if there's a way to replicate grep's algorithm so I can find out what line finally makes grep barf and decide it's binary? On Ubuntu at least, the manpage describes the binary-detection algorithm for MS-DOS files only. Oh well, definitely OT for this channel so unless you know, nevermind... 15:32
(Duh, of course there's a way. I will apparently never get past the brain damage I took from learning Unix in the days between source licenses and open-source unixen; I have a lacuna in my brain that makes me forget I can see the source of "built-in programs" when they've been in Unix since I first learned it and we couldn't see the source.) 15:40
15:40 bjz joined 15:48 bjz left 15:49 baest left 15:53 baest joined, AlexDaniel joined
TreyHarris AlexDaniel: Ah, I was just talking about your question. "is auto-new" was a suggested simple method trait that would cause a call to a method on an undefined invocant to construct an instance on the fly and dispatch the method to it. I was implementing it and trying to come up with a better name, suggesting "is autovivified", but that's rather long, especially if I write it up as a module--do we call it 16:01
"Class::Trait::Autovivified"??
AlexDaniel oh
that's interesting
TreyHarris Hmm... on the fly... would "method f() is fly" be too cute? We do, after all, have "is Cool"....
RabidGravy See also Staticish, which does similar but creates a singleton instance 16:02
16:04 Cabanossi left
timotimo "is instantiating" ... "is conjuring" 16:05
16:05 bjz joined
TreyHarris RabidGravy: yes, that's what I was working from. But here I was trying to deal with the unpleasant (but understandable for performance reasons) behavior of structlike classes that refuse to tell you their fields until you create an actual instance. And some other system-oriented functions where a singleton would only be appropriate if you pretended the entire program was atomic--the system process table, for 16:06
instance, is a single thing, sure, but it's constantly changing, and having a realtime representation is less useful (or at least, much harder to program against) than a snapshot in most situations.
16:06 Cabanossi joined
timotimo "method foobar will pull-rabbit-out-of-hat { } 16:07
"
TreyHarris timotimo: can you use "will" like that?? 16:08
RabidGravy I think the semantics of will are slightly different to is, does and others 16:09
but yes basically
TreyHarris I thought it required a phaser and block
RabidGravy it may require a block yes 16:10
16:12 baest left
TreyHarris yeah, this trait wouldn't require a block. either nothing if there's a null-arg constructor or a constructor capture. 16:12
timotimo TreyHarris: not sure if you can expand "will" without building a slang
TreyHarris timotimo: I don't see the benefit other than the self-documentation of being a sort of future-looking characteristic of the trait. 16:13
RabidGravy I still want to add the ability to add mew trait words at some point
16:14 bjz left 16:16 drrho_ left, baest joined
TreyHarris RabidGravy: i.e. is/does/etc.? Agreed, I should be able to say "class Thingy will-be KindaCool" when I write my KindaCool meta-role. ;-) 16:16
RabidGravy yeah, sometimes it's a linguistic stretch to get some to work] 16:18
jnthn The various traits differ by what they parse after themselves 16:20
Like will foo will always then want a block
will foo { ... }
RabidGravy: Thanks, will nab the server name thing into the async impl :) 16:22
RabidGravy fabulous!
jnthn At some point I will get around to figuring out ALPN also 16:23
But for now, there's a curry to be cooked. :)
bbl
16:25 baest left 16:29 ChoHag left 16:30 baest joined
TreyHarris jnthn: I tried to come up with something clever to say about partial application of your curry, but drew a blank. 16:30
16:33 ChoHag joined 16:50 aindilis left
RabidGravy Hmm 16:52
16:54 mr-foobar left 16:59 drrho_ joined 17:03 leont left 17:04 Cabanossi left 17:06 Cabanossi joined 17:08 leont joined
Xliff can you suppress backtrace from printing when using die? 17:26
Oh. Ew. 17:27
docs.perl6.org/language/exceptions...Exceptions 17:28
Is there a better way to do this?
geekosaur I think the point is you use die when you want the backtrace, otherwise you want note + exit 17:30
17:30 kurahaupo_ joined 17:32 kurahaupo left
Xliff Gotcha. 17:32
I will write a wrapper.
Also, is there anything to do Fuzzy Text matching that isn't a hog like Text::Levenshtein::Damerau? 17:33
17:34 Cabanossi left 17:36 Cabanossi joined, baest left 17:41 baest joined 17:43 MasterDuke_ joined
MasterDuke_ Xliff: maybe github.com/MasterDuke17/Text-Diff-Sift4 would work for you? 17:44
AlexDaniel it probably is 17:46
(what he is looking for) :)
Xliff Checking 17:47
RabidGravy So I think all my modules are green in travis now
Xliff RabidGravy++
AlexDaniel although I'm still waiting for somebody to write a C implementation of this stuff…
Xliff That's gotta be nice!
RabidGravy Audio::Liquidsoap is a pain, because the liquidsoap is asynchronous under the hood, the timing on travis goes to shit 17:50
Xliff Is the maximum number of items in a hash still 16360, or was that issue fixed?
AlexDaniel m: my %h; %h{rand} = rand for ^100000; say +%h 17:53
camelia 100000
AlexDaniel m: my %h; %h{rand} = rand for ^1000000; say +%h
camelia 1000000
17:53 Cabanossi left
Xliff AlexDaniel: Intersting. 17:54
AlexDaniel Xliff: looks fine?
c: 2015.12 my %h; %h{rand} = rand for ^1000000; say +%h
committable6 AlexDaniel, ¦2015.12: «1000000»
Xliff I will have to crack open the code I wrote to test the issue and see.
Looks promising
AlexDaniel all: 2015.12 my %h; %h{rand} = rand for ^100000; say +%h
Xliff irc log search did not come up with anything. 17:55
committable6 AlexDaniel, gist.github.com/de27f7381d73f2fedb...cea5178176
AlexDaniel ah oops
all: my %h; %h{rand} = rand for ^100000; say +%h
TimToady might be more of an OS dependency 17:56
committable6 AlexDaniel, gist.github.com/5e9dd58be1701589b6...c474a30ac4
TimToady something with 16-bit RNG
AlexDaniel there's something interesting with 2014.01
c: 2014.01 my %h; %h{rand} = rand for ^100000; say +%h
committable6 AlexDaniel, ¦2014.01: «95076»
17:57 Cabanossi joined
AlexDaniel can't bisect that far :( 17:57
TimToady m: my %h; %h{(^65536).pick} = rand for ^100000; say +%h 17:58
camelia 51333
TimToady m: my %h; %h{(^0x10000000).pick} = rand for ^100000; say +%h
camelia 99983
TimToady m: my %h; %h{(^0x8000000).pick} = rand for ^100000; say +%h 17:59
camelia 99961
TimToady m: my %h; %h{(^0x100000).pick} = rand for ^100000; say +%h 18:00
camelia 95384
TimToady 24-bits maybe?
is 2014.01 parrot-based perchance? 18:01
AlexDaniel no 18:02
it's the first release on moar 18:03
TimToady different RNG apparently, in any case
Xliff AlexDaniel: It was more like a hash of hashes, actually.
I will need to check my own chatlogs to find more details. 18:04
But I am thinking the method I was doing was flawed and what I am doing now, even though slow, is probably the better way. 18:05
(reading from sqlite3 vs creating a .pm6 file with the static data)
The static data is still too large for the parser, I think.
AlexDaniel Xliff: shouldn't be a problem if it's precompiled, no? 18:10
18:19 azawawi joined
azawawi Hi 18:20
pmurias azawawi: hi 18:21
azawawi :)
azawawi continues writing NCurses examples using tldp.org/HOWTO/NCURSES-Programming-HOWTO/ 18:22
18:22 baest left
pmurias As the js backend doesn't have NFG, would it make sense to do a "regular" normalization on input? (that slurped on node.js etc) 18:23
dmaestro Comparing the docs for sprintf with rakudo behavior raises a question about the '#' flag with the %o format. 18:25
m: say sprintf "%.5o", 0o123 18:26
camelia 00123
dmaestro m: say sprintf "%#.5o", 0o123
camelia 000123
18:27 baest joined
dmaestro According to: the precision is incremented if it's necessary for the leading "0" 18:27
These should probably give the same output ? 18:28
18:35 AndyDee joined
AlexDaniel dmaestro: first of all, this section in the docs is all wrong 18:36
dmaestro: for example, it attempts to use octal literals without 0o…, which is an error 18:37
m: sprintf '<%#.5o>', 012; # OUTPUT: «<000012>␤»
camelia 5===SORRY!5===
Bogus statement
at <tmp>:2
------> 3<BOL>7⏏5»
expecting any of:
prefix
term
Other potential difficulties:
Leading 0 does not indicate octal in Perl 6. Please use 0o12 if you mean that.
18:38 baest left
Geth doc: d1d9b5cc9a | (Aleks-Daniel Jakimenko-Aleksejev)++ | doc/Type/Str.pod6
Fix octal literals

  “Leading 0 does not indicate octal in Perl 6. Please use 0o12 if you
mean that”
18:39
AlexDaniel dmaestro: regarding your question, I don't even understand why it has to behave like that at all 18:40
dmaestro: e.g. why hex and bin behave differently 18:41
is it for compatibility or something?
18:45 leont left, Cabanossi left 18:46 Cabanossi joined, bjz joined
AlexDaniel ah, I see the issue now 18:47
18:49 Rawriful joined, baest joined 18:50 MilkmanDan left 18:51 vendethiel joined, MilkmanDan joined
dmaestro AlexDaniel: Yeah, I was in the process of fixing that (thanks!), but discovered this other issue. 18:52
azawawi pasteboard.co/4GzKv09kk.png # github.com/azawawi/perl6-ncurses/b...window.pl6
AlexDaniel dmaestro: didn't know there was an issue for that, but now I see 18:53
dmaestro As to 01234, 0b101, and 0x3eef being different, that is C legacy, and I'm guessing nobody wanted to change that for 'sprintf' :-)
geekosaur sprintf is obeying the POSIX description, which is C-centric; and I don't think the # flag should produce Perl 6 literals from sprintf 18:56
AlexDaniel dmaestro: are these the only tests for it? github.com/perl6/roast/blob/fca87f....t#L48-L51
geekosaur also my guess re adding a 0 on the front is that's just what it does; it does not check if there's one there already, and probably shouldn;t as that means it produces a different output length if the first digit of the value is/isn't 0
which kinda makes using field widths to control output pointless 18:57
18:57 bjz left
AlexDaniel here's the thing… if # is not in roast, this part of the docs can be wiped altogether :P 18:57
18:58 rindolf left
AlexDaniel ah wait, I see something! 18:59
github.com/perl6/roast/blob/d1baf2...printf-b.t 19:00
no tests for octals, but # is tested
and a lot of them are todo-ed :( 19:01
dmaestro Perl6 doesn't allow the simple leading-zero notation for octal literals, but there is no reason sprintf output has to follow suit. 19:02
Right, # is in there, but the only description of its behavior with octal is in the doc :-( 19:03
geekosaur: so are my examples above consistent with POSIX, and the description in the doc wrong? or ... 19:04
19:04 baest left
geekosaur hm, glibc's sprintf explicitly says it increases precision *if necessary*. that's ... abysmally stupid. 19:06
then again, of late that probably means it's POSIX :/
19:07 darutoko left
geekosaur yep, POSIX stupidity. and the perl behavior is sane but "incorrect" 19:07
"For o conversion, it shall increase the precision, if and only if necessary, to force the first digit of the result to be a zero"
which makes field widths completely useless, thanks POSIX
dmaestro No, I think it's consistent with the idea of automatically expanding width if necessary to unambiguously specify the result.
You should get width of 'precision', and no more, if that is sufficient. 19:08
Yeah, *whether* POSIX should allow expanding width is debatable, but pretty much settled ... 19:09
19:15 baest joined
pmurias /j #perl6-dev 19:16
DrForr o/ 19:17
gfldex \o
pmurias \o 19:19
DrForr Heh. Head is still rocking touch from the vaporetto back from Venice. 19:20
*a touch
pmurias rakudo.js now passes roast tests S02-lexical-conventions/*.t (with slightly fudged weird unicody stuff) and S02-lists/*.t 19:21
DrForr W00T
19:21 zakharyas joined
samcv good morning wonderful people 19:21
19:23 rindolf joined
DrForr I would ask what this morning is that you speak of, but I remember having one just like it a few hours ago. 19:24
moritz \o 19:25
samcv true 19:26
it's 12:20am here. so technically not morning
good mid-day everyone!
DrForr For those that are curious, now that ::Tidy can handle brace formatting cleanly I'm giving ANTLR4 some TLC. Namely rewriting it.
moritz it's always morning in UGT! :-) 19:27
timotimo DrForr: which ::Tiny is this now? 19:28
DrForr None of the above. Perl6::Tidy. 19:29
pmurias you are rewriting Perl6::Tidy in ANTLR4?
DrForr No, I'm giving ANTLR4 some TLC. 19:30
moritz gives ANTLR4 some THC 19:31
19:32 baest left
DrForr That can wait for a TPC :) 19:32
And I'm sorely tempted to write an interactive match walker for the debugger. 19:35
19:42 baest joined 19:53 baest left
Xliff AlexDaniel: Actually. No! The parser chokes on it before it can be! 19:55
And compilation of a hash of hashes with over 20k records pushes the compilation time exponentially. 19:56
Actually 16360 items.
I will seriously need to find those chatlogs
MasterDuke_ Xliff: could you gist the file that chokes the parser somewhere? 19:57
19:58 baest joined
Xliff May 23rd 2016 19:59
MasterDuke_: Sure.
It's actually kinda large. 20:00
MasterDuke_ maybe compress before putting in the gist?
Xliff 3368789
gist can handle gzip? 20:01
I'm confoosled.
MasterDuke_ clone the gist to your filesystem and add it from the command line
gfldex a gist is a git repo in a dir with a funny name
AlexDaniel MasterDuke_: oh! Oh 20:02
MasterDuke_ what gfldex said
AlexDaniel MasterDuke_: that's a great idea actually
MasterDuke_: I wonder how github would handle .pngs and other image types
MasterDuke_ yeah, i do it all the time
gfldex there is a package to gist from the CLI packages.debian.org/jessie/gist
MasterDuke_ AlexDaniel: didn't we test that before?
don't remember the results though... 20:03
AlexDaniel MasterDuke_: I don't think we tried using this git trick
MasterDuke_: try it now quickly if you can?
Xliff Error: source sequence is illegal/malformed utf-8 20:04
gfldex gist-paste doesn't like non-utf8 it seams 20:05
MasterDuke_ gist.github.com/MasterDuke17/47cfe...73ffc9084a
AlexDaniel MasterDuke_: amazing!
Xliff MasterDuke_: OK. How did you do that? 20:06
MasterDuke_ git clone [email@hidden.address] git add; git commit; git push
on the gist page, click on the "Embed" dropdown to get a clone link 20:07
AlexDaniel Xliff: fwiw, quotable6 works with a 242MB json file just fine (reasonable time and reasonable memory usage)
Xliff gist.github.com/Xliff/1a59bdb37c9e...6465c5cf9e 20:11
I am going to gunzip, try to compile and see what happens. 20:13
(again)
20:29 Cabanossi left 20:31 Cabanossi joined 20:33 nadim left
MasterDuke_ after a while: ===SORRY!=== Frame 2 local access out of range 20:43
ugexe gfldex: there is no reason you have to install zef for your travis testing - github.com/ugexe/Perl6-Distributio...ml#L32-L33
20:44 wamba left
MasterDuke_ perf recorded 7.5g of data 20:44
20:44 Ven joined, Ven is now known as Guest55325
samcv Geth, help 20:44
Geth samcv, Source at github.com/perl6/geth To add repo, add an 'application/json' webhook on GitHub pointing it to geth.perl6.party/?chan=#perl6 and choose 'Send me everything' for events to send | use `ver URL to commit` to fetch version bump changes
samcv i need it to ignore one moarvm branch 20:45
20:45 pytuger left 20:46 v1_ left
MasterDuke_ Xliff: any success on your end? 20:49
azawawi RabidGravy: ping 20:52
grondilu added a purely functional version of FFT on RosettaCode: rosettacode.org/wiki/Fast_Fourier_t...orm#Perl_6
grondilu still wonders if it can be made even more concise with some metaop magic 20:53
20:53 Guest55325 left
azawawi Some Perl 6 NCurses fun pasteboard.co/4ICpB5ScE.png and pasteboard.co/4IC6QMrbe.png :) 20:54
Xliff MasterDuke_: Nope. Just as I expected... 20:55
$ perl6 --stagestats this-will-not-precompile.pm6
Stage start : 0.000
Stage parse : 162.260
Stage syntaxcheck: 0.000
Stage ast : 0.000
Stage optimize : 26.427
Stage mast : 47.530
Stage mbc : ===SORRY!===
Frame 2 local access out of range
grondilu m: say <a b> X~ <c d>; # can I rely on the order of the output here? 20:56
camelia (ac ad bc bd)
20:57 Ven_ joined
Xliff m: say <1 2> X~ <3 4> 20:57
camelia (13 14 23 24)
20:57 wamba joined
grondilu m: say <1 2> X* <3 4>; 20:57
camelia (3 4 6 8)
grondilu m: say <1 2> R[X*] <3 4>;
camelia (3 6 4 8)
AlexDaniel grondilu: yes
Xliff AlexDaniel: How long did quotable6 take to handle that json file? 20:58
20:59 bjz joined
AlexDaniel oh, actually, thinking about it… that's not exactly what it does, sorry 20:59
Xliff: instead, it parses a bunch of smaller json files… meh. That's not exactly it 21:00
Xliff: so nevermind
Xliff Heh!
Thanks for the time, at least.
AlexDaniel the 242MB file is just a bunch of null-separated strings 21:01
Xliff I actually thought about Splitting the static data across multiple files and wrapping it in an interface.
21:01 wamba left
Xliff Just struck me as a lot of work for so little gain when I could create an sqlite3 file for disto and use DBIish. 21:01
AlexDaniel right 21:02
jnthn would suggest any option that doesn't involve using Perl 6 as a serialization format. :)
samcv hey jnthn
Xliff However, now that I am doing that, I am noticing that there is a huge hit trying to load the master table. 22k entries.
samcv can you see my last post here github.com/MoarVM/MoarVM/pull/580
jnthn o/ samcv
samcv coverage PR should be ready, just reveiew the two licenses the scripts i adopted are
Xliff Although, now that I think about it. I am pretty sure I am being an idiot.
....
... yup! I'm an idiot. 21:03
samcv CC-BY-SA and CC-0-1.0 which is basically public domain dedication
Xliff Why load all that data for lookup when I can use the sqlite tables for that. *sigh*
jnthn samcv: I'm not a lawyer ;)
Xliff headdesks.
samcv yes i know
jnthn samcv: Public domain is of coures fine
21:03 zakharyas left
samcv better get cracking then. law school takes a long time 21:03
jnthn samcv: For CC-by-SA, I guess we've both giving attribute and any changes we've done are being shared, so it's good? 21:04
Xliff samcv: Are you still travis-aggro?
AlexDaniel samcv: CC-by-SA is not the best thing for code :(
samcv yeah
Xliff is glad he is not named "travis"
samcv yeah i think it should be fine. since all work is fully attributed as well as the license it's under in the file
jnthn samcv: Yeah, just looked at the file, the attribute looks fine to me 21:05
samcv also read the comment on this one github.com/MoarVM/MoarVM/pull/580/...a0b6a18a0c 21:06
uhm and aside from that. i think that's all the info that needs to be relayed to you 21:07
but should be aware of what i wrote in that commit description ^
i fixed them, and the commented out two, to restore it to how we were building before. though we could always build them if we want to 21:08
jnthn samcv: I think what you're done makes sense 21:17
samcv: The only thing I'm a bit uncomfortable about in all of this is how much it'll bloat the MoarVM repo size, if every commit we make ends up with coverage data going in too
samcv hm 21:18
we could move it to another repo
have it push to another repo that is
that is fine with me
jnthn How much trouble is that for you?
samcv not much
jnthn If it's not much effort then I think it'd be nice
samcv you just need to add a new repo and add the key to it
jnthn OK, that I can do
is MoarVM/coverage a good name for it?
samcv yep 21:19
then it'll be like moarvm.github.io/coverage
or something
do you need the pubkey again? 21:20
timotimo holy cow, rc-forest-fire has a line that spends 53% of its time in bind_sig; it's like for @!coords -> ($i, $j) { ... } 21:21
replacing those to do no unpacking makes things a crazy amount more faster 21:25
m: say 8596.15 / 17811.5 21:26
camelia 0.4826180
timotimo how come we're going to Numeric.ACCEPTS when matching an enum vs an enum? 21:37
21:37 gdonald left 21:38 gdonald joined 21:39 raiph left
timotimo *nice* 21:41
i wrote a testing ACCEPTS that i pushed onto the enum values and that's more than 2x faster 21:42
21:44 Cabanossi left 21:46 Cabanossi joined 21:51 kurahaupo_ left 21:54 woolfy joined 21:55 dct joined, woolfy left 21:58 Ven_ left 22:05 bjz left 22:18 pmurias left
azawawi So basically I have 2 sources to study so far for NCurses::Simple namely docs.python.org/3/library/curses.html and www.rubydoc.info/gems/curses/1.2.1/...es/Window. Anyone know of other "better" ncurses implementations? 22:21
"better" OO ncurses wrapper implementations that is 22:22
timotimo azawawi: "blessings" in python space
oh, ncurser wrapper ... blessings isn't that if i remember correctly
azawawi timotimo: im currently exposing the nativecall api. Need to provide more OO sugar. 22:23
timotimo right
azawawi "...Blessings lifts several of curses’ limiting assumptions, and it makes your code pretty, too..." :)
I wanted to write NCurses::Decurse :) 22:24
timotimo NCurses::Lift?
azawawi :)
timotimo NCurses::Exorcism?
azawawi good names 22:25
azawawi should use timotimo's online dictionary webservice more often :)
timotimo %) 22:26
22:31 benchable6 left 22:32 benchable6 joined, ChanServ sets mode: +v benchable6
Xliff NCurses::Excorism++ 22:39
22:40 Xliff left
azawawi and add a `compels` method for fun :) 22:41
github.com/azawawi/perl6-ncurses/issues/10
azawawi begins drawing a circle around him with strange runes :) 22:42
MasterDuke_ just as long as you don't put on your robe and wizard hat... 22:43
azawawi :)
good night & 22:44
22:44 dct left 22:48 azawawi left 22:53 rindolf left
geekosaur no, excorism is what usually happens, exorcism is what's needed :p 22:56
23:10 espadrine left 23:29 Rawriful left 23:32 bjz joined 23:33 bjz left 23:38 zapwai left 23:43 bjz joined, bjz left, BenGoldberg joined 23:44 Cabanossi left 23:47 Cabanossi joined