»ö« 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.
moritz prime: it's just a minimal version 01:27
hagiri TimToady, hello man 01:52
=)
hello all
^^
japhb hagiri: You have arrived during the "Europe is sleeping" lull. It's not totally silent in here during that time, but it can be pretty quiet. 02:15
moritz corrects it to "Europe, except where small children keep the parents awake" :-) 02:18
hagiri japhb, hehehe
kkk
japhb moritz: You know, I was actually thinking of that, but didn't want to jinx you. :-) 02:38
breinbaas Hi. What's the way in perl6 to time things? Is there a thing like Time::HiRes ? 09:11
raydiak m: say now
camelia rakudo-moar 7191e4: OUTPUT«Instant:1416561144.379447␤»
JimmyZ breinbaas: github.com/tony-o/perl6-bench/ 09:12
breinbaas thanks
moritz breinbaas: the built-in 'now' term already supports sub-second resolution 09:13
JimmyZ: isn't the most active repo the japhb/perl6-bench one?
JimmyZ moritz: I think they are different things, the former is a module 09:14
breinbaas after installing a module, is there a thing like perldoc? 09:19
perldoc Bench 09:20
JimmyZ don't know, but there is exmaples and readme
breinbaas ok, I can read the github page of course 09:21
sergot hi o/ 09:34
masak evening, #perl6 10:10
arnsholt Morning =)
arnsholt Or antenoon, rather 10:11
Not really morning at 11
brrt \o masak 10:19
again in asia?
or nz
or where?
masak .cn
brrt ah
brrt wants to hit the manager responsible for xcode's clang 10:20
arnsholt brrt: What's wrong with it? 10:28
brrt it doesn't come with memorysanitizer or addresssanitizer 10:30
arnsholt Oh, that's annoying
rurban macport clang neither 10:34
but easy to compile your own 10:35
oh, macport actually can do it: port info clang-3.5 10:36
port install clang-3.5 +analyzer
brrt hmm /me has brew 10:41
and i'm not entirely willing to upset that yet
jnthn evening, #perl6 :) 10:55
arnsholt o/
dalek ake: 94f5928 | (Arne Skjærholt)++ | src/Snake/ (2 files):
Implement pass statement.
10:57
ake: ab62836 | (Arne Skjærholt)++ | src/Snake/ (2 files):
Implement returning from functions.
jnthn Snake! Snake! Oooh, it's a snake!
arnsholt++ 10:58
arnsholt Thanks =)
I'm not sure I really need lexotic to handle return in Python, but it was easier to crib NQP's return logic than to figure out how to do it properly =)
jnthn Yeah, I suspect you don't need it either...but it's fine for now I guess :) 10:59
I mean, if it works... :)
arnsholt Yup
Speaking of: Does QAST expose goto and labels directly?
jnthn Not goto. Labels...not sure, FROGGS++ did those :) 11:00
arnsholt That's the obvious way to do Python's return 11:01
A local result variable and just goto the end of the function on return
jnthn Well, a "leave" QAST op for leaving the current block is the even easier way :)
Then it'd be QAST::Op.new( :op('leave'), $retval_qast ) 11:02
arnsholt I guess, but the current QAST block isn't always the function block though 11:02
jnthn Oh?
I thought you could compile Python so it was...
arnsholt Not ATM at least
I generate new blocks for for loops 11:03
jnthn ok
ah
yeah...
arnsholt Which I think I have to, because of variable assignment shenanigans
jnthn *nod* 11:04
Then the lexotic way is the easiest
And since it's used in NQP and Rakudo it's relatively well optimized.
arnsholt That's true too
ibo2perl6 o/ 11:26
hepmee hi 11:31
i have problem with connection to db2, someone can help me?
i have this script pastebin.com/cnL4jNuW 11:35
and i get this error: DBI connect('S634E05A:S634E05A:8471','fiel',...) failed: [IBM][CLI Driver] CLI0124E Valore argomento non valido. SQLSTATE=HY009 at spiel.pl line 22. 11:37
moritz hepmee: welcome to #perl6. I fear you're off-topic here 11:45
hepmee: unless Perl 6 now has a db2 backend that I don't know about yet
hepmee ok i have 5.16 11:58
colomon huh, a few interesting new failures overnight: host08.perl6.com:8080/report 12:04
timotimo o/ 12:19
blackbolt how can i install GTK::Simple? In the tests I get a problem with "libgtk-3.so" 12:47
timotimo hi 12:48
that's my module
xtreak perl6: say round(5e+33)
camelia rakudo-moar 7191e4: OUTPUT«-9223372036854775808␤»
..rakudo-parrot 7191e4: OUTPUT«4999999999999999727876154935214080␤»
timotimo sorry about that, getting the right library name in place can get tricky if you want to be cross-platform
blackbolt: you do have gtk3 installed, yes?
blackbolt yes 12:49
with gnome
xtreak Long numbers being rounded off gives negative numbers. Is it a bug that I can report in MoarVM?
timotimo blackbolt: can you find out what your gtk3 .so files are called? 12:50
blackbolt timotimo: i am new here, how can i do that?
timotimo try "locate libgtk-3" in a terminal 12:51
what linux distribution is this?
blackbolt ubuntu
timotimo OK, i don't have a ubuntu system handy
on my fedora system these files are /usr/lib64/libgtk-3.so, /usr/lib64/libgtk-3.so.0 and /usr/lib64/libgtk-3.so.0.1000.9 12:52
arnsholt My Ubuntu machine has /usr/lib/x86_64-linux-gnu/libgtk-3.so 12:54
xtreak: That certainly looks like a bug!
timotimo m: say $*VM.config<dll> 12:55
camelia rakudo-moar 7191e4: OUTPUT«lib%s.so␤»
timotimo hm. 12:55
xtreak I reported it at github.com/MoarVM/MoarVM/issues/157
blackbolt timotimo: i got dc. libs are in /usr/lib/x86_64-linux-gnu/libgtk-3.so.0 /usr/lib/x86_64-linux-gnu/libgtk-3.so.0.400.2
geekosaur you need a -dev package 12:56
timotimo why would you need the -dev package to get the regular .so symlink?
geekosaur the unversioned .so name is used at compile time
timotimo oh!
that's an explanation i've been missing for a *long* time
geekosaur nd mebeds the versioned name in the shared bject table
the idea is you can have multiple runtime versions, while selecting one as a compile time version 12:57
since you cant have multiple compile time versions without multiple prefixes
arnsholt Oh! Didn't know that
Very useful knowledge!
geekosaur++
geekosaur since things like gnome tend to change a lot even between minor versions, you need something like that to be able to continue to use older programs. (you can also understand this as "gnome sucks at maintaining backward compatibility") 12:59
(although gnome is far from the worst offender. openssl pre-1.0 didn[t even pretend to maintain backward compat) 13:00
xiaomiao geekosaur: "backwards compatibility sucks at keeping up with us awesome people" 13:01
xiaomiao doesn't like this 'agile' development style of constant failure 13:02
timotimo ldconfig -p gives a complete listing of libraries and their candidates 13:04
we may want to teach zavolaj to use that feature
blackbolt Problem with GTK::Simple solved. libgtk-3-dev help me
timotimo great! i'll keep that in mind for the future 13:06
thanks also to geekosaur :)
blackbolt: i'd welcome any feedback about GTK::Simple, like missing feature or weird API or stuff 13:07
timotimo i kind of "burnt out" a tiny bit on adding new features to GTK::Simple 13:10
i forced myself to add new features by coming up with use cases and making that work
and also i'm hoping someone will build something that can work with gobject introspection 13:11
blackbolt timotimo: This is my beginning with Perl 6, i need to create simple program with GUI 13:12
timotimo OK 13:13
feel free to ask many questions
blackbolt thanks 13:13
lucas_ S06 says "The want function is gone". Did a "want" function exist before? Should it say "wantarray"? 13:35
timotimo oh, that may be, yes
lucas_ timotimo: Thanks. I'll change later, ok? 13:37
moritz lucas_: yes, there was a 'want' function at some point, as a replacement for wantarray
lucas_ moritz: Oh, thanks, I didn't know that
timotimo oh, interesting
shows what i know :) 13:38
blackbolt timotimo, is there any tutorial to gtk::simple ? 13:39
timotimo there's only the example programs in examples/
lucas_ When I read "The foo feature is gone..." I think about P5 comparison, since P6 design should just change without any notice, right?
FROGGS lucas_: why?
timotimo i was assuming, that "want" was refering to an in-perl5-replacement for wantarray 13:40
FROGGS why should the P6 design change without any notice?
moritz lucas_: that's not how people think who have been doing Perl 6 for a few years :-)
timotimo hehe.
moritz lucas_: but I wouldn't object to it saying "The want/wantarray functions are gone"
moritz lucas_: if that makes it any clearer for you 13:41
or "both the 'wantarray' function, and it's successor 'want', are gone"
lucas_ FROGGS, moritz: :) otherwise all P6 design decisions from the past should be documented.
.. in the specs.
moritz lucas_: maybe just those that attract much attention from the wider community 13:42
FROGGS design documents*
lucas_ yes
PerlJam lizmat++ (release) 15:17
masak lizmat++ 15:42
japhb Use case: I have a bunch of classes and roles, all working together to implement a subsystem, and to fit within the larger system, they have rather long name prefixes, e.g. Some::Really::Long::Prefix::Subsystem::Foo. Within the subsystem, I want to save the typing and noise and just use Foo (or at worst Subsystem::Foo). 16:28
What's the right way to do this? Wrap every compunit in the subsystem with module Some::Really::Long::Prefix::Subsystem { ... } ? 16:29
And if so, how do I properly import between them, so that I load the compunits properly, and can still use the short names?
japhb (And of course, is the intended method for doing this actually implemented in Rakudo yet?) 16:30
lizmat japhb: NYI 16:31
lizmat use ShortName:name<Very::Long::Name>; 16:31
lizmat S11:525 16:32
synopsebot Link: perlcabal.org/syn/S11.html#line_525
lizmat in there it is used to load different versions of a module in the same scope
lizmat but there is no reason why that wouldn't work for just creating a shorter name 16:32
masak japhb: constant Short = Some::Really::Long::Prefix::Subsystem 16:33
and yes, it works in Rakudo today.
lizmat m: class A::B::C::D::E {}; constant F = A::B::C::D::E; say F.new 16:34
camelia rakudo-moar 7191e4: OUTPUT«A::B::C::D::E.new()␤»
masak m: class Some::Really::Long::Prefix::Subsystem {}; constant Short = Some::Really::Long::Prefix::Subsystem; say Short.^name
camelia rakudo-moar 7191e4: OUTPUT«Some::Really::Long::Prefix::Subsystem␤»
lizmat masak++
masak discovered this pattern in 2011 while tinkering with Web.pm ;)
dalek p: 9da30c6 | jonathan++ | tools/build/MOAR_REVISION:
Get MoarVM with [ceil|floor]_n fixes.
16:47
japhb Yeah, I've used the constant trick. But that feels rather hackish, and the NYI use magic that lizmat referred to helps with imports, but doesn't really have the feel of "all these compunits are in some sense in the same namespace, so just use names relative to that namespace in here"
dalek kudo/nom: 0c89d51 | jonathan++ | tools/build/NQP_REVISION:
Bump NQP_REVISION for Moar nqp::[ceil|floor]_n fix

