»ö« 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 dorlamm left 00:09 mberends left 00:22 mj41 left 00:23 mberends joined 00:27 MayDaniel left 00:45 nnunley left, nnunley joined
colomon niecza: say " this is a test ".trim 00:53
p6eval niecza v11-20-gb962c2f: OUTPUT«␤Unhandled Exception: Unable to resolve method trim in class Str␤ at /tmp/IfwOzwBMm6 line 1 (mainline @ 1) ␤ at /home/p6eval/niecza/lib/CORE.setting line 2224 (ANON @ 2) ␤ at /home/p6eval/niecza/lib/CORE.setting line 2225 (module-CORE @ 58) ␤ at /home/…
colomon b: say " this is a test ".trim
p6eval b 1b7dd1: OUTPUT«this is a test␤»
00:54 thou joined 01:18 tokuhir__ joined 01:22 cognominal_ joined 01:23 tokuhir__ left, cognominal___ left 01:27 cooper joined 01:46 djanatyn left 01:47 djanatyn joined 01:53 ab5tract joined
colomon perl6: for lines -> $filename { .say } 01:53
p6eval rakudo 9c2880: OUTPUT«===SORRY!===␤Missing block at line 1, near ""␤»
..pugs b927740: OUTPUT«*** No such subroutine: "&lines"␤ at /tmp/TnvfBfAU7W line 1, column 5-11␤»
..niecza v11-20-gb962c2f: OUTPUT«===SORRY!===␤␤Missing block at /tmp/d4bvgvavRN line 1 (EOF):␤------> for lines -> $filename { .say }⏏<EOL>␤Other potential difficulties:␤ $filename is declared but not used at /tmp/d4bvgvavRN line 1:␤------> for l…
colomon perl6: for lines() -> $filename { .say }
p6eval rakudo 9c2880: OUTPUT«Any()␤Any()␤Any()␤Any()␤Any()␤Any()␤Any()␤Any()␤Any()␤Any()␤Any()␤Any()␤Any()␤Any()␤Any()␤Any()␤Any()␤Any()␤Any()␤Any()␤Any()␤Any()␤Any()␤» 01:54
..niecza v11-20-gb962c2f: OUTPUT«Potential difficulties:␤ $filename is declared but not used at /tmp/QUr06YxTh5 line 1:␤------> for lines() -> ⏏$filename { .say }␤␤␤Unhandled Exception: Unable to resolve method say in class Any␤ at /tmp/QUr06YxTh5 line 1 (mainline @ 4…
..pugs b927740: OUTPUT«*** No such subroutine: "&lines"␤ at /tmp/zSaYDofYec line 1, column 5-13␤»
colomon perl6: for lines() { .say }
p6eval rakudo 9c2880: OUTPUT«Land der Berge, Land am Strome,␤Land der Äcker, Land der Dome,␤Land der Hämmer, zukunftsreich!␤Heimat bist du großer Söhne,␤Volk, begnadet für das Schöne,␤vielgerühmtes Österreich,␤vielgerühmtes Österreich!␤␤Heiß umfehdet, wild umstritten␤liegst dem Erdteil du inmi…
..niecza v11-20-gb962c2f: OUTPUT«Land der Berge, Land am Strome,␤Land der Äcker, Land der Dome,␤Land der Hämmer, zukunftsreich!␤Heimat bist du großer Söhne,␤Volk, begnadet für das Schöne,␤vielgerühmtes Österreich,␤vielgerühmtes Österreich!␤␤Heiß umfehdet, wild umstritten␤liegst dem Erdtei…
..pugs b927740: OUTPUT«*** No such subroutine: "&lines"␤ at /tmp/3T49lwu366 line 1, column 5-13␤»
colomon perl6: for lines { .say }
p6eval rakudo 9c2880: OUTPUT«===SORRY!===␤Missing block at line 1, near ""␤»
..pugs b927740: OUTPUT«*** No such subroutine: "&lines"␤ at /tmp/2qnKUmu0I9 line 1, column 5-11␤»
..niecza v11-20-gb962c2f: OUTPUT«===SORRY!===␤␤Missing block at /tmp/mwX49GP4Pq line 1 (EOF):␤------> for lines { .say }⏏<EOL>␤␤Parse failed␤␤»
colomon is currently using Niecza to scan 23,500 MP3 files looking for ones not tagged with artist and title. 02:11
snarkyboojum colomon: coolness :) github? :D 02:12
colomon gist.github.com/1342361 02:13
I'm using "find" to generate the list of files to test. :)
snarkyboojum aww.. taglib libraries eh 02:14
heh yeah - cool stuff
colomon mind you, it seems to be taking a pretty long time.
but then, to be fair, the files are on a different computer. I'm probably swamping my LAN. 02:15
TagLib#, yes.
snarkyboojum real world perl6 usage++ :) 02:16
colomon yup
NIecza's ability to handle CLR libraries is almost like having access to CPAN again. :) 02:17
sorear appears
snarkyboojum yeah v. cool.. was wondering how you'd written a ID3 header parser in Perl 6 :) 02:18
colomon snarkyboojum: I am far too lazy for that. :)
wow, a lot of my classical albums aren't tagged... Respighi, Rachmaninov, Chopin, Grieg, Wendy Carlos, Copland... 02:21
done! 02:25
my poor classical collection has been terribly neglected. hmm... wonder if I can come up with a clever way to tag them and import them into iTunes at the same time.
02:29 ksi left
colomon afk # bedtime 02:33
02:34 icovnik left
snarkyboojum my little project for the remainder of the weekend will be to put Rakudo on my new N9 :P 02:38
02:42 thou left
cognominal_ snarkyboojum: that sounds like a phony project :) 02:44
snarkyboojum cognominal_: ;) 02:45
sorear discovers debug.debug() in Lua 02:48
this is awesome and I'm going to steal it for niecza.
02:49 ab5tract left 02:51 Maddingue left 02:58 Maddingue joined, Maddingue left 03:04 Maddingue joined 03:12 thou joined 03:16 [Sec] left 03:23 icwiener left 03:25 araujo left 03:28 abercrombie joined
dalek odel: f9e1bb5 | sorear++ | lua/runtime/Runtime/Lexpad.lua:
Fix off-by-one in lexpad extension that caused KnowHOW to overwrite GLOBAL
04:17
odel: d1dbce3 | sorear++ | lua/runtime/Init.lua:
Add debug_get("name") function
04:25 thou left 04:28 Maddingue left 04:34 Maddingue joined 04:44 cognominal___ joined
dalek odel: b6be7a2 | sorear++ | lua/runtime/Try.lua:
Add commented out option for disabling try system
04:45
odel: 87e76e7 | sorear++ | lua/runtime/Metamodel/Representations/P6opaque.lua:
Fix reversed test that caused $!foo to always come up Null on fetch
04:48 cognominal_ left 05:13 orafu left 05:18 orafu joined, thou joined 05:24 daniel-s joined
sorear nqp: say(say(1)) 05:25
p6eval nqp: OUTPUT«1␤1␤»
dalek odel: f7293ef | sorear++ | lua/runtime/Runtime/Ops/P6list.lua:
Make objects like (1,2,3) have the correct length annotation
05:28
odel: edeaddb | sorear++ | lua/runtime/Runtime/Signatures/SignatureBinder.lua:
Fix error in printing parameter count errors
05:28 Chillance left 05:46 xinming_ joined 05:49 xinming left 05:59 am0c left
moritz \o 06:04
sorear o/ moritz 06:05
6model/lua is much further along than I expected it would be 06:06
06:08 uniejo left 06:18 soh_cah_toa left
diakopter sorear: thanks for your help/patches! :) 06:33
you more than doubled the passing tests 06:37
06:40 kaare_ joined
diakopter tables in lua/luajit are implemented with an integer-indexed array as well as a hashtable; At some point, an optimization would be to replace all the method/accessor indexes with fixed integer ones. It would hurt readability/debuggability greatly, so perhaps it could be automated by first ensuring all the fieldnames are unique across types 06:40
moritz is it worth it? did you benchmark it? 06:43
diakopter good questions..
(no)
it's the kind of thing that could be globally implemented across all the .lua sources, so part of the build/compilation process 06:45
sorear lua's grammar is super simple, you could write a program to parse and munge the handwritten lua files 06:46
diakopter right; what I was thinking
sorear the nonhandwritten lua files can just be emitted munged 06:47
diakopter as long as the field/method names are unique across types
it would be some extremely []-heavy code :)
sorear you studied closure compiler I think you're the expert here 06:48
note that [] is not necessarily a cheap operation, since it requires a floating point to integer conversion
diakopter luajit narrows to ints
sorear fistp is historically one of the slowest x86 instructions, dunno if that's still the case
moritz didn't it use to do something really crazy, like pushing a float to the stack, and popping it back into a register as an int or so? 06:54
sorear no, the x87 cannot directly access int registers
the "st" stands for store-to-memor
dalek odel: 82cda6a | sorear++ | lua/runtime/ (3 files):
Switch "Nil" fakery to something a bit more Lua-compatibile
07:00
07:02 djanatyn left 07:04 djanatyn joined 07:05 clairvy joined
diakopter waits a bit to see if sorear can magically fix ../../t/nqp/48-closure.t 07:16
07:20 clairvy left 07:21 clairvy joined 07:23 clairvy_ joined 07:25 clairvy left 07:31 araujo joined, araujo left, araujo joined
sorear diakopter: why that one specifically? it's rather far down the list :P 07:32
diakopter it fails with a different error 07:33
diakopter looks at test 45
sorear oh, oops 07:34
the fail list I gave you was made with try disabled
so anything that uses return would have died
diakopter o_O
I mean, I'll work on making test 45 pass 07:35
diakopter boggles at y.lua from test 45 07:36
07:37 clairvy_ left 07:39 sayu joined
diakopter lol. test 45 won't be passing for quite a while 07:45
sorear diakopter: correct try-ness didn't help decrease fails 07:46
diakopter hrm 07:47
sorear heh, it did a suprisingly good job of compiling 45 07:48
diakopter moves on to 37-slurpy.t
sorear heh, apparently 6model/lua is still using Parrot control exception codes 07:52
throwing a 57
07:53 bluescreen10 left
diakopter :) 07:55
dalek odel: 565c225 | diakopter++ | lua/runtime/Runtime/Signatures/SignatureBinder.lua:
pass one slurpy test
07:57
odel: efc1cca | diakopter++ | lua/runtime/ (3 files):
Merge branch 'master' of github.com:diakopter/6model
sorear \o/ 07:59
diakopter moves to test 24 for now 08:00
dalek odel: 8a51963 | sorear++ | lua/runtime/Runtime/Exceptions/LeaveStackUnwinderException.lua:
Fix typo in LeaveStackUnwinderException that prevented return from working, fixes closure test
08:01
sorear diakopter: is the icu stuff available for linux? 08:02
sorear -> sleep for now
diakopter sorear: the author said he would try to get it to compile for debian 08:03
sorear closed source?
diakopter nope; MIT
github duncanc/icu4lua
sorear hmm, I might take a crack at that tomorrow
08:04 daniel-s left
sorear or wait would that be a breach of etiquette 08:04
diakopter I don't think so
the author sounded very open to contributions
I got it to compile on ubuntu by hacking up the Makefile a lot but got a missing symbol error when I tried to run it 08:05
sorear off to sleep for reals now 08:08
dalek odel: 3215eb1 | diakopter++ | lua/runtime/Metamodel/ (3 files):
lots more pass
08:14
odel: 15602da | diakopter++ | lua/runtime/Runtime/Exceptions/LeaveStackUnwinderException.lua:
Merge branch 'master' of github.com:diakopter/6model
diakopter passes 249 tests now sorear++ 08:15
fails only 9 out of 57 test files 08:16
08:17 wk left 08:23 [Sec] joined
Woodi is 'niecza's ability to handle CLR libraries' on same lvl as 'using Parrot bytecode-compilled libraries in Rakudo' ? 08:24
tadzik it's in better shape I'd say 08:27
colomon it's incredibly easy. 08:29
08:39 cognominal___ left 08:41 cognominal joined
colomon loliblogged: justrakudoit.wordpress.com/2011/11/...-mp3-tags/ 08:54
Woodi: example of using a CLR library in that blog post. 08:55
08:56 agentzh joined
tadzik colomon++ # cool 08:57
colomon tadzik: speaking of CPAN -- what's the state of panda / pies on nom? 08:58
colomon would also love to see it working on niecza... 08:59
tadzik colomon: blocking on JSON, which is blocking of regexes 09:00
I'm more and more thinking about a temporary solution for this
like, a META.info-only parser
colomon +1
tadzik added to today's TODO then 09:01
my plans for S11, and a whole bunch of improvements to the module ecosystem are waiting for those. And blocking on $university, as always
at least it's interesting this semester 09:02
colomon interesting++
tadzik A little bit too much seeples for me personally, but I can live with that
diakopter moritz: I replaced all 2000ish instances of .STable with [1] in *.lua and it sped up a small nqp program by 10% 09:19
.STable is called quite often 09:20
tadzik I guess your nqplua is now... *puts on sunglasses* ...unSTable 09:21
diakopter :) 09:22
there are *so* many hash lookups 09:24
esp. on the Ops table
writing that optimizer will be fun
tadzik I have a feeling that everything in lua is a hash lookup 09:25
array indexing, method calls
diakopter integer indexes aren't hash lookups
tadzik oh, I didn't know that 09:26
I thought tables are just cheating hashes
diakopter tables have two storages; hashtable and array
tadzik I see
diakopter resizing array 09:27
running my LocalsOptimizer.lua on NQPSetting.lua also gains 10% 09:32
09:32 icovnik joined
tadzik nice 09:32
diakopter takes a couple of minutes 09:33
Woodi tadzik: long no-sleep periods probably shutdowns neurons in brain, so it is effectivelly 'sleepy' state, less productive and can be dangerous too... be carefull 09:41
tadzik Woodi: hmm, what are you commenting? 09:42
"tadzik | A little bit too much seeples for me personally" I suppose
seeples := "C++", not "sleepless" :)
Woodi @blocking and univ + your (much) previous messages
tadzik yeah, sorry for confusion :) 09:43
Woodi tadzik: just bit of advice from someone who do not pass IT study :)
tadzik sleepless is another thing, but it doesn't occur too often, unfortunately :)
erm, fortunately
Woodi: aw, shame. Where did you study?
Woodi Torun/Olsztyn, then moved to Food Technology :) 09:44
tadzik :) I'm now 4th semester on PW
Woodi a lot projects on Px i hear :) 09:45
tadzik there are now 45 people, 120 were starting in 2010
yeah, not much time to slack off these days
09:46 daniel-s joined
Woodi tadzik: btw, i got idea some time ago... maybe print some A4 posters with #perl6 + butterfly and stick around univ IT ? to bust Poland % on Perl. would be damn cheap too :) 09:46
tadzik Woodi: I advocate Perl 6 sometimes on the local LUG :) They now want me to run a few-hours-long Perl training 09:47
Woodi idea can be used world-wide too :)
so many MS A3 posters
tadzik: you see, i mean kind a work_at_base :) 09:48
tadzik I know what you mean :)
unfortunately, almost no one cares about anything besides what they teach us on the uni 09:49
Woodi will test idea in Olsztyn first :>
tadzik and those of them who do I meet monthly on LUG meeting anyway :)
Woodi thats not true - few ppls (students :) just waste A LOT of time :)
09:50 thou left
Woodi even 'say hi' on #perl6 will change his/her life :) 09:50
I assume i allowed to print Camelia... :) 09:51
10:06 daniel-s left 10:14 cognominal left 10:15 cognominal joined 10:19 wk joined 10:20 daniel-s joined 10:31 mj41 joined 10:44 sayu left
fsergot hi! ::) 10:55
tadzik hi fsergot 10:58
diakopter NQPClassHOW isn't being set as the .HOW of new classes 10:59
fsergot how do You do tadzik? :)
tadzik not bad, you? 11:00
fsergot too. :)
tadzik ha, I'm buying a brown bess :) 11:03
moritz en.wikipedia.org/wiki/Brown_Bess such a thing? 11:11
tadzik aye 11:12
11:18 isBEKaml joined
tadzik woot, Grammar::Tracer is super cool 11:27
jnthn++
I believe that was my reaction on jnthn's talk too, but now I'm solving problems with it
11:30 ggoebel joined 11:38 clairvy joined, clairvy left, clairvy joined 11:40 clairvy left 11:41 clairvy joined 11:42 clairvy left, clairvy joined 11:47 Kivutarrr joined, clairvy left, clairvy joined, clairvy left 11:48 clairvy joined 11:55 dorlamm joined, clairvy left, clairvy joined, clairvy left 11:58 Trashlord left 11:59 Trashlord joined 12:00 mkramer joined 12:01 clairvy joined, clairvy left
tadzik I have a feeling <a> ** ',' is a bit broken 12:01
12:01 clairvy joined
tadzik gist.github.com/1342787 12:03
12:03 clairvy left, Trashlord left 12:04 nnunley left, clairvy joined 12:05 clairvy left, clairvy joined, Trashlord joined
tadzik works for <tok> [ ',' <tok> ]* 12:06
12:06 clairvy left, clairvy joined 12:07 clairvy left 12:08 clairvy joined, clairvy left 12:09 clairvy joined 12:10 clairvy left, clairvy joined, clairvy left 12:11 Psyche^ joined, clairvy joined 12:12 isBEKaml left, clairvy left 12:13 clairvy joined
Woodi can somebody look and comment, pls ? lunski.pl/~sylwek/perl/Welcome.pdf 12:13
12:13 clairvy left 12:14 clairvy joined, Patterner left, Psyche^ is now known as Patterner 12:15 clairvy left
moritz Woodi: nice. A few nits: it might be better to formlate it as a sentence, "The Perl 6 community welcomes YOU!" 12:15
12:15 clairvy joined 12:16 clairvy left
moritz (Perl 6 isn't usually capitlalized) 12:16
12:16 clairvy joined
moritz no need for the 'www.' in the URL 12:16
Woodi right
12:16 clairvy left
Woodi 'not capitalized' ? 12:17
12:17 clairvy joined
moritz "PERL" is capitalized 12:18
12:18 clairvy left
moritz and "Perl" is correct 12:18
Woodi ah, right again 12:19
12:19 mkramer left 12:23 clairvy joined
Woodi corrected 12:25
12:25 clairvy left 12:26 dorlamm left 12:27 clairvy joined
tadzik nice one 12:28
12:28 kaare_ left, clairvy left 12:29 clairvy joined, clairvy left 12:30 clairvy joined
Woodi unis board are great invention IMO :) 12:31
12:31 clairvy left 12:32 clairvy joined, clairvy left 12:33 clairvy joined, zby_home joined 12:37 mj41 left, clairvy left, clairvy joined 12:43 clairvy left 12:44 clairvy joined, clairvy left 12:50 clairvy joined 12:51 cognominal_ joined, clairvy left 12:52 clairvy joined 12:54 cognominal left 12:56 daxim joined, clairvy left 12:57 clairvy joined
snarkyboojum also typo at "entusiastic" 12:58
12:58 clairvy left, clairvy joined 13:03 envi_ joined, clairvy left, clairvy joined 13:18 cognominal joined, clairvy left 13:19 clairvy joined 13:21 cognominal_ left, clairvy left 13:22 clairvy joined
colomon hmmm... does MAIN work in Niecza yet? 13:38
13:38 clairvy left
flussence doesn't seem like it: "&MAIN is declared but not used at /home/ant/test.pl6 line 1:" 13:38
13:38 clairvy joined
moritz niecza: sub MAIN() { say "OH HAI" } 13:40
13:40 clairvy left
p6eval niecza v11-20-gb962c2f: OUTPUT«Potential difficulties:␤ &MAIN is declared but not used at /tmp/mSBpwiVXoN line 1:␤------> sub MAIN⏏() { say "OH HAI" }␤␤» 13:40
colomon bother. it would be quite handy at the moment for me. 13:41
13:41 clairvy joined
moritz it is handy, yes 13:42
13:54 clairvy left 13:55 clairvy joined, clairvy left 13:57 clairvy joined, clairvy left 14:01 clairvy joined 14:08 clairvy left, dual left 14:09 clairvy joined 14:15 cognominal left, clairvy left 14:16 clairvy joined 14:17 cognominal joined, clairvy left, clairvy joined 14:21 satyavvd joined 14:22 Eth4n joined, clairvy left, Eth4n left 14:23 clairvy joined 14:24 nnunley joined, clairvy left 14:25 clairvy joined, ethndbst left 14:26 clairvy left, clairvy joined 14:28 clairvy left 14:29 clairvy joined 14:34 ggoebel left, clairvy left, clairvy joined, clairvy left 14:35 clairvy joined, clairvy left 14:36 clairvy joined, clairvy left 14:37 clairvy joined 14:42 sayu joined, clairvy left 14:43 clairvy joined, clairvy left 14:44 clairvy joined 14:46 Trashlord left, clairvy left, clairvy joined, clairvy left 14:48 clairvy joined, Trashlord joined 14:51 clairvy left 14:52 clairvy joined 14:53 simcop2387 left, clairvy left, clairvy joined 14:54 clairvy left, clairvy joined, ethndbst joined
colomon sorear: ping? 14:54
14:55 simcop2387 joined
colomon sorear: cancel that ping, figured out how to make a System.String[] on my own. :) 14:57
14:57 clairvy left 14:58 clairvy joined 15:00 agentzh left, clairvy left 15:01 clairvy joined 15:04 sayu left, clairvy left, clairvy joined 15:11 clairvy left, clairvy joined 15:14 clairvy left 15:15 clairvy joined, clairvy left, clairvy joined 15:19 sayu joined, clairvy left 15:20 satyavvd left, clairvy joined
colomon Well hell. Who'd have thought it was easier to write a Perl 6 script to change the tags on your MP3 files than it would be to get iTunes to recognize them properly? For some reason iTunes "Get Info" is giving me one album name but the standard iTunes song listing is giving me a completely different one. :( 15:36
15:38 Trashlord left, clairvy left 15:40 clairvy joined 15:42 fridim_ joined 15:52 clairvy left 15:53 clairvy joined 15:58 fsergot left, clairvy left 15:59 clairvy joined, clairvy left, clairvy joined 16:00 clairvy left 16:01 clairvy joined 16:08 clairvy left 16:09 clairvy joined 16:16 dual joined, clairvy left 16:18 ab5tract joined 16:20 Kivutarrr left 16:25 sayu left 16:27 sayu joined 16:33 clairvy joined, clairvy left, uniejo joined 16:36 clairvy joined 16:37 uniejo left, clairvy left 16:42 uniejo joined, tinmrn left 16:44 clairvy joined, clairvy left 16:48 clairvy joined 16:50 clairvy left 16:54 Mowah joined, clairvy joined 16:58 ab5tract left, clairvy left 16:59 clairvy joined
moritz colomon: I hope you are aware that a MP3 can have two different, totally independent tag sets, one ID3v1 and one ID3v2 17:00
17:00 clairvy left, molaf joined, clairvy joined
moritz colomon: so it might be possible that ID3v1 tells one thing, and ID3v2 says the other thing 17:00
17:08 nebuchadnezzar left, clairvy left 17:10 nebuchadnezzar joined 17:12 MayDaniel joined 17:13 clairvy joined 17:15 ggoebel joined, clairvy left 17:19 clairvy joined 17:21 ggoebel left, clairvy left 17:23 clairvy joined, envi_ left 17:27 daniel-s left, clairvy left 17:28 clairvy joined, Mowah left, clairvy left 17:29 sayu_ joined, clairvy joined 17:31 sayu left, clairvy left 17:32 clairvy joined 17:33 clairvy left 17:34 clairvy joined, sayu joined, clairvy left 17:35 sayu_ left 17:36 clairvy joined 17:41 benabik left, clairvy left 17:42 clairvy joined, ggoebel joined 17:48 ksi joined, clairvy left 17:49 clairvy joined 17:54 cafesofie joined, clairvy left 17:55 clairvy joined 17:56 clairvy left, clairvy joined, clairvy left 17:58 clairvy joined 17:59 mj41 joined, MayDaniel left, clairvy left 18:00 clairvy joined, clairvy left 18:01 MayDaniel joined 18:02 clairvy joined 18:04 MayDaniel left, clairvy left 18:05 clairvy joined 18:08 vmsbp joined
dalek odel: 2f1109b | diakopter++ | lua/ (3 files):
bind_attr_with_hint bugfix and minor optimization to caught exception if/then (converts if ((exc.TargetBlock ~= Block and 1 or 0) ~= 0) then to if (exc.TargetBlock ~= Block) then in generated code)
18:12
18:12 clairvy left, clairvy joined, clairvy left 18:14 clairvy joined 18:19 clairvy left, clairvy joined, ggoebel left 18:21 cognominal_ joined, clairvy left 18:22 clairvy joined
japhb perl6: print ''.Numeric 18:22
p6eval rakudo 9c2880: OUTPUT«0»
..niecza v11-20-gb962c2f: OUTPUT«␤Unhandled Exception: System.FormatException: Invalid format.␤ at System.Double.Parse (System.String s, NumberStyles style, IFormatProvider provider) [0x00000] in <filename unknown>:0 ␤ at System.Double.Parse (System.String s, IFormatProvider provider) […
..pugs b927740: OUTPUT«*** No such method in class Str: "&Numeric"␤ at /tmp/cy0DKRTMZx line 1, column 7 - line 2, column 1␤»
japhb perl6: print +'' 18:23
18:23 clairvy left
p6eval pugs b927740, rakudo 9c2880: OUTPUT«0» 18:23
..niecza v11-20-gb962c2f: OUTPUT«␤Unhandled Exception: System.FormatException: Invalid format.␤ at System.Double.Parse (System.String s, NumberStyles style, IFormatProvider provider) [0x00000] in <filename unknown>:0 ␤ at System.Double.Parse (System.String s, IFormatProvider provider) […
japhb OK, so what is +'' *supposed* to be?
18:23 cognominal left 18:26 sayu_ joined
japhb It looks like from S02-literals/string-interpolation.t:48-52 that the author of that test file thought it should be 0, but I don't know whether I should trust that. 18:26
18:26 pmurias joined
flussence eval +'' 18:27
buubot_backup flussence: No output.
flussence print eval +''
whoops
eval print +''
buubot_backup flussence: 1
flussence hm, I dunno.
18:27 clairvy joined, risou is now known as risou_awy
colomon moritz: definitely not, it's ID3 version 2.3.0 all the way 18:28
18:28 clairvy left, sayu left
japhb The only two things I can see as likely possibilities are 0 or Failure. I just don't know how strict .Numeric was intended to be. 18:28
18:29 clairvy joined
flussence .Numeric can't be strict by definition, since all it's supposed to do is return something that does the Numeric role. 18:29
18:29 clairvy left
japhb flussence, but it can fail. So that still doesn't rule out either of my possibilities. 18:30
18:30 clairvy joined
japhb (And Niecza and Rakudo have chosen opposite choices, of course) 18:30
18:37 icwiener joined, clairvy left, clairvy joined 18:39 wolfman2000 left, clairvy left 18:40 clairvy joined, clairvy left 18:41 clairvy joined 18:45 am0c joined, clairvy left 18:46 clairvy joined
japhb perl6: +' ' 19:11
p6eval pugs b927740, rakudo 9c2880: ( no output )
..niecza v11-20-gb962c2f: OUTPUT«␤Unhandled Exception: System.FormatException: Input string was not in the correct format␤ at System.Double.Parse (System.String s, NumberStyles style, IFormatProvider provider) [0x00000] in <filename unknown>:0 ␤ at System.Double.Parse (System.String s, …
japhb perl6: print +' '
p6eval pugs b927740: OUTPUT«0»
..rakudo 9c2880: OUTPUT«malformed numeric string␤ in method Numeric at src/gen/CORE.setting:3031␤ in sub prefix:<+> at src/gen/CORE.setting:1831␤ in block <anon> at /tmp/picKqGN362:1␤ in <anon> at /tmp/picKqGN362:1␤»
..niecza v11-20-gb962c2f: OUTPUT«␤Unhandled Exception: System.FormatException: Input string was not in the correct format␤ at System.Double.Parse (System.String s, NumberStyles style, IFormatProvider provider) [0x00000] in <filename unknown>:0 ␤ at System.Double.Parse (System.String s, …
19:11 clairvy left 19:12 clairvy joined 19:13 benabik joined, clairvy left, clairvy joined 19:14 molaf_ joined 19:15 fsergot joined, clairvy left
japhb TimToady, Rakudo's Str.Numeric() is a little indecisive about how it wants to handle empty strings, strings containing only whitespace, and the presence of whitespace in various places in the string. I'm happy to normalize all of that, but normalize to what? What was your intended behavior? 19:15
.oO( Hmmm, I should have done that via phenny ... )
phenny, ask TimToady Rakudo's Str.Numeric() is a little indecisive about how it wants to handle empty strings, strings containing only whitespace, and the presence of whitespace in various places in the string. I'm happy to normalize all of that, but normalize to what? What was your intended behavior? 19:16
phenny japhb: I'll pass that on when TimToady is around.
19:16 clairvy joined
moritz japhb: I thikn the official version is that it should all fail(), but our Failure handling isn'T very good yet 19:16
19:16 molaf left, clairvy left
japhb moritz, can you explain that further? I saw a few comments to that effect in various places, but none explained what the actual problem was. 19:17
19:17 clairvy joined, nnunley left
moritz nom: +'foo' 19:21
19:21 clairvy left
p6eval nom 9c2880: ( no output ) 19:21
moritz nom: +'foo'; say 'alive'
p6eval nom 9c2880: OUTPUT«alive␤»
moritz nom: +'1foo'; say 'alive'
p6eval nom 9c2880: OUTPUT«alive␤»
moritz nom: say +'1foo'; say 'alive'
p6eval nom 9c2880: OUTPUT«Failure.new()␤alive␤» 19:22
moritz japhb: for example should a Failure in void context be fatal, but it isn't
nom: say 1 + (+'1foo')
p6eval nom 9c2880: OUTPUT«No applicable candidates found to dispatch to for 'Numeric'. Available candidates are:␤:(Mu, Mu %_)␤␤ in method Numeric at src/gen/CORE.setting:614␤ in sub infix:<+> at src/gen/CORE.setting:1971␤ in block <anon> at /tmp/VmlQVaf0bm:1␤ in <anon> at /tmp/VmlQVaf0bm:1…
moritz and that is the real problem
diakopter moritz: I seem to have forgotten how to create a new p6eval target (nqplua)
19:23 clairvy joined
moritz once we do something with an exception, we just get a dispatch failure, and the original error message is lost 19:23
diakopter: I'll write up something short for you
19:27 icovnik left, clairvy left
dalek albot: a72d51d | moritz++ | README:
add some instructions on how to add an execution target
19:27
moritz diakopter: there you go
19:27 clairvy joined, clairvy left
diakopter thanks 19:27
sorear good * #perl6 19:28
19:28 bonsaikitten is now known as AmazingPudding 19:29 clairvy joined
diakopter hm; maybe I'll make it use rakudo's parrot 19:31
sorear: here's my status on the method_table error: 19:32
19:32 clairvy left
diakopter somehow my new types are being given .HOW = the bootstrapping KnowHOWHOW instead of NQPClassHOW 19:32
so class Foo { } doesn't work 19:33
19:33 clairvy joined
diakopter I suspect that when the above is fixed, nearly all of the rest of the tests will pass 19:33
19:34 thou joined, clairvy left, clairvy joined 19:38 lue joined
lue hello world o/ 19:38
fsergot hi lue :) 19:41
19:41 clairvy left
dalek albot: bd7c2ac | (Perl 6 Evalbot)++ | README:
Merge branch 'master' of github.com:perl6/evalbot
19:41
diakopter sigh 19:42
19:42 clairvy joined, clairvy left
sorear nqplua: say("Hello world") 19:42
diakopter not yet
19:43 clairvy joined
diakopter evalbot control restart 19:46
19:46 clairvy left, p6eval left, p6eval joined, ChanServ sets mode: +v p6eval
sorear nqplua: say("Hello world") 19:46
diakopter o_O
19:46 clairvy joined, clairvy left
p6eval nqplua: OUTPUT«---␤Hello world␤» 19:46
diakopter golly 19:47
nqplua: say(44)
p6eval nqplua: OUTPUT«---␤44␤»
sorear is it using try.sh?
diakopter yeah; I commented out the make line just now
sorear if so that is where the --- is coming from 19:48
diakopter ok I'll comment out that too
19:48 clairvy joined
diakopter nqplua: say(44) 19:48
p6eval nqplua: OUTPUT«44␤»
dalek albot: ccb34fd | (Perl 6 Evalbot)++ | evalbot.pl:
add nqplua target
19:49
diakopter sorear: did you see my comment about NQPClassHOW above?
19:49 clairvy left, ChanServ sets mode: +o sorear, sorear sets mode: +b $a:clairvy 19:50 sorear sets mode: -o sorear
sorear diakopter: yes 19:50
diakopter I've been trying to track it down without luck
a couple of hours
sorear gimme a failing file
diakopter 25-class.t
sorear thanks 19:51
diakopter I fixed a few other things after you went to sleep last night
sorear yeah, already pulled 19:52
diakopter also at moritz++ suggestion I did some microbenchmarking of replacing hashlookups with fixed array indexes; the result was promising 19:53
19:57 am0c left, sayu_ left
diakopter sorear: hmmmmm NQPClassHOW is a P6opaque. that doesn't seem right 20:03
sorear it doesn't seem entirely wrong to me 20:04
NQPClassHOW.HOW is an instance of KnowHOW and uses the KnowHOWRepr 20:05
s/is/should be/
but I guess as long as .HOW.find_method works NQPClassHOW can use whatever repr it wants
nqplua: my $tyo = NQPClassHOW.new_type(name => "Foo") 20:07
p6eval nqplua: OUTPUT«Assignment ("=") not supported in NQP, use ":=" instead at line 1, near " NQPClassH"␤current instr.: 'parrot;HLL;Grammar;panic' pc 670 (ext/nqp-rx/src/stage0/HLL-s0.pir:436)␤called from Sub 'parrot;JnthnNQP;Grammar;infix:sym<=>' pc 69129 (gen_grammar.pir:18545) (Grammar.p…
sorear nqplua: my $tyo := NQPClassHOW.new_type(name => "Foo") 20:08
p6eval nqplua: OUTPUT«luajit: RakudoRuntime.lua:364: RakudoRuntime.lua:339: RakudoRuntime.lua:582: No method 'new_type' found in knowhow 'Any'␤stack traceback:␤ [C]: in function 'error'␤ RakudoRuntime.lua:364: in function <RakudoRuntime.lua:347>␤ y.lua:45: in function 'Invoke'␤ y.lua:195:
..in f…
sorear blink
diakopter: if you aren't already using it, rlwrap = awesome 20:09
20:11 cafesofie left
awwaiid rlwrap++ # used it in the ocaml repl a lot 20:11
20:17 xinming_ is now known as xinming
moritz nom: say 1 +>>3 20:24
p6eval nom 9c2880: OUTPUT«===SORRY!===␤Confused at line 1, near "say 1 +>>3"␤»
moritz nom: say 1 +> 3 20:25
p6eval nom 9c2880: OUTPUT«0␤»
moritz nom: say 1 +< 3
p6eval nom 9c2880: OUTPUT«8␤»
sorear niecza: say 1 +>>3
p6eval niecza v11-20-gb962c2f: OUTPUT«===SORRY!===␤␤Preceding context expects a term, but found infix > instead at /tmp/NYn09fOaMg line 1:␤------> say 1 +>⏏>3␤␤Parse failed␤␤» 20:26
20:31 molaf_ left 20:33 cafesofie joined
diakopter sorear: any thoughts? I'm stumped. :( 20:38
sorear I've narrowed the failure down to the compose method
before compose, the object is completely fine 20:39
20:39 snearch joined 20:41 Trashlord joined
diakopter sorear: I thought it was dying while in compose (at the call to publish_method_cache at the end 20:43
)
20:49 mj41 left
sorear hrm, how did Any get into @!mro 20:49
benabik Isn't any the automatic base class? 20:50
moritz benabik: probably not this early in the bootstrap :-) 20:51
sorear diakopter: the problem appears to be very simple, and I have no idea why it is *only* affecting 6model/lua 20:52
diakopter do explain :)
sorear diakopter: publish_method_cache calls .method_table on everything in @!mro. @!mro contains a reference to Any (because there is no "Mu", so Mu comes up undefined). Any is a knowhow, so Any.HOW doesn't have a method_table. 20:53
diakopter ooooo maybe b/c I deleted Mu from P6Objects 20:54
sorear You what?
diakopter me re-adds it
sorear what is P6objects anyway 20:55
diakopter a .pm that each tried file loads
moritz niecza: say 1152921504606846976 / 2 20:56
diakopter omg that fixed it
p6eval niecza v11-20-gb962c2f: OUTPUT«576460752303423488/1␤»
moritz niecza: say 1152921504606846976 +< 32
p6eval niecza v11-20-gb962c2f: OUTPUT«0␤»
20:56 icwiener left
moritz niecza: say 1152921504606846976 +< 16 20:56
p6eval niecza v11-20-gb962c2f: OUTPUT«0␤»
diakopter sorear: that fixed all the tests but 45-smartmatch.t 20:57
moritz oh my, I just found that the libtommath shift functions shift by "digits"
and a "digit" is an unsigned long by default 20:58
so not quite the same as a bitshift op in p6 :(
no wonder I got nonsense results
dalek odel: ed3b34c | diakopter++ | common/NQP/P6Objects.pm:
re-add Mu to P6Objects; makes the entire test suite pass but the one that does regexes. sorear++ sorear++ sorear++ sorear++ sorear++ sorear++ sorear++ sorear++ sorear++ sorear++ sorear++ sorear++ sorear++ sorear++ sorear++ sorear++ sorear++ sorear++ sorear++ sorear++ sorear++ sorear++ sorear++ sorear++ sorear++ sorear++ sorear++ sorear++ sorear++ sorear++ sorear++ sorear++ sorear++ sorear++ sorear++
sorear oh, right. 20:59
jnthn Ohhai. I'm home. 21:00
phenny jnthn: 05 Nov 20:04Z <diakopter> ask jnthn my eyes bleed from debugging nqplua; it needs a fresh set of eyes
sorear niecza's bitshift ops are still using int32
diakopter :)
sorear o/ jnthn
jnthn ...I'm so tired I just read "bitshift" as something else :)
moritz :-)
jnthn o/ sorear
sorear diakopter: I think I'm going to take a break now, I'll let jnthn or you get 45-smartmatch.t passing
jnthn is amazed at the nqplua progress while
diakopter sorear: thanks again for all your help 21:01
jnthn I'm certainly going to be joining in. :)
sorear++ diakopter++
diakopter nqplua: class A { }; say(A.new());
p6eval nqplua: OUTPUT«Rebuild in progress␤»
diakopter hrm 21:02
I think I got the rebuild script wrong 21:03
sorear jnthn: can nqpclr do regexes? 21:04
nqpclr: say("Hello world") 21:05
nqpnet: say("Hello world")
jnthn sorear: Only to a limited degree.
p6eval nqpnet: OUTPUT«(timeout)Null PMC access in find_method('compile')␤current instr.: 'main' pc 91202 (gen_grammar.pir:1151)␤make: *** [NQPSetting.dll] Error 1␤Null PMC access in find_method('compile')␤current instr.: 'main' pc 91202 (gen_grammar.pir:1151)␤»
jnthn sorear: If nobody else gets to it before me, I will dig in to porting pmichaud's QRegex
diakopter nqplua: class A { }; say(A.new()); 21:07
p6eval nqplua: OUTPUT«Rebuild in progress␤»
diakopter ergh
jnthn: what will you have the regex compiler emit? pir? 21:08
benabik What is nqplua?
diakopter jnthn's 6model/dotnet ported to lua
jnthn diakopter: er, not if we want to run it on lua ;)
diakopter :)
jnthn diakopter: I'll have to work out how to make it emit Lua. I suspect it'll just require hard thinking and beer. :) 21:09
diakopter sorear: I seem to have broken nqplua rebuild 21:11
first, my rebuild script never terminates
diakopter goes to fix 21:12
japhb moritz, now that I'm bak: I understand the two Failure handling issues you showed, but why would that change what we return from Str.Numeric? Is there somewhere in Rakudo itself that we depend on not returning Failure from a Numeric coercion? Which is to say, why does Str.Numeric fail in some erroneous cases, return 0 for others, and silently ignore yet more?
diakopter nqplua: class A { }; say(A.new());
p6eval nqplua: OUTPUT«Rebuild in progress␤»
moritz japhb: thing is, if we return a failure, we break user code in ways that are *really hard to diagnose 21:13
diakopter sorear: how do I reset the rebuilding state of nqplua
moritz git clean -xdf
deletes all files not under version control 21:14
diakopter no, I mean, evalbot thinks it's still rebuilding but it's not
japhb moritz, ah, OK. So always failing on erroneous inputs won't break Rakudo per se, but it will drive us nuts trying to figure out how user code is breaking -- so for common cases people accidently depend on, we DWIM instead of fail?
moritz japhb: correct
japhb OK, got it. 21:15
japhb thinks about how to incorporate that semi-intelligently in his refactorings
dalek p/bigint: 4715e25 | moritz++ | / (3 files):
bigint bit shift ops
21:16
sorear diakopter: kill the process 21:17
diakopter kill which process
(none are running that match nqplua) 21:18
sorear whatever process has an outstand flock lock on lock.nqplua
diakopter unfortunately I don't know how to do that. I'll try to read about it
nqplua: class A { }; say(A); 21:21
sorear nqplua: say(2)
p6eval nqplua: OUTPUT«A()␤»
nqplua: OUTPUT«2␤»
sorear I guess it finished 21:22
diakopter I rm'd the lockfile
now to make git pull not prompt for a password
21:22 lichtkind joined
diakopter anyone have any ideas on that? 21:23
masak ssh key?
(oh hai, #perl6) 21:24
japhb jnthn, can your optimizer optimize away blocks that are if($foo) where $foo is known 0 at compile time?
sorear pid 10536 on host04 is a git fetch process
it has a start time of "Jun11"
lichtkind sheers 21:25
sorear o/ lichtkind, masak
lichtkind lichtkind is back in his mission control seat
hai sorear
colomon sorear, o/
japhb diakopter, either as masak said using ssh as your transport, and using an ssh key that you have under ssh-agent (so that it can store the fact that you have unlocked the key already during the current session), or a ~/.netrc if you are stuck with HTTPS transport. 21:26
moritz diakopter: you can simply use an URL that does not need authentication
diakopter moritz: I thought I did
sorear diakopter: url = diakopter@github.com/diakopter/6model.git
diakopter: this is your problem 21:27
diakopter ah
diakopter fixes
moritz git://github.com/diakopter/6model.git
jnthn japhb: What does "known zero" mean?
japhb: constant? 21:28
diakopter evalbot: rebuild nqplua
evalbot rebuild nqplua
p6eval OK (started asynchronously)
diakopter nqplua: say(4)
p6eval nqplua: OUTPUT«4␤»
diakopter \o/
21:29 PacoLinux left 21:30 clairvy joined
japhb jnthn, a constant, an enum, ... 21:31
21:31 clairvy left
diakopter jnthn: it doesn't necessarily need to emit Lua; it could be an interpreter 21:31
jnthn japhb: Not yet but it's decidedly doable
21:32 wk_ joined
japhb jnthn, OK, thank you. 21:32
21:32 aloha left
jnthn japhb: The current optimizer barely scratches the surface of what I want to do :) 21:33
moritz nqp: say(0xdead)
p6eval nqp: OUTPUT«57005␤»
japhb jnthn, Isn't that always the case?
:-)
jnthn yes ;) 21:35
diakopter nqplua: say(0xdead)
p6eval nqplua: OUTPUT«57005␤»
jnthn can never has enough tuits
japhb Oh, also, why does Str.Numeric hotpath 'NaN'? Is there some performance issue related to NaN propagation or somesuch?
masak they're in high demand and low supply.
21:35 wk left 21:36 aloha joined
moritz I think it was easier to deal with the right away in one spot than all over the place 21:36
japhb moritz, Ah, OK, so that can move if the implementation ends up easier another way. 21:37
moritz japhb: I'd say so, yes
japhb is wary of destroying hard-won behaviors just because they're not obvious ... and I good think I asked about the Failure case, too. :-) 21:38
moritz nom: say +^1
p6eval nom 9c2880: OUTPUT«-2␤»
japhb *a good thing
dalek p/bigint: d78307d | moritz++ | / (3 files):
bigint bitwise and, or, xor
moritz is binary negation just the same as -($number + 1) ? 21:39
masak think so. 21:40
benabik That's the definition of two's complement.
moritz then I know how to implement it for bigints ... tomorrow :-)
masak moritz: I think I've found a bug in the backtrace printer: gist.github.com/1343548
japhb Is there a reverse (searches backwords) form of pir::find_not_cclass?
moritz masak: yes, I know. But I don't think the backtrace printer is to blame 21:41
masak oh? 21:42
also, I think I've found a regression:
nom: class A {}; say A.new ~~ A.new
p6eval nom 9c2880: OUTPUT«No applicable candidates found to dispatch to for 'ACCEPTS'. Available candidates are:␤:(Mu, Mu $topic, Mu %_)␤␤ in method ACCEPTS at src/gen/CORE.setting:492␤ in block <anon> at /tmp/9AmMECK90Y:1␤ in <anon> at /tmp/9AmMECK90Y:1␤»
masak nom: say Any.new ~~ Any.new
p6eval nom 9c2880: OUTPUT«No applicable candidates found to dispatch to for 'ACCEPTS'. Available candidates are:␤:(Mu, Mu $topic, Mu %_)␤␤ in method ACCEPTS at src/gen/CORE.setting:492␤ in block <anon> at /tmp/SDubN8FKUJ:1␤ in <anon> at /tmp/SDubN8FKUJ:1␤»
jnthn masak: We tracked that down to missing ACCEPTS in Any, iirc?
masak b: class A {}; say A.new ~~ A.new
p6eval b 1b7dd1: OUTPUT«Bool::False␤»
masak jnthn: yes. 21:43
jnthn: well, I was unable to check whether it exists in b, but seems it does.
b: say Any.new ~~ Any.new
p6eval b 1b7dd1: OUTPUT«Bool::False␤»
masak submits rakudobug
moritz masak: I think the wrong file is come out wrongly out of the backtrace annotations already
masak moritz: but there's a fix, right? 21:44
moritz the handling of file names in Backtrace.pm is so trivial that I'd be shocked if it were wrong
masak ok.
moritz -> slepp 21:45
... modulo typos
masak phenny: "schlepp"? 21:46
phenny masak: "slow" (de to en, translate.google.com)
masak ;)
masak .oO( slov lift )
jnthn :D 21:48
lichtkind may i drop here my noob question with compiling rakudo?
masak moritz: as a bot, I'm confused by the above as to what to do. would an RT ticket be beneficial, or just noise? as a developer, I would much prefer for it to report the correct module -- I'm fine with the error not being in code you wrote, as long as it's fixed eventually. 21:49
lichtkind: ask away. :)
jnthn masakbot submit rt
masak submits rakudobug
whoa.
creepy. 21:50
jnthn ...works faster than p6eval
masak ;)
lichtkind how can i update the parrot version that is in my local rakuto git repo? 21:55
21:56 mj41 joined, f00li5h joined
masak hm, does 'perl Configure.pl --gen-parrot' do the trick? 21:57
jnthn yes 21:58
well, if the version update is needed
22:00 ethndbst left 22:01 alvis joined
lichtkind masak: thats embarassing i know that one why i forgot, oh wait i am sleepy bcause got up before 6 in bratislava today :) 22:01
22:01 alvis left
lichtkind now actually thats what i done 22:02
theres ist something else
dalek odel: 64f520a | diakopter++ | lua/runtime/ (2 files):
first bit of prep for IntegerIndexesOptimizer
22:09
22:10 Vlavv` left 22:13 localhost left 22:15 localhost joined
masak lichtkind: I forget things and do embarrassing things sometimes even when I'm well-rested. ;) 22:15
22:16 Vlavv` joined
lichtkind where are the bins in rakudo? 22:17
i just need to set this path and then im done i believe 22:18
got it 22:21
my brain works :)
sorear j
masak 'night, #perl6 22:42
22:43 carlin joined
lichtkind good night 22:49
22:57 wolfman2000 joined 23:00 zby_home left 23:06 mj41 left 23:08 daxim left 23:13 ksi left 23:18 benabik left 23:26 wolfman2_ joined 23:27 wolfman2000 left 23:37 aaron joined 23:39 aaron left
dalek odel: 0cbe07e | diakopter++ | lua/runtime/ (15 files):
add integer indexes for all the representations; put .class in the metatables (sorear++)
23:47
23:51 dual left 23:52 whiteknight joined, whiteknight is now known as Guest97608 23:56 vmsbp left
dalek odel: a72e595 | diakopter++ | lua/runtime/Runtime/ (6 files):
more indexing progress; more class structure cleanup
23:56
23:57 wolfman2000 joined, aber joined 23:59 abercrombie left