Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]


Groups > alt.os.development > #8351

Re: What form of executable or load module for your OS?

From "Rod Pemberton" <boo@fasdfrewar.cdm>
Newsgroups alt.os.development
Subject Re: What form of executable or load module for your OS?
Date 2015-07-13 02:47 -0400
Organization Aioe.org NNTP Server
Message-ID <op.x1o84xi9yfako5@localhost> (permalink)
References (15 earlier) <64c08e9f-141c-4340-adee-a8affd4cb070@googlegroups.com> <op.x1ec5fnryfako5@localhost> <5b4a052e-4e93-4737-9e64-acbdc6ffc184@googlegroups.com> <op.x1f2t8iayfako5@localhost> <6f0aaee4-f1a8-42f8-9e8c-0eb750840294@googlegroups.com>

Show all headers | View raw


On Sat, 11 Jul 2015 12:57:42 -0400, s_dubrovich@yahoo.com  
<s_dubrovich@yahoo.com> wrote:

> On Wednesday, July 8, 2015 at 2:52:36 AM UTC-5, Rod Pemberton wrote:
>> On Wed, 08 Jul 2015 01:10:21 -0400, Alexei A. Frounze
>> <alexfrunews@gmail.com> wrote:
>> > On Tuesday, July 7, 2015 at 2:40:05 AM UTC-7, Rod Pemberton wrote:
>> >> On Tue, 07 Jul 2015 04:44:33 -0400, Alexei A. Frounze
>> >> <...@gmail.com> wrote:

>> For a small C compiler, I was working with SmallC.  I still might
>> again someday.  It only had a few areas that needed more development
>> for use as a bootstrap compiler.
>
> Just to say, to me, a bootstrap compiler is a self-compiling compiler
> that can be bootstrapped to a new OS architecture with a minimum of
> fuss.  The 'minimum of fuss' means a hand full of IO interface functions
> written in in-line assembler.  The usual strategy has the compiler
> emitting assembler syntax for a presumed available assembler program
> on the target OS.
>
> SmallC fits that, but for a subset of K&R C.  The 'subset' really means
> that it is its own language,

It's still C.

Today, I only code in a subset of C, and that subset keeps getting smaller.
Does that make my C code not C code anymore? ...

> in the comp.sci sense.

Huh?

> It can't handle 'struct', so it is more correct to call it something
> like 'C subscript 0', or something,

Yes, that's one serious deficiency, although it doesn't make SmallC  
unuseable.

> so as not to confuse its capabilities with a full K&R C compiler.  I have
> seen versions for the Z80 which have advanced smallc from C_sub_0 to  
> nearly
> C_sub_K&R, which represent perhaps dozens of sub languages in-between to
> get there.

Ok.

> It is an art to do a small modification to a compiler to implement a new
> parsing capability to cover more of the full language syntax.  This can
> only be done in steps so the existing compiler can handle it, and yet
> produce a new superset compiler.  It ends up that C0 can build C1, C1 can
> build C2, but C0 cannot parse C2.

...

>>  Unfortunately, Steve, who helped
>> out a lot, chose a different path from the version I was working on.
>>
>
> I know you were working on parsing 'void'.
> Perhaps you could explain "chose a different path", and "unfortunately".

"chose a different path"

At some point, you decided to rewrite the compiler your own way.  I was
using SmallC source from a number of existing SmallC variants.  So, you
changes and direction won't work with the older/original code.  E.g., one
SmallC variant has structs, but that author also made other modifications
that weren't compatible with the earlier source.  The changes for struct
couldn't just be added to the earlier code.

"unfortunately"

The CP/M stdio library of yours allowed me to compile and work on it.
(IIRC, the NASM source helped to get it there too.)  Later on you
developed a DOS I/O routines which worked with your code, but not with
the earliest SmallC you started with, AFAIR.  The version I was working
on was very similar to that first version.

> And Alex has leapfrogged to a modern C with SmallerC.

...

> I think I proffered that idea (start from scratch) to you at some
> point as an 'end around' moving small c (K&Rish) to an ANSI version.
> Maybe your recollection is different.

Well, I was working on a number of C parsers of my own designs, but
moved on to my own language.  It has a complete toolchain now, although
it's only developed to a very rudimentary level.

IIRC, I reworked the variant of SmallC to accept ANSI C style
declarations, addition of logical operators, and some other things.
So, structs were a big issue as I recall.


Rod Pemberton

-- 
Tolerance and socialism attracts intolerance and terrorism.  See:
France, United Kingdom, Germany, Denmark, Belgium, Netherlands, ...
UK: Strong encryption, non-issue. GR: Eurozone currency, priority.

Back to alt.os.development | Previous | NextPrevious in thread | Next in thread | Find similar | Unroll thread


Thread

