[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: T



    From: Olin.Shivers@CMU-CS-H.ARPA
    
    1. How do I load C procedures into a T? (And is it any different for T2.6?)
       That is, for a Vax Unix T.

There is a "static space" allocated in Unix T for this purpose.  The
procedure is conceptually simple: you link the program to be loaded
using the -A switch to "ld" to specify the location at which the code
will be loaded; you also point "ld" at the executable T file you're
running, to help resolve external references; then you get an a.out
file which you read into the static space.  This is more or less the
same thing Franz does, I think.

No one has written code to do this, yet.  It's sort of grungy, but
not too hard.  Any volunteers?

    2. Would you give your opinion, just for the record, of how TC compares
       currently with liszt? Or the overall system with franz? I'd like to know,
       as I get asked many times.

I assume you refer to speed.  (The languages are incomparable.)  I
have no idea; I haven't done any benchmarks.  If anyone else has done
any, I would appreciate hearing about them (reply to me, not to
T-Users).

    3. I asked you this before, but I forgot the answer. Why does T take much
       longer to crank up on a Vax than franz? 

Because there isn't any "suspend" facility yet.  Every time you start
T, it conses and interns about 1900 symbols and value cells, and does
as many MOVL instructions (from top-level forms in the system files)
to cause internal system procedures to become defined.  This will
be fixed sometime.