Fixes bug reported in .round.
16:48
ast: fe21439 | jonathan++ | S32-num/rounders.t:
Test for round issue on MoarVM (issue 157).
16:49
japhb jnthn: After that floor_n fix, what's the intended way of saying "floor this Real to an Int" or "ceil this Real to Int"? .floor.Int?
FROGGS o/ 16:51
jnthn japhb: Yes, which is how it was on other backends; Moar was inconsistent here. 16:52
Finally...stout and a useful commit from me. It's been a while. :/ 16:53
TimToady japhb: \o/ for both
er, jnthn
jnthn And...ah shit...I gotta get up in 5 hours for medium length flight followed by long flight... :/
FROGGS jnthn: I'm happy that you are 'back' :o)
jnthn Can we PLEASE get supersonic air travel back? :)
TimToady japhb: so something like use prefix Long::Prefix::Name; use Short; ? 16:54
jnthn Anyways, I'm in Europe for the rest of the year.
After this little journey back there :)
So the tuit supply should mostly improve from here :)
FROGGS jnthn: hah! that means I can force you to review my stuff :P
jnthn Yeah, remind me once I'm back.
FROGGS will do 16:55
jnthn I've gotta do some prep for a course on tue/Wed that I'm teaching fo the first time...
But after that, it's just familiar stuff for the rest of the year :)
And that's only Java stuff...and tbh, there's really not a lot of Java to know :P
lizmat fwiw, from Thu / Sun I'll be at the -p2 hackathon in Lyon with hopefully a lot of tuits
jnthn Cool :) 16:56
TimToady jnthn: except for the, "Oh, don't use that library anymore, use this one now"
jnthn TimToady: 300 MVC frameworks can't be wrong!
jnthn normally gets out of teaching Java stuff :)
TimToady just don't get into it :)
jnthn I tried claiming "I don't know Java", but inconveniently I happen to have done much of the Rakudo JVM port, so... :P 16:57
japhb TimToady: Well, if you're going to offer such nice syntactic relief, I'm happy to accept. But I more wondered if there was already an intended WTDI.
TimToady we hadn't take the system of modules into account when we designed :name 16:58
japhb (And that particular syntactic relief above makes me wonder how you 'escape' to specify a full name to something outside the subsystem, such as utility classes)
TimToady no prefix; :)
travis-ci Rakudo build failed. Jonathan Worthington 'Bump NQP_REVISION for Moar nqp::[ceil|floor]_n fix 16:58
travis-ci.org/rakudo/rakudo/builds/41733931 github.com/rakudo/rakudo/compare/7...89d511da16
japhb Heh 16:58
jnthn ...uh?
:/
"Works on my machine" 16:59
TimToady travis is easily upset
jnthn Oh ffs, some the travis-ci page wnats seems kinda blocked :/ 17:00
japhb Huh?
jnthn I really hope Chian's rise doesn't go much further. I do NOT want the rest of the world to look this way :/
japhb Oh, gotcha.
jnthn japhb: Typically, various CDNs are great-firewalled :/
japhb yeah, sigh
jnthn japhb: So any site that uses it for their JavaScript or CSS ends up getting busted :/ 17:01
japhb ssh tunnel?
jnthn Yeah, I have one when I need it. :)
It just makes things even more crazy slow.
japhb I bet.
jnthn So I only turn it on when I need it.
Hm, it's the NQP build that failed...
japhb & # bus stop 17:02
jnthn tries to figure out which thingy to click to get the log :)
TimToady At Frame 255, Instruction 72, op 'floor_n', operand 0, MAST::Local of wrong type (4) specified; expected 6
masak travis-ci is petty-burgeouis, and must be blocked!
tony-o masak: ?
masak 'night, #perl6 :)
jnthn TimToady: Is that from travis, or you get it also? 17:03
TimToady local
jnthn :S
So...why didn't I get it...
oh...'cus I didn't make clean 17:04
d'oh
[Coke] belatedly kicks off today's daily run. 17:05
TimToady [Coke]: at the moment nqp-moar doesn't compile
FROGGS hmmm 17:06
jnthn Fix probably about to land, though...
[Coke] TimToady: daily runs use recommended versions, so hopefully not a problem. 17:07
TimToady "It comes in recommended versions?!?"
jnthn [Coke]: No, I bumped those, 'cus it worked locally, 'cus I did something wrong... :/ 17:08
TimToady it's the end of the world as we know it, and I feel fine...
FROGGS *g*
jnthn blames 2 days of teaching while jetlagged :P
FROGGS "are we there yet?" 17:09
ugexe after bouncing some emails back and forth with travis support they encouraged me to open a support ticket about perl6 support. if anyone has anything to add the github issue can be found here: github.com/travis-ci/travis-ci/issues/2978
jnthn (for my fail, not for the end of the world...somebody else can be to blame for that one :P)
dalek p: c885c04 | jonathan++ | src/vm/moar/stage0/ (11 files):
Update stage0 for MoarVM, for op change.
17:10
[Coke] building moar right now, we'll see if nqp barfs. if so, I'll stop and redo 17:11
TimToady npq-moar now compiles
dalek kudo/nom: 5850d0a | jonathan++ | tools/build/NQP_REVISION:
Get fixed NQP Moar.
17:12
FROGGS nqp built fine here
jnthn Hopefully that does it.
jnthn sticks his commit bit in the suitcase :)
[Coke] starting over...
TimToady and nom
FROGGS :o)
TimToady has come too far to start over... 17:14
FROGGS TimToady: Perl 7 FTW!!11
jnthn OK, I guess I better sleep. Or tomorrow I'll be like....plane...gate...what... :) 17:15
'night
FROGGS yesterday I looked the commits I did at the beginning of last year... and it is strange to see what needed to be done back then, and what our problems/todos are today
TimToady o/
FROGGS it is a huge jump in quality, that's for sure 17:16
gnight jnthn
osfameron puts in a request to go with work to FOSDEM... 17:18
travis-ci NQP build passed. Jonathan Worthington 'Update stage0 for MoarVM, for op change.' 17:21
travis-ci.org/perl6/nqp/builds/41736136 github.com/perl6/nqp/compare/9da30...85c047b280
pmichaud good morning, #perl6 17:24
tadzik pmichaud! \o/
yoleaux 20 Nov 2014 16:10Z <PerlJam> tadzik: github.com/tadzik/synopsebot/pull/3
[Coke] now running. lots of deprecated calls going by...
pmichaud, welcome back.
pmichaud Glad to be back.
[Coke] Did you see you're on the hook for a 2015 release? ;)
pmichaud I did not.
pmichaud looks.
[Coke] (of 6.0, not of a rakudo compiler) 17:25
pmichaud oh, that!
I did see that there's talk of a 6.0.0 release, yes.
colomon pmichaud, o/
pmichaud I didn't know I'm on the hook for it, though. :)
FROGGS hi pmichaud
travis-ci Rakudo build passed. Jonathan Worthington 'Get fixed NQP Moar.' 17:26
travis-ci.org/rakudo/rakudo/builds/41736316 github.com/rakudo/rakudo/compare/0...50d0ae9380
pmichaud Anyway, 6.0.0 release in 2015 sounds fine to me. 17:26
[Coke] pmichaud: well, there's 3 big things left on the todo list, and when last we say you, you were thinking about one of them. :) 17:27
pmichaud Oh, I agree that I'm currently on the hook for GLR. 17:27
My current plan is to work on it fairly extensively next week.
I've pretty much reserved next week for that, in keeping with my blogpost on GLR stuff :) 17:28
colomon \o/
TimToady is still working on the longest literal stuff in NFA; alternatives don't quite calculate it right for transitive alternations 17:32
pmichaud Good luck with that. :) 17:33
TimToady well, I tried doing it in the mergesubstates, but it really needs to be done at the node->nfa translation level to make sure alternatives with different longlits end up with different fates 17:34
assuming we keep it attached to the fate
well, and to make sure we're looking at the correct alternative's literals 17:35
there seems to be some cross-clobbering of literal lengths going on with the current approach, anyway 17:36
[Coke] question about the release: I don't know if this was discussed anywhere, but are we going to call a moarvm-only 6.0.0 release ok? do we need/expect/want parity on java/parrot?
Or will we go with something like the feature list we have now, codified in the release docs? 17:37
TimToady moarvm for sure, jvm a solid maybe, parrot unlikely for full 6.0 blessing as it stands now
FROGGS +1 for rakudo@moarvm being the only one that implements most of 6.0.0 and therefore will be called a Perl 6 compliant compiler
TimToady well, it'll be defined by the tests, not by fiat :)
pmichaud to me a bigger question is: by 6.0.0 release are we referring to spec, compiler, or both simultaneously?
TimToady a specified set of tests, and and compiler that passes them 17:38
*a
FROGGS both go hands in hands
pmichaud I'm fine with there being only one compiler that passes the suite.
FROGGS because you don't really know that the tests are correct until you actually run them
TimToady at some point we go through our current tests and mark those that are post-6.0
[Coke] hell, if we're going by tests, we probably have more work to do there than we do on the compiler.
FROGGS [Coke]: can you explain that? 17:39
TimToady I don't expect the test suite to be perfect before 6.0 comes out
[Coke] TimToady: I imagine we'd do that in git. "tag, these are the 6.0.0 tests"
pmichaud please, not a git tag
[Coke] FROGGS: do you think the spectest suite covers everything we intend the spec to cover at this point?
pmichaud I proposed in salzburg that it be an actual extraction.
[Coke] pmichaud: why not? how else would you mark them?
... which we'd extract from git based on the tag. 17:40
FROGGS [Coke]: tests tend to never cover anything really
TimToady we'd like to freeze a set of tests with no fudging
pmichaud [Coke]: because the current roast suite contains tests that aren't 6.0.0
[Coke] also, not everyone was in salzburg, nor were there minutes. :0
er, :)
pmichaud: then we fix that.
pmichaud we don't want to eliminate those tests either
[Coke] you already have to fix it to do the extraction. let's fix it in our version control system.
pmichaud because they're post-6.0.0
no, I proposed we simply have a set of 6.0.0 fudge markers.
then we run fudge on roast to produce the (extracted) 6.0.0 tests 17:41
and then commit that somewhere.
[Coke] FROGGS: which is a problem if that's our spec declaration.
TimToady trickiest bit is making sure the plan is correct
[Coke] pmichaud: if you're marking the tests with a fudge marker, then combine that with a git tag. 17:41
pmichaud I have no problem with the fudging simply marking a set of tests as "skipped: not 6.0.0"
FROGGS [Coke]: I wanted to say that tests are never enough nor perfect, you just have to be happy with it or tweak it so you think they are okay
pmichaud [Coke]: I'm not saying we can't have a 6.0.0 tag, I'm saying that a 6.0.0 tag is not sufficient nor should it be the primary marker 17:42
japhb ugexe++ # Pushing for official Travis support for Rakudo
TimToady thinks he would prefer to see a branch for each nailed-down version of the tests 17:43
pmichaud I'm okay with a branch, also.
[Coke] FROGGS: I think we've established that "happy" is not one of my resting states. I'm agreeing. I'm saying that we are missing more tests to mark edge cases or behavior that is "same as perl5 so we didn't document it" (or, unfudging tests that are in there but not passing) than we have new compiler code to write.
pmichaud but it needs to be something that is easy to generate from roast
without a lot of hand-tweaking
TimToady we have a few more tests than Perl 1 came with :) 17:44
FROGGS [Coke]: correct... I think we agreed on a extensive review of roast :o)
[Coke] FROGGS: you and I just now? or in salzburg? 17:45
TimToady it's in the air :)
pmichaud at this stage, I primarily would like to see agreement (or an official Rule #1 declaration) that the test suite defines the "official spec". After that, I'd like us to have a (set of?) online meeting(s) to get general agreement about what is in 6.0.0 and what isn't. 17:45
*then* I think we should focus on the exact mechanism by which we produce the 6.0.0 test suite. 17:46
FROGGS [Coke]: not now... I expect there will be some discussion synopsis by synopsis where tests will be marked and cleaned up
pmichaud: +1 +1 +1
TimToady there are two main corners we'd like not to paint ourselves into: 1) can't implement in 2015, or 2) commits us to a coarse from which we cannot evolve in the direction we eventually want to go 17:49
2 is the primary motivation for GLR, NSA, and NFG 17:50
is also why I'm playing with longlit right now to make sure it isn't a big mistake
pmichaud Perhaps a good first-step would be to have people identify any parts of the synopses they feel should not be in the 6.0.0 spec, either because of #1 or #2 17:51
pmichaud for example, I'm still uncomfortable with commiting much of IO to 6.0.0 17:52
(because it's just gone through some major revisions)
TimToady we saw how well that worked out for Java >.<
pmichaud well, I could be persuaded to change my mind as we get a little farther along 17:53
TimToady no, I'm agreeing
we'd like to avoid Flavor of the Week Syndrome in IO
pmichaud exactly.
TimToady same goes for GUI 17:54
I guess it's usually Flavor of the Month, at last in ice cream...
*least
TimToady at least at B&R... 17:55
at least in the US... 17:56
pmichaud It's been a long time since I've had any flavor other than "Pralines 'n Cream" at B&R
timotimo our sockets are still pretty deficient... 18:02
last I saw we did not have udp
not to mention raw sockets or stuff like that
pmichaud next week I think I'll spend a little time organizing a spreadsheet or document where we can tally features w.r.t. 6.0.0 spec 18:03
timotimo ideally we would also offer advanced stuff like tcp fast open somehow 18:04
TimToady ideally everything is both perfectly integrated and perfectly decoupled :P 18:10
pmichaud I have to go prepare for my seminar tomorrow; bbl 18:12
gtodd www.newyorker.com/magazine/2014/11/...mers-price merry Xmas :-) 18:30
TimToady: integration and decoupling - an admirable goal ... like the EU or Canadian federalism 18:33
:)
dalek osystem: adb8184 | tony-o++ | META.list:
Slang::SQL
18:34
gtodd it would be cool if perl6 had a good, preferred, cross platform, easy to use (or leave out) GUI ... that was not Tk :-P 18:35
nine gtodd: you mean Qt? 18:37
gtodd hehe :-) no ... SDL!! besides a toolkit GUI is going to be "the web" ... some used in house, eat own dog food, ECMAscript library and HTML5 :-P
woolfy pmichaud++ [Coke]++ FROGGS++ TimToady++ for nice discussion of Perl 6.0.0 (very clarifying) 18:38
gtodd just commenting on TimToady's flavour of month warning
moritz lizmat++ # release
salparadise so to get perl6 running on OS X I need to first install Rakudo, or is that all I need? 18:48
oh sweet
brew search raku ~
rakudo-starbrew search raku ~
sorry 18:49
salparadise so 'say' is a method for string object (perl6 -e '"HI".say') but it is not listed here (perl6 -e 'say "".^methods();'), how does that work? 18:55
(just started playing with perl6)
TimToady m: say "".^methods 18:58
camelia rakudo-moar 5850d0: OUTPUT«WHY BUILD Int Num chomp chop substr pred succ match ords samecase samespace trim-leading trim-trailing trim encode wordcase trans indent codes path unival univals WHICH Bool Str Stringy DUMP ACCEPTS Numeric gist perl comb subst lines split words␤»
TimToady m: say "".^methods(:all)
camelia rakudo-moar 5850d0: OUTPUT«WHY BUILD Int Num chomp chop substr pred succ match ords samecase samespace trim-leading trim-trailing trim encode wordcase trans indent codes path unival univals WHICH Bool Str Stringy DUMP ACCEPTS Numeric gist perl comb subst lines split words abs conj s…»
[Coke] oh, right, lizmat++ for release. 18:59
TimToady by default, you only get the methods that are not "universal"
[Coke] btw, TimToady, I found us a new six-related logo:
TimToady flags over Texas?
[Coke] imgur.com/gallery/ijaaG (very very slightly nsfw)
TimToady my daughter used to stick up three fingers, and say "Read between the lines." 19:01
salparadise TimToady: I see, so "say" is a method for all objects (Universal) ? 19:02
lizmat m: say Any.^methods 19:03
camelia rakudo-moar 5850d0: OUTPUT«infinite exists_key exists_pos delete_key delete_pos list flat eager hash Parcel elems end squish rotor reverse sort values keys kv pairs reduce combinations permutations unique uniq pick roll classify categorize lol map for flatmap duckmap deepmap tree Ar…»
TimToady m: say Cool.^methods
camelia rakudo-moar 5850d0: OUTPUT«abs conj sqrt sign rand sin asin cos acos tan atan atan2 sec asec cosec acosec cotan acotan sinh asinh cosh acosh tanh atanh sech asech cosech acosech cotanh acotanh cis log exp round roots log10 unpolar floor ceiling truncate chars codes fmt substr uc lc …»
TimToady m: say Mu.^methods
camelia rakudo-moar 5850d0: OUTPUT«ACCEPTS WHERE WHICH take WHY set_why Bool so not defined new CREATE bless BUILDALL BUILD_LEAST_DERIVED Numeric Real Str Stringy item say print note gist perl DUMP DUMP-PIECES DUMP-OBJECT-ATTRS isa does can clone Capture Method+{<anon>}.new() dispatch:<::> …»
TimToady so in Mu, the Most Universal 19:04
woolfy say no more, say no more...
salparadise I see, I like what I see, thanks!
smls TimToady: What order are the methods listed in? It's neither random, nor alphabetical. 19:05
lizmat
.oO( maybe we should have a Str and Num candidate for .grep )
19:06
lizmat Cool.^methods.grep("say") 19:06
TimToady smls: I suspect it's unordered like the keys of a hash 19:06
m: .say for ''.can('say') 19:07
camelia rakudo-moar 5850d0: OUTPUT«say␤»
TimToady m: .signature.say for ''.can('say')
camelia rakudo-moar 5850d0: OUTPUT«:(Mu: Any |)␤»
TimToady m: .signature.say for 42.can('say')
camelia rakudo-moar 5850d0: OUTPUT«:(Mu: Any |)␤»
TimToady m: .signature.say for 42.can('floor') 19:08
camelia rakudo-moar 5850d0: OUTPUT«:(Int:D: *%_)␤:(Cool: *%_)␤»
TimToady is kinda starting to like this language too :)
smls :P 19:09
lizmat: a Str candidate for grep wouldn't help in this case, because you need to call .name or .gist to get a method's name; .Str does not work... 19:10
m: say Mu.^methods.grep(*.name eq 'say')
camelia rakudo-moar 5850d0: OUTPUT«say␤»
smls m: say Mu.^methods.grep(*.name ~~ /^s/) 19:12
camelia rakudo-moar 5850d0: OUTPUT«Code object coerced to string (please use .gist or .perl to do that) in any !cursor_init at gen/moar/stage2/QRegex.nqp:628␤␤␤»
smls ^^ Why does ~~ not participate in WhateverCode closures? 19:13
TimToady because it does other stuff with *, same reason .. doesn't 19:15
smls What stuff does it do with * on the left-hand-side?
TimToady m: say *.foo ~~ WhateverCode 19:16
camelia rakudo-moar 5850d0: OUTPUT«True␤»
TimToady and it's kinda related to why so and not don't autothread junctions
you have to have some functions that are stoppers 19:17
TimToady otherwise it's turtles xx * 19:17
smls well, closing parenthesis are always available as stoppers... 19:18
hm, no that's actually not true 19:19
TimToady whatevers generally only stop dwimming when passed as an argument to something 19:20
and in the case of ~~, the lhs is really an argument to .ACCEPTS
smls fair enough 19:20
TimToady but yeah, it's always a bit arbitrary where you put the circularity saws, and other limits of dwimmery 19:22
TimToady fondly remembers when we cut down the rules for placeholders from about 8 rules to 1
nebuchadnezzar Hello 19:23
TimToady though in fact we cheat ever so slightly on $_, and don't count it as a placeholder inside blocks that can take no args, such as hash subscripts
or string interpolations
nebuchadnezzar: hi, been a while 19:24
nebuchadnezzar yes
PerlJam TimToady: you knew him when he was king?!? Damian was right about you! ;) 19:25
nebuchadnezzar I have a stupid question, is there a may to have some kind of self-documentation, like in emacs, I start an interactive shell and ask documentation of objects, methods... 19:26
TimToady we have the mechanism in place, but not all the docs attached yet 19:27
hoelzro golfed code and issue created for colomon's ABC issue: rt.perl.org/Ticket/Display.html?id...d99465b26a
nebuchadnezzar TimToady: I just see the .WHY 19:28
TimToady we do have some docs generated already from signatures and such
nebuchadnezzar TimToady: where can I find examples to get my hands on it? 19:29
salparadise nebuchadnezzar: I was just looking here for instrospection doc.perl6.org/language/objects#Meta...rospection
nebuchadnezzar I'm reading doc.perl6.org/language/mop 19:30
colomon hoelzro++ # never expected someone to manage to golf that down 19:31
hoelzro colomon: don't thank me until you look at the "golfed" version =/
it's still quite large, and makes no sense
but it's a start
lizmat FWIW, I'm pretty sure it has something to do with things leaking into precomp versions that shouldn't 19:34
and/or things that do not get out of precomp properly
this is also what is breaking panda with @*INC being populated lazily
(I think) 19:35
moritz lizmat: did you get around to record the 'git clean -xdn' output in the different build dirs? 19:36
lizmat moritz: no, I haven't
but I also didn't do the git clean yet, will do so now
from nqp, right? 19:37
or rakudo?
moritz lizmat: both rakudo and nqp
hoelzro lizmat: that seems like a reasonable guess 19:39
lizmat moritz: rakudo cleans: gist.github.com/lizmat/2107975f24e40f1e99c1 19:41
lizmat moritz: nqp cleans: gist.github.com/lizmat/e17b39a6dfc0dcd56689 19:43
dalek rl6-roast-data: d49814f | coke++ | / (5 files):
today (automated commit)
lizmat moritz: is that what you expected?
moritz lizmat: yes, thank you
lizmat the nqp.parrot one seems to include stuff that is not needed
[Coke] jvm: 19 failures; moar-jit: 728, moar-nojit: 10; parrot: 11 19:44
FROGGS_ 728 -.- 19:47
[Coke] welcome to OS X. :(
FROGGS_ :/ 19:48
moritz lizmat: it seems that the moar checkout had lots of parrot stuff in it 19:49
lizmat moritz: nqp or rakudo ? 19:51
moritz lizmat: rakudo 19:51
dalek line-Python: 5acf624 | nine++ | / (3 files):
Allow passing Perl 6 object safely through Python space

We can now pass Perl 6 objects to Python functions and get them back unharmed.
19:52
lizmat that could well be: that checkout started life as a multi-backend version
[Coke] ah. some of these failures are because deprecation warnings are checking for single deprecations, but there are extra deprecations everywhere.
nine Feels good to be committing again :)
lizmat nine++
[Coke] so we're getting "saw 2..." instead of "saw 1..."
lizmat [Coke]: is there an easy way for me to check for those ?
TimToady nine: you planning to be bug compatible with the GIL :) 19:53
[Coke] in S02-types/deprecations.t
reduce the amount of exact match, and figure out what text is the minimum, do a regexp?
moritz TimToady: many pythonians consider the GIL a feature
lizmat [Coke]: for those tests, the texts should match exactly 19:54
nine TimToady: sadly CPython does not support multiplicity. So I cannot do the trick of running multiple Python interpreters in multiple Perl 6 threads ;)
lizmat if not, they either need to be fixed, or the deprecation adapted 19:54
[Coke] lizmat: given that the core setting has deprecations in it now, all those bets are off, I think.
lizmat the core shouldn't complain about its own deprecations: they should be fixed :-) 19:55
[Coke] m: my $line = $?LINE; Decrease;
camelia rakudo-moar 5850d0: OUTPUT«Saw 1 call to deprecated code during execution.␤================================================================================␤Sub Decrease (from GLOBAL) called at:␤ /tmp/5lfIPHXq6u, line 1␤Deprecated since v2013.11, will be removed with release…»
lizmat argh, forgot to remove that one... 19:56
better do that right away
hoelzro are sub foo(--> Int) { ... } and sub foo() returns Int { ... } semantically equivalent 19:58
?
moritz yes 19:59
[Coke] lizmat: also: S02-types/isDEPRECATED.t :: not ok 2 - right deprecation for a()
hoelzro (also, can … be used instead of ...?) 20:00
ok, thanks moritz
nine Cool! Just opened my first Qt window in Perl6 using Inline::Python and PyQt4. 20:07
lizmat nine++
woolfy nine++
dalek ast: 0db5a86 | (Elizabeth Mattijsen)++ | S02-types/deprecations.t:
Remove tests for Increase/Decrease depreciation
20:20
[Coke] weird: Bump NQP_REVISION for Moar nqp::[ceil|floor]_n fix is shown as the first bad commit breaking integration/advent2011-day10.t ... but my bisect never rebuilt nqp...
is that the brokenness from earlier in the day, I wonder.
dalek kudo/nom: b059a8a | (Elizabeth Mattijsen)++ | src/core/Order.pm:
Remove Increase/Decrease

