»ö« 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.
dalek c: b0e85c0 | raydiak++ | html/css/style.css:
Fix clipping of overly-wide SVGs
02:08
cognominal I keep forgetting what is the Perl 6 equivalent of popen(3). Help! 02:25
JimmyZ cognominal: openpipe? 02:54
cognominal openpipe is a nqp thing 03:53
TimToady perlcabal.org/syn/S32/IO.html#IO%3A%3APipe maybe? 04:02
cognominal sounds like it but I don't see an IO::Pipe in the setting 04:27
lizmat++ anyway for all her work for IOs 04:31
JimmyZ cognominal: github.com/rakudo/rakudo/blob/nom/...dle.pm#L12 04:59
cognominal sounds good. Need to sleep on that. JimmyZ++, TimToady++ 05:28
smls o/ 08:44
m: say (1..50).grep({"a" x $_ !~~ /^ [a | (aa+) $0+] $/}) 08:46
camelia rakudo-moar 7dd729: OUTPUT«2 3 5 7 11 13 17 19 23 29 31 37 41 43 47␤»
smls ^^ The one true way to do a prime number sieve! :D
huf meh. just change the definition so the algo is simpler and faster :D all odd numbers are prime. 08:50
dalek p/longlit: f4c6cbc | TimToady++ | src/QRegex/NFA.nqp:
correctly propagate longlit info in NFAs
08:52
dalek kudo/longlit: 7137b21 | TimToady++ | src/Perl6/Actions.nqp:
replace INDRULE with var carrying actual coderef

This is so that the nfa routines can call .NFA on the coderef to extract the NFA and merge properly when <foo> refers to a lexical regex.
08:57
kudo/longlit: 4da5e49 | TimToady++ | src/Perl6/Grammar.nqp:
coloncircumfix was stealing :() pseudo-sigs

  (This was due to the new longest-literal tiebreaking rule.)
