»ö« Welcome to Perl 6! | perl6.org/ | evalbot usage: 'perl6: say 3;' or rakudo:, niecza:, std:, or /msg p6eval perl6: ... | irclog: irc.perl6.org/ | UTF-8 is our friend!
Set by sorear on 4 February 2011.
00:03 TheMartianGeek joined
sorear o/ TheMartianGeek 00:03
TheMartianGeek ? 00:04
sjohnson he's saying hi
sorear Just hi
TheMartianGeek Hi.
dalek ecza: 680b5fb | sorear++ | / (4 files):
Support unit names with :: and filenames like A/B.pm
00:05 risou left 00:06 plobsing joined 00:09 rdesfo joined 00:13 whiteknight joined 00:14 porter235 joined 00:16 plobsing left 00:18 porter235 left 00:25 f00li5h left
dalek ecza: 4f25aea | sorear++ | src/Op.pm6:
Stub in type fields for my and has declarations
00:35
ecza: cab2294 | sorear++ | / (2 files):
Start collecting example code
00:35 f00li5h joined 00:38 jevin joined 00:40 f00li5h left, rgrau left 00:45 plobsing joined 00:47 cdarroch left, f00li5h joined 00:53 f00li5h left 00:54 rdesfo left 00:55 lichtkind left 00:56 donri left, f00li5h joined 01:03 f00li5h left 01:09 saaki joined 01:11 TheMartianGeek left 01:14 woosley joined 01:15 marcio_ferreira joined 01:20 f00li5h joined 01:23 c1sung left 01:27 mtk left, ymasory joined 01:32 whiteknight left 01:36 mtk joined, fisted_ left
dalek ecza: e835ea6 | sorear++ | src/niecza:
Parse types on declarators
01:39
ecza: 34092d2 | sorear++ | src/Op.pm6:
Stub in sigil and rw fields for attributes
ecza: bb8c799 | sorear++ | src/ (3 files):
Pass declaration type constraints down to nam-level
01:40 c1sung joined 01:41 fisted joined 01:48 literal_ left 01:50 leprevost joined 01:55 impious left 02:01 noganex_ joined 02:04 noganex left 02:07 stkowski left 02:10 __rnddim__ is now known as lue 02:14 porter235 joined 02:18 f00li5h left 02:19 porter235 left
dalek ecza: 2e201e7 | sorear++ | / (3 files):
Actually implement variable and attribute type constraining
02:44
02:44 gdey_ left, f00li5h joined
sorear std: 2 R.= pred; 02:47
p6eval std 4608239: OUTPUT«ok 00:01 119m␤»
diakopter std: 2 RZ.= 1; 02:54
p6eval std 4608239: OUTPUT«ok 00:01 119m␤»
sorear std: 1 + 2 R:foo 02:57
p6eval std 4608239: OUTPUT«===SORRY!===␤Bogus term at /tmp/svr4UE2FMS line 1 (EOF):␤------> 1 + 2 R:foo⏏<EOL>␤Parse failed␤FAILED 00:01 120m␤»
sorear std: 1 + 2 >>:foo
p6eval std 4608239: OUTPUT«===SORRY!===␤Missing << or >> at /tmp/zOEVWzNXAN line 1:␤------> 1 + 2 >>:foo⏏<EOL>␤ expecting any of:␤ coloncircumfix␤ infix_circumfix_meta_operator␤Parse failed␤FAILED 00:01 119m␤»
sorear std: 1 + 2 :foo=
p6eval std 4608239: OUTPUT«===SORRY!===␤Bogus term at /tmp/iOL9YN5x4R line 1 (EOF):␤------> 1 + 2 :foo=⏏<EOL>␤Parse failed␤FAILED 00:01 120m␤»
sorear std: [:foo] 1, 2, 3
p6eval std 4608239: OUTPUT«ok 00:01 120m␤»
entel woah 03:00
that is ugly
TimToady I don't mind if the semantic analysis blows most of those out of the water, with prejudice... 03:01
03:02 f00li5h left
takadonet1 pyrimidine: ping 03:02
03:17 f00li5h joined 03:22 f00li5h left 03:43 gdey_ joined 03:45 leprevost left 03:46 gdey_ left, gdey_ joined 03:55 rdesfo joined 03:56 rdesfo left 04:07 Patterner left, Psyche^ joined, Psyche^ is now known as Patterner 04:11 ymasory left 04:15 porter235 joined 04:19 porter235 left 04:23 Su-Shee_ joined 04:25 Su-Shee left 04:29 cognominal joined 04:38 satyavvd joined 04:39 satyavvd left 04:46 nymacro joined 04:50 c1sung left 04:57 satyavvd joined 04:59 orafu left, orafu joined, am0c^ joined 05:01 takadonet1 left 05:03 c1sung joined 05:35 am0c^ left 05:42 cjk101010 joined 05:52 c1sung left 05:55 stepnem left 05:58 stepnem joined 06:00 orafu left 06:01 orafu joined 06:08 kaare_ joined 06:15 porter235 joined 06:19 porter235 left 06:29 am0c joined
mberends yawn. waking up in the middle of the night should be put to good use. 06:38
06:40 noganex_ is now known as noganex
dalek kudo: 3680ac3 | martin++ | tools/test_summary.pl:
[tools/test_summary.pl] switch to grep, improve workarounds for planless tests