Re: What form of executable or load module for your OS? "Alexei A. Frounze" <alexfrunews@gmail.com> - 2015-06-25 21:20 -0700
  Re: What form of executable or load module for your OS? "James Harris" <james.harris.1@gmail.com> - 2015-07-01 10:36 +0100
    Re: What form of executable or load module for your OS? "Alexei A. Frounze" <alexfrunews@gmail.com> - 2015-07-01 21:07 -0700
      Re: What form of executable or load module for your OS? "Alexei A. Frounze" <alexfrunews@gmail.com> - 2015-07-02 23:35 -0700
        Re: What form of executable or load module for your OS? "James Harris" <james.harris.1@gmail.com> - 2015-07-03 08:35 +0100
          Re: What form of executable or load module for your OS? "Alexei A. Frounze" <alexfrunews@gmail.com> - 2015-07-03 02:49 -0700
            Re: What form of executable or load module for your OS? "James Harris" <james.harris.1@gmail.com> - 2015-07-03 11:27 +0100
              Re: What form of executable or load module for your OS? "Rod Pemberton" <boo@fasdfrewar.cdm> - 2015-07-03 16:54 -0400
                Re: What form of executable or load module for your OS? "James Harris" <james.harris.1@gmail.com> - 2015-07-03 22:45 +0100
                Re: What form of executable or load module for your OS? "Rod Pemberton" <boo@fasdfrewar.cdm> - 2015-07-03 17:56 -0400
                Re: What form of executable or load module for your OS? "Alexei A. Frounze" <alexfrunews@gmail.com> - 2015-07-03 15:28 -0700
                Re: What form of executable or load module for your OS? "James Harris" <james.harris.1@gmail.com> - 2015-07-03 23:48 +0100
                Re: What form of executable or load module for your OS? "Alexei A. Frounze" <alexfrunews@gmail.com> - 2015-07-03 21:52 -0700
                Re: What form of executable or load module for your OS? "Rod Pemberton" <boo@fasdfrewar.cdm> - 2015-07-04 04:00 -0400
                Re: What form of executable or load module for your OS? "Alexei A. Frounze" <alexfrunews@gmail.com> - 2015-07-04 04:42 -0700
                Re: What form of executable or load module for your OS? "Rod Pemberton" <boo@fasdfrewar.cdm> - 2015-07-05 02:12 -0400
                Re: What form of executable or load module for your OS? "Alexei A. Frounze" <alexfrunews@gmail.com> - 2015-07-05 00:47 -0700
                Re: What form of executable or load module for your OS? "Rod Pemberton" <boo@fasdfrewar.cdm> - 2015-07-05 05:28 -0400
                Re: What form of executable or load module for your OS? "Alexei A. Frounze" <alexfrunews@gmail.com> - 2015-07-05 02:58 -0700
                Re: What form of executable or load module for your OS? "Rod Pemberton" <boo@fasdfrewar.cdm> - 2015-07-06 06:21 -0400
                Re: What form of executable or load module for your OS? "Alexei A. Frounze" <alexfrunews@gmail.com> - 2015-07-07 01:44 -0700
                Re: What form of executable or load module for your OS? "Rod Pemberton" <boo@fasdfrewar.cdm> - 2015-07-07 05:40 -0400
                Re: What form of executable or load module for your OS? "Kerr Mudd-John" <admin@127.0.0.1> - 2015-07-07 14:02 +0100
                Re: What form of executable or load module for your OS? "wolfgang kern" <nowhere@never.at> - 2015-07-07 18:13 +0200
                Re: What form of executable or load module for your OS? "Kerr Mudd-John" <notsaying@invalid.org> - 2015-07-08 12:54 -0100
                Re: What form of executable or load module for your OS? "James Harris" <james.harris.1@gmail.com> - 2015-07-09 13:19 +0100
                Re: What form of executable or load module for your OS? "Alexei A. Frounze" <alexfrunews@gmail.com> - 2015-07-07 22:10 -0700
                Re: What form of executable or load module for your OS? "James Harris" <james.harris.1@gmail.com> - 2015-07-08 08:48 +0100
                Re: What form of executable or load module for your OS? "Alexei A. Frounze" <alexfrunews@gmail.com> - 2015-07-08 23:53 -0700
                Re: What form of executable or load module for your OS? "James Harris" <james.harris.1@gmail.com> - 2015-07-09 17:29 +0100
                Re: What form of executable or load module for your OS? "Alexei A. Frounze" <alexfrunews@gmail.com> - 2015-07-10 01:01 -0700
                Re: What form of executable or load module for your OS? "James Harris" <james.harris.1@gmail.com> - 2015-07-10 13:46 +0100
                Re: What form of executable or load module for your OS? "Alexei A. Frounze" <alexfrunews@gmail.com> - 2015-07-10 00:59 -0700
                Re: What form of executable or load module for your OS? "Rod Pemberton" <boo@fasdfrewar.cdm> - 2015-07-08 03:52 -0400
                Re: What form of executable or load module for your OS? "Alexei A. Frounze" <alexfrunews@gmail.com> - 2015-07-08 06:46 -0700
                Re: What form of executable or load module for your OS? "James Harris" <james.harris.1@gmail.com> - 2015-07-09 13:16 +0100
                Re: What form of executable or load module for your OS? "s_dubrovich@yahoo.com" <s_dubrovich@yahoo.com> - 2015-07-11 09:57 -0700
                Re: What form of executable or load module for your OS? "Rod Pemberton" <boo@fasdfrewar.cdm> - 2015-07-13 02:47 -0400
                Re: What form of executable or load module for your OS? "s_dubrovich@yahoo.com" <s_dubrovich@yahoo.com> - 2015-07-14 07:39 -0700
                Re: What form of executable or load module for your OS? "Rod Pemberton" <boo@fasdfrewar.cdm> - 2015-07-15 02:37 -0400
        Code insanity "Mike Gonta" <mikegonta@gmail.com> - 2015-07-03 03:47 -0400
          Re: Code insanity "Alexei A. Frounze" <alexfrunews@gmail.com> - 2015-07-03 02:57 -0700
          Re: Code insanity (was: What form of executable or load module for your OS?) "James Harris" <james.harris.1@gmail.com> - 2015-07-03 11:35 +0100

csiph-web