#parrot Parrot 0.6.4 "St. Vincent Amazon" Released | parrotcode.org/ | 15 new, 648 open, 80 stalled tix | logged in irclog.perlgeek.de/parrot/today
Set by moderator on 28 July 2008.
00:05 bacek joined, Ademan joined
Whiteknight i can break IMCC, and I can do it convincingly 00:28
it would be like it never worked in the first place 00:29
Tene Whiteknight: You think you'll get your GC working eventually? 00:30
Whiteknight no 00:33
but I'm going to try!
(at least I'm honest)
Tene You going to keep working on it after SoC is over?
Whiteknight I'm going to have to!
But yes, I plan on seeing this project through to the bitter end 00:34
Tene :)
jonathan is hoping for a sweet end.
Whiteknight The deeper I get into my implementation the more problems, vaguarities, and ommissions I find in parrot and the docs 00:35
so at the very least I'm going to fix some of those
dalek r29892 | Whiteknight++ | gsoc_pdd09: 00:36
: [gsoc_pdd09] reinstate some tests that I've been ignoring, but with a big fat TODO
diff: www.parrotvm.org/svn/parrot/revision?rev=29892
00:37 davidfetter joined
dalek r29893 | Whiteknight++ | gsoc_pdd09: 00:47
: [gsoc_pdd09] major simplification of the Gc_it_hdr data structure, remove unnecessary pointer redirections and dereferences
diff: www.parrotvm.org/svn/parrot/revision?rev=29893
r29894 | Whiteknight++ | gsoc_pdd09: 00:57
: [gsoc_pdd09] Some big changes:
: * Remove the idea of "cards" entirely. It's expensive and complex, and the net benefits are nil
: * Remove all datastructures and macros associated with the old cards
: * Simplify arena allocator
: * remove the ill-defined "config" member of the Gc_it_data structure, which has never found a use
diff: www.parrotvm.org/svn/parrot/revision?rev=29894
r29895 | Whiteknight++ | gsoc_pdd09: 00:59
: [gsoc_pdd09] fix all my function prototypes with make headerizer
diff: www.parrotvm.org/svn/parrot/revision?rev=29895
00:59 neopallium joined
dalek r29896 | Whiteknight++ | gsoc_pdd09: 01:18
: [gsoc_pdd09] a few more simplifications and fixes
diff: www.parrotvm.org/svn/parrot/revision?rev=29896
01:26 grim_fandango joined 01:31 grim_fandango joined 01:47 Limbic_Region joined
Whiteknight in my branch, it appears that IMCC broke itself 01:54
because it's broken now, and I don't think I did anything to cause it
dalek r29897 | Whiteknight++ | gsoc_pdd09: 02:26
: [gsoc_pdd09] update a test file to match trunk. Still having compile problems in imcc
diff: www.parrotvm.org/svn/parrot/revision?rev=29897
03:21 silug joined
dalek r29898 | coke++ | trunk: 03:31
: [distro] rebuild MANIFEST.SKIP
diff: www.parrotvm.org/svn/parrot/revision?rev=29898
r29899 | coke++ | trunk: 03:32
: [tcl] migrate the list reverse utility sub into a pmc METHOD
diff: www.parrotvm.org/svn/parrot/revision?rev=29899
r29900 | coke++ | trunk: 03:38
: [tcl] remove unused function parameter
diff: www.parrotvm.org/svn/parrot/revision?rev=29900
03:41 petdance joined 03:44 grim_fandango joined
dalek r29901 | particle++ | trunk: 04:27
: [config] remove todo block from bonus tests
diff: www.parrotvm.org/svn/parrot/revision?rev=29901
r29902 | coke++ | trunk: 04:29
: [tcl] setup some PMCs once at runtime instead of every time a function is invoked. (Ideally, create them as constants at build time.)
diff: www.parrotvm.org/svn/parrot/revision?rev=29902
04:44 masak joined
dalek r29903 | infinoid++ | pdd13pbc: 05:14
: [pdd13] Merge changes from trunk (-r29604:29902) into pdd13pbc branch.
diff: www.parrotvm.org/svn/parrot/revision?rev=29903
05:15 Auzon joined
dalek r29904 | coke++ | pdd25cx: 05:45
: update some real_exceptions that probably got merged in from trunk.
diff: www.parrotvm.org/svn/parrot/revision?rev=29904
r29905 | coke++ | pdd25cx:
: hearing no object, apply patch from RT # 56786
diff: www.parrotvm.org/svn/parrot/revision?rev=29905
05:46 Psyche^ joined 06:34 uniejo joined 06:35 iblechbot joined
cotto_home how to I get debugging output from imcc? 06:35
ie what's the easiest way to change IMCC_INFO(interp)->verbose 06:36
found it. looks like -v is my friend 06:39
masak if a parameter in PIR is :optional and happens to be 0, is it treated as if it didn't exist? 06:58
because that's how it seems to me.
Tene masak: is the opt_flag set? 07:02
masak Tene: good question
purl Yeah, it is. I'm stumped.
masak I'll check
Tene: no, it isn't. 07:03
how does that work, by the way? the mechanism with :optional and :opt_flag, I mean?
Tene ENOCLUE 07:04
masak ah, www.parrotcode.org/docs/pdd/pdd03_c...tions.html 07:05
seems to me the :opt_flag really should be set if I send in a 0
(...but it isn't)
could this be related to the fact that `./perl6 -e0` still sends me into REPL mode? 07:06
moritz whoa, spectest_regression is badly borked for me 07:07
Backtrace - Obtained 15 stack frames (max trace depth is 32).
(for about every test file)
masak not here -- mine seems to hang instead... 07:09
moritz masak: during the fudge step?
masak aye
moritz press Ctrl+D 07:10
pmichaud and I tried to debug the hang, but it's not so easy
but it's only one of my two local copies that is so badly b0rked 07:11
masak yep, getting the backtraces too
make realclean?
purl well, make realclean is sometimes need in parrot to work against missing dependencies
moritz masak: didn't work for. A fresh checkout did, otoh 07:12
masak :(
these are sad times when not even make realclean does the job...
moritz aye 07:13
masak moritz: fresh checkout, still backtraces 07:22
moritz masak: that's bad 07:23
masak :(
07:25 Ademan joined
cotto_home at least it's consistent 07:26
masak yes, it would almost be worse if a fresh checkout fixed it but not a make realclean
should I report it as a bug?
moritz yes 07:30
masak done. 07:31
moritz thanks 07:33
masak np.
moritz masak++ # numerous bug reports
.oO( I hope you attached a patch? ;-)
masak well...
I thought I'd let the rest of you brood on this one :-P 07:34
moritz ;)
well, I have a good excuse - I deleted my tainted checkout, and on the clean one it works for me
masak lucky you... :)
must be that It-Just-Works effect on Linux... 07:35
moritz my 32 bit Debian box is so boring, I never have platform specific failures.... 07:36
(OT: is it *really* so hard to read error messages? this is a gold example: www.perlmonks.org/?node_id=701356 heck, it says in the error message exactly what's wrong....) 07:37
(I see these kind of questions quite often, people posting an error message and asking "what's wrong", when the error message literally tells them what's wrong)
masak people who are new to a technology do that. 07:38
at least if they lack the meta-knowledge required to guess what's wrong
they're just overwhelmed by the fact that things didn't work
moritz seems like 07:39
it feels so stupid nonetheless
masak the guy probably has no intimate knowledge of @INC, for starters
yes, it feels stupid
but in a teacher-student situation, you get that all the time
moritz yeah, good point
masak and the trick is _not_ to react on how stupid it feels from your perspective :) 07:40
moritz I try. Most of the time. ;-)
masak me too :)
my weak point is trying to live side by side with people who misuse languages they know less about than I do. 07:41
like people who use ŠÆ as an R, or Š” as an A 07:42
moritz oooh, now I'm also getting the backtraces 07:44
dalek r29906 | moritz++ | trunk: 07:46
: [rakudo] add S29-trig/trig.t to spectest_regression, s1n++
: Patch Courtesy by Jason Switzer <jswitzer at gmail dot com>
diff: www.parrotvm.org/svn/parrot/revision?rev=29906
moritz is it only my impression, or is 'make realclean ; perl Configure.pl --cc='ccache gcc' && make -j 2' *really* fast nowadays? 07:52
masak: I changed severity of your ticket to "High" and added a comment 08:03
masak moritz: dz
moritz dz? 08:04
purl dz is actually a dutch brand of said licorice
masak purl: dorget dz
purl masak: i'm not following you...
masak purl: forget dz
purl masak: I forgot dz
masak moritz: dz is Polish for dziękuje
...which means 'thank you'
it's very easy to write 08:05
'dz', I mean
moritz I'm mostly ignorant to all eastern countries and language :( 08:15
masak moritz: it's a rewarding field of study, should you ever pick it up. the languages are all quite closely related 08:17
moritz masak: my next target is Norwegian 08:18
masak moritz: moving there?
moritz but I feel overstrained by learning Perl 6 already ;-)
masak :)
moritz masak: no, my girl friend is half norwegian
masak right. I remember now.
well, you're already in the right language group, so shouldn't be too hard 08:19
moritz aye
masak and norwegian is fairly clearly pronounced, by my ears
moritz it's *nearly* understable when you know German and Englisch already
masak sounds like a good start 08:20
moritz but it's hard for me to speak it, because it requires a certainy melody in the language that's totally missing from both German and English
so I always feel like I'm singing, but not quite
dalek r29907 | bernhard++ | trunk: 08:22
: [codingstd] remove trailing whitespace
diff: www.parrotvm.org/svn/parrot/revision?rev=29907
masak moritz: people often accuse us Scandinavians of speaking in a 'singing' voice. I can understand what they mean. to us Swedes Norwegian sounds extra funny, not lest because there's a cultural undercurrent of making fun of Norwegians 08:24
moritz ;) 08:25
08:44 alvar joined
masak (which I don't necessarily subscribe to -- but it takes a mental effort to dissociate oneself from any country-wide prejudice) 08:53
alvar hi 08:56
purl niihau, alvar.
alvar I have a strange problem compiling parrot on OS X
hey, purl ;)
purl alvar: excuse me?
alvar it breaks with "ld: file not found: /opt/local/lib/libicuuc.dylib.34" and there is surely no such libicu 08:57
ICU is installed as 3.8.1 from the Macports 08:58
but even when I disable ICU support in Configure, it still throws the same error
any hints? I guess that something in my config is broken, but what?
masak purl: it's "ni hao" 09:01
purl masak: excuse me?
masak purl: it's "ni hao", not "nihau" 09:07
purl masak: what?
masak here I am, talking to a bot...
moritz no, hi is <reply> ni hao
purl okay, moritz.
moritz hi
purl what's up, moritz.
moritz hi
greet me again, stupid bot ;) 09:08
bacek moritz: no. stupidbot is offline
moritz bacek: "stupid bot" ne "stupidbod" ;-)
bacek moritz: :) 09:09
moritz: btw, there is some strange test in S29-num/sqrt.t 09:11
fudged one
eval("sqrt($i.i)" looks very suspicious for me
moritz if i is defined in terms of multi postfix:<i> { ... } it's not wrong 09:12
bacek moritz: should -1.i works? 09:22
moritz perl6: say 1. 09:23
polyglotbot OUTPUT[Statement not terminated properly at line 1, near "."␤current instr.: 'parrot;PGE::Util;die' pc 120 (runtime/parrot/library/PGE/Util.pir:82)␤called from Sub 'parrot;Perl6::Grammar;eat_terminator' pc 23624 (src/gen_grammar.pir:2812)␤called from Sub 'parrot;Perl6::Grammar;statementlist' pc
..22637 (src/gen_grammar.pir:2449)␤called from Sub 'p...
moritz bacek: STD.pm parses it, so I guess "yes" (not sure though) 09:24
bacek Of cause it parses :) And try to find method "i" on Int
perl6: say -1.i 09:25
polyglotbot OUTPUT[Method 'i' not found for invocant of class 'Int'␤current instr.: '_block11' pc 21 (EVAL_13:13)␤called from Sub 'parrot;PCT::HLLCompiler;eval' pc 806 (src/PCT/HLLCompiler.pir:481)␤called from Sub 'parrot;PCT::HLLCompiler;evalfiles' pc 1088 (src/PCT/HLLCompiler.pir:610)␤called from Sub
..'parrot;PCT::HLLCompiler;command_line' pc 1267 (src/PCT...
bacek It doesn't work in pugs too
moritz most Complex stuff doesn't work in pugs 09:26
send a mail to p6l?
bacek moritz: think so? There is no such method "i" in S29 anyway... 09:28
moritz hm, right 09:29
dalek r29908 | kjs++ | trunk: 10:01
: [imcc] add .HLL_map coretype '=' newtype syntax. (to replace .HLL_map coretype ',' newtype later on)
diff: www.parrotvm.org/svn/parrot/revision?rev=29908
10:40 kj joined 12:36 iblechbot joined 12:59 julian_ joined 13:05 petdance joined 13:06 gryphon__ joined
dalek r29909 | coke++ | trunk: 13:23
: [tcl] remove unused param; use more named registers.
diff: www.parrotvm.org/svn/parrot/revision?rev=29909
13:26 gryphon__ joined
kj Coke: hi 13:45
purl bonjour, kj.
kj did you see my mail on .param int "key" => answer syntax?
13:49 DietCoke joined
DietCoke kj: hi. What's up? (meeting RSN) 13:49
13:49 alvar joined
kj oh you busy? not that important; i replied on yr email in which you indicated the syntact.sugar for .params was removed in pdd19 13:50
DietCoke <shrug> I'm just the messenger. 13:51
kj I know, I'm not shooting you ;-) But I included a different example
DietCoke ah, yes. did see that. I have it starred and will try it.
kj no hurry, just wanted to ping ya
DietCoke worst case, we open a ticket; we don't have to add the note about the deprecation back in. 13:52
(not in PDD19; we can put it right in DEPRECATION.pod)
kj okay
I see
13:52 alvar joined
DietCoke later. =-) 13:52
kj bye
14:20 alvar joined 14:31 jhorwitz joined 14:57 iblechbot joined 15:17 Lorn joined
Lorn how i use parrot inside perl5? Inline::Parrot is deprecated. 15:22
davidfetter oi, Lorn 15:23
Lorn davidfetter: hey, good to see you here :) i thought that you only uses freenode, how are you? 15:25
davidfetter tdo blz aqui ;)
Lorn davidfetter: i need to remember somethings about parrot ^^ 15:27
davidfetter i wish i knew
particle lorn: try parrot::embed, in parrot's ext/ dir 15:28
Lorn particle: thanks :)
15:29 paco joined 15:30 ambs joined
Lorn win 15 15:30
15:30 ambs left
davidfetter Lorn, any chance you'll be at pgcon.br in september? 15:31
Agora o elefante vai pegar! ;)
Lorn davidfetter: sure, and i will try to show something useful about PL/Parrot 15:33
davidfetter w00t!
Lorn davidfetter: /j #sao-paulo.pm :) 15:40
16:02 Theory joined 16:26 alvar joined 16:47 Andy joined 17:42 particle joined 18:02 Ademan joined
dalek r29910 | coke++ | trunk: 18:43
: [tcl] -TclArray uses a hash, but isn't really a parrot-style hash (no nested keys), so create a new 'does' type and key off that instead of specifically checking the type, or seeing if we 'does hash'.
: - switch a string check over to isa from typeof.
: - Fix a typo
diff: www.parrotvm.org/svn/parrot/revision?rev=29910
19:02 ruoso joined 19:19 Theory joined 19:22 rurban joined
cotto Is IMCC's way of optimizing code (i.e. loop through all optimizations, restarting after each change, until none of them change anything) the usual way optimizing compilers work? 19:29
particle cotto: it's a common way 19:42
19:42 donaldh joined 20:02 Theory_ joined
cotto_work particle, thanks 20:08
rurban anyone tried llvm-2.3 with parrot?
particle i haven't
moritz ask nothingmoose... erm, nothingmuch ;) 20:09
rurban yeah, already talked with him. But he used the old llvm with intermedieate bytecode only. the new one is a dropin replacement for gcc 20:11
should be much simplier than his attempts
I watched the google video yesterday about llvm 20:12
particle wow, i had no idea it's drop-in now
rurban and built it from source right now.
particle that's great progress
rurban yeah.
they even make their own frontend now, clang, but this not ready yet
cotto_work llvm++
rurban clang should replace gcc
cotto_work rurban, do you have a link to that video? 20:13
moritz looks if his debian lenny as llvm gcc somewhere
rurban it is mainly for apple for ide's
llvm.org/docs/GCCFEBuildInstrs.html is for the build
the video is over one hour! 20:14
video.google.com/videoplay?docid=61...7161128523
but gcc-4.3 is not yet supported, just 4.2
particle at least it's not gcc-2.7 20:15
rurban I'll be playing then with llvm building parrot. Looks hairy.
Again some Config_heavy.pl cheats 20:16
tewk I've got some ideas for using llvm to get rid of c/pir continuation barriers
rurban I also want to try out intel's icc c++ 10 20:17
I've got that on Gentoo
particle it was compiling there months ago
i have it on win32 20:18
er, had
rurban good, significant speedup? or just 5-10%
moritz tewk: but I think in general we need non-llvm solutions as well
rurban sure
I heard llvm is mainly popular for hendheld's because they support smaller integers for cheaper chips 20:19
11bit int e.g.
:)
like lisp integers
particle 2**11
purl 2048
particle oops
rurban the rest is bigint then
but this int range is really fast then. faster than 32 but ints 20:20
s/but/bit/
20:23 dolmen joined
rurban A not for llvm building: freeebsd uses csh as default, and this does not build llvm. I had to install bash first. gmake is also better than make 20:23
moritz compiles parrot with llvm-gcc 4.2
rurban ah, lenny has llvm. good. 20:24
moritz the first t/op/ tests pass 20:25
20:26 rurban_ joined
moritz all tests succeful 20:33
donaldh :) 20:34
moritz now I'm running the benchmarks 20:35
20:39 cognominal joined
cotto_work cool. tests pass with llvm-gcc 20:49
particle make smolder_test
moritz particle: will do after the benchmark 20:50
particle fab!
be nice to have a PLATFORMS update, too
rurban great! 20:51
20:51 Whiteknight joined
moritz is there any tool that creates a line for PLATFORMS for me? 20:51
particle not that i know of 20:56
it'd be nice to have it generated from smolder
dalek r29911 | Whiteknight++ | gsoc_pdd09: 20:58
: [gsoc_pdd09] update to trunk r29910
diff: www.parrotvm.org/svn/parrot/revision?rev=29911
moritz running smolder_test right now 21:06
how do I run the tests with JIT and CGoto? 21:12
particle make testj and testC iirc 21:21
moritz ok, testj succeeded
I'm running one of the other tests now
jonathan hi hi 21:23
jonathan waves at everyone
particle hey there, jonathan
jonathan How's spectest_regression running for folks now - I saw commetns earlier today about problems? 21:24
moritz jonathan: totally borked
jonathan Geck.
jonathan is grabbing a build now
moritz at least for me and masak
jonathan OK - any clues on why? 21:25
moritz RT #57452
some memory corruption, presumably 21:26
jonathan stares at the backtrace
paco Backtrace - Obtained 15 stack frames (max trace depth is 32). :(
jonathan Parrot_open_p_s_sc 21:27
dod_register_pmc
particle did anyone track down the rev that broke it?
moritz particle: I tried, and failed
jonathan Why the heck would dod_register_pmc call an op?
moritz which test<runcore> letter do I have to run for the EXEC column in PLATFORMS? 21:28
jonathan guesses e!
...but doesn't actually know
moritz Valid runcores are b, C, f, g, j, r, S.
no e in the docs
particle is exec default?
jonathan I think testing the exec core is kinda different though
moritz ah, it's testexec
particle ah, right. 21:29
jonathan Since it makes an exe file and then you run that.
moritz just the long name ;)
jonathan It basically sweet-talks JIT into dumping the machine code it generates into a file rather than a block of memory.
...and a few other "minor" details..
moritz now for testexec I get some failures 21:30
jonathan isn't surprised.
I don't think anyone is actively maintaining it.
moritz oh, but with normal gcc also
rurban moritz: llvm-2.3 or 2.2 or 2.1 (4.2 is just the gcc version) 21:32
moritz 2.2-8
purl -5.8
rurban and --optimize would be the real deal. for me it fails because I have a big llvm mess currently.
jonathan t\\spec\\S02-builtin_data_types\\anon_block..........dubious Test returned status 5 (wstat 1280, 0x500)
For like, all of them. 21:33
rurban gcc in /usr/bin and llvm-gcc in /usr/local/bin from source. not good.
particle jonathan: i've been getting that for more than a day
jonathan On the upside, it runs faster than make spectest_regression usually does.
particle i figured it was just my bad luck
jonathan Nope, it's all of our bad luck.
particle so much for christmas in july 21:34
jonathan Bizzarely make test is fine.
particle yep, here too
rurban jonathan: minor details = elf header, link segments fixups 21:36
moritz: 2.3 should have a much better linker
jonathan rurban: Aye....I spent a chunk of my life writing code to parse the Windows equivalent... 21:37
rurban and 2.4 coming soon better c++ code (faster exceptions). I wonder if tls (__thread attributes) are already in. Do we use that?
jonathan: PE/COFF headers?
jonathan rurban: Aye. 21:38
rurban: When I was working on .Net => Parrot bytecode translation.
rurban tls: because on clisp we just found out that native gcc supported tls is MUCH faster then doing it by hand
net2pbc, I remember 21:39
jonathan Sadly, I don't have tuits to maintain it or extend it any more.
My word does --trace 1 slow things down... 21:41
rurban new TLS in clisp: thread.gmane.org/gmane.lisp.clisp.devel/18684
benchmarks in article.gmane.org/gmane.lisp.clisp.devel/18692 21:43
jonathan: I did it also. A COFF dumper in pure perl search.cpan.org/src/RURBAN/B-C-1.04.../pl2exe.pl 21:46
Not really a full linker.
But it's a poor-mans "windows compiler" for perl5. 21:49
jonathan Nice
Fancy working on the Parrot exec core? ;-)
rurban Not really for now. When I have more time maybe.
First I have to fix the perl compiler. Then I wanted to optimize the perl5 compiler. Then maybe parrot. parrot already is good enough 21:50
particle jonathan: you can turn 'trace 1' on inside perl 6 code
dalek r29912 | moritz++ | trunk: 21:51
: update PLATFORMS for llvm-gcc on i386
diff: www.parrotvm.org/svn/parrot/revision?rev=29912
rurban I thought of using the parrot "unexec" feature to revive perl5 undump cmdline switch, to generate native exe's there
Or just use the old emacs unexec.
jonathan particle: Indeed.
For some reason I'd not thought we were making it that far.
rurban moritz: r29912 has a typo llvm-gc-4.2 => gcc 21:52
not a new garbage collector 21:53
moritz too late, and I'm too distracted 21:54
rurban: thank you
dalek r29913 | moritz++ | trunk: 21:55
: fixed typo in PLATFORMS, rurban++
diff: www.parrotvm.org/svn/parrot/revision?rev=29913
rurban ok, I'll go to sleep now. bye
jonathan Erm, will this sure don't help us. 21:56
inline op null(out STR) :base_core { $1 = NULL;
}
Who worked on PERL6LIB? 21:57
particle jhorwitz
purl i guess jhorwitz is "mod_parrot-guy" or mailto:jeff@smashing.org
jonathan OK
particle did he muck it up?
jonathan particle: Yes and no.
particle typical.
jonathan It's screwed up that the null op for a string literally sticks a null in the register, right?
Or is that how we actually represent a null string?
particle null as in \\0 ? 21:58
jonathan If it *is*, then the open op is screwed up because it's not checking for a null.
As in, the null STRING
particle oh, yeah, null string handling is screwed up in parrot
i tried to fix it some time ago with NULLSTRING macro, like NULLPMC, but that was rejected 21:59
er, PMCNULL and STRINGNULL i guess
jonathan wow
.sub 'main'
$P0 = open $S0, $S1
.end
HOW TO SEGFAULT PARROT IN JUST ONE EASY LINE OF PIR TODAY!!!11!! 22:00
particle lovely.
jonathan Sometimes I wonder how anything in this VM works. :-|
moritz too ;-)
jonathan OK, so what's STRINGNULL...
Hmm...doesn't exist 22:01
22:02 wknight8111 joined
jonathan OK, it's certainly the PERL6LIB patch that introduced the bug. 22:06
I'm not immediately sure how to fix it.
22:06 bacek joined
jonathan And I'm certainly not comfortable that Parrot is using NULL to represent a null string. 22:06
22:06 Lorn joined
jonathan aha. I have a patch to make spectest_regression run again. 22:07
particle kj's imcc patches are full of warnings :( 22:10
22:12 Lorn_ joined
jonathan particle: That's probably because we have SO many warnings enabled... 22:12
And people probably see different warnings on different platforms.
dalek r29914 | jonathan++ | trunk: 22:13
: [rakudo] Fix our ability to run spectest_regression. The PERL6LIB patch was, it seems, broken in that if there were no paths it just returned a null string and didn't try the current working directory where Test.pm is. I've made it default to just the filename now, and then it searches, which is probably wrong, but not being able to run spectest_regression is far wronger. ;-) Additionally, it's scary that Parrot was segfaulting as a result of using a string
diff: www.parrotvm.org/svn/parrot/revision?rev=29914
jonathan I've put in code before that was warning-free on the platform I developed it on, but gave warnings elsewhere. I'm not saying all the warnings are bad, just suggesting maybe why we get 'em. :-)
And that the people checking in code that produces 'em maybe wasn't being sloppy. :-)
OK folks, you can all happily make spectest_regression again now. :-) 22:14
particle well, in my opinion, signed/unsigned mismatch and unreachable code are sloppy
jonathan Ah.
Those particular warnings, I'd expect to see on pretty much all platforms... 22:15
jonathan hopes someone on the commit list reads his rant about 'null $S0 leads to segfault' and chases it up. 22:16
particle assignment within conditional is debatable. i don't like it, but some c coders do
jonathan I wouldn't say I dislike it, but I don't tend to do it either.
particle i generally put constants on the left to make sure i get a compiler error if i mistype the comparison op 22:17
if (3 = foo)
jonathan I've seen that trick. 22:18
It's not a bad idee. For some reason I always do a double-take when I see it.
22:19 teknomunk joined
particle yeah, taht's the problem 22:19
jonathan I don't know why, I've somehow always written the constant on the RHS since I was a kid.
And I think a lot of people tend to. I'm not sure there's a real reason for it, though.
Just cultural norms.
moritz normaly you say "this variable is 3", and not "3 is this variable" 22:20
jonathan Ah, yes.
That's a good point.
cognominal some manager who peered on my code did the same remark as moritz
moritz natural language doesn't commute ;) 22:21
donaldh Similar to the OO idiom of "string".equals(var)
Saves a null check.
moritz I still haven't adopted the if (3 == var) notation although I *know+ it's safer 22:22
jonathan In C#, writing if (foo = bar) instead of if (foo == bar) gets you a type check failure at compile time usually. Because the thing in the (...) has to evaluate to something of boolean type.
This is nice, apart from you have to write a load of checks explicitly.
donaldh Yes, Java too.
jonathan if (somestring.Length != 0) ...
22:22 bacek joined
jonathan Aye, C# borrowed a few things from Java. ;-) 22:22
22:22 Limbic_Region joined
jonathan But then they deviated from Java by, like, adding a few features to the language. 22:23
</java_troll>
donaldh :D
donaldh goes to bed 22:24
purl grabs the lube and follows donaldh
cognominal PHEAR PURL
dalek r29915 | Whiteknight++ | gsoc_pdd09: 22:27
: [gsoc_pdd09] small change, remove unused directive. Didn't fix the compile error I'mhaving, however
diff: www.parrotvm.org/svn/parrot/revision?rev=29915
cotto_work purl borders on human sometimes
purl cotto_work: sorry...
moritz I get three test failures in /spec/S03-operators/arith.rakudo 22:30
cotto_work although in this instance she's closer to creepy
moritz but too tired to investigate
jonathan moritz: Hey, at least they don't *all* fail now. ;-) 22:31
particle i get those, too
moritz yes, jonathan++
jonathan Do I get to claim I fixed almost 2000 tests in one night now?
moritz and I stell get a failure in t/spec/S02-builtin_data_types/range.rakudo
jonathan Oh?
Hmm.
bacek morning all
purl morning, bacek
jonathan hi bacek
moritz: Seeing if I get it here. 22:32
bacek moritz: Missing '}' at line 167 in range.t?
OTOH arith.t works for me 22:33
jonathan moritz: Passes here.
moritz: I wonder - can you check if eol-style: native is set on range.t?
svn:eol-style, I mean 22:34
22:37 kid51 joined
bacek jonathan: stupid question: what does "regex" mean at stdstopper in STD.pm? 22:37
particle cd t/spec && svn pl ... 22:38
moritz it's not
22:39 Theory joined
moritz YaY 22:40
fixed
jonathan++
22:41 ruoso joined
dalek r29916 | jkeenan++ | trunk: 22:42
: Add test to cover one uncovered branch: mock absence of ctags for _evaluate_ctags().
diff: www.parrotvm.org/svn/parrot/revision?rev=29916
jonathan w00t 22:44
bacek: regex = might backtrack
moritz rule = regex + :ratchet 22:45
no, token = regex + :ratchet
and rule = Regex + :ratchet :sigspace
bed &
bacek jonathan: Do I understand right that it is not implemented in PCT? 22:47
moritz: g'night
jonathan bacek: it is implemetned 22:50
bacek jonathan: ah. ok. 22:52
bacek trying to add stdstopper to rakudo... 22:53
failing atm...
22:55 ruoso joined 23:01 davidfetter joined, teknomunk_ joined 23:07 bacek joined
cotto_work 19/539309 23:09
purl 3.52302668785427e-05
davidfetter wonders whether he can sneak purl a zero divide 23:14
cotto_work 0/0
0/0e1
23:16 Theory joined
Infinoid 1%0 23:16
purl 0.01
Infinoid 0^-1
purl 18446744073709551615
Infinoid ... right. 23:17
23:20 particle joined 23:21 alvar joined 23:36 bacek joined
cotto_work 2^64-1 23:43
purl 61
cotto_work 2**64-1
purl 1.84467440737096e+19
cotto_work (0^-1)+1 23:44
purl 1.84467440737096e+19
cotto_work (0^-1)
purl 18446744073709551615
wknight8111 0^ anything should be 0 23:47
0**-1
(0**-1)
(0**-1)+1
(0^-1)+1 23:48
purl 1.84467440737096e+19
wknight8111 (5^2)
purl 7
cotto_work 2^2
purl 0
wknight8111 5**2
purl 25
wknight8111 "^" is XOR, not exponent
cotto_work that makes sense now
tasty 8-byte ints 23:49
23:52 Khisanth joined
dalek r29917 | jkeenan++ | trunk: 23:56
: Typographic reformatting of one comment so that colors display better.
diff: www.parrotvm.org/svn/parrot/revision?rev=29917