»ö« Welcome to Perl 6! | perl6.org/ | evalbot usage: 'perl6: say 3;' or rakudo:, niecza:, std:, or /msg camelia perl6: ... | irclog: irc.perl6.org | UTF-8 is our friend!
Set by sorear on 25 June 2013.
00:26 raiph joined 00:33 jnap joined 00:38 jnap left 00:40 colomon left 00:41 colomon joined 00:47 xenoterracide left
japhb r-m freezes trying to 'panda install p6doc' at: Compiling lib/Perl6/TypeGraph/Viz.pm to mbc 00:56
01:12 iolympian joined, iolympian left 01:18 jnap joined 01:32 FROGGS left 01:34 lustlife joined 01:35 woosley joined 01:38 lustlife left 01:40 xenoterracide joined, lustlife joined 01:44 FROGGS joined 01:45 klapperl left 01:47 klapperl joined 01:51 colomon left
timotimo is experimenting with docker 02:03
02:03 benabik joined
japhb r: say "$_" for < a b >; say "{$_}" for < c d >; 02:04
camelia rakudo-parrot 358582: OUTPUT«a␤b␤c␤d␤»
..rakudo-jvm 358582, rakudo-moar 358582: OUTPUT«a␤b␤␤␤»
japhb ^^ Why the difference here? 02:05
timotimo oh yikes
japhb Yeah, that led to a rather strange bug, let me tell you. 02:06
timotimo i can imagine
but i don't have time to hunt that right now :\
japhb .tell jnthn Two r-m bugs: irclog.perlgeek.de/perl6/2014-04-02#i_8527156 and irclog.perlgeek.de/perl6/2014-04-02#i_8527351 02:07
yoleaux japhb: I'll pass your message to jnthn.
02:07 colomon joined
japhb timotimo: Understood. 02:07
02:11 xenoterracide left 02:12 BenGoldberg left 02:13 xenoterracide joined
japhb .tell moritz Since I wasn't around when you announced it, congrats re: irclog.perlgeek.de/perl6/2014-03-31#i_8519218 :-) 02:14
yoleaux japhb: I'll pass your message to moritz.
02:17 BenGoldberg joined 02:18 colomon left 02:20 xenoterracide left 02:21 colomon joined 02:24 yeltzooo left, raiph left 02:25 yeltzooo joined
japhb .tell jnthn On a positive note, your r-j hang-on-exit fix did indeed work for me. :-) 02:26
yoleaux japhb: I'll pass your message to jnthn.
02:27 xragnar left 02:30 xragnar joined 02:32 colomon left 02:39 thou left 02:40 hoverboard is now known as ffsomgwtf 02:42 ffsomgwtf is now known as hoverboard 02:51 rurban1 left 02:54 xenoterracide joined 02:56 jnap left 02:59 xenoterracide left 03:15 colomon joined 03:21 hoverboard left 03:23 ssutch left, ssutch joined 03:25 ssutch left, ssutch joined 03:27 jnap joined 03:31 jnap left 03:38 rurban1 joined 04:03 Ben_Goldberg joined 04:04 Ben_Goldberg is now known as testing, testing is now known as aasdfasdfasdf, kaare_ joined 04:13 BenGoldberg is now known as BenGoldberg___ 04:15 aasdfasdfasdf is now known as Ben_Goldberg, BenGoldberg___ is now known as BenGoldberg 04:16 BenGoldberg_ joined, BenGoldberg_ left, Ben_Goldberg left 04:26 [Sno] left 04:28 jnap joined 04:30 Psyche^ joined 04:32 jnap left 04:34 Psyche^_ left 04:48 thou joined 04:52 woolfy left, woolfy joined 05:00 FROGGS left 05:20 dwarring left 05:21 BenGoldberg left 05:28 jnap joined 05:30 aborazmeh joined 05:33 jnap left, rurban1 left 05:34 kurahaupo joined 05:37 zby_home_ joined 05:38 [Sno] joined 05:41 aborazmeh left
moritz japhb: thanks 05:55
yoleaux 02:14Z <japhb> moritz: Since I wasn't around when you announced it, congrats re: irclog.perlgeek.de/perl6/2014-03-31#i_8519218 :-)
05:58 woolfy left
lizmat oohh, wow, congrats moritz++ and mom! 05:59
moritz lizmat: thanks 06:02
06:03 rurban1 joined 06:05 rurban2 joined 06:06 arnsholt joined 06:08 rurban1 left 06:12 rurban2 left
lizmat decommute& 06:13
06:13 lizmat left 06:26 arnsholt left 06:29 jnap joined 06:30 kaleem joined 06:32 [Sno]_ joined, denisboyun joined 06:34 jnap left 06:35 [Sno] left, [Sno]_ is now known as [Sno] 06:55 zakharyas joined 07:01 arnsholt joined
arnsholt o/ 07:01
07:09 WJB joined 07:10 rurban1 joined 07:18 rurban1 left 07:21 dmol joined 07:26 kurahaupo left 07:28 kurahaupo joined 07:30 jnap joined 07:31 pecastro left 07:34 jnap left 07:44 FROGGS joined
FROGGS morning 07:45
arnsholt Moin
nwc10 \o/ 07:46
07:56 hummeleB1 joined 08:05 dmol1 joined 08:06 dmol left 08:13 fhelmberger joined 08:27 virtualsue joined 08:29 ashleydev left 08:30 ashleydev joined 08:31 jnap joined, dakkar joined 08:32 darutoko joined 08:35 jnap left
jnthn morning o/ 08:40
yoleaux 02:07Z <japhb> jnthn: Two r-m bugs: irclog.perlgeek.de/perl6/2014-04-02#i_8527156 and irclog.perlgeek.de/perl6/2014-04-02#i_8527351
02:26Z <japhb> jnthn: On a positive note, your r-j hang-on-exit fix did indeed work for me. :-)
jnthn .tell japhb yes, the panda p6doc thing is known to fail install on both JVM and MoarVM. It's not entirely clear why yet, but the failures are likely related. 08:41
yoleaux jnthn: I'll pass your message to japhb.
jnthn I'm surprised the other one didn't trigger a spectest... 08:42
08:54 pecastro joined 09:07 denisboyun left 09:16 rurban1 joined 09:20 rurban1 left 09:23 aborazmeh joined 09:26 SHODAN left, SHODAN joined 09:32 jnap joined 09:36 jnap left
dalek ar: d381a68 | (Tobias Leich)++ | modules/ (2 files):
update submodules to newer revision
09:36
ar: f9a0c4c | (Tobias Leich)++ | tools/star/release-guide.pod:
no special handling needed, PR got applied
09:39
09:48 Guest6533 joined 09:51 rindolf joined 09:52 rindolf left 09:57 rindolf joined 10:02 pecastro left 10:05 iolympian1 joined 10:07 denis_boyun joined 10:08 bjz left, bjz joined 10:12 masak_ is now known as masak 10:17 woosley left, rurban1 joined, woosley joined 10:22 rurban1 left 10:25 pecastro joined 10:32 jnap joined 10:37 jnap left 10:42 colomon left 10:43 colomon joined 11:05 daniel-s_ joined 11:09 iolympian1 left 11:10 dmol1 left 11:22 aborazmeh left 11:27 LLamaRider left 11:33 jnap joined 11:38 jnap left 11:56 telex left 11:58 telex joined 12:01 benabik left 12:09 daniel-s_ left, daniel-s_ joined
FROGGS TheDamian++ # www.infoq.com/interviews/conway-perl 12:26
seems to be more than a year old, but is still very very good 12:27
12:34 jnap joined
Ven r: FROGGS "“Isn’t Pearl dead?” - What do you answer to that?" erm :( 12:39
camelia rakudo-parrot 358582, rakudo-jvm 358582, rakudo-moar 358582: OUTPUT«===SORRY!=== Error while compiling /tmp/tmpfile␤Two terms in a row␤at /tmp/tmpfile:1␤------> l dead?” - What do you answer to that?" ⏏erm :(␤ expecting any of:␤ …»
12:39 jnap left
moritz Ven: Mu 12:39
Ven Seems like my brain is thinking "this is #perl6, I need to prefix my message with r:" sorry moritz 12:40
FROGGS *g*
but yeah, that typo is slightly annoying
12:40 espadrine joined
moritz Ven: I actually meant that 'Mu' is a good answer to such a question 12:41
Ven moritz: Then I'll just keep on wondering what that means
moritz compare en.wikipedia.org/wiki/Mu_%28negative%29
in particular en.wikipedia.org/wiki/Mu_%28negativ...e_question 12:42
12:43 d0nk left
Ven moritz: I'm only talking about the typo, I don't care about the question haha ... Didn't realize that's what you were talking about 12:43
12:43 d0nk joined 12:45 xenoterracide joined 12:47 mzgcz joined
[Coke] FROGGS: I think the typo is intentional. "this user knows so little about perl they misspell it" 12:48
sorry, I meant PERL, of course.
That's a shibboleth for me when looking at resumes. we don't perl here, but I don't want people who claim to have PERL'ed.
FROGGS yeah, that might be true 12:49
12:49 daniel-s_ left 12:50 daniel-s_ joined
Ven "no system is as good as Haskell’s type system, but also unlike Haskell’s type system, ordinary human beings can understand it" I get sad when I read that 12:51
[Coke] booking.com++ # perl5 core maint fund
Ven [Coke]: might be, yeah
[Coke] Ven: I loved that quote!
also, if you speak haskell, do you want to try to get pugs back up on crutches?
Ven [Coke]: I'm not sure it's even kinda up-to-date enough for it not to blow up with recent ghc updates 12:52
also, I'm not smart enough
Ven notes - that looks like a really neat project to have, though ... 12:54
[Coke] ven - if you speak haskell, you're already a step ahead of me. 12:55
let me grab a snapshot of what the issue looks like here.
12:55 dmol joined 12:59 guru joined, guru is now known as Guest1097 13:00 Guest1097 is now known as ajr_
FROGGS Ven: I tried to fix a bug in pugs like two months ago, and I was able to build it but was not able to fix the bug 13:01
13:05 daniel-s_ left
Ven FROGGS: well, I'm just waiting for the day to end anyway, do you remember what the bug was ? 13:05
FROGGS ohh, now I remember...
it wasn't even a bug, I wanted to change sub "eval" to "EVAL"
but [Coke] has the problem that his pugs installation does not run the spectests... 13:06
so I dunno what is the problem there
13:06 iolympian joined, iolympian left
Ven FROGGS: you mean it refuses to *run* the spectests themselves? 13:07
[Coke] I'm getting the build output, one sec. 13:08
no, it runs them, they just nearly all fail.
FROGGS Impl date percentage roast sha1 pass fail todo skip plan spec notes 13:09
pugs 2014-04-01 00.06% 2f754e1 19 14733 0 1 14753 28848
pugs 2014-02-03 21.86% a4574df 6331 4691 2884 856 14762 28451
13:09 sqirrel joined
FROGGS so, it passes >6k at one point 13:09
passed*
Ven 20% for an implementation that's been dead since 2009 seems good ;o)
(not really sure about the date, sry)
FROGGS I have heard about 2007, but that was way before my time here :o) 13:11
[Coke] lots of deprecation warnings...
FROGGS it passed 9.1k tests in may 2012
Ven (I actually work on an altJS where au is a contrib, though)
That's still cool 13:12
"it will probably be based on ideas from languages like Erlang" mmh ? 13:13
13:13 mzgcz left
[Coke] "this version of PCRE compiled without utf8 support" is oft-repeated. 13:14
s/utf8/UTF/
13:16 pecastro left
[Coke] assumes he hasn't gone back and tried to fix this lately. 13:17
Util r: my @x = [<a b>], [<c d>]; say .perl for [@x.list], [@x.flat], [@x>>.flat], [@x>>.list]; 13:18
camelia rakudo-parrot 358582, rakudo-jvm 358582, rakudo-moar 358582: OUTPUT«[["a", "b"], ["c", "d"]]␤[["a", "b"], ["c", "d"]]␤["a", "b", "c", "d"]␤["a", "b", "c", "d"]␤»
Util How can I flatten @x into <a b c d> ?
I have tried .list and .flat as methods and hyper-methods.
TimToady it appears the latter two worked, but you put an extra [] around them after 13:21
Ven also, @x.list returns an array ?
r: say [].^HOW.name;
camelia rakudo-parrot 358582, rakudo-jvm 358582, rakudo-moar 358582: OUTPUT«===SORRY!=== Error while compiling /tmp/tmpfile␤Cannot use .^ on a non-identifier method call␤at /tmp/tmpfile:1␤------> say [].^HOW⏏.name;␤ expecting any of:␤ …» 13:22
TimToady HOW is already ^-ish
doesn't need ^
Ven r: say ([1]).HOW.name;
camelia rakudo-moar 358582: OUTPUT«Not enough positional parameters passed; got 1 but expected 2␤ in any name at src/gen/m-Metamodel.nqp:69␤ in block at /tmp/tmpfile:1␤␤»
..rakudo-jvm 358582: OUTPUT«Wrong number of arguments passed; expected 2..2, but got 1␤ in block at /tmp/tmpfile:1␤␤»
..rakudo-parrot 358582: OUTPUT«too few positional arguments: 1 passed, 2 (or more) expected␤ in any name at gen/parrot/Metamodel.nqp:66␤ in block at /tmp/tmpfile:1␤␤»
Util TimToady: Thanks! (/me needs to `git pull` and re-make) 13:23
TimToady say [1].^name
r: say [1].^name
camelia rakudo-parrot 358582, rakudo-jvm 358582, rakudo-moar 358582: OUTPUT«Array␤»
Ven ;( thanks
r: [1].list.^name
r: say [1].list.^name 13:24
camelia ( no output )
rakudo-parrot 358582, rakudo-jvm 358582, rakudo-moar 358582: OUTPUT«Array␤»
TimToady r: say [1].list.WHAT
Ven Looks weird to me,though
camelia rakudo-parrot 358582, rakudo-jvm 358582, rakudo-moar 358582: OUTPUT«(Array)␤»
Util I was working from local: Jan 20 12:54 perl6-p
TimToady that's like...ancient... 13:25
[Coke] Ven: feather.perl6.nl/~coke/PUGS_BUILD.txt 13:26
the PCRE bug is the most obvious issue, googling.. 13:27
13:27 arnsholtAtHome joined
arnsholtAtHome o/ 13:27
[Coke] I don't see how to have cabal tell me what versions I have installed locally. :P 13:29
ven: any any tips on how to diagnose that issue? 13:33
13:35 jnap joined 13:37 bluescreen10 joined 13:39 sqirrel left, jnap left 13:45 kbaker_ joined
FROGGS hi arnsholtAtHome 13:45
[Coke] (or anyone)
.seen au?
yoleaux I haven't seen au? around.
[Coke] .seen au
yoleaux I haven't seen au around.
[Coke] yoleaux: help
FROGGS TimToady: I've heard you are/were travelling around and give talks... are any of them recorded? 13:46
[Coke] .mangle is perl six the best perl?
yoleaux River, Pearl used?
13:47 mmachenry joined
TimToady FROGGS: they had a camera there, dunno anything else 13:47
FROGGS hmmm... do they have a website? :o)
nvm, I've seen a website... I was just not able to read it 13:48
[Coke] .gcs "perl" "perl 5" "perl 6" 13:49
yoleaux [site] "perl" (32,000,000), "perl 6" (872,000), "perl 5" (366,000)
[Coke] .gcs "rakudo"
yoleaux [site] "rakudo" (186,000)
FROGGS .gcs "peril" 13:50
yoleaux [site] "peril" (6,930,000)
FROGGS /o\
[Coke] we can't search that, it's too dangerous.
dalek kudo-star-daily: 7718ffb | coke++ | log/ (5 files):
today (automated commit)
13:51
kudo-star-daily: 9937ef2 | coke++ | log/ (5 files):
today (automated commit)
FROGGS +Makefile:45: *** missing separator. Stop. 13:52
:/
Woodi hi + :) 13:53
FROGGS hi Woodi 13:54
Woodi new R* ! I was missing it for some time... but it's just emotions :) 13:55
13:55 btyler joined
Woodi I hope OpenLDAP bindings would work via NativeCalls 13:57
and can we have { ... } are export sugar ? 13:58
FROGGS ++Woodi # I'd like to be your tester!
hmmm, we have nothing like that atm... so I'd say not in the near future 13:59
ahh, btw:
Woodi brave FROGGS :) Just yesterday I realy understand programming is not realy for me :)
FROGGS TimToady: when we autogenerate a proto because we just declare a multi, should the proto inherit some of the traits?
TimToady: I am think of "is hidden_from_backtrace" for example 14:00
Woodi: bah... don't you give up! :o)
thinking*
Util TimToady: `perl6-p` updated from git HEAD; problem resolved. Thanks! 14:04
14:04 rurban1 joined
Woodi FROGGS: and few days before my brain decided: "C++ ! this is the language ! why so furiously stick to C ? with C++ all GUI frameworks can be used ! even Perl6 should be done in C++ !" 14:06
FROGGS ohh noes!
Woodi but I try and now trying WxPerl with some success :) 14:07
Perl - it's so nice and easy language :)
FROGGS btw, do we meet in Poznan in may?
14:08 jnap joined, jnap left, salv0 left
Woodi hmm, probably not if you ask Woodi :) 14:09
FROGGS Woodi: why not?
ascent_ what's in Poznan in May?
retupmoca on rakudo-moar, $?FILE is a relative path. Is there a way to get the absolute path to the current file? 14:10
FROGGS ascent_: the polish perl workshop
retupmoca IO::Path.absolute just gets me $*CWD ~ $?FILE
Woodi I didn't know that
14:10 jnap joined
Woodi now I will try to mess a bit there :) 14:10
jnthn hasn't been to Poznan before. :) 14:11
FROGGS me neither :o)
I was in Poland once but just because I was driving wrongish
Woodi heh :) 14:12
jnthn Driving wrongish isn't allowed in Germany, so you went to Poland to do it instead? :P
FROGGS m: say $*PROGRAM
camelia rakudo-moar 358582: OUTPUT«===SORRY!===␤Dynamic variable $*PROGRAM not found␤»
Woodi we are allowed to drive limit+10km/h unofficially :) 14:13
retupmoca My use case: I want to load a library.so file that's in the same directory as the installed library.pm6
FROGGS m: say $*PROGRAM_NAME
camelia rakudo-moar 358582: OUTPUT«/tmp/Rr4xo9uSSC␤»
14:14 kaleem left
FROGGS m: say $*PROGRAM_NAME.path.directory # retupmoca> 14:14
camelia rakudo-moar 358582: OUTPUT«/tmp␤»
FROGGS dunno what that does in a .pm though
jnthn Same; it's about the original program 14:15
FROGGS it perhaps gives you still the script that invoked it
jnthn Is there a %*INC for "hwere did modules we used come from"?
FROGGS if we had CompUnitRepos in nom you could query that :o)
14:15 treehug88 joined
retupmoca if we had $?RESOURCES in nom/panda master I could use that instead :) 14:16
jnthn FROGGS: How far off are having CompUnitRepos in nom? :) 14:18
retupmoca yeah, it looks like $*PROGRAM_NAME just gives the .pl file 14:19
even when used in a .pm
jnthn $* means dynamically coped
*scoped
retupmoca yeah, that's what I expected
jnthn So not so surprising.
FROGGS jnthn: we would need to discuss its "design" 14:21
and then do some testing, but there is not that much left to do for it 14:22
14:22 salv0 joined
Woodi btw. R* is annoingly long... IMO "Pleas note..." and all below should be refactored to separate "todo" page... 14:22
14:23 aborazmeh joined
Woodi /R\*/R* release text/ 14:23
14:24 aborazmeh left
Ven [Coke]: I'm back -- sorry ! Looking at it right now 14:24
14:25 hoverboard joined
Ven Lots and lots of deprecation warning, uh 14:28
14:28 hoverboard left, hoverboard joined 14:29 pecastro joined, benabik joined
retupmoca so, I can scan @*INC to find the .so file 14:30
next problem: is native($path-to-library) gets compiled in staticly
so I get "Cannot locate native library '.../.work/1396448921_1/blib/lib/...' 14:31
FROGGS mhpf
Ven Never seen that "this version of PCRE is compiled without UTF support". Google results blame apache but that's with php so meh
retupmoca even when $path-to-library is completely different
Woodi R* README: "To build R* you need at least a C compiler, a 'make' utility, and Perl 6.1.0 or newer." Hmm ? 5.16 ? 14:32
FROGGS ohh
Woodi: that was me
14:33 Guest6533 left
FROGGS there was a 5.9.0 before and that was the Parrot revision we had in the past... 14:33
damnit
dalek ar: 0757d26 | (Tobias Leich)++ | README:
fixed thinko in version bump, Woodi++
14:34
Woodi also no MoarVM mentioning in README
can I run R* on Moar now ? 14:35
FROGGS if you wait a minute, I fix a vcs conflict in the makefile 14:39
Woodi: a few modules will fail tests though
and one module (something::graphviz::something) will hang when you build it, just ctrl+c it 14:40
dalek ar: f79eaed | (Tobias Leich)++ | tools/build/Makefile.in:
fix VCS conflict
14:41
14:41 jnap1 joined
FROGGS Woodi: let me give you a release tarball where you can build moar... 14:41
Woodi there is INSTALL.txt in rakudo/ 14:42
14:42 woolfy joined
Woodi FROGGS: I wgetted one from rakudo.org... 14:42
FROGGS Woodi: this one does not build for moarvm
14:43 jnap left
FROGGS I've just made a release tarball that contains MoarVM/nqp/rakudo HEAD as of now 14:44
there are quite some fixes since 2014.03
Woodi I see rakudo/src/vm/ but it will not build ?
FROGGS Woodi: you are able to build the compiler, but not the modules I think 14:45
Woodi means: not automatically/via panda or at all ? 14:46
FROGGS Woodi: it does not use panda, no
damn
that tarball I created will not build rakudo, because of an outdated MANIFEST :/ 14:47
Woodi upload the .patch :)
14:49 Hugh joined 14:50 Hugh left
jnthn train & 14:50
Ven [Coke]: Seems like its' missing that HsBridge.pm, though. (even if you have some custom code to deal with it) 14:52
[Coke] s/you/pugs/ :) 14:53
14:53 spider-mario joined 14:54 ajr_ left
Ven [Coke]: haha yeah, that's what I mean : `unshift @INC, '/home/coke/.cabal/share/Pugs-6.2.13.20120717/blib6/pugs/perl5/lib';` 14:54
[Coke] *blank stare* Ok. 14:58
Woodi actually I would be happy to just have the list of 3 or 4 urls to parot/moar/nqp/rakudo .tgz files and build them as usual on *nix systems... Packaging R* could have such nice side effect, declaration: "R vX recuires: Parrot vY, Moar vZ and NQP vAA" 14:59
15:00 kaleem joined
FROGGS moarvm.org/releases/MoarVM-2014.03.tar.gz 15:01
rakudo.org/downloads/rakudo/
rakudo.org/downloads/rakudo/rakudo-....01.tar.gz
rakudo.org/downloads/nqp/nqp-2014.03.tar.gz 15:02
ftp.parrot.org/releases/all/6.1.0/p...1.0.tar.gz 15:03
15:03 xinming_ joined 15:04 guru joined, guru is now known as ajr_
FROGGS Woodi: and finally: froggs.de/perl6/rakudo-star-2014-04...IAL.tar.gz 15:05
15:05 colomon left
FROGGS bbiab 15:06
15:06 FROGGS left, colomon joined
Ven [Coke]: I'll try to understand why that error pops up, though I can't say anything atm :( 15:07
15:07 denis_boyun left 15:08 kurahaupo left 15:09 [Sno] left 15:11 FROGGS[mobile] joined
Util moritz++ (quite literally!) # irclog.perlgeek.de/perl6/2014-03-31#i_8519218 15:11
Ven thanks FROGGS 15:17
moritz thanks Util :-) 15:18
15:19 colomon left 15:21 colomon joined 15:22 rindolf left 15:24 kivutar joined 15:25 rindolf joined, pmurias joined 15:29 lizmat joined 15:31 colomon left 15:32 fhelmberger left 15:35 kivutar left 15:48 SamuraiJack__ joined 15:57 zakharyas left
btyler one of the things TheDamien mentions in the interview linked earlier is something like "my Str $foo where length > 20"; does that (or something like that) actually exist in rakudo? 16:05
FROGGS[mobile] it would be chars instead of length, but I've not seen it 16:09
m: my Str $foo where chars > 20 16:10
camelia rakudo-moar 358582: OUTPUT«===SORRY!=== Error while compiling /tmp/UMpCNXHQmn␤Preceding context expects a term, but found infix > instead␤at /tmp/UMpCNXHQmn:1␤------> my Str $foo where chars >⏏ 20␤»
16:11 mmachenry left
FROGGS[mobile] m: my Str $foo where { *.chars > 20} 16:11
camelia ( no output )
Ven m: my Str $foo where .chars > 20 # should work ?
camelia ( no output )
FROGGS[mobile] can you assign something?
it is hard to type on a phone :o) 16:12
16:12 dmol left
Ven m: my Str $foo where .chars > 20; my $foo = "abc; say "alive"; my $foo = "x" x 50; say "alive"; # should work ? 16:12
btyler m: my Str $foo where .chars < 5; $foo = 'abc';
camelia rakudo-moar 358582: OUTPUT«===SORRY!===␤Two terms in a row␤at /tmp/v3HNxstdST:1␤------> where .chars > 20; my $foo = "abc; say "⏏alive"; my $foo = "x" x 50; say "alive";␤ expecting any of:␤ postfix␤ infix stopper␤…»
( no output )
Ven m: my Str $foo where .chars > 20; my $foo = "abc"; say "alive"; my $foo = "x" x 50; say "alive"; # should work ?
camelia rakudo-moar 358582: OUTPUT«Potential difficulties:␤ Redeclaration of symbol $foo␤ at /tmp/jmly5TGVk_:1␤ ------> my Str $foo where .chars > 20; my $foo ⏏= "abc"; say "alive"; my $foo = "x" x 50␤ Redeclaration of symbol $foo␤ at /tmp/jmly5…»
Ven m: my Str $foo where .chars > 20; $foo = "abc"; say "alive"; $foo = "x" x 50; say "alive"; # ;_; 16:13
camelia rakudo-moar 358582: OUTPUT«alive␤alive␤»
Ven m: my Str $foo where .chars > 20; $foo = "abc"; say "alive - $foo.chars()"; $foo = "x" x 50; say "alive - $foo.chars()"; # let's see
camelia rakudo-moar 358582: OUTPUT«alive - 3␤alive - 50␤»
Ven FROGGS[mobile]: apparently doesn't check
FROGGS[mobile] perhaps that only works in sub or method calls 16:14
Ven m: sub a(Str where .chars > 20); a('a'); say "alive"; a('a' x 50); say 'alive';
camelia rakudo-moar 358582: OUTPUT«===SORRY!=== Error while compiling /tmp/WOAv1Nj6kA␤Cannot do non-typename cases of type_constraint yet␤at /tmp/WOAv1Nj6kA:1␤------> sub a(Str where .chars > 20⏏); a('a'); say "alive"; a('a' x 50); say␤ expe…»
Ven m: sub a(Str $foo where { *.chars > 20}) {}; a('a'); say "alive"; a('a' x 50); say 'alive';
camelia rakudo-moar 358582: OUTPUT«alive␤alive␤»
Ven FROGGS[mobile]: apparently no 16:15
FROGGS[mobile] someone needs to implement that then :o) 16:17
btyler I saw that in the interview and thought "wait whaaaaaat. that is too cool!" 16:19
16:20 virtualsue left
FROGGS[mobile] m: sub a($foo where {$_.chars > 20} ) {}; a "bar" 16:21
camelia rakudo-moar 358582: OUTPUT«Constraint type check failed for parameter '$foo'␤ in sub a at /tmp/n7UVxcehma:1␤ in block at /tmp/n7UVxcehma:1␤␤»
FROGGS[mobile] \o/
note: no whatever star in a block
sub a($foo where *.chars > 20) {}; a "foo" 16:22
damn -.- 16:23
can somebody paste that to a m: ?
lizmat m: sub a($foo where *.chars > 20) {}; a "foo"
camelia rakudo-moar 358582: OUTPUT«Constraint type check failed for parameter '$foo'␤ in sub a at /tmp/vB_KHslriv:1␤ in block at /tmp/vB_KHslriv:1␤␤»
lizmat cycling&
FROGGS[mobile] thanks!
so it works as it should in subs 16:24
btyler hm, so it works in sub parameter checks, but not for regular declarations
cool
16:29 FROGGS joined
FROGGS m: :($foo where *.chars > 20); $foo = "abc" 16:30
camelia rakudo-moar 358582: OUTPUT«===SORRY!=== Error while compiling /tmp/s43Y15YPnD␤Variable '$foo' is not declared␤at /tmp/s43Y15YPnD:1␤------> :($foo where *.chars > 20); $foo⏏ = "abc"␤ expecting any of:␤ postfix␤»
FROGGS :/ 16:31
16:33 colomon joined 16:37 denis_boyun joined 16:38 rindolf left 16:39 [Sno] joined 16:41 cognominal left, cognominal joined 16:50 mmachenry joined 16:53 dakkar left 16:54 pmurias left
Ven FROGGS: uuh, matching signatures with blocks gotta be nasty 16:55
16:57 ajr_ left 17:01 colomon left 17:04 colomon joined 17:09 espadrine left 17:13 spider-mario left 17:14 mmachenry left, kaleem left 17:15 virtualsue joined 17:18 mmachenry joined 17:19 zakharyas joined 17:20 guru joined, guru is now known as ajr_ 17:31 mtk left 17:33 FROGGS[mobile] left, sivoais_ joined 17:38 sivoais left, vendethiel left, Yappo__________8 left, vendethiel joined
dalek rl6-roast-data: 7752803 | coke++ | / (6 files):
today (automated commit)
17:40
[Coke] yay, no more hangs. If someone is bored, they could add the ulimit stuff to the harnesses for the remaining implementations. 17:41
r.j - 3 fails, r.m - 5 fails, r.p - 179 fails. 17:42
All the r.p fails are aborts in the concurrency tests.
can probably fudge those to skip all if r.p
pugs refuses to die at 00.06% 17:43
colomon \o/ 17:45
17:46 treehug8_ joined
FROGGS [Coke]: btw, your star tests should run tomorrow again 17:48
17:48 Yappo__________8 joined
[Coke] FROGGS: they run every day? 17:48
17:48 treehug88 left
[Coke] I can do another run today if that bug is fixed. 17:49
FROGGS [Coke]: "rakudo-star-daily" implies every day, no? :o) 17:50
but yeah, the bug is fixed
[Coke] oh, I see. you meant "should run and work this time"
I gets it now. 17:51
FROGGS ahh
k
[Coke] I kicked off a run right now, will post results when it finishes. 17:52
FROGGS cool!
17:54 kurahaupo joined 18:00 xinming__ joined
retupmoca jnthn: I posted a PR for NativeCall when you get a chance 18:02
vendethiel opens [Coke]'s log to try and look what's going on for pugs now that he's home 18:03
18:04 xinming_ left 18:06 mmachenry left, ssutch left
dalek osystem: e8dd3c5 | (Andrew Egeler)++ | META.list:
Add LibraryMake