The script partly failed on ack-challenged systems, also on those that name it ack-grep, such as Debian/Ubuntu. Now grep does that work more portably.
The script also jumped through some convoluted hoops attempting to calculate the total number of tests planned per script and per Synopsis - one of the drawbacks of planless testing. It now jumps through the hoops in a less convoluted way.
Please give 'time perl tools/test_summary.pl' a try when you would otherwise have run 'make spectest' - it takes the same amount of time and gives a more detailed output. As an added bonus, each test is benchmarked in microseconds with the results accumulating in 'docs/test_summary.times'.
06:40
mberends hmm, must fix my git user name locally again (lost during fresh OS installation) 06:43
06:44 c0tt0 left, orafu left 06:45 tyatpi_ left 06:46 tyatpi_ joined
woldrich If I want to buy a book on Perl6, what would I buy? 06:58
The Perl6 Essentials book is quite old
sorear is amazed that Perl 6 books exist at *all* 07:01
hello mberends
Tene woldrich: go to a copy shop and print off your own copy of github.com/perl6/book 07:02
woldrich I think that'll be quite expensive though
Tene woldrich: or wait until that is finished and published at some future time.
mberends hi sorear, I wish you were hear (at the hackthon)
Tene woldrich: No, it shouldn't be. In the past when I've done that, it's been around $10-$15 to get it printed and spiral bound 07:03
woldrich I once printed out a Perl5 book on my printer at home. I didnt realize it was > 800 pages. It took a while...
sorear generally agrees with merlyn that mass printing would be premature
07:03 baest left 07:04 justatheory left
sorear mberends: me too! 07:04
07:04 justatheory joined
woldrich Is merlyn active in the perl6 community? 07:04
Tene www.fedex.com/us/office/ seems to now have a "book printing" option, claiming to start around $13, and that's where I've gone in the past (used to be kinkos, I guess)
sorear he appears from time to time
woldrich I just found this; www.amazon.com/Perl-Another-Virtual...amp;sr=1-1 07:05
Tene sorear: there was a book published about parrot, iirc...
sorear Tene: when I found out about it I laughed 07:06
Tene :D
sorear parrot has been completely redesigned about three times since then
07:08 justatheory left, lopaway is now known as lopnor
sorear is having difficulty figuring out how to implement $foo .= bar; 07:08
TiMBuS whats the perl6 version of getline 07:09
sorear $fh.get
rakudo: say $*IN.get
TiMBuS thanks. i mindblanked and irc is faster than google
p6eval rakudo 7fb634: OUTPUT«Land der Berge, Land am Strome,␤»
TiMBuS sometimes
and, .lines is lazy correct? 07:10
07:12 lopnor is now known as lopaway
TiMBuS wait no that wouldnt be the case.. 07:13
moritz_ .lines is lazy, yes 07:14
sorear usually, the arguments to an infix operator are things that evaluate to a value 07:15
the right argument of .= is a method name
moritz_ iirc it's special-cased in the grammar and in the actions 07:16
sorear what actions? :)
07:17 Mowah joined, baest joined
moritz_ semantic translation pass 07:21
sorear this is for niecza 07:22
there is no semantic translation for .= yet
moritz_ well, you need one 07:24
dalek ecza: 8b27c3b | sorear++ | / (2 files):
Add support for $x.=foo and $x .= foo
07:27
sorear it does not please me that these two code paths are almost entirely independant in STD 07:28
sorear -> sleep
TiMBuS rakudo: my @l := $*IN.lines; say @l[0]; say $*IN.get; say @l[0]; 07:29
p6eval rakudo 7fb634: OUTPUT«Land der Berge, Land am Strome,␤Land der Äcker, Land der Dome,␤Land der Berge, Land am Strome,␤»
TiMBuS i see..
rakudo: my @l := $*IN.lines; say @l[0]; say $*IN.get; say @l[1]; 07:30
p6eval rakudo 7fb634: OUTPUT«Land der Berge, Land am Strome,␤Land der Äcker, Land der Dome,␤Land der Hämmer, zukunftsreich!␤»
TiMBuS oh boy..
07:35 fhelmberger joined, masak joined
masak morning, zebras. 07:35
07:35 fhelmberger left 07:36 fhelmberger joined
sorear masak: *drive by hello* 07:36
just finished my prereport... leaving IRC soon 07:37
masak sorear++
(for prereporting, not for leaving) :)
mberends *chghh*oedemor*chghh*en masak
masak :P
mberends: that's not you in the shower, then... 07:38
mberends was in the bath tbh
masak ooh
I'll just wait here in this comfortable bed then, for the hot water reserve to rebuild itself... :) 07:40
masak digs back into the p5 post
mberends 40°C and building 07:41
masak I don't need any hotter than that, actually... :)
mberends likes it HOT
masak hears jnthn stirring, and dashes for the shower 07:42
mberends impossible, it's before 9am locally and he has no $dayjob today! 07:43
tadzik o/ 07:51
masak mberends: I realized that after the dashing... 07:57
but it was a good way to motivate myself out of the warm, cozy bed. :)
tadzik: \o
mberends o/ tadzik, you is haz a good sleep? 07:59
masak 'is haz' being the perfect participle in lol... 08:00
mberends one of its many uses 08:02
masak "Im shure I is haz the toy mouse sumwhere..." 08:03
mberends s/sumwhere/sumware[z]/ 08:04
masak oh right 08:05
mberends++ # lolgrammarian
mberends nah, just a n00b
tadzik mberends: notmuch, but notbad :) 08:08
masak I feel like a n00b, too. the first thing that happened when I got down here is that I fell into the liquorice trap...
I got out, but just barely. 08:09
mberends oops
masak it was ironic because what I really was after was the juice... :) 08:10
mberends
.oO( iron liquorice juice )
08:11
sound like the name of a '70s psychedelic rock album 08:12
masak :D 08:13
08:15 porter235 joined
mberends omg jnthn++ is in the shower! 08:16
masak all morning: live reporting from the Berends manor. 08:17
stay tuned for more.
mberends should we create an @vught account on twitter?
08:18 shi joined
masak if this becomes a recurrent thing, sure. 08:18
mberends hopefully the hackathon becomes a recurrent thing, not sure if it can though 08:20
masak no... :/
mberends: we should invite you up to Lund soonish.
and make you wonderful dals and home-made pizzas \o/ 08:21
mberends masak: no need, I autovivify invitations as the opportunities arise :) 08:22
08:22 porter235 left
masak oh, by 'we should invite' I really meant 'you should come' :P 08:22
mberends :)
08:24 orafu joined
mathw I think that was your invitation :) 08:32
masak $invitation.is-open = True; 08:33
08:35 Trashlord left, Su-Shee_ is now known as Su-Shee
mberends $self.accepts($invitation); 08:44
masak $inviter.perform-gesture('\o/') 08:45
;
08:46 am0c left
mathw $observer.snort($milk, :diversion($nose.interior)); 08:46
masak whoa, I didn't know we were using the Observer pattern... 08:47
also, I think we're breaking Demeter's law with that $nose variable... :P
jnthn oh morning... 08:48
masak jnthn! \o/
jnthn I wish you didn't make me being in the shower seem like a surprising thing :P
masak sounds like you didn't backlog far enough... :) 08:49
mathw oh hai jnthn
TiMBuS it would surprise me if you were in my shower D:
mathw it'd surprise you if you were in mine
it likes to surprise people with sudden temperature fluctuations 08:50
jnthn oh fluc...
mathw and sometimes a cat peering around the curtain
masak 'fluc' sounds like a French fizzy drink.
mberends jnthn: it wasn't sufficiently explained that the $time-of-morning was the surprising part. 08:51
jnthn oh, I see that now... :) 08:52
masak rakudo: say (my %).push("foo" => 2, "foo" => 5).perl
p6eval rakudo 3680ac: OUTPUT«{"foo" => [2, 5]}␤»
jnthn Mmm. There is a tempting pack of stroopwafels sat right next to me. 08:53
moritz_ wow, (my %).push is pretty cool :-)
masak I'm reviewing p5 solutions :)
moritz_ of course you could have used {}.push too :-)
masak hm, true. 08:54
moritz_ but the elitism doesn't shine through {} quite as clearly as through (my %)
masak :D
the contestant doesn't do either, so it's fine.
moritz_ masak++ # -n 08:57
masak++ # -p
masak Rakudo is now NP-complete \o/
tadzik immediately saw the potential for this technique being abused for other options... 08:58
I say let's abuse it till it bites us ;)
mathw jnthn: what are stroopwafels? 08:59
are they things I should know about?
masak mathw: syrup waffles.
moritz_ no! Then more will remain for me
masak mathw: and yes.
moritz_ tadzik: you have table tennis classes? (backlogging...) now I' jealous
masak mathw: they're a Dutch specialty.
jnthn They're amazing.
masak they're probably very unhealthy. 09:00
jdhore I think this week i'm going to do all the local stuff that's supposed to be done for a release...Just so i can make sure i know how to do everything so (if there's nothing broken in Rakudo), the release on the 17th will be super-smooth sailing
masak jdhore: that's a good idea.
mathw hmm
jdhore :D
jnthn puts one into his mouth...MMMMMMM
mathw waffles are something we've never really adopted over here
moritz_ jdhore: you can also fork rakudo on github, and do all of the release, except sending the email
mathw other than the occasionally-found belgian waffles served as dessert
jdhore Also, Waffles FTW 09:01
moritz_ had waffles on Sunday and yesterday for breakfast
jdhore moritz_, Well, I'll prolly rm my tree and do a clean clone on release day. I'm anal like that.
mathw I think the first time I had waffles was in Germany actually 09:02
it was supposed to be Kaffee und Kuchen, but it was Waffeln und Orangensaft instead :)
moritz_ :-) 09:03
"Kafee und Kuchen" is more like a label like "tea time", and doesn't necessarily refer to what is actually offered (though it often does)
mathw I didn't complain 09:04
I'm not much of a fan of Kafee
moritz_ (sorry, Kaffee. Can't spell in my native language either :-) 09:05
tadzik moritz_: that's actually my PE classes 09:06
used to be gym and the swimming pool, you can choose what you want
I should invite you to Poland one day 09:07
mathw I did think that was a bit odd :)
tadzik although there are not many nice Perl events here
moritz_ tadzik: I wish I had that option back then; I've always been doing in it my copious free time, and was rather bad in other PE subjects
tadzik schade 09:08
09:13 nymacro left, nymacro joined
mathw swimming was the only thing in PE I ever enjoyed 09:14
my teacher even noticed
09:15 mtk left
moritz_ for me swimming was always "trying not to drown" :-) 09:15
09:22 _twitch joined 09:23 mtk joined
moritz_ jnthn: gist.github.com/860081 nqp build fail in ctmo branch 09:27
huh, getting the same error in master 09:30
jnthn: what parrot do you use for building nqp? 09:31
jnthn moritz_: Just using the one in the current parrot revision file, afaik 09:37
09:37 dakkar joined
jnthn moritz_: oh ouch 09:38
oh wait, I think I found it. 09:39
moritz_ jnthn: once my build works again, I'd like to bump PARROT_REVISION and patch nqp's Configure.pl to explicitly use the generational GC. Would that be OK for you? 09:40
jnthn +1 09:41
moritz_ I don't want to interrupt your productivity by cleaning up new parrot mess... :-)
jnthn Do it in master
moritz_ sure
jnthn I'll merge into ctmo
masak I've always like swimming, too. I took extra long to learn during the mandatory swimming classes in grade school, just because I liked it. :)
jnthn: "ctmo"? Chief Technology Marketing Officer? 09:42
moritz_ CerializaTion of Meta Objects, obviously :-) 09:43
jnthn Compile time Meta Objects :P
masak it rolls off the tongue nicely... "ctmo"...
"Don't worry, this is my Cuban Terrorist Modus Operandi." 09:44
dalek p/ctmo: 5cd263b | jonathan++ | src/pmc/nqplexinfo.pmc:
Remove an assertion check that is no longer valid. Guess they must not get checked on my platform, somehow. moritz++ for noticing.
09:45
jnthn moritz_: ^^ and feel free to cherry pick into master
moritz_ jnthn: will do (and test) 09:47
09:47 jmm_ joined
jmm_ hello guys ! 09:47
masak hello jmm_! 09:48
09:48 Rotwang joined
moritz_ hopes we have girls too 09:48
masak moritz_: I find it slightly over-PC to claim that the generic 'guys' leaves out women... ;)
it's like objecting to the phrase "A small step for Man..." 09:49
mberends rakudo: my $i=3; sub be() { (("night","the","in","strangers")[$i--]~" ").print; }; do be; do be; do be; do be # do
p6eval rakudo 3680ac: OUTPUT«strangers in the night »
huf is on average a middling step for woman
yeah
masak Douglas Hofstadter thinks it's a silent contributor to non-equality, though. he has a fascinating essay wherein he converts the usual gender pronouns into ones pertaining to race. 09:51
it's in "Metamagical Themas"
09:55 woosley1 joined 09:56 woosley left 09:59 kfo_ joined
mathw I do feel most languages miss out on third-person gender-neutral pronouns 09:59
masak Finnish, Estonian and Ido being nice exceptions.
mathw and Lojban :) 10:00
masak of course :P
huf and hungarian :)
masak oh yes.
Finnish, Estonian and Hungarian go together :)
mathw excellent
huf yep
mathw actual natural languages too
masak Mandarin is a funny middle-ground example. their 3p pronouns *sound* the same but are written differently.
mathw in English we seem to end up using 'they' which is rather unsatisfactory
huf there's a downside tho, you lose the disambiguating power of he/she
masak those stupid missionaries introduced the female 3p character. 10:01
mathw huf: does Hungarian not have gender-specific ones as well?
huf nope
mathw interesting
dalek p/ctmo: 4b97ed3 | jonathan++ | / (7 files):
Update bootstrap with setting loading in the compiled code.
mathw Lojban doesn't either, but I'd not have expected to find that in a natural language
moritz_ $ ./nqp t/nqp/05-comments.t 10:02
"load_bytecode" couldn't find file 'NQPCORE.setting.pbc'
huf i'm just glad english doesnt take the gender thing seriously
moritz_ jnthn: that seems to be happening for all test files (in master)
jnthn moritz_: huh
Does it happen in the ctmo branch?
moritz_ that was master, but I'll try ctmo too 10:03
masak "Citrus Tangerine Melon Orange"
jnthn moritz_: Also, do you have an NQPCORE.setting.pbc file?
huf for a second there i thought you had a branch called "cmot"
moritz_ yep, in src/stage{0,1,2}/
jnthn Oh, but it shoulda been copied too 10:04
to the root dir
moritz_ I'll double-check that after I tried ctmo
Tene jnthn: No 6model for me tonight; got stuck with work again :(
dalek p/ctmo: f313172 | jonathan++ | build/Makefile.in:
Makefile.in fix; moritz++ for reporting.
10:06
jnthn Tene: Aww. I didn't get tuits for writng the repr for you yesterday either...so many things to hack on! 10:07
moritz_: See f313172. Bet it's that.
moritz_ tries with cherry-picking 10:09
masak <TimToady> Nil is the absence of an expected value 10:11
with this reasoning, shouldn't hash misses yield a Nil value?
rakudo: my %h; say %h<nonexistent>.WHAT
p6eval rakudo 3680ac: OUTPUT«Any()␤»
masak then again, the hashes are typed as having Any values by default... 10:12
dalek p: f15a5ef | jonathan++ | src/pmc/nqplexinfo.pmc:
Remove an assertion check that is no longer valid. Guess they must not get checked on my platform, somehow. moritz++ for noticing.
10:14
p: 95092bf | moritz++ | build/Makefile.in:
fix Makefile.in by jnthn++ (automatic cherry-pick of f313172 failed, sorry)
jnthn moritz_: Did it help? 10:16
moritz_ jnthn: ja 10:17
build fine, 'make test' same as usual
10:18 porter235 joined
jnthn moritz_: As in, couple of fails? 10:20
tadzik mberends++ # do be do be do be do 10:21
10:27 porter235 left, agentzh joined
moritz_ jnthn: as in, 02-modules.t fails 10:28
jnthn: and the rest is clean
(master)
tadzik having trouble building the Book: wklej.org/id/488962/ 10:31
can anyone help?
moritz_ build succeeeds here 10:33
I also get the "UsingPerl6.a4.d: No such file or directory
message 10:34
tadzik: is that failure repeatable after a 'make clean'? 10:35
tadzik moritz_: aye. And git clean 10:38
otoh, I'm not sure if I have all the dependencies, I was hoping make will give me a hint about what's missing 10:39
10:40 jerome joined
Tene finally sleeps. 10:41
moritz_ tadzik: it will not 10:43
10:45 Rotwang left
tadzik darn 10:45
moritz_ go through the README, check 'em all 10:46
tadzik they have different names on my distro, that's the issue
I'll look carefully through it
TiMBuS ok i finally got off my lazy ass (then sat back down on it) and then wrote this: gist.github.com/860141 10:59
it is a more easier IO::Socket::INET
is this ok or did i mess it up 11:00
moritz_ TiMBuS: does it work? both with IPv4 and IPv6?
moritz_ is really not up to judging socket related work
tadzik submethod BUILD { callsame; }
does it work as I expect it to?
moritz_ tadzik: huh?
TiMBuS dunno about ipv6 because parrot
tadzik, it should 11:01
moritz_ tadzik: what do you expect it to do?
it's not a multi
and the parent's submethod is not visible to you
where should it redispatch to?
tadzik oh, it does!
it's the AFTERPARTY I was looking for
TiMBuS if you dont callsame you dont get default values 11:02
tadzik TiMBuS++
moritz_ BUT WHERE DOES IT DISPATCH TO?
TiMBuS Mu
which has BUILD
tadzik yeah. Actually, I was looking for something identical to Moose's BUILD
dalek odel: 8c5e6a6 | jonathan++ | dotnet/runtime/Rakudo.Net.sln:
Update to VS 2010.
odel: 9bc822e | jonathan++ | dt-docs.txt:
Add ducktables docs.
odel: 1e5ee77 | jonathan++ | dotnet/runtime/Metamodel/SharedTable.cs:
32 bits should be enough for anyone.
odel: 26839e7 | jonathan++ | dotnet/runtime/Metamodel/SharedTable.cs:
Implement ducktables.
odel: 5912064 | jonathan++ | java/compiler/Makefile:
Fix make test for Windows.
moritz_ that seems so wrong
tadzik 32 bits should be enough for anyone. :)
jmm_ lol. 11:03
moritz_ (the BUILD redispatch, I mean)
tadzik moritz_: build?
moritz_ tadzik: yes
TiMBuS maybe rakudo does BUILD wrong? im not sure
11:03 tzhs joined
TiMBuS the spec is not solid enough 11:03
moritz_ agreed
TiMBuS i thiiink BUILDALL is meant to call all the composed classes BUILDs? but in rakudo it doesnt, it needs to chain like javas super() 11:05
tadzik yay, I can build the book 11:06
masak if I change $*OUT.output-line-separator, what would C<say ""> print?
moritz_ has no idea, and is scared of the answer
masak oh, S32/IO actually specs it. 11:07
11:07 ashleydev joined
masak &say is affected. 11:07
S32/IO:1398
in Rakudo, the "\n" is currently hard-coded in &say 11:08
but there's no way to set $*OUT.output-line-separator, so it doesn't matter much.
tadzik wklej.org/id/488979/ # Perlfect! 11:10
TiMBuS masak, according to this thing here *points at parrots test dir* my class should work for ipv6 11:11
masak tadzik: woot!
TiMBuS: sorry, I feel a lack of context in what you just said...
tadzik MAINmazing! 11:12
masak SUBsetOPTIMAL! oh wait.
TiMBuS masak, the IO::Socket::INET class i gisted before. it shoudl work with ipv6
waaait a second
that was moritz_
masak ah.
moritz_ \o/ 11:13
TiMBuS: care to write it up as a patch and RT it? (or pull request)
TiMBuS i have confused you by getting you both confused
moritz_ I'll go to lunch rather soonish, and I'd hate it if it got lost somewhere
TiMBuS i guess i can do that
tadzik if I have an $a = "foo", can I run sub foo like $a->() or somehow, w/o eval? 11:16
moritz_ tadzik: subroutine calling by name is NYI 11:17
it should work as ::('&foo').() or so
masak niecza: sub foo { say "OH HAI" }; foo; ::('&foo').() 11:18
tadzik oh, it's too ugly to use anyway :)
p6eval niecza v3-59-g8b27c3b: OUTPUT«Unhandled exception: JSON writer encountered value of type StringLiteral␤ at /home/p6eval/niecza/boot/lib/JSYNC.pm6 line 0 (JSYNC to-json @ 0)␤ at /home/p6eval/niecza/src/NAMOutput.pm6 line 15 (NAMOutput NAMOutput.run @ 5)␤ at
../home/p6eval/niecza/src/NieczaBackendDotnet.pm6 line…
masak tadzik: ugly both on the surface and inside :)
moritz_ tadzik: maybe a pir::findlex or so :-)
masak eeeew!
tadzik :P 11:19
moritz_ rakudo: sub foo { say "OH PIR" }; (Q:PIR { %r = find_lex '&foo' }).()
p6eval rakudo 3680ac: OUTPUT«OH PIR␤»
masak o.O
moritz_ yes, I have an ugly mind
masak moritz_: I feel tempted to withdraw some karma from you right now... :P 11:20
moritz_ to my credit I have avoided an eval
masak *lol*
moritz_ rakudo: sub foo { say "OH PIR" }; callframe.my<&foo>.() 11:21
p6eval rakudo 3680ac: OUTPUT«OH PIR␤»
moritz_ better?
masak lots.
moritz_ (though it has the disadvantage not to look in outer frames)
masak maybe lexical lookup should be an exposed action in the language. 11:22
moritz_ it is
through ::() 11:23
masak right.
moritz_ and the MY psoeudopackage
masak I just remembered, many years ago, someone (I think it was moritz_) karma-punished me for doing this on the channel: 11:26
pugs: my $lang = "perl"; $lang++ for ^45565; say $lang 11:27
p6eval pugs: OUTPUT«ruby␤»
masak ;)
flussence XD
masak with a slightly lower value of 45565, you can get 'pyth' as well. 11:28
quite a bit lower, actually.
tadzik oh wtf is that? :D
masak still a contentious topic, I see. :P 11:29
tadzik oh, I see 11:30
masak oh, you were wondering how it worked? 11:31
moritz_ irclog.perlgeek.de/perl6/2007-07-17#i_64556 earliest mention
tadzik aye
I underestimated then smartness of Str++ :)
masak yep, there's the -- :)
wow, that's 3.5 years ago. 11:32
tadzik irclog.perlgeek.de/perl6/2007-07-17#i_64543 I think you mean here
masak you see that it lead to some interesting feature discussion, too ;)
moritz_ masak: funny thing is, in 2009-11 you mentioned that as the first time you got negative karma on #perl6
it seems to have had a lasting impression 11:33
tadzik rakudo: my $lang = "perl"; $lang++ for ^6762; say $lang # I like this one too
p6eval rakudo 3680ac: OUTPUT«porn␤»
masak moritz_: hah. I wasn't aware I had mentioned it before. :) 11:34
yes, it's definitely one of my early memories of the channel. I guess I take negative karma seriously. :)
flussence hm, .comb is O(n²) for input size... I thought that was fixed a while ago 11:35
tadzik huh, I think there's something wrong about the book's build system
masak flussence: that's... awful. :(
tadzik wklej.org/id/488990/txt/
dalek odel: 215ffc3 | jonathan++ | java/compiler/ (2 files):
Add Jasmin JAR and license.
11:36
11:38 satyavvd left 11:39 donri joined
tadzik is INIT nyi? 11:43
masak ...in...?
tadzik in Rakudo, sorry
masak nyi
tadzik shame
donri So I read 15 chapters of MoR yesterday 11:44
masak :D
tadzik :) 11:49
rakudo: class A::B {}; class A {} # somebody please fix this :( 11:50
p6eval rakudo 3680ac: ( no output )
tadzik ...oh?
masak rakudo: class A::B {}; class A {}; say "alive"
p6eval rakudo 3680ac: OUTPUT«alive␤»
masak probably only bites you if you have .pm files
tadzik yeah 11:51
well, I guess I'll just temporarily rename Panda to Zebra :>
masak and you can workaround it by doing class A { ... } before loading the .pm file with A::B in it.
tadzik hmm
I can put the uses in the class :) 11:53
masak or that.
"This class is use-ful."
11:56 jferrero joined
tadzik yay, I quite like the code Pies/Panda has become 11:57
unusual for the module managers I write :)
and panda takes only 4 seconds to start 11:58
dalek odel: 7a3e9da | jonathan++ | java/compiler/ (4 files):
A few little bits of infrastructure to get us started with making JASM, plus a stubbed out JST2JASM that'll need lots of filling out.
12:01
12:18 [Coke] left 12:23 porter235 joined
mberends tadzik++ # Śliwka Nałęczowska from Czekoladowa Solidarność # I always thought Solidarity was a political party, now I know they make superb chocolates 12:26
12:27 porter235 left
masak ooh, imagine forming a political party based on the solidarity of chocolate! 12:27
I think that might be a big success, if planned right. 12:28
mberends no, it would come to a sticky end
masak :P
12:33 ashleydev left, tyatpi_ left, fisted left, xinming left, PerlJam left 12:34 rhr left, Sarten-X left, kst left, Eevee left, _ilbot left, sjn left, rokoteko left 12:36 _ilbot joined, PerlJam joined 12:38 fisted joined 12:39 ashleydev joined, tyatpi_ joined, xinming joined, rhr joined, Sarten-X joined, kst joined, Eevee joined, sjn joined, rokoteko joined 12:40 cjk101010 left 12:41 coldhead left 12:54 f00li5h joined
dalek p/ctmo: f5e0d27 | jonathan++ | / (4 files):
Break NQP meta-objects out into a separate file. This means that it won't be needed to load full NQP grammar/actions/compiler just to run pre-compiled output. This should also mean that an NQP pre-compiled program with classes won't have to pre-load anything.
12:55
p/ctmo: c8f8081 | jonathan++ | / (7 files):
Push break-out of the meta-objects into the bootstrap.
13:14 drbean left 13:16 drbean joined, mtk left 13:17 mtk joined 13:25 jferrero left 13:27 _twitch left 13:31 agentzh left
tadzik mberends, masak: that's actually a fun fact about these chocolates :) They advertise themselves (the company, not the chocolates) as the "existing for half a century" company, probably not to be mistaken with the political party :) 13:32
I'm glad you like them, and I'm a bit jelly too :> 13:33
masak we're all a bit jelly :P
tadzik ;) 13:34
I have a feeling that English is a pun-oriented language
masak well, you know. optimize for pun.
tadzik . o O ( puns in Perl: my char $mander; )
13:36 orafu left 13:37 orafu joined
donri say .WHAT 13:40
flussence Moo
tadzik rakudo: given "what" { .say; .WHAT } 13:41
p6eval rakudo 3680ac: OUTPUT«what␤»
flussence rakudo: WHAT <you>.say ?????!!!!! 13:43
p6eval rakudo 3680ac: OUTPUT«you␤Stub code executed in <anon> at line 22:/tmp/WgFRrZbZMV␤Null PMC access in type()␤ in 'WHAT' at line 786:CORE.setting␤ in main program body at line 22:/tmp/WgFRrZbZMV␤»
donri rakudo: given class FourtyTwo {}.new { say .WHAT }
p6eval rakudo 3680ac: OUTPUT«===SORRY!===␤Missing block at line 22, near ".new { say"␤»
donri rakudo: given class FourtyTwo {}.new: { say .WHAT } 13:44
p6eval rakudo 3680ac: OUTPUT«===SORRY!===␤Missing block at line 22, near ".new: { sa"␤»
donri rakudo: given class FourtyTwo {}.new() { say .WHAT }
p6eval rakudo 3680ac: OUTPUT«===SORRY!===␤Missing block at line 22, near ".new() { s"␤»
donri rakudo: given (class FourtyTwo {}).new() { say .WHAT }
p6eval rakudo 3680ac: OUTPUT«too few positional arguments: 1 passed, 2 (or more) expected␤ in main program body at line 1␤»
tadzik *.WHAT
or not
13:45 frettled joined 13:47 edenc joined
donri rakudo: say .WHAT given "answer" but { method WHAT { 42 } } 13:47
p6eval rakudo 3680ac: OUTPUT«Useless declaration of has-scoped Method in a module; add our or my to install it in the lexpad or namespace␤()␤»
donri rakudo: say .WHAT given "answer" but method WHAT { 42 } 13:48
p6eval rakudo 3680ac: OUTPUT«Useless declaration of has-scoped Method in a module; add our or my to install it in the lexpad or namespace␤()␤»
donri i forgot, hows that work
moritz_ say .WHAT given "answer" but role { method WHAT { 42 } }
rakudo: say .WHAT given "answer" but role { method WHAT { 42 } }
p6eval rakudo 3680ac: OUTPUT«42␤»
donri :D
dalek p/ctmo: 01e36d5 | jonathan++ | / (4 files):
Start moving NQPMu and the native types into the setting. Need to do a temporary rename to avoid conflicts with the version in the pre-move compiler.
13:50
p/ctmo: 0af1138 | jonathan++ | src/stage0/ (7 files):
Update the bootstrap to excise the old NQPMu that was in with the meta-objects file.
p/ctmo: 99d0cef | jonathan++ | src/ (2 files):
Revert the temporary renaming done while moving NQPMu.
p/ctmo: decd296 | jonathan++ | src/stage0/ (6 files):
Update bootstrap again to eliminate rename hack while moving NQPMu. This means it's now in the setting where it belongs, rather than part of the meta-objects library. It also means that no meta-object is used in the same compilation unit as it is defined, which unblocks various other things.
13:52 kaare_ left
jmm_ what do you guys use in vim for perl6 ? for like syntax highligh or code completion . 13:54
Su-Shee the perl6 syntax file.
donri .g perl6.vim
phenny donri: m19s28.dyndns.org/iblech/stuff/pugs.../perl6.vim
donri .g perl6.vim github
phenny donri: github.com/petdance/vim-perl/pull/41
Su-Shee that one it is. 13:55
jmm_ woot :)
do you have code completion too ?
Su-Shee err.. no. ;)
unless it works with ctrl-p anyways. try it.
13:56 frodwith joined, i221077 joined
flussence doesn't work with hyphenated identifiers though 13:56
13:56 nymacro left
jmm_ allright ! 13:56
donri set isi+=- 13:57
moritz_ I think literal++ commented that it's not that easy
donri isk+=- too? :) 13:58
13:58 slavik1 joined
moritz_ dunno 13:59
just try it
flussence wfm
jmm_ umm color highlight works fine, but completion just for keywords. 14:05
tadzik dois this isi/isk fix the fancy-identifiers? 14:06
oh, I'm suprised there's a completion for keywords :P
jmm_ I don't understand what you said :\ 14:07
it would be nice to have completion on object's method.
donri that's impossible to get perfect with dynamic languages without executing the code
jmm_ too bad :\ 14:08
I've seen completion in netbeans editor( for java ) , it was really nice. 14:09
14:09 amkrankruleuen joined
donri yes, java is not as dynamic :) 14:09
you can do some omnicompletion for dynamic languages, but as i said you can't expect it to work perfectly in all situations
i221077 Perl6 is more static then other dynamic languages so it should allow decent completion 14:11
donri oh?
moritz_ i221077: that's a bold overgeneralization
14:11 i221077 is now known as pmurias
moritz_ i221077: Perl 6 allows type annotations, but doesn't force you to write any 14:11
donri even if there's truth to that it'd still be rather complicated to do without execution 14:12
moritz_ (gradual typing)
donri moritz_: it's not really just about static types though
pmurias moritz_: but a lot of stuff is lexical, so it's easier to infer things
donri e.g. you can do monkey patching
moritz_ so it only helps you if actually use these types
donri you can do lexically scoped imports etc etc ad nausium :D
moritz_ pmurias: at compile time, yes; with pure syntactic analysis, not so easily 14:13
flussence std is pretty good at that though
moritz_ at providing lists of available methods? that's new to me
14:13 tyatpi_ left
donri perl6.vim is already said to be mad slow for larger files 14:13
tadzik it'll aye 14:14
flussence it's clever enough to figure out when a thing has been declared and when it hasn't...
std: sub xyz { }; xyz
p6eval std 4608239: OUTPUT«ok 00:01 118m␤»
flussence std: sub xyqqqqqqz { }; xyz
p6eval std 4608239: OUTPUT«===SORRY!===␤Undeclared routine:␤ 'xyz' used at line 1␤Check failed␤FAILED 00:01 118m␤»
donri hm though i wonder if you could hook a proper non-vimscript parser to a vim ftype
flussence it must store a list of seen methods *somewhere*...
pmurias moritz_: why are we limited to pure syntactic analysis? 14:15
donri std: eval("sub xyz {}"); xyz
p6eval std 4608239: OUTPUT«===SORRY!===␤Undeclared routine:␤ 'xyz' used at line 1␤Check failed␤FAILED 00:01 119m␤»
14:15 tyatpi_ joined
moritz_ pmurias: because you don't want to write a full compiler in vimscript :-) 14:16
donri in the end eval can always mess anything up :P
moritz_ no
for example eval can't install new lexicals
donri when I said dynamic languages are difficult to analyze from just syntax, i probably meant meta programming
pmurias moritz_: i don't want to write anything in vimscript
donri moritz_: ok so bad example but i bet you can do eval-like meta programming 14:17
14:17 plobsing left
flussence
.oO( vimscript needs a decent framework like html has, so people don't have to write it manually )
14:17
moritz_ pmurias: vim autocompletion was our current topic. If you don't talk about the current topic, please let me know so that I can context-switch
donri .^add_method(<foo bar>.join("-"), ...)
try get a completer to understand that
tadzik imperlsibble :) 14:18
donri :D
worse, whether that code even runs might depend on conditionals etc etc
pmurias moritz_: can't vim call external processes?
moritz_ pmurias: it can; but then you'd have to reparse the code for every autocompletion 14:19
flussence the traditional way of doing it is to make ctags do all the parsing work and vim just reads the keyword list that outputs
donri yea, that works fine for statically defined terms 14:20
which is usually good enough
i wish perl6 had introspectable comments, like python docstrings 14:21
i suppose you can do it with roles, not as sugary syntactically though 14:22
flussence Perl 6 does, it's just that `perl6` doesn't
donri oh? :P
flussence #= syntax
donri oh, i thought that was just a pge thing
is that supposed to, eventually, work for say, class definitions? 14:23
moritz_ donri: S26 elaborates on that
14:24 porter235 joined
donri thanks 14:24
moritz_ bemoans the lack of new MoR chapters
donri I read 15 chapters yesterday :) 14:25
haha, POD and Pod not the same thing 14:26
i suppose it's like how 'regex' in perl6 ≠ 'regular expressions' 14:27
moritz_ POD = the Perl 5 thing
Pod = the Perl 6 thing
donri yea, reading s26
tadzik perl's odd documentation 14:31
flussence is there a Pod grammar yet?
14:32 porter235 left 14:34 woosley1 left 14:35 tyatpi_ left
pmurias moritz_: i don't want to write anything in vimscripttadzik> perl's odd documentation 14:36
15:31 < flussence> is there a Pod grammar yet?
sorry
15:32 -!- porter235 [~porter235@CPE001a704e2936-CM001ac315290c.cpe.net.cable.rogers.com] has quit [Ping timeout: 246 seconds]
moritz_: what's MoR?
masak pmurias: "Methods of Rationality" 14:37
phenny: google "Methods of Rationality"
!google "Methods of Rationality"
.google "Methods of Rationality"
oh well. worth a shot :)
moritz_ .g "Methods of Rationality"
phenny moritz_: www.fanfiction.net/s/5782108/1/Harr...ationality
masak \o/ 14:38
14:50 risou joined
masak people! 14:55
strangelyconsistent.org/blog/p5-fin...-substring
moritz_ finally! 14:56
masak sorry about the delay :)
moritz_ I can't understand why matthias' solution is so fast 15:01
15:02 drbean left
moritz_ it uses lots of idioms that are slow in rakudo 15:02
like gather/take
15:02 drbean joined
moritz_ and [~], which is much slower than join '' 15:02
I can't imagine that iteration over the Z result being fast either 15:03
oh.
masak: I think the 'next unless %offsetB.exists: $chr;
very much optimizes for the case of no common substring
masak we have some theories here.
or, well, jnthn++ does. 15:04
moritz_ (which to me seems rather artifically constructed for long strings)
do tell
masak for loops don't have a sink mode right now.
moritz_ one thing it does well: few scopes
ie statement modifiers instead of statement + block
masak so while fox's solution with X is cool, it's definitely a killer when it comes to generating garbage for the GC. 15:05
I think everyone would have been much better off using while loops.
15:06 shi left
jnthn For speed, not for code clensliness though. 15:06
moritz_ sure
jnthn But yes, the lack of proper sink is a killer for long for loops.
I only discovered that issue this weekend. 15:07
moritz_ but how does that make that one fast?
it uses two for-loops
masak but the inner one is seldom run, as you say. 15:09
and when it is, it's often lots shorter.
if anyone feels like taking an alternative shot at doing statistics and then blogging about it, please feel free. 15:10
just be aware that it takes a long time, both the gathering of data, and the presentation. 15:11
jnthn Any further analysis that identifies what particular constructs are slow is, of course, intresting.
pyrimidine takadonet: pong 15:12
masak moritz_: your point about the 'next' line optimizing for the case of no common substring probably helps explain why the variance of matthias's solution is slightly larger than the rest. there's a difference between the Y and N runs.
reading the data is numbers bears that out.
moritz_ can see that masak is going to have a difficult time announcing the winner 15:13
masak I'm glad we agree on that.
moritz_ everybody botched at least one submission, iirc
colomon++ had exponential time in his first solution
masak yes, but I had designed for that.
I have a strategy which I hope will work.
moritz_ fox++ relied on all() in p3
my p4 was quite bad, and I had a nasty error in p5 15:14
matthias didn't have a p4 submission at all
and Util++'s doesn't quite count either
masak right. matthias is completely out, and Util mostly so.
moritz_ ah, Util++ also made the same mistake in p3 15:15
moritz_ doesn't know if correctness is an ultimate killer in evaluation
(oh, and fox' p1 submission was also not quite correct)
masak correctness weighs fairly heavily, but is not all-or-nothing, I think. 15:16
colomon o/
masak colomon: \o
15:16 cjk101010 joined
moritz_ should make some correctness/readability/clarity heat maps 15:17
oh wait, that's masak's task :-)
masak :)
I just might.
sorear good * #perl6 15:18
masak sorear: \o
jnthn o/ sorear 15:20
15:22 risou_ joined 15:23 risou left 15:27 tyatpi_ joined 15:36 jaldhar left, jaldhar joined 15:37 justatheory joined
colomon So, I'm looking for suggestions on how to improve the benchmark graphs. sorear++ suggested having the same vertical scale and/or a logarithmatic vertical scale. 15:41
Having the same for all of them is actually impractical, because some take minutes and some take seconds. 15:42
Should all the graphs go down to 0, though? That would help make the scaling clearer, I think.
sorear I was thinking having all of them as % improvement relative to $FIXED_TIME
so if there were no Rakudo changes, all the graphs would be horizontal lines at 1
colomon oooo, that's an interesting idea I hadn't considered. 15:43
15:43 plobsing joined
PerlJam sorear++ But what should be the start time? 15:43
sorear PerlJam: perhaps "the first release of R*" 15:44
PerlJam Hmm. I was thinking the "birth" of rakudo-ng
but first release of R* has a better psychological appeal I guess
colomon The first release of R* was July, right? So that's just the time for the first run in the benchmarks. 15:46
PerlJam aye
colomon The only potential long-term problem with that idea is that in the future, some benchmarks may not work on earlier versions of Rakudo. 15:47
but we could solve that by making the baseline for that benchmark the first one it does work on.
15:52 orafu left, orafu joined, donri left 15:55 jaldhar left 15:56 jaldhar joined 15:57 nadim joined
moritz_ rakudo: say rx/a/.WHAT 16:11
p6eval rakudo 3680ac: OUTPUT«Regex()␤»
moritz_ where is class Regex defined?
ah, in src/builtins/Regex.pir
nqp: say((/foo/).WHAT) 16:12
p6eval nqp: OUTPUT«"load_bytecode" couldn't find file 'NQPCORE.setting.pbc'␤current instr.: 'nqp;NQP;Compiler;_block35' pc 128323 (gen/nqp-grammar.pir:6209)␤»
jnthn hm :S 16:13
moritz_ recompiling now
locally I get 16:14
jnthn ah, ok, it's not latest. :)
moritz_ Can only use get_what on a RakudoObject
jnthn That makes some sense.
moritz_ $ ./nqp -e 'say(pir::typeof(/foo/))'
Regex;Regex
jnthn Regex::Regex isn't 6model-ized yet.
moritz_ os that the Regex HLL, class Regex?
s/os/is/
jnthn No, just Regex namespace, class Regex
It probably can be shuffld over to 6model 16:15
moritz_ has bad experiences with 6model-izing stuff :/
jnthn Match got quite some way.
moritz_ rakudo: say Regex::Regex
jnthn I'll pick that up again in a bit.
p6eval rakudo 3680ac: OUTPUT«Can not find sub Regex::Regex␤ in main program body at line 1␤»
moritz_ rakudo's Regex inherits from Method, not from Regex::Regex
moritz_ confused
nqp: say("alive") 16:16
p6eval nqp: OUTPUT«alive␤»
16:17 Patterner left
jnthn moritz_: that makes sense 16:18
Regex::Regex is just a wrapper around a Parrot sub
moritz_ ok
16:19 Psyche^ joined, Psyche^ is now known as Patterner 16:21 risou joined 16:24 risou_ left
dalek p/ctmo: 5b5b706 | jonathan++ | src/ops/nqp.ops:
Add ops for setting/getting serialization context for an object.
16:24
p/ctmo: c35442c | jonathan++ | src/NQP/Grammar.pm:
Pass repr along to pkg_create_mo correctly.
p/ctmo: 00ec5f3 | jonathan++ | src/ (2 files):
Do initial meta-object instantiation via the serialization context builder.
16:25 JimmyZ joined 16:28 porter235 joined 16:32 hercynium joined 16:33 porter235 left 16:35 KyleHa joined
KyleHa Is there a masak in the house? 16:36
takadonet pokes masak
dalek p/ctmo: a3d104e | jonathan++ | src/ (2 files):
Twiddle to make roles work again. Kinda defers a tricky problem for later, mind...
16:37
jnthn I'm in a house with a masak
masak comes alive
KyleHa: oh hai
KyleHa masak! Thank you for answering my call! 16:38
masak no problemo.
how may I serve you?
KyleHa I just read your write-up of the p5 longest common string problem.
16:38 Trashlord joined
KyleHa I wanted to know how you made that awesome box plot of the result data. 16:38
masak ah :) 16:39
I used a program called Gnumeric.
KyleHa I think I've heard of Gnumeric.
masak I saved the graph I made to SVG, then I exported the SVG to PNG using Inkscape.
not sure the last step was needed.
it was moritz_++' suggestion to make a box plot. 16:40
KyleHa I've been a big fan of box plots for years, but I don't often see software that makes them.
I wanted one last week, but I didn't want to write the code for it like last time. 16:41
Thank you thank you masak.
PerlJam for some reason I missed the write of on p5 16:42
masak it's relatively recent.
PerlJam matthias++ :-)
masak KyleHa: glad to help :)
16:43 KyleHa left 16:48 JimmyZ left 16:49 spq joined
masak TimToady: S03:957 -- "sufficiently large to contain all non-zero integer results (which for XOR is at most the size of the longer of the two buffers)" -- is this implying that all zeroes in the result are stripped away? 16:52
dalek p/ctmo: 7896584 | jonathan++ | src/stage0/ (6 files):
Update the bootstrap; all this works (phew!)
16:54
PerlJam masak: I would think that passage really wants to mean that only prefix zeroes are stripped. 16:55
TimToady masak: it's trying to say that trailing 0's may be stripped 16:56
dakkar "trailing"? do you read numbers lsb-first? :) 16:57
TimToady the position of the bits is important, so leading 0's cannot be stripped
dakkar which means that I have no idea what I'm commenting on…
PerlJam languages suck :)
dakkar goes back to the cave
PerlJam just make sure you get your RTL or LTR correct and strip the appropriate zeroes :) 16:58
dakkar ooh, buffer bitwise and, not number bitwise and
now it makes sense
16:59 shi joined 17:06 tzhs left 17:16 risou left 17:23 wood|EyE joined
flussence (bah. vim's insistence on double-spacing sentences with `gq` is annoying.) 17:26
TimToady rakudo: class A {}; sub MAIN { say "ok" }
p6eval rakudo 3680ac: OUTPUT«ok␤»
TimToady rakudo: class A; sub MAIN { say "ok" }
p6eval rakudo 3680ac: ( no output )
TimToady that's a bug 17:27
flussence: not annoying to those of us who prefer double-spacing :)
flussence blames html for making me prefer this way 17:29
masak it's in RT. 17:31
TimToady 'k
wanted to write an entry for rosettacode.org/wiki/Scripted_Main using the buggy form... 17:32
17:32 donri joined 17:33 pmurias left
shortcircuit Scripted_Main is going through a lot of churn right now, just trying to define what it's supposed to do. 17:35
Really, really, really busy at work right now, can't talk about it this second. 17:36
TimToady whatever it is, Perl 6 does it
17:37 cdarroch joined, cdarroch left, cdarroch joined, ymasory joined
daxim en.wikipedia.org/wiki/Rule_110 17:37
masak rakudo: say [min] 3, 6; 17:39
mberends rakudo: say min(3,6)
17:39 Woody_ joined
p6eval rakudo 3680ac: OUTPUT«3␤» 17:39
rakudo 3680ac: OUTPUT«Unable to handle non-closure Ordering yet␤ in 'Any::min' at line 1561:CORE.setting␤ in 'min' at line 1871:CORE.setting␤ in main program body at line 22:/tmp/Ptp4HPx3zJ␤»
17:39 wood|EyE left
masak can I pls kill the &min function? 17:39
rakudo: say (3,6).min
p6eval rakudo 3680ac: OUTPUT«3␤»
masak alternatively, mberends is suggesting killing the first parameter of the &min function. 17:40
actually, I'm not even going to ask permission. it's wrong.
moritz_ thinks we've had that discussion before.
masak our multi min( *@values, Ordering :$by ) 17:41
how come we're running up against this problem in the first place?
3, 6 should end up in @values, no?
masak dives into Rakudo source
TimToady rosettacode.org/wiki/Scripted_Main#Perl_6
daxim LUE means what? 17:42
TimToady lue: what does LUE mean? :)
daxim is enlightened
masak oh!
proto sub min($by, *@values) { @values.min($by); } 17:43
masak submits rakudobug
Rakudo is not to spec, that's all.
TimToady wonders why it's "by"... 17:44
oh, "by ordering" I guess
dakkar «@strings.min :by(*.length)» or however it's written? 17:45
TimToady std: *.length
p6eval std 4608239: OUTPUT«ok 00:01 118m␤»
TimToady hmm 17:46
should be *.chars or some such
17:48 gdey_ left
masak someone, I forget who, once sent to p6l a long list of suggestions for improved parameter names in the setting. 17:49
no action was ever taken on it.
it would be heroic and very much appreciated for someone to make that a personal project.
PerlJam was a ticket created on it? 17:50
17:50 _buno_ joined
masak no. 17:50
:(
if I find the email, I'll do that.
TimToady as long as "improved" doesn't just mean COBOLized... 17:51
17:51 GinoMan joined
masak ISTR they were mostly, or at least partly, very sane suggestions. 17:51
the main point is that even the names of positional parameters matter a lot now that you can refer to them by name. 17:52
it wouldn't surprise me if the sender of that email had a Smalltalk background.
:)
TimToady sure, but there's something to be said for expecting infix operands to be named $x and $y
masak aye. 17:53
PerlJam you don't like $addend1 and $addend2 ? ;)
TimToady
.oO(subtrahend...)
masak I'd have guessed $lhs and $rhs.
tadzik jnthn: wklej.org/id/489187/ could you apply this to nqp? Fixes build under GNU make 17:54
TimToady what if you're programming in Hebrew or Arabic?
then left and right are reversed
moritz_ hugme: add tadzik to nqp
hugme moritz_: sorry, I don't know anything about project 'nqp'
TimToady never mind that lhs and rhs are rather Anglo-centric
jnthn tadzik: I thought moritz_++ already did that.
TimToady and what about people who don't have hands? 17:55
moritz_ jnthn: probably not in all branches
tadzik jnthn: wklej.org/id/489188/ also, this for ctmo branch
17:55 Hackbinary joined
jnthn tadzik: Gotta pack for airport now, and can't seem to be able to give out commit bits on nqp 17:55
tadzik jnthn: no worries 17:56
PerlJam tadzik: moving two lines that are commented out fixes bugs?
jnthn Will apply when I get back, if nobody beats me to it.
tadzik PerlJam: yes
moritz_ jnthn: how liberal should nqp commit policy be? as mu? or as nqp-rx?
jnthn (gnu make)--
PerlJam wow.
tadzik gmake doesn't like it if one of the multi-line lines is a comment
jnthn moritz_: Think pmichaud_ said it should be quite liberal.
tadzik for then it doesn't really end with \
jnthn moritz_: nqp-rx is more liberal than Rakudo, fwiw.
moritz_ I know 17:57
jnthn We could go for nqp-rx level
jnthn packs for airport
moritz_ tadzik: you should have commit access.
tadzik moritz_: thanks; does ctmo build for you?
moritz_ tadzik: dunno, master seems to work 17:58
tadzik oh, so I'm obliged to ocassionally fix stuff now :)
moritz_ I didn't change anything, you already had it
nqp-rx and nqp share the same team on github
tadzik yeah, I now noticed I have the ssh url in .git/config
moritz_ tadzik: oh, I have an uncommitted fix for ctmo in my repo 17:59
which I forgot to push, moritz_--
dalek p/ctmo: 1f3568a | moritz++ | build/Makefile.in:
make GNU make happy again
17:59 dakkar left
tadzik oh, seems that master is fixed 18:00
ah, there we go :) I had 37 unpulled commits, seems I was not on master at the beginning
I _really_ need that git branch name in zsh prompt
oh, I get errors anyway 18:01
maybe that's something I can fix :>
18:02 PacoLinux_ joined
PerlJam tadzik: putting the git info as part of the prompt has been a tremendous help to me. 18:02
tadzik moritz_: wklej.org/id/489197/ don't you get something similar?
18:03 _buno_ left
masak just for everyone's information, colomon has presented statistics which show that my statistics in the p5 blog post are quite one-sided. 18:04
it now again looks as if colomon's is the faster algorithm, just not for the kind of data I chose.
PerlJam masak: sure they are ... they're all from the masak side of the universe :)
what changed? 18:05
masak new data, that's all.
I'll let colomon blog his findings.
masak --> plane
TimToady o/
18:06 masak left
PerlJam blah! He was too quick for me to tell him to have a safe flight 18:06
jnthn --> flight too :)
TimToady o/
PerlJam masak: have a safe and enjoyable flight!
jnthn: have a safe and enjoyable flight!
:)
jnthn Thanks!
o/
TimToady --> shower 18:07
tadzik fly safe!
TimToady
.oO(flying in the shower doesn't sound safe...)
18:08
tadzik oh, everyone can be safe in a shower w/o flying, hence my wishes 18:09
colomon I would like to clarify that I have no general proof my p5 solution is faster. I just found a different set of test data where mine is faster than matthias's. I haven't timed any of the others yet, and I have a potential optimization for matthias's that may get it back in the running again, too.
PerlJam colomon: yeah, even reading masak's description of his test data it seemed very ... simple 18:10
colomon PerlJam: The thing is that in masak's sample data, the only characters that overlap between the two strings are the ones in the section that matches.
PerlJam aye
colomon So for most of the test, the inner loop is quickly skipped.
PerlJam he didn't adequately test the "many failures" or "many successes" 18:11
colomon I just fed it some normal English text instead, and suddenly it performs like you'd expect code that has a gather in an inner loop -- slow.
The gather doesn't actually have to be in the inner loop, so I'm going to try removing it and see how that helps things. 18:13
18:14 jedai left
colomon ooo, #phasers in 46? 18:14
or is everyone else either in the air or in the shower? 18:16
Util Yes, #phasers in ... 44 now 18:17
PerlJam I'm hovering about .3 meters off of the floor right now
18:17 jedai joined
PerlJam (of course, I'm in a chair, so I don't know if you'd call that "in the air" :) 18:18
18:19 MayDaniel joined 18:21 Mowah left
dalek ar: 00d0d01 | Util++ | build/binary/darwin_dmg/ (6 files):
Add code to build a binary .dmg package for OS X.
18:21
18:29 porter235 joined 18:32 TiMBuS joined 18:34 porter235 left 18:49 daxim left
dalek ar: fd840ed | Util++ | build/binary/darwin_dmg/package_darwin_dmg.pl:
Remove stray line of invalid code
18:53
19:05 kaare_ joined 19:09 Vlavv_ left 19:11 shi left 19:13 gdey_ joined 19:15 Vlavv joined 19:23 prammer joined 19:26 Vlavv left 19:27 Vlavv joined 19:47 shi joined 19:58 lichtkind joined
lichtkind moritz_: friday 6pm is allright? 19:58
sjohnson perlpals 20:00
lichtkind hai sjohnson 20:05
sjohnson hi
lichtkind sjohnson: may i ask whats your selchoosen task? 20:06
dalek ar: 936462e | Util++ | build/binary/darwin_dmg/package_darwin_dmg.pl:
Add Camelia icon to the packaged contents
sjohnson what's a selchoosen task? 20:09
wallberg hi all! I wanted to have a chat with masak but just now saw that he was leaving for a plane. Does anyone know if he has moved from Uppsala?
sjohnson the only task i have is to stay out of the way of developers while they work on p6 :)
tadzik wallberg: he's on the plane from AMS to Copenhagen I think 20:10
at least he was still in AMS few hs ago
wallberg just as things started to look up for Uppsala.pm, the interwebs tells me he might have moved to some other town in Sweden 20:12
anyways, I sent him an email and will hopefully know shortly 20:13
20:14 benabik joined
tadzik yeah, he 20:18
's now someplace else iirc
Util A preview R* Darwin binary is ready for inspection - s3.datasaw.com/Rakudo_Star_2011-01_...ment_3.dmg
20:21 Chillance left 20:25 Vlavv left 20:26 MayDaniel left 20:30 porter235 joined, shi left 20:33 plobsing left, plobsing joined 20:34 shi joined, jferrero joined, porter235 left 20:38 Vlavv joined
mberends <- back home from seeing off the Swedish delegation at AMS. Their scheduled takeoff time was 10 minutes ago. 20:40
wallberg: masak++ has moved to Lund, near where jnthn++ lives, and he has also started $work at the same $company 20:41
takadonet mberends: sweet 20:43
mberends their hacking synergy seems very fruitful :)
wallberg yup: www.edument.se/konsulter/
good for them, bad for Uppsala.pm ;-) 20:44
21:00 impious joined 21:01 impious left
wallberg have there been any attempts yet to create p6 modules for Tk, Wx, GTK, Qt or some other GUI frameworks? 21:03
takadonet wallberg: do not believe so 21:04
Su-Shee yes, Tene bound the enlightement lib thingie for example.
for Gtk, GIR is the way to go anyways which simplifies things greatly. 21:05
flussence is GIR what they call their XML stuff these days? 21:07
tadzik wallberg: tk can be used via blizkost I believe 21:08
flussence last time I used it it was still called glade...
tadzik wallberg: gui toolkits are tricky, for NCI does not yet support callbacks
21:09 Rotwang joined
wallberg ahh I did not know about blizkost. do I understand it correctly that it basically enables p5 modules in p6 programs? 21:11
tadzik aye
wallberg as for GIR, I think there is more info here: live.gnome.org/GObjectIntrospection 21:13
alas I am too stupid to turn that into something useful 21:14
yeah, seems to be a way of passing info between a runtime and the GTK library via XML/GIR... or something 21:16
21:20 y3llow_ joined 21:21 pothos_ joined 21:22 bacek left, pothos left, y3llow left, pothos_ is now known as pothos, y3llow_ is now known as y3llow 21:23 noganex_ joined 21:24 noganex left, hercynium left
Tene tadzik: I was able to do callbacks just fine; I just had to write a little shim in C. 21:26
Soon that should be movable into parrot itself, as I should be able to write the shim with llvm.
tadzik Tene: care to show the code? 21:27
i.imgur.com/ZyeCO.jpg # I actually lol'd
Su-Shee flussence: no, GIR isnt even remotely Glade related. 21:28
sjohnson i don't get the flowerpot reference 21:29
or metaphor for html
whatever it is
Su-Shee GIR is how you expose (looking from the C library's viewpoint) the symbols. The "other side" just reads the (indeed) resulting XML instead of pulling in C stuff.
if you want to see it in action, look at Seed, I think it makes heavy use of it. 21:30
tadzik sjohnson: I think it's relating to people calling html a programming language. But the the LaTeX one is a bit wrong too
Tene tadzik: github.com/tene/parrot-elementary/...b_helper.c 21:32
21:34 stkowski joined
mberends (lol) what do you think a Perl cartoon would have said (and it's a pity there not a Perl one anyway)? I would think "It seems to cover the topics but I have no idea how it manages to do that with so few apparently unrelated words" 21:36
sjohnson "this looks like a religious text to me"
mberends heh 21:37
bless you too
tadzik "I have no idea what it does, but even the gurus can't summarize that in half the page, thus you must be wrong or something"
or "But you're basically glueing the well-known theories" :) 21:38
I tend to say that usually when you program, you split the big problem into a number of smaller ones until the smaller ones are trivial. In Perl, you split the problem into the smaller ones until there's a CPAN module for each of them )
sjohnson "what the heck is this underscore variable?"
21:41 fhelmberger left
mberends "Please re-submit your text, this copy seems to be full of corrupt characters" 21:41
22:01 kaare_ left 22:09 hercynium joined 22:13 PacoLinux_ left 22:18 mikehh joined 22:24 [Coke] joined 22:30 porter235 joined 22:33 tyatpi_ left, tyatpi_ joined 22:34 porter235 left 22:43 woosley joined 22:45 kunwon1 joined 22:46 coldhead joined 22:54 ymasory left 22:55 Rotwang left
jnthn made it home safely o/ 23:02
And I can vouch that masak at least made it safely to within 2km of his home. :) 23:03
mberends \o/ 23:05
23:05 plobsing left 23:13 spq left 23:19 woosley left 23:22 plobsing joined 23:24 pjcj joined 23:26 whiteknight joined 23:34 hercynium left
lichtkind \o/ 23:44
colomon \o/
jnthn gets some rest...back to $dayjob tomorrow. 23:48
23:52 mberends left 23:56 fisted_ joined, fisted left 23:58 benabik left