TimToady the longlit branch is mostly done, but still fails 8 tests due in part to not having fixed INTERPOLATE yet 08:58
TimToady sleep & 08:59
lizmat good *, #perl6 from the Frantic offices in Helsinki for day #0 of the Nordic Perl Workshop 09:52
dsm what's the language NQP compiler written in? 09:59
timotimo NQP 10:01
dsm then who compiles NQP into back-end bytecodes? 10:03
timotimo NQP does
it's bootstrapped
so in the NQP repository, there's stage0 NQPs for parrot, moarvm and jvm 10:04
the earliest NQP compiler was written in PIR
dsm isn't PIR a Parrot Intermediate Representation? 10:10
timotimo yes 10:11
dsm ok, then stage0 NPQ compiler for MoarVM is written in moarvm bytecode? 10:12
timotimo no, we used the parrot stage0 NQP compiler with a cross-compiling setup to generate MoarVM bytecode from NQP source code 10:13
same with the JVM version
dsm thank you. 10:14
timotimo you're welcome :)
cognominal where is the farabia editor? 10:25
timotimo i don't think it's up always 10:26
cognominal p6weekly talks about it but gives no url 10:27
timotimo it's very easy to run off of a git clone of github:azawawi/farabi6 however
cognominal ho, I kept typing farabia instead of farabi :( 10:27
timotimo ah! :) 10:30
rindolf lizmat: good morning. 10:43
ab5tract FROGGS: i'm still struggling with the XML parser.. it hangs somewhere in the elements call. it knows it should return some number of elements, but that part never seems to complete: gist.github.com/ab5tract/cbf4867b441ab2ea84d7 11:30
ab5tract i swear i'm not trying to make problems ... 11:31
FROGGS ab5tract: I can look at that, but just not now, I try to fix a problem with parrot on windows
:o)
ab5tract hehe, ok 11:33
this is for a (potential) advent calendar entry, which concerns itself with typesetting the advent calendar :)
woolfy lizmat at Nordic Perl Workshop promoting Perl 6. People did not believe Larry was actually coming to FOSDEM (Myself has same feeling... :-) ). Nice hackathon, 11 people now. 11:59
jnthn woolfy: Cool! 12:00
jnthn wishes he coulda made it
woolfy wishes jnthn (and others) coulda made it to NPW2015 12:01
colomon woolfy: \o/
jnthn woolfy: Nordic? Or Netherlands? :) 12:02
oh wait, coulda
woolfy: It's...still 2014 :P 12:03
woolfy 2014!!!
lizmat :-)
jnthn is easily confused. It's only early morning in jnthn virtual timezone. :)
woolfy NPW = Nordic Perl Workshop ; NLPW = NetherLands Perl Workshop.
jnthn hopes to make both of those in 2015 :)
woolfy is happy to confuse everybody
jnthn, you and others are already coming to FOSDEM. When you would come and speak at NLPW, that would be bonus. \o/ jnthn++ 12:04
virtualsue FOSDEM++
woolfy jnthn: get your 2015 calendar and mark April 10 for NLPW. Would be nice. 12:05
jnthn bah, so far somebody put exactly one thing in my April schedule and its then. Thankfully, it's something I can easily get moved. :) 12:06
jnthn adds NLPW in :)
woolfy jnthn++ 12:07
jnthn Cool, it's also the week after easter.
woolfy (again)
And if you are busy with your calendar, you might want to mark 8-11 May 2015 for the Nordic Perl Workshop & OSDC Norway in Oslo, organised by Salve sjn++ 12:08
jnthn woolfy: How long do I have left to think up something to talk about at FOSDEM?
woolfy: ooh, thanks. Added that too 12:09
woolfy I set myself the task for the hackathon to get that all done today, send you and the other speakers a mail to ask for title and summary and bio. I think I want to have that info before the end of the month.
jnthn eek 12:10
woolfy Well, eek d'oh,... they are going to make a booklet and we really want to be in the booklet. And they really want all community devrooms to have their schedule ready in the beginning of december. 12:10
jnthn Well, mebbe I'll think up something during some of my work flights/trian trips :)
Suggestions/requests are welcome too :) 12:11
woolfy The system of FOSDEM is... ehmn... to say polite... sub-optimal. People who think that ACT is difficult to work with, should have a look at pentabarf (FOSDEM's system). Talk about nerdy... what, easy user interface you ask? Hmmm... 12:12
jnthn Really? The system has "barf" in its name?
woolfy Yep
jnthn Is the slogan "Quickly throw up a conference schedule!"?
woolfy I hope you are not surprised that I heard that slogan several times already in the past years... 12:13
woolfy (and some even less polite ones) 12:13
lizmat m: class A { has Nil $!a; method a { $!a = A.new }}; say A.new.a # jnthn, what's wrong in this picture ? 12:14
camelia rakudo-moar 7dd729: OUTPUT«Type check failed in assignment to '$!a'; expected 'Any' but got 'A'␤ in method a at /tmp/_HZ5prR2yI:1␤ in block <unit> at /tmp/_HZ5prR2yI:1␤␤»
woolfy My co-organiser, Claudio Ramirez (awesome man!) always does the pentabarf-barf, so I don't have to do it. This year I had my first experience with it, when I added Larry's talk to the system. Indeed, it is barf.
timotimo woolfy: wow, they use pentabarf for fosdem? i thought that was only a thing in CCC events 12:15
lizmat jnthn: are we not allowed to have a Nil as a type in attributes ?
woolfy Talking about calendars... it would be very nice if at least some of you would be able to come to the Perl QA Hackathon in Berlin: 16-19 April 2015.
jnthn lizmat: "as a type"?
timotimo isn't nil an insatnce?
instance* 12:16
woolfy It is mostly invitation-only, and Liz and I have given several of your names to the organisers, so I hope several of you have been contacted by now. 12:16
lizmat m: my Nil $a; say $a
camelia rakudo-moar 7dd729: OUTPUT«Nil␤»
lizmat m: my Nil $a; $a = 42; say $a 12:17
camelia rakudo-moar 7dd729: OUTPUT«Type check failed in assignment to '$a'; expected 'Any' but got 'Int'␤ in block <unit> at /tmp/1oea0nomfU:1␤␤»
lizmat ah, same problem :-(
jnthn Why's that a problem?
m: say Int ~~ Nil
camelia rakudo-moar 7dd729: OUTPUT«False␤»
lizmat I'm trying to get the value Nil into a variable
jnthn Yes, well, at some point, we ended up with darn magical assignment semantics for Nil 12:18
lizmat I thought "my Nil $a' would be the way
jnthn Sure, if you *only* want to be able to put Nil in there :P
Basically, the design we've ended up with makes Nil just about unassignable.
lizmat well, let me put it this way: 12:18
I need an attribute that's Nil until I assign it 12:19
jnthn Which I thought was kinda the point...
I'm not sure you can do that.
lizmat so I can do $!that.method // (fix $!that and try again).method
jnthn Why not $!that.?method
jluis_ started to make rakudo on moarVM on a raspberry pi 3Gb swap on a usb hardisk Configure ran for an hour 12:20
lizmat jluis_++
jnthn jluis_: I'm guessing you gave Configure options like --gen-moar and --gen-nqp, meaning that it spent that hour building dependencies?
lizmat because the method *may* exist on Any, but I don't want it to use that method then 12:21
jnthn lizmat: Nil inherits from Any and dispatches to those methods normally; the quiet dispatch stuff is failover
m: say Nil.list.perl
camelia rakudo-moar 7dd729: OUTPUT«().list␤»
lizmat ah, good point
hmmm....
ok
timotimo principiadiscordia.com/book/11.php ← the origin of pentabarf 12:24
ab5tract jnthn: "Basically, the design we've ended up with makes Nil just about unassignable." couldn't this be addressed with coercer that sets Nil at the nqp level?
*a coercer
jluis_ jnthn, yes just following rakudo.org/how-to-get-rakudo/ 12:25
ab5tract i guess that still breaks types though...
jnthn jluis_: OK, then building dependencies explain it. I can't remember how long building on a raspberry pi took, but I know the answer was something like "quite a while" :) 12:26
jluis_: Though, did you build for a single backend?
jluis_ yes I'm building it only for moarVM 12:27
jnthn OK 12:29
That tends to eat the least memory, and so need the least swap, and I guess the build is swap-bound...
jluis_ on my PC javaVM and parrot failed because I didn't have enough memory so I did not try it on the raspi 12:31
timotimo raspi has very low ram indeed 12:32
but its cpu is also ... quite weak
ab5tract jnthn: perl6-debug-m is broken for me: gist.githubusercontent.com/ab5trac...%20breaks. 12:37
jluis_ I think the pi will be on make stage for at least a day 12:38
ab5tract i also needed to install Debugger::UI::CommandLine before it would even load 12:40
ab5tract suspects he may be cursed 12:44
woolfy Exciting... people asked to start the Rakudo Install Fest at the Nordic Perl Workshop. Liz is going to show 5 or 6 people on how to install Rakudo. 12:47
woolfy is proud!
colomon lizmat++ woolfy++ 12:50
woolfy Ow, it is Liz & pnu together instructing and guiding 8 people (!) how to do this.
lizmat++ and pnu++
woolfy (just saw moarvm and nqp being downloaded and built onto 8 computers) 12:55
woolfy OK, most people here now have MoarVM and NQP installed and got their Perl 6 working. Nice. lizmat is helping the people with installation-problems. Some people really look happy. 13:18
FROGGS :o) 13:20
ab5tract woolfy: sweet! :D 13:21
does perl6-debug-m work for any of them? ;)
woolfy I'm not going to ask. :-) 13:23
ab5tract woolfy: :) 13:24
woolfy (they still have to learn Perl 6, like Vendethiel's introduction, before they should be thrown into the deep end, or even the shallow end)
Vendethiel++
ab5tract that is the Perl 5 to Perl 6 series, right?
woolfy Yep 13:25
And these people are all Perl 5 people.
ab5tract great stuff indeed. i have vague plans about bringing in a few notes i've made about learning p6 from a p5 POV
jnthn ab5tract: I've no idea what's going on there...looks like the kind of thing that happens when there's some version skew with installed things... 13:27
ab5tract jnthn: okay, i will try a brand new rakudobrew 13:37
FROGGS cognominal: pipe gives you an IO::Pipe object, but you can only read the stdout of the child process right now 13:42
USERNAME hi 14:10
yoleaux 10 Aug 2014 17:25Z <bondagebrat> USERNAME: <message>
geekosaur o.O
FROGGS hi USERNAME 14:11
ab5tract jnthn: it works :D 14:15
jnthn ab5tract: \o/ 14:18
woolfy The Rakudo Install Fest at the Nordic Perl Workshop by lizmat++ and pnu++ has now grown into a "Perl 6 for Beginners" and both lizmat and pnu are teaching the 6 remaining attendees quite a lot of Perl 6 info 14:50
(interactive session, people are asking good questions) 14:51
ab5tract jnthn: so the debugger requires the modules be precompiled to .moarvm . where i just finished writing a shell function to remove moarvm files so that I can see my changes to panda modules 14:58
ab5tract now i will write another to quickly compile new ones :) 15:01
dalek p/openpipe: fd8e5ed | (Tobias Leich)++ | / (3 files):
implement openpipe on parrot+windows
15:10
dj_goku FROGGS: testers.perl6.org seems to be down/not responding.
FROGGS :( 15:11
the service seems to get unstable
dj_goku: it works after a restart 15:12
dalek p: dd7f5b1 | (Tobias Leich)++ | src/vm/parrot/ (2 files):
first (explosive) attempt to port openpipe to nqp@parrot

We need this op to actually open a pipe with a given CWD and ENV, the open("rp") whih parrot provides does not let us pass these.
15:13
p: c0bc3d9 | (Tobias Leich)++ | / (27 files):
Merge branch 'master' of github.com:perl6/nqp into openpipe
p: 4818829 | (Tobias Leich)++ | / (5 files):
add working openpipe op for nqp on parrot on linux

That means that we have openpipe on all platforms/backends except for parrot on windows.
p: 4019ecc | (Tobias Leich)++ | / (6 files):
Merge branch 'master' of github.com:perl6/nqp into openpipe
p: fd8e5ed | (Tobias Leich)++ | / (3 files):
implement openpipe on parrot+windows
dj_goku FROGGS: cool thanks 15:14
dalek kudo/nom: e5ae2e7 | (Tobias Leich)++ | src/core/IO/Handle.pm:
unfudge open("rp") on parrot
15:15
kudo/nom: ec665f7 | (Tobias Leich)++ | / (46 files):
Merge branch 'nom' of github.com:rakudo/rakudo into openpipe
kudo/nom: 38e77b6 | (Tobias Leich)++ | tools/build/NQP_REVISION:
bump nqp revision for openpipe on parrot
travis-ci NQP build errored. Tobias Leich 'implement openpipe on parrot+windows' 15:16
travis-ci.org/perl6/nqp/builds/41161103 github.com/perl6/nqp/compare/28ff0...8e5ed403cd
rurban aarg, github again 15:16
FROGGS yeah, "github.com: Temporary failure in name resolution" 15:17
though, the other job has passed
rurban smoked fine on darwin 15:18
FROGGS thanks for checking :o) 15:20
I build now HEAD on all backends, the will do spectests (except on jvm)
when linux is fine I'll care about the path issues on windows
lizmat NPW hackathon shutting down& 15:28
lucas_ Good sunday to everyone 15:41
m: say 1,2,3; say (1,2,3)
camelia rakudo-moar 7dd729: OUTPUT«123␤1 2 3␤»
lucas_ shouldn't the parcel just disappear in list context?
m: say 1,((),(),(),(),()),2
camelia rakudo-moar 7dd729: OUTPUT«1 2␤»
ab5tract shakes his head clear 15:44
FROGGS: the XML parser was hanging because i was doing @elements.perl.say
FROGGS ab5tract: which still can mean that @elements has recursive structures 15:45
ab5tract switching it to @elements.say works.
FROGGS: indeed. perhaps it would be good to have some shortcircuting built into .perl() 15:46
TimToady say is not a slurpy
ab5tract in short, there hasn't been a problem with the XML parser at all
TimToady: calling .perl() on a list returned from XML::Document causes a hang with or without a 'say' :/ 15:52
TimToady: can i ask you to clarify how the slurpiness context of say would relate? 16:02
TimToady say treats each of its arguments separately without relying on flattening 16:12
FROGGS ab5tract: somebody was working on that recently 16:13
ab5tract: maybe searching in the logs will reveal something
ab5tract yes, but i'm still confused about how that relates to .perl() hanging on recursive structures
ugexe heh, i think .perl hanging it got brought up yesterday 16:14
FROGGS m: my @a; @a[0] = @a; say @a 16:14
camelia rakudo-moar 7dd729: OUTPUT«(timeout)»
ab5tract okay .. so say on any list is going to timeout? 16:15
ah crap, sorry, no just on recursive ones
FROGGS it was also mentioned a few weeks ago, with an attempt to fix it
FROGGS m: my @a; @a[0] = @a; my @b = @a.flat 16:16
camelia ( no output )
FROGGS searching for 'Dumper' might give a result... IIRC it was mentioned while talking about how to make .gist and .perl work 16:17
ab5tract FROGGS: i don't actually need this functionality at all. it was just a test i was running at the end of the script so that i could get an idea of the internal structure of @elements
which was hanging, and i didn't realize there might be this issue with .perl()
anyway, now i've been exposed to the (lovely) debugger and written a few help shell functions 16:18
*helpful
FROGGS ab5tract: damn, I wanted to trick you into compiler hacking :P 16:20
ab5tract FROGGS: i'm still writing up my RT ticket for the more dwimmy set comparators :) 16:21
FROGGS :o)
ab5tract the patches are ready though, at least afaict 16:23
[Coke] throws out yesterday's incomplete run and kicks off a new one. 16:38
vendethiel o/, #perl6 16:39
ab5tract \o vendethiel
ugexe ive somehow got XML segfaulting on parrot 16:43
vendethiel afk interstellar &
ugexe over continuation 16:48
ab5tract ugexe: it might be an issue i have run into 16:56
gist.githubusercontent.com/ab5trac...0debugging 16:57
the stuff related to the $doc<xmldecl> .. $doc<xmldecl> is not an array, apparently 16:58
ugexe might be it, its related to .list as well
nebuchadnezzar m: say Any // Nil // 0 // 5 16:59
camelia rakudo-moar 38e77b: OUTPUT«0␤»
nebuchadnezzar shouldn't it be 5?
ugexe 0 is a defined value 17:00
m: say Any || Nil || 0 || 5;
camelia rakudo-moar 38e77b: OUTPUT«5␤»
ugexe ab5tract: Method 'list' not found for invocant of class 'Continuation' 17:01
nebuchadnezzar so there is an error in learnxinyminutes.com/docs/perl6/
ugexe is that what you are running into?
ab5tract m: say Any // Nil // 0 || 5 # also evocative
camelia rakudo-moar 38e77b: OUTPUT«5␤»
ab5tract ugexe: 'use of uninitialized value $v of type Any in string context in method new at lib/XML.pm6:965' 17:03
ugexe nebuchadnezzar: its explanation is correct (first defiend value) but the codes exclaimed result is indeed wrong
ab5tract but there was no $v on line 965, just an attempt to access $doc<xmldecl>[0] 17:04
ugexe m: say [//] Nil, Any, False, 0, 5;
camelia rakudo-moar 38e77b: OUTPUT«False␤»
ugexe m: say [//] Nil, Any, 0, 5;
camelia rakudo-moar 38e77b: OUTPUT«0␤»
ab5tract accessing $doc<xmldecl><*><*> seemed to produce the correct result 17:05
ugexe (as you can see, they contradict themselves earlier)
$v makes me think of push but thats a wild guess
ab5tract ugexe: right, it seemed vaguely autoviv-ish 17:06
ab5tract tbh, i just assumed that the XML code was in the wrong somehow 17:07
ugexe it could possibly be building the tree wrong based on the xml 17:08
ab5tract and that the grammar returns $doc<*><*>, not $doc<*>[*]<*>[*]
at least for $doc<xmldecl> ! 17:09
ugexe like html::parser::xml builds its tree wrong if tags that close themselves <tag />
ab5tract ugexe: hmmm.. and my patch maybe doesn't work for other cases that i'm testing now. such as installing XML::Query. but that also fails for me even with a clean XML install ... 17:18
ugexe does there happen to be a debian packaging script for p6 and the backends? travis testing modules is taking too long for jvm/parrot due to building :/
XML::Query only fails for compiled 17:19
ab5tract ugexe: ah, right
ugexe i started a panda fork last night to try and and report when that happens
you can do it manually though. panda look && prove -e "perl6 -Ilib" t/; panda-build && panda-test; 17:21
ab5tract with my patch to XML, installing XML::Query fails with that same "uninitialized $v" error. however that error appears whenever XML is used (at least on the inputs I have given it so far), including during the running of its own tests 17:23
when my patch is *not* applied
ugexe i used to get that same error but it was just a warning 17:24
and my tests passed
im not sure if we can draw any conclusions from that 17:25
ab5tract ugexe: fair enough. 17:26
i was chasing down the rabbit hole anyway, as i didn't realize what happens to a non-slurpy function when handed a recursive structure. 17:27
ugexe neither did i, i had that same problem yesterday debugging html::parser::xml heh 17:29
i assumed it had something to do with lazyness
although i think froggs mentioned recurssion to both of us yesterday, but in reference to the xml structure
moritz sergot: re OpenSSL, it shouldn't do that; either throw an error, or be silent 17:46
moritz sergot: ... or have some debug flag or evn variable 17:47
masak evening, #perl6 18:14
FROGGS evening masak 18:35
masak our clones and I are all worn out. we need a vacation. 18:38
my* clones
masak .oO( having clones is confusing! )
FROGGS clones? 18:39
lizmat
.oO( bring in the clones )
lizmat or rather: 18:39
.oO( Send in the clones :-)
18:40
so I talked myself into giving an hour-long presentation about Perl 6 tomorrow at the NPQ
*NPW
called "Perl 6 for Neophytes"
woolfy lizmat++ 18:41
lizmat I was thinking of taking vendethiel++'s LearnPerl6inYminutes 18:41
and turn that into a presentation
FROGGS +1 :o) 18:42
lizmat hope vendethiel doesn't mind (he should be in other spheres now :-)
jnthn
.oO( Is a neophyte a violent scene from The Matrix? )
18:44
lizmat in my dictionary it is simply someone who is new to a subject or activity 18:46
lizmat nothing Matrixy about it... 18:46
virtualsue neo+fight
lizmat *sigh* jnthn++
:-) 18:47
masak FROGGS: in my blog queue, I have a blog post coming up about how I'm (secretly) seven identical clones. even so, things are still very busy. 19:01
dalek ast: e75bba5 | (Tobias Leich)++ | S32-io/spurt.t:
fix fudged block, it must start at BOL
19:02
FROGGS .oO( The Seven Carl Potters )
lizmat suspects masak got something from Hermione at one point in time 19:05
masak lizmat: no, time travel doesn't work. it was all done the hard way, with biological cloning. 19:15
lizmat well, *you* only needed to do it once :-)
masak or, um. some "cloning machine" where one steps in and two step out.
lizmat your clone could have done the others then 19:16
masak sure. if I'm the original one. :P
lizmat well, that's what you get with lossless cloning :-)
vendethiel++ for learnxinyminutes.com/docs/perl6/ # so much more than the last time I looked! 19:17
masak it's not just that. we have a policy among us that none of us is the "primary" copy. even if (of course) one of us is.
lizmat masak: but maybe the primary copy evaporated? with quantum mechanics, you never know... 19:26
brrt \o 19:27
masak lizmat: what happened in our case was that 10 seconds after a clone, the copies had diverged and gone out of sync. I guess that tells you something about free will. or not, I dunno. 19:29
brrt: o/
moritz if you consider that genetic identical clones don't grow any faster than regular humans, it stands to reason taht the "original" masak would be as old as masak's father by now... 19:30
masak yeah, I take it back with the biological route.
there was an atom-for-atom copier involved.
brrt is obliged to backlog on this discussion 19:30
FROGGS brrt: 1) there is a branch called execname I think, which creates fake executables... 2) I don't like the name perl6-b 19:31
masak what's perl6-b ? 19:32
brrt perl6-binary
brrt FROGGS: i had no idea 19:32
moritz if you consider that genetic identical clones don't grow any faster than regular humans, it stands to reason taht the "original" masak would be as old as masak's father by now... 19:33
TimToady n: say Any // Nil // 0 || 5
camelia niecza v24-109-g48a8de3: OUTPUT«===SORRY!===␤␤"//" and "||" are non-associative and require parens at /tmp/B39JKmLM_H line 1:␤------> say Any // Nil // 0 || ⏏5␤␤Unhandled exception: Check failed␤␤ at /home/camelia/niecza/boot/lib…»
TimToady that is the correct response, not rakudo's
m: say <a b c> X <d e f> Z <g h i> 19:34
camelia rakudo-moar 38e77b: OUTPUT«a d a g a e a h a f a i b d b g b e b h b f b i c d c g c e c h c f c i␤»
TimToady that is also incorrect 19:34
n: say <a b c> X <d e f> Z <g h i>
camelia niecza v24-109-g48a8de3: OUTPUT«===SORRY!===␤␤"X" and "Z" are non-associative and require parens at /tmp/j7dtGW7z02 line 1:␤------> say <a b c> X <d e f> Z ⏏<g h i>␤␤Unhandled exception: Check failed␤␤ at /home/camelia/niecza/boo…»
TimToady niecza++
raiph .ask FROGGS Is my answer reasonable? (SO question about P6 equivalent to P5's overload::constant stackoverflow.com/questions/2694833...in-perl-6) 19:40
yoleaux raiph: I'll pass your message to FROGGS.
lizmat m: my $a = “Foo” # why don't we allow these quotes ? 19:40
camelia rakudo-moar 38e77b: OUTPUT«===SORRY!=== Error while compiling /tmp/DUyjLTluvr␤Malformed initializer␤at /tmp/DUyjLTluvr:1␤------> my $a = ⏏“Foo” # why don't we allow these quotes␤ expecting any of:␤ scoped declarator␤ …»
lizmat n: my $a = “Foo” # just checking
camelia niecza v24-109-g48a8de3: OUTPUT«===SORRY!===␤␤Malformed initializer at /tmp/AfXjrQiEPO line 1:␤------> my $a ⏏= “Foo” # just checking␤␤Parse failed␤␤»
FROGGS raiph: looks good, and thanks for the pointer 19:42
yoleaux 19:40Z <raiph> FROGGS: Is my answer reasonable? (SO question about P6 equivalent to P5's overload::constant stackoverflow.com/questions/2694833...in-perl-6)
masak someone else is welcome to rakudobug-submit the above lack of non-associativity control in Rakudo. 19:55
dalek c: 2d79b9c | moritz++ | lib/Type/Metamodel/C3MRO.pod:
document Metamodel::C3MRO
20:15
c: b5cc1b5 | moritz++ | lib/Type/Metamodel/Naming.pod:
Fix MRO signatures
c: 477f3dd | moritz++ | lib/Type/Metamodel/C3MRO.pod:
MRO example
moritz m: say Int.^mro_unhidden 20:16
camelia rakudo-moar 38e77b: OUTPUT«(Int) (Cool) (Any) (Mu)␤»
moritz m: say Int.^mro 20:17
camelia rakudo-moar 38e77b: OUTPUT«(Int) (Cool) (Any) (Mu)␤»
moritz why does that produce the same result?
what's the point of mro_unhidden?
jnthn "is hidden"
moritz oh
moritz thought it was about excluding Cool, Any etc. by default 20:18
jnthn: so .^mro hidens 'is hidden' classes by default, but .^mro_unhidden shows all? 20:19
jnthn # Introspects the Method Resolution Order without anything that has 20:20
# been hidden.
method mro_unhidden($obj) {
so .^mro is all
.^mro_unhidden is all the not-hidden ones 20:21
dalek c: 1f5fe3b | moritz++ | lib/Type/Metamodel/C3MRO.pod:
[mop] fix mro{,_unhidden} bugs, jnthn++
20:23
ake: 7e99b4b | (Arne Skjærholt)++ | src/Snake/ (2 files):
Implemention function parameter default values.
20:26
arnsholt Oh. Ai speel reel gud 20:27
brrt is excited about fosdem 20:33
timotimo o/ 20:35
brrt \o timotimo 20:38
brrt timotimo - i've started working on a binary moar-based perl6. i could use your advice :-) 20:45
vendethiel lizmat: right, I'm back, sorry 20:46
ugexe++ #fixing my mistakes
lizmat vendethiel: and how did you like Interstellar ? 20:47
vendethiel didn't like it very much :(. The images were cool, but I found it boring overall
well, it's most probably not my type of movie. To me, it was like a bad copy of 2001 space odyssey 20:48
brrt ot, but it occurs to me that there is some form of consensus of human unsustainability in interstellar and other things (civilization beyond earth), and ehm, that's pretty sad 20:49
vendethiel people want to dream about what they can't reach. let 'em :) 20:50
brrt that's not my point :-)
my point is that people seem to have given up on a sustainable life on earth
or it seems that way at least
vendethiel no. Movie makers have. I think it's very, very different.
brrt movie makes live in the same cultural background as the rest of us 20:51
lizmat brrt: I think it's more or less established now that with the current number of people on this planet (and the organic growth of that in the next century), it is basically unsustainable
brrt hmm. i disagree about the number of people. resource usage, yes. 9 billion people, we can manage 20:52
lizmat in the movie, it doesn't matter what caused the disaster that reduced the population: it's about coping with that and the future
brrt hmm i see 20:53
lizmat concentrates on writing her slides again 20:55
vendethiel lizmat: I've told you already, but I think learnperl6iny is totally unfit for perl5-knowing people
I'm not happy with how it is right now, at all.
lizmat vendethiel: well, you could be right,
fwiw, I'm following it as a guideline... it's more about the order of things 20:56
vendethiel I think it's the worst part :(.
dalek kudo/longlit: 5f5ddb4 | TimToady++ | src/Perl6/ (2 files):
<?{}> parse depended on non-lltm ordering
lizmat I'll be talking about the examples from a P5 perspective
vendethiel: I disagree (mostly) :-)
anyway, I don't think I'll be able to cover more than the first 25-30% in the hour that I have 20:57
vendethiel right.It's a looong tutorial :)
moritz what is the longlit branch about? 21:08
jnthn moritz: Longest literal tie-breaking in LTM 21:09
TimToady it causes some misparses where rakudo was relying on ordering rather than the lltm tiebreaker 21:12
but down to 5 failing tests now 21:13
japhb So I have a class with many attributes, each of which is of a specific class, but can sanely be coerced from a standard type (Int, Rat, Str, etc.), similar to how you can get a DateTime from an Int interpreted as a posix time. 21:14
I'd like to be able to initialize those attributes during construction of the big class, but using just the standard types (Foo.new(bar => 12) instead of Foo.new(:bar(Bar.new(12))). What's the best way to express that? 21:15
masak 'night, #perl6 21:21
perltricks hey y'all quick question. How do I exec a module sub that is not exported? Module::subname() is not working ... 21:22
TimToady it has to be declared 'our' for that to work 21:25
otherwise it's private
(lexically scoped by default)
vendethiel night masak
perltricks TimToady: thanks! 21:26
jluis_ raspi is making tests but I was in outside when make ended 309 wall clock seconds <G>
moritz japhb: I'd create a hash with key = attribute and value = coercer function 21:33
moritz japhb: and thread that over the named attributes 21:33
japhb moritz: Hmmm, interesting. 21:40
moritz s/attributes/arguments/ 21:41
japhb wonders if this can just be done with parameter coersion and a custom new or BUILD
jnthn m: class A { has Int $.x }; class B { has A $.a; submethod BUILD(:$a, :_($!a) = A.new(x => $a)) { } }; B.new(a => 42).perl.say 21:47
camelia rakudo-moar 38e77b: OUTPUT«B.new(a => A.new(x => 42))␤»
jnthn Kinda ugly ;)
oh, I wonder...
Hm, nah 21:48
FROGGS raiph: stackoverflow.com/questions/2694833...1#26962441
dalek osystem: 50b2821 | (Tobias Leich)++ | META.list:
added overload::constant to ecosystem
21:49
FROGGS quite at an early stage, but should be extendable
FROGGS in short: 21:50
sub decimal { $^a.flip }
use overload::constant &decimal;
say .1e-003 # "300-e1."
jnthn o.O :) 21:53
FROGGS *g*
jnthn Short module too :)
jnthn FROGGS++ 21:53
vendethiel FROGGS++
FROGGS yeah, I really like the pattern of that thing
(which is identical to Tuxic)
vendethiel FROGGS: couldn't you have the same name for both overload and %handlers key? 21:54
so that the code would effectively be
for <integer decimal radix numish> { if atkeyish($/, $_) -> $v { $/.make(...); last; } } 21:55
FROGGS vendethiel: I need the correct fallback anyway, soo....
vendethiel FROGGS: the for can just return early :p
or LAST
FROGGS and dec_number is the original name from the grammar/actions, and that's not very sixy
vendethiel but yeah, yeah, sorry. That's obfuscating while trying to be clever
FROGGS I might clean it up some day... but I wanted to release it quickly because battery power is at 7% :P 21:56
FROGGS gnight 22:05
japhb m: sub is-complete($o) { !grep !*.defined, $o.^attributes.map: *.get_value($o) }; class A { has $.a; has $.b = 5; }; say is-complete(A.new); say is-complete(A.new(a => 2)); 22:10
camelia rakudo-moar 38e77b: OUTPUT«False␤True␤»
japhb \o/
perltricks hey has the method for finding $*UID changed since s28? $*UID does not exist ... 22:11
m: say $*UID
camelia rakudo-moar 38e77b: OUTPUT«Dynamic variable $*UID not found␤ in method gist at src/gen/m-CORE.setting:13756␤ in sub say at src/gen/m-CORE.setting:16487␤ in block <unit> at /tmp/Mx_pFRwduz:1␤␤»
lizmat m: say +$*USER
camelia rakudo-moar 38e77b: OUTPUT«1012␤»
lizmat m: say $*USER
camelia rakudo-moar 38e77b: OUTPUT«camelia (1012)␤»
lizmat m: say ~$*USER 22:12
camelia rakudo-moar 38e77b: OUTPUT«camelia␤»
perltricks lizmat: very nice, thanks!
lizmat perltricks: iow, $*UID -> $*USER and the coercion determines what you get
m: say ~$*GROUP; say +$*GROUP; say $*GROUP 22:13
camelia rakudo-moar 38e77b: OUTPUT«users␤100␤users (100)␤»
perltricks lizmat: is there a way to retrieve the user's name? (not username) 22:14
lizmat there is none currently specced, afaik
this feels highly system dependent, and I guess we wanted to move away from unix centeredness 22:15
perltricks lizmat: ok thanks. I guess for *nix I can look it up in /etc/passwd using +$*USER anyway
lizmat a module for that would be nice in the ecosystem :-)
aka, all of P5's getgrpwent() functions and friends :-) 22:16
we could also use that for "use v5" support :-)
perltricks heh, yah I keep wotking backwards. I wanted to write Module-Starter, but there is no software::license module. So now I'm writing that. But to get the user's name for the license, I need to write another module and so on ... ;)
lizmat I know the feeling :-) 22:17
colomon indeed
jnthn Bah, when I started here it was like "so I want to write a class...well, better implement a MOP..." :P 22:19
perltricks haha
jnthn is happy to see our ecosystem gradually growing :) 22:20
perltricks yeah it seems to be picking up. I'm publishing an article this week on compiling Rakudo on Visual Studio 2013 22:22
perltricks overall it looks like it works fine (I didn't write the article). Which is a pleasant surprise ... 22:23
jnthn Well, having at least one core VM and compiler developer work often on Windows helps... :) 22:24
jnthn MoarVM actually was initially built with MSVC, and then ported to work with GCC, Clang, etc. 22:26
[Coke] I find myself wanting __END__. 22:46
[Coke] settles for =begin END , =end END 22:47
timotimo i wrote "o/" but then didn't answer anything 23:02
turns out i wasn't really there
timotimo backlogs now
timotimo and now i'm off to get some early rest 23:11
gnite!
[Coke]: perlcabal.org/syn/S26.html#The+%3Dfinish+block 23:12
i don't actually know if we do that yet :) 23:13
jdv79 i wrote __END__ today as well
lizmat
.oO( old habits die at the __END__ )
23:14
jdv79 in p5 i use it all the time to chop off the end of a test script and run just the head of it
but that's almost the only use i have so meh...
[Coke] I'm getting an error - if I run my system installed perl6 from a build directory of another perl6, I get Missing or wrong version of dependency... 23:18
jdv79: __END__ would be very helpful when converting a five script to six. :) 23:19
lizmat [Coke]: notes that when getting back to the settings loading code 23:22
*for
meanwhile, 20+ slides with code to explain, that should be enough to fill 1 hour and have everybody's head explode 23:23
so I can get some rest now :-)
good night, #perl6!
jnthn
.oO( The finish block sounds appropriate for NPW this year... :P )
'night, lizmat 23:24
lizmat :-)