They were deprecated for over a year now.
20:26
PerlJam nine: Should Python's None map to Any, or should it really be Nil? None is supposed to represent that absense of value and that very much sounds like Nil to me. 20:28
s/that/the/
nine PerlJam: I've always seen None as the exact equivalent to Perl 5's undef. 20:29
nine >>> a = [None] 20:31
>>> len(a)
1
PerlJam nine: Then, maybe it should be Mu rather than Any.
nine: see S02:1340 20:32
synopsebot Link: perlcabal.org/syn/S02.html#line_1340
dalek kudo/nom: a75337b | (Elizabeth Mattijsen)++ | src/core/CompUnit.pm:
Fix internal deprecation message
nine PerlJam: then the same should be true for undef <-> Mu in Inline::Perl5 20:33
instead of undef <-> Any
PerlJam aye, I guess I just didn't notice it in Inline::Perl5 for some reason 20:34
TimToady the absence of a value should really be Nil, but we haven't fixed its interpolating to () in a list yet
nine Neither Python's None, nor Perl 5's undef interpolate to () in lists, so Nil seems definitely wrong to me. 20:35
TimToady it's not supposed to interpolate to () in lists 20:36
moritz m: say 1 for Nil 20:36
camelia ( no output )
moritz I guess it's not that easy to fix :(
TimToady but these days Mu is more like the mother of all concepts, not the absence of a value 20:37
moritz fwiw when I'd use undef in p5, I tend to use Any in p6
nine Oh, have to start cooking right now. Girlfriend's coming home in < 30 minutes 20:38
TimToady you'd think it was a friday or somethin'
dalek nda: 1184fef | (Elizabeth Mattijsen)++ | / (6 files):
Fix deprecations
20:49
lizmat panda should be free of deprecation messages now 20:50
please let me know if you see any nonetheless
btyler I'm seeing deprecation messages from inside m-CORE.setting about path; I did 'make clean/realclean' for moar, nqp, and rakudo and built everything over again, but they're still popping up. am I missing an important step? all repos are at HEAD 20:52
moritz btyler: sounds like a bug 20:53
[Coke] I thought liz -just- fixed that.
do you have a75337b ?
btyler which repo? 20:54
moritz rakudo
from 20min ago
btyler oh bingo, yeah, I guess I just was unlucky enough to pull before that got fixed :)
itz I see no panda deprecation messages now 20:57
as opposed to "quite a few" before ;)
lizmat sorry, but had to wait until the release before I could fix those 20:59
btyler great! no more deprecation warnings. liz++ 20:59
booked my fosdem lodging today, looking forward to meeting some p6 folks 21:00
lizmat btyler++ :-)
.oO( note to self: need to fix lodging as well )
dalek kudo/nom: 849e3c1 | (Elizabeth Mattijsen)++ | docs/ChangeLog:
Mention demise of Increase/Decrease
21:14
[Coke] seems like the generation of perl6 should depend on the core setting finishing. 21:28
(otherwise you end up with a ./perl6 that dies really quick) 21:29
s/end up/could end up/
dalek kudo/nom: 96b9a86 | (Tobias Leich)++ | src/Perl6/Actions.nqp:
compile EXPORT::ALL to EXPORT::<ALL>

