Yes, Ange-ftp is mode is a bit annoying; particularly since each new
version of Emacs seems to manage to break it in new and interesting
ways.? I'm still trying to fix an infinite recursion bug in the version
I have on the Mac.? Why use it?? Why *colors* (in other words, font-lock
mode) and memory.
As you may be aware, the EMACS under Tops-20 is TECO based, the TECO
being written in an assembler dialect called MIDAS which will emit code
for ITS, TENEX and Tops-20.? It is a pre-extended model, which means you
are 'limited' to a single section of 256K, which is something like 1.25
megabytes, depending on how you slice it.
If you are programming assembler, that is an awful lot of space before
you have to resort to overlays.? It's a decent amount of data.? The text
of whole novels will easily fit as (7 bit) ASCII; I have several from
Project Gutenberg.? Where you start to run out of memory is commonly
with multi-media and if you're me.?? It's not unusual for me to have 16
files open, flipping between them. On TECO based Emacs, you can run out
of memory.? Not so 64 bit gnuemacs; it just keeps going and going.? This
was a major driver for the FTP server rewrite.
The PDP-10 memory architecture had an enhancement done in the early 70's
to support extended memory, which provided an additional 4,095 sections
of virtual memory or about 5 GB total. In the 80's, that was known as
incomprehensible, 20 years ago, perfectly adequate and today, well...?
Unless you are talking HD video, 5 GB is reasonable for many
applications, including editing NTSC and PAL video.
At the time, a colleague and I were considering rewriting TECO in MACRO
to gain the advantage of that memory paradigm. Unfortunately, the
university switched off of the (cancelled) 36 bit line to Unix.? First
Digital Unix on a VAX 8650, the 8700 and then Sun SPARC machines.? They
never trusted DEC again.
gnuemacs has been ported to Tops-20, so there is even less reason to do
it now, but I didn't know that ten years ago when I started as a hobbyist.
Another reason was that I wasn't getting the performance I wanted out of
the TENEX based FTP server.? I worked with it for about 6 months until I
was advised that it would be better to just pitch it.? The new server
easily gets over 6.5 Mbps, whereas the old one could barely get into the
high KB/s.? I eventually figured out why, but I don't think the old one
could be made this fast.
The final reason was that I just kept getting annoyed that 'modern'
graphical FTP clients had no idea of what the 20 was returning.? And if
you know me, when it comes to computers, it doesn't take much to get me
really annoyed.? I couldn't believe the junk I was getting over the
control channel.? Lots of commands that are not in any RFC.? Looking at
other FTP servers didn't help either; they were hopelessly broken.
But now I can fool all but the very most brain damaged graphical FTP
clients (unfortunately I happen to have one on my iPhone). Character
mode FTP clients were easy.
I'm actually thinking of implementing FTP over DECnet; the performance
(in terms of processor utilization) would easily exceed DAP.? And it
would be my kind of fun.
------------------------------------------------------------------------
On 12/21/19 5:02 AM, Johnny Billquist wrote:
Aha. Thanks. I have never tested that one. I always find even the mode
extremely annoying...
Thanks. Yes, TVFS was what I was trying to remember. Yes, it is
annoying, and some clients goes and dies immediately if they don't get
information in that silly format. I implemented it for RSX, and
trigger it when a client does a "cwd /", since most such clients also
does that first of all.
That sounds way too complicated. I don't think any specific feature or
detail in my RSX servers ever have taken more than a day or two to
implement. But I do feel that some things are silly.
But I should also admit that I've only implemented things I felt I
needed, so I've skipped some stuff which supposedly is mandatory.
Noone complained (yet).
? Johnny
> ------------------------------------------------------------------------
> On 2019-12-21 02:58, Thomas DeBellis wrote:
>
> 1. ?The client that does the ls is gnuemacs ange-ftp mode; which was
> quite shocking.
> 2. ?Trivial Virtual File System (TVFS) is the RFC that specifies a
> common syntax, essentially codifying Unix syntax.? That's
> unfortunate because when you blow away most of the punctuation,
> you limit your search abilities.
>
> "fun"?? Dear me...? Actually, what really drove me crazy was TENEX
> paged file structures; I was months getting that right.