[fpc-pascal] Re: Porting linux to pascal, would it be, possible ?

Ingemar Ragnemalm ingemar at ragnemalm.se
Sat Dec 6 08:43:25 CET 2008

" Guillermo Mart?nez Jim?nez " <gmjimen at burdjia.com> wrote:

> I disagree.  C is better for write operating systems *by definition*:
> C was created to write UNIX, Pascal was created to learn good
> programming techniques.  C is low/mid-level language, Pascal is
> high-level (and Object Pascal is even higher):  OS are the lowest
> software level.

This was true in the 70's. Then Pascal wasn't modular (C wasn't but 
hacked it in header files, and still does), it simply wasn't adapted for 
programming of that kind yet. And C was optimized for being similar to 
the machine code of the CPU's of the time. And it still is.

Today, the biggest difference between the languages are missing 
high-level features in C (which Pascal has had for decades), and that 
the syntax of C has a big range of obvious flaws. Neither of these make 
C a better language for anything.

The advantage to be able to mix operations on the same line, like the ++ 
operator, had importance for performance back then, before pipelining 
and caches. Today, it simply doesn't matter.

IMHO, C was simply the *first* language replacing assembly language on 
the OS level. And the first often gets chosen as "standard", the "only way".

Now, to return to the OS part: How could Linus Torvalds write the core 
of Linux in rather short time, single-handed, if it is such a huge task 
just to port it?

The window manager part is what I find really interesting. If Gnome is 
language-locked, there are two ways to change that: Either convince the 
Gnome team to open it up in our directions (just a matter of interfaces 
to them) or to make an FPC branch of Gnome (assuming that Gnome is under 
appropriate licenses), where appropriate parts are ported to FPC. I 
would call it "Jedi Gnome", analogous to Jedi-SDL. Now, is there anyone 
more than me visualizing Yoda with a lightsabre as logotype? :-)


More information about the fpc-pascal mailing list