An attempt to simplify native compilation
18:19
18:20 hoverboard left 18:28 isBEKaml joined 18:29 zakharyas left
dalek kudo-star-daily: b55e7d5 | coke++ | log/ (5 files):
today (automated commit)

second run to grab bugfix.
18:31
FROGGS nice, all module pass 18:32
18:32 hoverboard joined
hoelzro FROGGS: on which backend? 18:34
FROGGS parrot 18:35
18:35 mmachenry joined
hoelzro I figured =/ 18:36
MIME::Base64 just stopped working for me on moar
FROGGS hmmm, but it should work... I works on my boc
box
it* 18:37
hoelzro curious
I'll try it at home
when I get there =/
timotimo i like the sound of "LibraryMake" 18:45
18:46 darutoko left
retupmoca timotimo: github.com/retupmoca/P6-Auth-PAM-Simple for usage example 18:48
(needs a NativeCall patch to actually install that library, though) 18:49
timotimo oh cool, pam authentication 18:50
hm, would we need one module for each PAM method, like fingerprint, smartcard, ldap, ... ? 18:51
18:51 hoverboard left
retupmoca well, Auth::PAM::Simple has an arg for the pam service to auth against 18:51
but honestly I have only a vaguely understand PAM. I just copy-pasted some C code so I could auth against the 'login' service 18:52
s/have only a/only/
timotimo oh, i didn't know you could re-route the library name of a sub at run-time 18:54
that's cool
retupmoca timotimo: that's a NativeCall PR I have up
doesn't work with HEAD yet
timotimo ah 18:55
yeah, i like that
retupmoca and after the PR is merged, doing &sub.libname = '...'; after you call it won't do anything
because the library has already been loaded
but this is my plan for fixing Imlib2 18:56
18:58 FOAD left
timotimo fair enough 19:00
how exactly does it have to be fixed?
retupmoca need to remove the existing Makefile and Build.pm and replace it with stuff that uses LibraryMake 19:01
then just need to add code to find the native library like Auth::PAM::Simple uses 19:02
there could be issues with the module itself, but this will get the native library compiled and loaded anyway
which is where it's breaking right now
timotimo well, i'm very glad you've created this 19:03
retupmoca LibraryMake.pm6 needs a couple of patches for parrot and JVM if you want to help (I'm not sure how to get the config for '-l' for them) 19:04
19:04 sqirrel joined
timotimo i haven't looked at that part of the whole thing yet :( 19:04
retupmoca for moar it's $*VM<config><ldusr>, and then strip out the %s
timotimo other than "inspect $*VM<config>", no clue
retupmoca gotcha
I may have to actually install rakudo-j and -p then
timotimo fortunately it's easy :) 19:05
however
you can get the output of that right here on the channel
retupmoca oh, right
p: for $*VM<config>.kv -> $k, $v { if $v ~~ /\-l/ { say "$k: $v" } } 19:06
camelia rakudo-parrot 358582: OUTPUT«archname: x86_64-linux-gnu-thread-multi␤ccwarn: -falign-functions=16 -funit-at-a-time -fexcess-precision=standard -maccumulate-outgoing-args -Wall -Wextra -Waggregate-return -Wcast-qual -Wdisabled-optimization -Wdiv-by-zero -Wendif-labels -Wformat-extr…»
FROGGS that gives good hints: github.com/jnthn/zavolaj/blob/mast...TestLib.pm
retupmoca p: for $*VM<config>.kv -> $k, $v { if $v ~~ /^\-l/ { say "$k: $v" } }
camelia rakudo-parrot 358582: OUTPUT«libs: -ldl -lm -lpthread -lcrypt -lrt -lgmp -lreadline -lffi ␤»
retupmoca FROGGS: that's what I used for everything else
FROGGS k
retupmoca FROGGS: but that doesn't load any libraries of it's own, so it doesn't give me -l 19:07
FROGGS it uses perllibs for example
retupmoca j: for $*VM<config>.kv -> $k, $v { if $v ~~ /^\-l/ { say "$k: $v" } }
camelia rakudo-jvm 358582: OUTPUT«nativecall.libs: -lgdbm -lgdbm_compat -ldb -ldl -lm -lpthread -lc -lcrypt␤nativecall.perllibs: -ldl -lm -lpthread -lc -lcrypt␤»
retupmoca m: for $*VM<config>.kv -> $k, $v { if $v ~~ /^\-l/ { say "$k: $v" } }
camelia rakudo-moar 358582: OUTPUT«ldlibs: -lm -lpthread -lrt -ldl␤ldusr: -l%s␤ldsys: -l%s␤»
FROGGS j: say $*VM<config><nativecall.perllibs>
camelia rakudo-jvm 358582: OUTPUT«-ldl -lm -lpthread -lc -lcrypt␤»
retupmoca I need the '-l' by itself 19:08
FROGGS do not use libs
19:08 hoverboard joined
retupmoca looks like parrot and jvm don't have that :/ 19:08
FROGGS retupmoca: what do you mean?
a pattern or something?
retupmoca m: say $*VM<config><ldusr>
camelia rakudo-moar 358582: OUTPUT«-l%s␤»
retupmoca something like that
so I can say "Link against pam", which on my machine is 'gcc ... -lpam' 19:09
19:09 dwarring joined
FROGGS isn't it always the same? 19:09
I mean, we are talking about dynamic linking only 19:10
19:11 jiraffe joined, jiraffe left
retupmoca I thought there were some windows compilers that used some other argument for "Link this library in" 19:11
all I know is GNU stuff
timotimo i think it's weirder on mac os x 19:13
FROGGS retupmoca: make it work for your system, and others care for their... (i.e. I have windows and linux) 19:14
... and an osx vm somewhere
geekosaur you're not going to be using PAM on windows anyway
FROGGS why not?
retupmoca geekosaur: right, but you will hopefully be using LibraryMake on windows
geekosaur PAM is only useful if the system uses it, since it's plugins for system authentication/uthorization 19:15
Windows does not use PAM for that
FROGGS ahh, now I understand
geekosaur (Windows has GINA which is a bit different)
(among other things(
FROGGS m: nqp::how 19:16
camelia rakudo-moar 358582: OUTPUT«===SORRY!===␤Error while compiling op how: Arg count 0 doesn't equal required operand count 2 for op 'gethow'␤»
19:24 colomon left
retupmoca Anyway, LibraryMake patches are welcome, and I'll probably try and make Imlib2 use it in the next couple of days if noone beats me to it 19:26
timotimo it's funny; i was about to want to use imlib2 for something fun recently 19:28
retupmoca timotimo: I think that's what started me down this whole LibraryMake path 19:29
timotimo oh!
retupmoca you mentioned it in here and I started poking at it
timotimo \o/ 19:30
retupmoca \o/ indeed
19:30 isBEKaml left 19:31 sivoais_ is now known as sivoais, sivoais left, sivoais joined, SamuraiJack__ left
timotimo oh hey 19:42
my optimization isn't the one that breaks trigonometry!
jnthn waves from his rather nice Goteborg hotel 19:44
So design. Such Scandinavian. Wow. 19:45
lue Here's my potential replacement for S32::Str, could use some feedback :) gist.github.com/lue/9941658
FROGGS waves from his couch 19:48
lue wonders what would happen if things like :21<1⑳> were allowed... 19:49
lizmat waves from really
jnthn lizmat: OH ECHT? 19:50
lizmat yes, really! 19:51
FROGGS *groan*
jnthn retupmoca: I'm not too comfortable with the PR. I agree the problem needs a solution, but I think there's probably a better one. Give me a bit of thinking time. :) 19:52
FROGGS we could invent a special var like $- or $; 19:53
we could have plenty of those :P
retupmoca jnthn: not a problem
FROGGS: I can find the .so file fine, but the problem is that it's different at run time and compile time 19:54
lue FROGGS: it should be $# :)
FROGGS we could treat the given path specially if it starts with './'
jnthn $💩 :P
FROGGS hehe 19:55
retupmoca that was my other idea - if the path starts with './', look through @*INC to find it
jnthn m: my \� = 'crap'; say �
camelia rakudo-moar 358582: OUTPUT«===SORRY!=== Error while compiling /tmp/HO2404Pagc␤Malformed my␤at /tmp/HO2404Pagc:1␤------> my ⏏\� = 'crap'; say �␤ expecting any of:␤ scoped declarator␤»
jnthn Aww
m: my \term:<�> = 'crap'; say �
camelia rakudo-moar 358582: OUTPUT«===SORRY!=== Error while compiling /tmp/jrQJZNeDUk␤Term definition requires an initializer␤at /tmp/jrQJZNeDUk:1␤------> my \term⏏:<�> = 'crap'; say �␤ expecting any of:␤ scoped declarator␤»
FROGGS or use the file location as a base
I dunno
jnthn aww
lue m: my \💩 = 'crap'; say 💩
camelia rakudo-moar 358582: OUTPUT«===SORRY!=== Error while compiling /tmp/K41XmsyJnc␤Malformed my␤at /tmp/K41XmsyJnc:1␤------> my ⏏\💩 = 'crap'; say 💩␤ expecting any of:␤ scoped declarator␤» 19:56
FROGGS there should be a sane solution... somewhere
19:56 dmol joined
jnthn m: say '�' ~~ /<ident>/ 19:56
camelia rakudo-moar 358582: OUTPUT«Nil␤»
lizmat FROGGS: the %?RESOURCE hash ?
jnthn Ah, that explains it a bit
FROGGS lizmat: perhaps, yes
retupmoca lizmat: will that be usable during development? Before I've done a panda install? 19:57
FROGGS retupmoca: I think so
retupmoca well then, somebody needs to hurry up and implement that :P
lizmat I would assume a "resource" directory in the -I directory should work in that case
jnthn Well, I think in general we want to have a way to provide a mechanism to resolve a library 19:58
FROGGS because we then do our best to gather the information that would be collection during installation
so, if you had a META6.json we might consider it
lizmat I guess that makes sense, no?
FROGGS I think so, but my brane is somewhere else atm 19:59
lizmat you would only have a %?RESOURCE from an -I directory if there is a META6.json file in there that specifies it
I think that would make a lot of sense :-)
retupmoca that's what I would expect
FROGGS yes
20:02 sqirrel left 20:03 denis_boyun left
lizmat displaces her brain to bed along with the rest of her 20:04
FROGGS gnight lizmat 20:05
jnthn o/ lizmat
retupmoca hmm, %?RESOURCE will probably have the same issue as currently though - at compile time the path will be different than run time
FROGGS retupmoca: %?RESOURCE will be made up when we load a module I think 20:06
and at that time we know its "path"
if it actually has a path, it can live in a database in theory
retupmoca FROGGS: right, but that will happen after the is native('...') path is compiled and set
FROGGS hmmm 20:07
damn
yeah
then you want to install compiled libs?
retupmoca yes - I'm using Build.pm to compile a library and put it into the lib directory
FROGGS and compile at the target location or so?
retupmoca when you do a panda install 20:08
but so far I haven't found a good way to find and load that library. I can find it at runtime, but NativeCall needs it at compile time right now
so I think it needs some kind of solution in NativeCall.pm6 - and I will defer to jnthn on the best way to do that 20:09
arnsholtAtHome retupmoca: Maybe a bit of a hack, but have you tried just doing "trait_mod:<is>(&my-sub, :native($libname))" at runtime? I think that should work 20:11
jnthn I'd like a solution that lets us get rid of the need to put the library name into "is native" every time also 20:12
arnsholtAtHome There is that too, though
retupmoca arnsholtAtHome: I haven't tried that. It would probably work, but I would rather figure out a "proper" way to do it 20:13
arnsholtAtHome I've been pondering maybe something like "module Library::Internals is native<libname>", but I'm not sure how feasible that is
20:13 denis_boyun joined
jnthn Well, I was wondering about something like 20:13
arnsholtAtHome Yeah, a proper way would be great too. But if that works you can keep on hacking and plop in the right way once we know what the right way is =)
jnthn sub res() is native_lib_resolver { return 'foo'; }
And then sub blah() is native { * } 20:14
And it'll use the resolver.
But needs some care over scoping.
arnsholtAtHome Yeah, that sounds neat
And maybe allow for sub res(&the-sub) { ... } as well? 20:15
jnthn And then you can write whatever code you want in there
20:15 kurahaupo left
arnsholtAtHome Yeah, I like that idea 20:15
retupmoca much cleaner than the current solution 20:16
+1 as long as it's runtime :P
FROGGS p: use NativeCall; sub foo is native(-> { 'path/to/lib.so' }) { * }
camelia rakudo-parrot 358582: OUTPUT«===SORRY!===␤Could not find NativeCall in any of: /home/p6eval/rakudo-inst-2/lib/parrot/6.1.0-devel/languages/perl6/site/lib, /home/p6eval/rakudo-inst-2/lib/parrot/6.1.0-devel/languages/perl6/vendor/lib, /home/p6eval/rakudo-inst-2/lib/parrot/6.1.0-deve…»
arnsholtAtHome FROGGS: Won't work with current Zavolaj 20:17
FROGGS arnsholt: I know :o)
I just wanted to see how it explodes
if we wanna allow callables in that trait, it should perhaps get either the subname or the sub object as an argument 20:18
jnthn That would be another way 20:19
arnsholtAtHome That's not as useful though, since traits are applied at compile-time, not run-time
jnthn then you could
sub &imlib() { ... }
sub foo is native(&imlib) { * }
And it'd just stash a reference to the sub
and call it on first invocation 20:20
arnsholtAtHome Right. That'd work, of course
jnthn And means we don't have scope trickery to do
timotimo i'd still love to have something that means we don't have to write "is native(&thing)" over and over and over again
jnthn Yeah 20:21
FROGGS but how?
jnthn "is native" should be enough.
20:21 kaare_ left
jnthn FROGGS: Well, maybe with something like I suggested. 20:21
FROGGS apply a trait over a collection?
hmmm
20:30 arnsholtAtHome left 20:31 bluescreen10 left 20:35 effbiai left 20:37 stevan_ left 20:39 mmachenry left 20:41 effbiai joined 20:48 zby_home_ left 20:52 benabik left 20:53 FOAD joined 20:59 mmachenry joined 21:00 hoverboard left 21:02 zby_home_ joined, eiro joined
eiro hello everyone 21:02
timotimo hi there 21:03
dalek kudo/nom: e872810 | (Tobias Leich)++ | src/Perl6/World.nqp:
noop in case method resolved did not run yet

