Stories
Slash Boxes
Comments
NOTE: use Perl; is on undef hiatus. You can read content, but you can't post it. More info will be forthcoming forthcomingly.

All the Perl that's Practical to Extract and Report

use Perl Log In

Log In

[ Create a new account ]

rurban (7989)

rurban
  {rurban} {at} {x-ray.at}
http://rurban.xarch.at/

cygwin maintainer for perl, parrot, clisp, postgresql, ... and some perl modules (perl-libwin32, perl-Win32-GUI). Has also some hairy CPAN packages: B::C, B::Generate, C::DynaLib, B::Debugger ...
+ -

  Comment: Re:corehackers (Score 1) on 2010.08.28 7:16

by rurban on 2010.08.28 7:16 (#72358)
Attached to: oplines - win-win memory AND speed

I believe it was in my github perl as oplines branch, but got lost.

Only my local-op branch is there.

Read More 4 comments
Comments: 4
+ -

  Comment: Re:Buggy -fstack-protector (Score 1) on 2010.01.21 6:24

by rurban on 2010.01.21 6:24 (#71547)
Attached to: B::C (perl-compiler) news

Wrong. It was not -fstack-protector.

I fixed it somehow, unfortunately I don't know which change fixed it.

Lesson learned (again): Always prefer a stricter system over the lax linux. If its mingw, cygwin or solaris, linux should NOT be used for development, as you don't detect serious bugs with it.

Read More 2 comments
Comments: 2
+ -

  Journal: B::Debugger breakthrough - perl -d -M=Od=C foo.pl on 2009.12.19 12:30

Journal by rurban on 2009.12.19 12:30
User Journal

Finally I got the B Debugger working as I wanted it to work.

Od - Debug a Perl Compiler backend

perl -d -MOd=Backend[,OPTIONS] foo.pl

$ perl -d -MOd=C foo.pl

Od::CODE(0x154c5a0)((eval 9)[lib/Od.pm:33]:25):
25: &$compilesub();
DB 1 s
B::C::CODE(0x12c0aa0)(lib/B/C.pm:3163):
3163: return sub { save_main() };
DB 1 s
B::C::save_main(lib/B/C.pm:2881):
2881: my $warner = $SIG{__WARN__};

Read More 1 comments
Comments: 1
+ -

  Journal: The Perl Compiler B::C is released (again) on 2009.12.18 9:03

Journal by rurban on 2009.12.18 9:03
User Journal

On December 18, 1987 Larry Wall released Perl 1 to the public. 1995 Malcolm Beattie took the chance to win a laptop and wrote the Perl compiler until 1997, which compiled to bytecode (.plc and .pmc) and C, and subseqently to native code via perlcc.

On Mai 7, 2007 the compiler suite was removed from CORE, and I took the chance to port it to 5.10, fix most of the remaining bugs and improve it.

Read More 2 comments
Comments: 2
+ -

  Journal: B Debugger thoughts on 2009.12.10 12:50

Journal by rurban on 2009.12.10 12:50
User Journal

I had the convincing idea of a better B::Debugger, so I stood up and began to write Od.

Like this:
==================
This module is used as debugging replacement to C, the Perl Compiler frontend.

Debugging is done in two steps, first you store a optree dump in the CHECK stage into C, or the dumpfile specified with the C option, and the Compiler backend is never called.

Then you load the dump into the INIT stage and continue.

Read More 0 comments

+ -

  Journal: perl-compiler progress 1.04_24 on 2009.11.29 17:46

Journal by rurban on 2009.11.29 17:46
User Journal

Together with Nick Koston from cPanel we made big compiler progress today.
As I found out, 5.6.2 compiles flawlessly huge modules, just a few optimizations should be added, esp. sharing method name strings, "package::name".
So I enabled 5.6 also. Just getting the linker line right might be tricky from platform to platform on 5.6. ExtUtils::Embed is a nightmare on 5.6.

Read More 0 comments

+ -

  Journal: illguts-1.10 ready on 2009.11.21 16:48

Journal by rurban on 2009.11.21 16:48
User Journal

Back in 1998 Gisle Aas prepared a graphical overview of all the major internal perl structures, as described in perlguts.pod

However this all changed with 5.10, and since nobody else did it and I helps me immensely to work on the compiler, I updated illguts ("illustrated guts") to the current perl state.

Read More 2 comments
Comments: 2
+ -

  Comment: Buggy -fstack-protector (Score 1) on 2009.11.14 10:30

by rurban on 2009.11.14 10:30 (#71133)
Attached to: B::C (perl-compiler) news

Verified that indeed -fstack-protector on Cygwin gcc "4.3.4 20090804 (release) 1" is the culprit on my new ByteLoader failures.

On my debian gcc "Debian 4.3.2-1.1" adding -fstack-protector works fine.

So I check for that now. I'll have to remove that from my perl also, so I can release 5.10.1 finally.

Read More 2 comments
Comments: 2
+ -

  Journal: B::C (perl-compiler) news on 2009.11.13 18:23

Journal by rurban on 2009.11.13 18:23
User Journal

perl has a native compiler, it just doesn't work for 5.10 and blead yet. I'm working on it in my rare spare time, but now it's winter time and I was motivated by a company which needs it.

The new cygwin gcc-4.3 has obviously still some bugs, because the B::Bytecode compiler suddenly smashes the stack, but on other platforms it still works okay.

Read More 2 comments
Comments: 2
+ -

  Comment: Re:Nice. (Score 1) on 2009.11.13 18:12

by rurban on 2009.11.13 18:12 (#71128)
Attached to: www.perl.org - redesign

Love it!

Now use.perl.org should be next ...

Read More 15 comments
Comments: 15
+ -

  Journal: parrot packfile alignment to keep cross-platform portability on 2009.02.21 15:14

Journal by rurban on 2009.02.21 15:14
User Journal
I thought that having portable parrot bytecode (pbc) is a good idea, similar to portable perl5 bytecode (B::Bytecode). And parrot was designed for bytecode portability. So it should be better than perl5 plc. And it is.

Anyway, it does not work since a while. Some random notes for debugging this:

Read More 0 comments

+ -

  Comment: Re:on the mortality rate... (Score 1) on 2009.01.28 18:45

by rurban on 2009.01.28 18:45 (#67086)
Attached to: Dead Babies

Sure. Because of the obscenely low social standards in the US.

No standard health care access, female education, armed conflicts and "cultural practices". (just citing the CNN report)

Read More 21 comments
Comments: 21
+ -

  Comment: Re:Wow. Just use git-svn instead (Score 1) on 2009.01.04 7:43

by rurban on 2009.01.04 7:43 (#66723)
Attached to: svn cleanup (parrot)

Thanks for the tip, but cloning the parrot repo with git svn did last about 24 hours. I wouldn't recommend that.

Read More 5 comments
Comments: 5
+ -

  Journal: svn cleanup (parrot) on 2009.01.03 11:04

Journal by rurban on 2009.01.03 11:04
User Journal

From time to time I want a clean svn repo again, esp. for parrot.

Something like a make distclean if that would work in parrot.

I could delete all files which are not in MANIFEST, but easier is this simple svn hack, svn-cleanup :

Read More 5 comments
Comments: 5
+ -

  Journal: cygwin parrot-0.8.2-1 released on 2008.12.29 12:39

Journal by rurban on 2008.12.29 12:39
Parrot

After several months of hacking and testing I updated the cygwin package for parrot-0.8.2, which is equivalent to the pdd30install_stage3 branch.
Get it via http://cygwin.com/setup.exe
See http://www.parrot.org/news/2008/Parrot-0.8.2
http://www.parrot.org/news/vision-for-1_0 and

Read More 0 comments