This has the benefit that it does not blow up anymore. Resolves RT #118501.
synopsebot Link: rt.perl.org/rt3//Public/Bug/Displa...?id=118501
timotimo "the benefit" 21:30
%)
FROGGS_ what?
m: say EXPORT::ALL 21:31
camelia rakudo-moar a75337: OUTPUT«Could not find symbol '&ALL'␤ in method <anon> at src/gen/m-CORE.setting:13777␤ in any find_method_fallback at src/gen/m-Metamodel.nqp:2725␤ in any find_method at src/gen/m-Metamodel.nqp:988␤ in block <unit> at /tmp/CpJp2nW_Wz:1␤␤»
FROGGS_ m: say EXPORT::ALL::
camelia rakudo-moar a75337: OUTPUT«Could not find symbol '&ALL'␤ in method <anon> at src/gen/m-CORE.setting:13777␤ in any find_method_fallback at src/gen/m-Metamodel.nqp:2725␤ in any find_method at src/gen/m-Metamodel.nqp:988␤ in block <unit> at /tmp/z64XXtLy_c:1␤␤»
FROGGS_ both will do something sane in a bit
dalek nda: 59f88e4 | timo++ | bin/redpanda:
redpanda needs to have a hashbang

because it gets installed via bin/
21:32
japhb I forget, what's redpanda? 21:36
dalek ast: b33ad00 | (Tobias Leich)++ | S11-modules/export.t:
RT #118501 add tests for EXPORT::ALL
21:37
synopsebot Link: rt.perl.org/rt3//Public/Bug/Displa...?id=118501
timotimo i have no idea
all i know is i can't run it %)
dalek nda: 0be4b82 | (Elizabeth Mattijsen)++ | TODO:
Mention magic incantation for updating submodules
21:39
Diederich ~~~ 21:48
dalek kudo/newio: 0c89d51 | jonathan++ | tools/build/NQP_REVISION:
Bump NQP_REVISION for Moar nqp::[ceil|floor]_n fix