This gets us a little further though this really hides a deeper problem.
21:08 btyler left, hoverboard joined 21:14 kbaker_ left 21:15 treehug8_ left 21:20 rurban1 left, treehug88 joined 21:29 zby_home_ left 21:30 hummeleB1 left 21:39 xenoterracide left 21:42 rurban1 joined, ajr_ left 21:46 btyler joined 21:49 jdv79 joined
jdv79 is there a "pretty print" dump? 21:49
i naively thought .gist would do that
FROGGS jnthn: jvm is unaffected by the patch... I'll fix that tomorrow: gist.github.com/FROGGS/0ea5537eb675588baaa2 21:50
jnthn k
FROGGS jdv79: .gist is just for human beings 21:51
.perl is intended for reevaluation
jdv79 a hash strung out on one line is not "human friendly" at to this human
21:51 hoverboard is now known as HARDPOWER
FROGGS true, this can be improved 21:51
jdv79 so to dump something large a module is needed at this point? 21:52
FROGGS I've not seen a pretty dumper... (except when you take JSON::Pretty into acount)
... which would be okay for hashes 21:53
jnthn FROGGS: Wow, just 2 modules with test fials
*fails
jdv79 ok
FROGGS jnthn: yeah, which is very surprising
[Coke] would hope we'd end up with something like .perl(:pretty) or something.
which would do the nested levels and indents.
jnthn [Coke]: That'd be kinda nice, yes. 21:54
FROGGS: Yeah. April having a Moar star is starting to look pretty good.
jdv79 that would be cool
[Coke] m: say <a b c >.perl() 21:55
camelia rakudo-moar e87281: OUTPUT«("a", "b", "c")␤»
[Coke] m: say <a b c >.perl :thing
camelia rakudo-moar e87281: OUTPUT«("a", "b", "c")␤»
[Coke] m: say <a b c >.perl :pretty
camelia rakudo-moar e87281: OUTPUT«("a", "b", "c")␤»
[Coke] m: say <a b c >.perl :iamtheverymodelofamodernmajorgeneral #huh
camelia rakudo-moar e87281: OUTPUT«("a", "b", "c")␤»
jnthn [Coke]: Methods always slurp up any extra names 21:56
[Coke] a $*perl-indent var would be safe to use for tyhis, yes? 22:01
jnthn 'night, #perl6 22:02
22:02 lustlife left 22:03 colomon joined 22:05 treehug88 left 22:07 virtualsue left 22:12 HARDPOWER is now known as hoverboard
timotimo for what exactly? 22:14
oh 22:15
i see
rurban did you see fperrad's secret nqp already? github.com/fperrad/tvmjit/tree/master/t/nqp 22:29
22:30 mmachenry left
[Coke] i don't see any info about what kind of nqp that is. 22:33
rurban it written in tvmjit
it's written in tvmjit
and used by github.com/richardhundt/shine (which is nice) 22:34
timotimo secret nap? mhhh 22:36
rurban This is the src for his nqp: github.com/fperrad/tvmjit/blob/mas...mpiler.lua 22:40
timotimo suddenly a bunch of lisp
[Coke] I wonder if it's like parrot/nqp, perl6/nqp, one of the other nqps, or a new nqp. (in terms of what he's trying to support)
rurban yes, tvmjit is featuring a proper s-expr language :)
I guess it's his parrot project 22:41
[Coke] if perl6/nqp, I wonder how much effort it would be to add it as a backend.
22:46 btyler left 22:49 hoverboard left 22:57 rurban1 left 23:00 denis_boyun left 23:07 rurban1 joined 23:08 thou left, rurban2 joined 23:12 rurban1 left 23:21 dmol left 23:28 raiph joined
raiph lue: comments added to your s32::Str gist 23:33
almost all nitpicky; main thing is confusion about your use of the word "codepoints" 23:34
lue raiph: codepoint is specifically a unicode codepoint; there should be no confusion with that term. 23:35
raiph that's what i thought, but i don't think your spec achieves that
lue well, it's not in isolation. S15 is the actual Unicode spec :) . 23:36
(besides, since NFG-only graphemes don't have codepoints, they don't count as one. I honestly don't see where confusion can arise.) 23:37
raiph Maybe you'll see what I mean when you've read the gist comment. If not, ping me again. 23:39
lue I've read through the whole thing; I still don't see how one could confuse "codepoints" to refer to things that don't have codepoint numbers (that is, NFG graphemes). 23:40
raiph k, let me try explain what's bugging me
"C< Unicodey> operates on the codepoint level as its view of what a character is. It doesn't enforce any particular Normalization Form on its contents."
first, are you counting NFG as a Normalization Form? 23:41
lue on the enforcement statement, yes.
(NFG isn't enforced any more than NFC or NFKD)
raiph so one could have something that does Unicodey that's in NFG? 23:42
and then do .chars on it 23:43
which will give a count of the graphemes
but your statement says Unicodey operates on the codepoint level as its view of what a character is
lue Ah, I think I see now. NFG is meant to be a specialization of Unicodey, so only Str would deal with NFG stuff.
s/Unicodey/Unicode/ 23:44
raiph or, tc: "Returns a string with each codepoint lowercased." 23:45
lue Unicodey and Uni are basically the same thing, fwiw.
tc shouldn't say that.
raiph but what if one is working at the NFG level?
I think it ought to say chars where you've got codepoints
(for tc and cousins)
23:46 stevan_ joined
lue Well no, for Unicodey "codepoints" is the correct term. I didn't think I'd have to restate every method on C<Str> to specify that it operates on graphemes in that class :( 23:46
[Coke] if it's universal, hoist it out and put it at the top. 23:47
said the guy who hasn't read the doc or the gist.
23:47 stevan_ left, stevan_ joined
timotimo gnite #perl6 23:48
raiph \o timotimo
23:49 btyler joined
raiph lue: aiui tc and cousins work on "characters", not codepoints; if a string is NFG that'll be graphemes, if NFC it'll be codepoints, and so on. 23:49
lue raiph: yes, but the Unicodey role operates on codepoints. Only Str handles NFG graphemes. Those method definitions are attached the Unicodey role. Thus they are described as operating on "codepoints". 23:50
raiph gotchya, so Unicodey explicitly does not include NFG, right? 23:51
lue (note how Stringy's definition of .tc doesn't mention "title case", but rather "upper case", because ASCII has no notion of "title case". Stringy's method definitions don't try to generalize for all things that may do it; neither does Unicodey.)
raiph: yes, Unicodey is meant to be a Unicode-based role, so adding a non-Unicode extension to it is less-than-ideal. 23:52
raiph lue: gotchya 23:54
lue IIRC S15 explains all this already, and I tried to not re-explain things here (esp. stuff that doesn't really fit S32's purpose of laying out the API).
printf, pack, and unpack need expansion, I'll get to those later :) . 23:55
btw, I don't index and rindex have any RTL concerns; RTL text *looks* like it's going in the reverse direction, but the start of text is still at the left side in storage. 23:58
raiph lue: k 23:59