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


Groups > comp.lang.forth > #58471

Re: typical actual time for implementing kernel in a new architecture?

From Lars Brinkhoff <lars.spam@nocrew.org>
Newsgroups comp.lang.forth
Subject Re: typical actual time for implementing kernel in a new architecture?
Organization nocrew
References <6ad9329a-8af2-423a-a6b1-5fb53de37e1f@googlegroups.com> <86h914io15.fsf@molnjunk.nocrew.org> <8c3f860c-6595-40de-a648-94f0c23a2b9c@googlegroups.com>
Date 2017-05-02 09:07 +0200
Message-ID <8660hjivon.fsf@molnjunk.nocrew.org> (permalink)

Show all headers | View raw


Joel Rees wrote:
> So I guess, since I have no hope of ever being within an order of 
> magnitude of being such a superprogrammer

Sorry, it was an honest answer.  If it makes you feel better, it took
much longer the first few times.

> So, I assume you mean lbforth, which I see on github.  Give me a
> reason to actually spend a day cloning the repository and playing with
> what you have so I can figure out whether the inner interpreter, for
> instance, is something I could work with.

It's mostly my personal plaything.  It's not made for public
consumption.

> Tell me a little about what you mean by "reasonably well".

Right, that's a key phrase.  It means that I can take an existing
target similar to the new target, and copy or modify lots of code.
And that there are no tricky bugs to work out.

> Tell me what happens when things don't go reasonably well, and
> what I can look for, for indications that they could go really 
> badly, and just how bad things are when they go really badly.

One time there was a typo in one of the assembly language primitives.
It was quite hard to fix, because there was just a crash at one
place, and the problem was entirely somewhere else.  Debugging this
is hard.  Gdb isn't much help.  The inner interpreter doesn't leave
much trace of what happened before.  There's some kind of backtrace
in the return stack, but it's hard to inspect.

> Tell me if you need a native lisp for the target. (Only for the 
> host?). And tell me if you need a running C (cross?) compiler for 
> the target.

Lisp and C are only used for bootstrapping.  Once the bootstrap Forth
(the b-forth executable) has been made, Lisp or C are no longer needed.

> Maybe, since I mentioned my interest in the 6809, tell me why 
> targets/README.md appears to indicate the 6809 as "research".

It means I have looked into the 6809 instruction set and made some
notes.  It's the first step towards making an assembler.

> And, since I'm asking, I'll ask about PowerPC. If someone were 
> to pay you to get your system to produce a PowerPC target, how
> long do you think it would take you to get it up? (I'm not 
> offering.) What would take the bulk of your time? (I'd guess 
> understanding the arcane nature of the instruction set?)

A bare-bones port to Linux would probably only take a few days.  Say a
week at the most.  I'm supposing the instruction set isn't that much
more quirky than say ARM v4.  The work would probaby be evenly split
between the assembler and the kernel.

If there were a paying customer, I'd expect them to have some
requirements that would take much more time to satisfy.

> And give me an estimate about how long you have been working on
> lbforth, maybe about how many hours or man-months or years it took
> from conception to being able to metacompile the x86 target.

Hard to say exactly since I've done it in my spare time.  Say a few
hours every week since early 2013 to late 2015.  That's about 140 weeks.
Maybe 500 hours.

> Maybe I could have framed my question better, but I'm not really 
> asking about anyone's skills. I'm trying to get a handle on what 
> methods are being used in the Forth community, and how effective 
> the methods are.

I'm not claiming to be very skilled.  It has taken me years to get to
this point, and I still have much to learn.

These time estimates probably are realistic once you learn to use Forth
effectively.  It's bread-and-butter Forth programming.

Back to comp.lang.forth | Previous | Next — Previous in thread | Next in thread | Find similar | Unroll thread


Thread

typical actual time for implementing kernel in a new architecture? Joel Rees <joel.rees@gmail.com> - 2017-05-01 02:24 -0700
  Re: typical actual time for implementing kernel in a new architecture? Lars Brinkhoff <lars.spam@nocrew.org> - 2017-05-01 17:40 +0200
    Re: typical actual time for implementing kernel in a new architecture? Ron Aaron <rambamist@gmail.com> - 2017-05-01 19:35 +0300
      Re: typical actual time for implementing kernel in a new architecture? Lars Brinkhoff <lars.spam@nocrew.org> - 2017-05-02 08:13 +0200
    Re: typical actual time for implementing kernel in a new architecture? Joel Rees <joel.rees@gmail.com> - 2017-05-01 15:17 -0700
      Re: typical actual time for implementing kernel in a new architecture? hughaguilar96@gmail.com - 2017-05-01 20:11 -0700
      Re: typical actual time for implementing kernel in a new architecture? Lars Brinkhoff <lars.spam@nocrew.org> - 2017-05-02 09:07 +0200
  Re: typical actual time for implementing kernel in a new architecture? Rod Pemberton <NeedNotReplyHere@xrsevnneqk.cem> - 2017-05-01 18:34 -0400
  Re: typical actual time for implementing kernel in a new architecture? "Elizabeth D. Rather" <erather@forth.com> - 2017-05-01 12:41 -1000
  Re: typical actual time for implementing kernel in a new architecture? hughaguilar96@gmail.com - 2017-05-01 19:33 -0700
  Re: typical actual time for implementing kernel in a new architecture? Mark Wills <markwills1970@gmail.com> - 2017-05-02 01:51 -0700
  Re: typical actual time for implementing kernel in a new architecture? minforth@arcor.de - 2017-05-02 06:17 -0700
    Re: typical actual time for implementing kernel in a new architecture? Cecil Bayona <cbayona@cbayona.com> - 2017-05-02 12:59 -0500
      Re: typical actual time for implementing kernel in a new architecture? "Elizabeth D. Rather" <erather@forth.com> - 2017-05-02 10:07 -1000
        Re: typical actual time for implementing kernel in a new architecture? Cecil Bayona <cbayona@cbayona.com> - 2017-05-02 15:39 -0500
          Re: typical actual time for implementing kernel in a new architecture? minforth@arcor.de - 2017-05-02 22:29 -0700
            Re: typical actual time for implementing kernel in a new architecture? Cecil Bayona <cbayona@cbayona.com> - 2017-05-03 01:12 -0500
              Re: typical actual time for implementing kernel in a new architecture? minforth@arcor.de - 2017-05-03 02:06 -0700
                Re: typical actual time for implementing kernel in a new architecture? Cecil Bayona <cbayona@cbayona.com> - 2017-05-03 13:52 -0500
                Re: typical actual time for implementing kernel in a new architecture? minforth@arcor.de - 2017-05-03 22:23 -0700
                Re: typical actual time for implementing kernel in a new architecture? Ilya Tarasov <ilya74.tarasov@gmail.com> - 2017-05-04 04:59 -0700
    Re: typical actual time for implementing kernel in a new architecture? Rob Sciuk <rob@controlq.com> - 2017-05-08 15:38 -0400
  Re: typical actual time for implementing kernel in a new architecture? stephen@mpeforth.com (Stephen Pelc) - 2017-05-02 19:41 +0000
    Re: typical actual time for implementing kernel in a new architecture? Cecil Bayona <cbayona@cbayona.com> - 2017-05-02 15:25 -0500

csiph-web