Fixes bug reported in .round.
21:52
kudo/newio: 5850d0a | jonathan++ | tools/build/NQP_REVISION:
Get fixed NQP Moar.
kudo/newio: b059a8a | (Elizabeth Mattijsen)++ | src/core/Order.pm:
Remove Increase/Decrease

They were deprecated for over a year now.
kudo/newio: a75337b | (Elizabeth Mattijsen)++ | src/core/CompUnit.pm:
Fix internal deprecation message
kudo/newio: 849e3c1 | (Elizabeth Mattijsen)++ | docs/ChangeLog:
Mention demise of Increase/Decrease
kudo/newio: 96b9a86 | (Tobias Leich)++ | src/Perl6/Actions.nqp:
compile EXPORT::ALL to EXPORT::<ALL>

This has the benefit that it does not blow up anymore. Resolves RT #118501.
synopsebot Link: rt.perl.org/rt3//Public/Bug/Displa...?id=118501
kudo/newio: e90a169 | (Elizabeth Mattijsen)++ | / (5 files):
Merge branch 'nom' into newio
FROGGS_ TimToady: can you please judge? rt.perl.org/Ticket/Display.html?id=123216 22:05
m: say EXPORT::ALL
camelia rakudo-moar a75337: OUTPUT«Could not find symbol '&ALL'␤ in method <anon> at src/gen/m-CORE.setting:13777␤ in any find_method_fallback at src/gen/m-Metamodel.nqp:2725␤ in any find_method at src/gen/m-Metamodel.nqp:988␤ in block <unit> at /tmp/YGzRAQfvZ6:1␤␤»
lizmat FROGGS_: I'm still getting that at HEAD 22:06
FROGGS_ O.o
lizmat: ohh, it pops into existance when you actually export something >.< 22:07
$ perl6-m -e 'sub a is export { "r_a" }; say EXPORT::ALL::'
"\&a" => sub a () { #`(Sub|97921928) ... }
m: sub a is export { "r_a" }; say EXPORT::ALL::
camelia rakudo-moar a75337: OUTPUT«===SORRY!===␤Object of type ALL in QAST::WVal, but not in SC␤»
FROGGS_ m: sub a is export { "r_a" }; say EXPORT::ALL
camelia rakudo-moar a75337: OUTPUT«===SORRY!===␤Object of type ALL in QAST::WVal, but not in SC␤»
dalek kudo/nom: 113ede5 | (Elizabeth Mattijsen)++ | / (4 files):
Introduce placeholder IOU.pm

To facilitate switching between nom and newio branches
22:08
FROGGS_ so, for that case only sadly
well okay, it says "Could not find symbol '&ALL'", which is okayish
perl6-m -e 'sub a is export(:blörg) { "r_a" }; say EXPORT::blörg::' 22:09
"\&a" => sub a () { #`(Sub|74795960) ... }
lizmat FROGGS_: BTW, on JVM, the original sub and the one in EXPORT have different .WHICHes 22:10
any idea where that is coming from ?
FROGGS_ yes, hold on 22:11
lizmat: from that commit: github.com/rakudo/rakudo/commit/393acf095d
I tried to get to the bottom of that yesterday, but failed
because it is sooo slooooooow 22:12
lizmat I know the feeling having done the release yesterday 22:14
FROGGS_ yeah 22:16
:/
bartolin FROGGS_: when you commented on RT #123216: where you aware of RT #116244? both fail with the same error message 22:30
synopsebot Link: rt.perl.org/rt3//Public/Bug/Displa...?id=123216
FROGGS_ it is the same issue, aye 22:31
tony-o how often is panda's module list cached for me to update, or is it immediate?
bartolin aha, that's what I wanted to hear ;-) FROGGS_++ 22:32
FROGGS_ bartolin: I combined them, thanks :o)
bartolin++ # you are awesome
bartolin oh, thanks. just trying to adept to the standard of #perl6 ;-) 22:35
FROGGS_ *g* 22:39
gnight
lizmat good night, FROGGS_ ! 22:40
bartolin o/
dalek kudo/newio: 113ede5 | (Elizabeth Mattijsen)++ | / (4 files):
Introduce placeholder IOU.pm

To facilitate switching between nom and newio branches
23:07
kudo/newio: 42c7c32 | (Elizabeth Mattijsen)++ | / (4 files):
Merge branch 'nom' into newio
kudo/newio: 4539bdd | (Elizabeth Mattijsen)++ | src/core/IOU.pm:
Initial setup of IOU.pm
lizmat on that note, /me goes to sleep 23:08
good night, #perl6!
&
colomon o/ 23:09