about pelle
pelle orinius

Living in Stockholm, Sweden.

Started coding in BASIC around 1979 (on a Swedish computer called ABC80), but soon moved on to Z80 assembly code. Have been working professionally since 1984. Mostly in BASIC, X86 assembly code and C (since ~1993).

about pelles c
Pelles C

It sort of started 1987-1988...

I worked for a consultant company that also sold several products written in BASIC (for a then popular Swedish micro-computer). When IBM PC started to catch on, it was decided it would be cheaper to port the BASIC programs to IBM PC, rather than writing new programs. Several different solutions were tried, and used, but there were many problems and bugs with that. Finally I thought: "I really can't do worse myself".

I started writing an interpreter in assembler (this was DOS with 640 kB, remember?) as a hobby project. When finished, I presented it to my boss. He eventually said OK. Over time this evolved into a compiler for DOS, a compiler for 16-bit Windows, and finally a complete build system for 32-bit Windows (not only a compiler, but also a linker, a library manager, a make utility, and so on). After many years working on this, around 1999, it was finally decided that more main-stream development tools should be used.

I then thought it would be a waste to just throw away a perfectly good linker, library manager and so on - why not add a compiler for the language they were all written in: C. Writing a C compiler from scratch seemed like a huge task, so starting from an existing project made more sense.

I looked around on the Internet, found several projects, and finally decided that LCC (from Princeton) was the best for me. It didn't produce very good code for X86, lacked inline assembly, structured exception handling, and many other things I was used to from the Microsoft compiler, but it had potential. It's source code tree wasn't huge, and it seemed to be well written.

I started adding the missing features, improving the code quality, while also trying to learn LCC. This took several years - including detours into Pocket PC and the C99 standard. The C runtime and IDE wasn't done in a coffee-break either. Finally I had something working.

After using it for a while, I thought "if I find this useful, maybe someone else will...?" so I created this web page, and here we are...

about the name

It's in Swedish - in English it would be Pelle's C...