> From: Dave Horsfall <dave(a)horsfall.org>
> Yep, and I'm glad that I had bosses to whom I didn't have to explain why
> my comments were so voluminous.
>
> And who first said "Write your code as though the next person to maintain
> it is a psychotic axe-wielding murderer who knows where you live"? I've
> often thought that way (as the murderer I mean, not the murderee).
>
> I'd name names, but he might be on this list...
>
I’ve always said that the person was a ‘reformed’ axe-wielding murderer
who knows where you live.
Please, a little decorum.
W.R.T. comments in code, and a bit of Unix, when I taught Unix Systems
programming at UCSD one of my students wanted to use his personal
computer for the programming. I didn’t care as long as it would pass the
tests I ran after the fact.
After his second homework was turned in, I stopped looking at his code
or even running it, as the comment blocks were just so well done. Nary
a comment in the function itself, just a block before each one very clearly
explaining what was happening.
David
"I was told in school (in 1985) that if I was ever lucky enough to
have access to the unix source, I'd find there were no comments. The
reason, I was told at the time, was that comments would make the
source code useful, and selling software was something AT&T couldn't
do due to some consent decree."
I can't speak for SYS V, but no such idea was ever mentioned in
Research circles. Aside from copyright notices, the licensing folks
took no interest in comments. Within rsearch there was tacit
recognition of good coding style--Ken's cut-to-the-bone code was
universally admired. This cultural understanding did not extend
to comments. There was disparagement for the bad, but not honor
for the good. Whatever comments you find in the code were put
there at the author's whim.
My own commenting style is consistent within a project, but
wildly inconsistent across projects, and not well correlated
with my perception of the audience I might be writing for.
Why? I'm still groping for the answer.
For imoortant code, custom is to describe it in a separate
paper, which is of course not maintained in parallel with
the code. In fact, comments are often out of date, too.
Knuth offered the remedy of "literate programming", which
might help in academic circles. In business, probably not.
Yet think of the possibility of a "literate spec", where
the code grows organically with the understanding of what
has to be done.
Doug
> From: Warren Toomey <wkt(a)tuhs.org>
> there is next to no commenting in the early code bases.
By 'early' you must mean the first 'C' PDP-11 Unixes, because certainly
starting with V6, it is reasonably well commented (to the point where I like
to say that I learned how to comment by reading the V6 code), e.g.:
http://minnie.tuhs.org/cgi-bin/utree.pl?file=V6/usr/sys/ken/slp.chttp://minnie.tuhs.org/cgi-bin/utree.pl?file=V6/usr/sys/dmr/bio.c
to pick examples from each author; and there are _some_ comments in the
assembler systems (both PDP-7 and PDP-11).
> Given that the comments never made it into the compiled code, there was
> no space reason to omit comments. There must have been another reason.
I was going to say 'the early disks were really small', but that hypothesis
fails because the very earliest versions (in assembler) do have some comments.
Although assembler is often so cryptic, the habit of putting a comment on each
instruction isn't so unreasonable.
So maybe the sort of comments one sees in assembler code (line-by-line
descriptions of what's happening; for subroutines, which arguments are in
which registers; etc) aren't needed in C code, and it took a while for them to
work out what sort of commenting _was_ appropriate/useful for C code?
The sudden appearance in V6 does make it seem as if there was a deliberate
decision to comment the code, and they went through it and added them in a
deliberate campaign.
> From: Andy Kosela <akosela(a)andykosela.com>
> "Practice of Programming" by Rob Pike and Brian Kernighan.
> ...
> They also state: "Comments ... do not help by saying things the code
> already plainly says ... The best comments aid ... by briefly pointing
> out salient details or by providing a larger-scale view of the
> proceedings."
Exactly.
Noel
Revision 1.1, Sun Mar 21 09:45:37 1993 UTC (25 years ago) by cgd
http://cvsweb.netbsd.org/bsdweb.cgi/src/sbin/init/init.c?rev=1.1&content-ty…
Today is commonly considered the birthday of NetBSD.
Theo told me (seven years ago) that he, cgd, and glass (and one other
person) planned it within 30 minutes after discussing with the CSRG and
BSDI guys in the hot tub at the Town & Country Resort in San Diego at
the January 25-29 1993 USENIX conference. (Does anyone have more to
share about this discussion?) Soon, cgd had setup a CVS repository
(forked 386BSD with many patchkits) which was re-rolled a few times (due
to corrupted CVS). (So maybe March 21 is later than the real birthday.)
As far as I know, it is the oldest continuously-maintained complete
open source operating system. (It predates Slackware Linux, FreeBSD,
and Debian Linux by some months.)
"NetBSD" wasn't mentioned by name in the April 19. 1993 release files
(but was named in the announcement).
ftp://ftp.netbsd.org/pub/NetBSD/misc/release/NetBSD/NetBSD-0.8
On April 28, the kernel was renamed to /netbsd, the boot loader
identified it as NetBSD, and various references of 386BSD were changed
to NetBSD.
https://github.com/NetBSD/src/commit/a477732ff85d5557eef2808b5cbf221f3c7455…https://github.com/NetBSD/src/commit/446115f2d63299e52f34977fb4a88c289dcae9…
On 2018-03-21 14:48, Paul Winalski<paul.winalski(a)gmail.com> wrote:
>
> On 3/20/18, Clem Cole<clemc(a)ccc.com> wrote:
>> Paul can correct me, but I don't think DEC even developed a Pascal for TOPS
>> originally - IIRC the one I used came from the universities. I think the
>> first Pascal sold was targeted for the VAX. Also, RT11 and RSX were
>> 'laboratory' systems and those systems were dominated by Fortran back in
>> the day - so DEC marketing thought in those terms.
>>
> DEC did do a Pascal for RSX. I don't remember if it supported RT11 or
> RSTS. DEC did a BASIC compiler for RSTS and RSX. RSX and especially
> RT were designed mainly for real-time process control in laboratories.
DEC did both COBOL, DIBOL, PASCAL, FORTRAN (-IV, -IV-PLUS, -77), C as
well as Datatrieve for RSX and RSTS/E. Some of these were also available
for RT-11. Admittedly, the C compiler was very late to the game.
> A lot of the programming was in assembler for efficiency reasons
> (both time and space).
Yes. And MACRO-11 is pretty nice.
Johnny
--
Johnny Billquist || "I'm on a bus
|| on a psychedelic trip
email: bqt(a)softjar.se || Reading murder books
pdp is alive! || tryin' to stay hip" - B. Idol
Let's see how much this thread can drift...
The venerable PDP-8 was introduced in 1965 today (or tomorrow if you're on
the wrong side of the date line). It was the first computer I ever used,
back around 1970 (I think I'd just left school and was checking out the
local University's computer department, and played with BASIC and FOCAL).
And (hopefully) coincidentally the Pentium first shipped in 1993; the
infamous FDIV defect was discovered a year later (and it turned out that
Intel was made aware of it by a post-grad student a bit earlier), and what
followed next was an utter farce, with some dealers refusing to accept the
results of a widely-distributed program as evidence of a faulty FPU.
--
Dave Horsfall DTM (VK2KFU) "Those who don't understand security will suffer."
> From: "Steve Johnson"
So, I have this persistent memory that I read, in some early Multics (possibly
CTSS, but ISTR it was Multics) document, a footnote explaining the origin of
the term 'daemon'. I went looking for it, but couldn't find it in a 'quick'
scan.
I did find this, though, which is of some interest: R. A. Freiburghouse, "The
Multics PL/1 Compiler" (available online here:
http://multicians.org/pl1-raf.html
if anyone is interested).
> There was a group that was pushing the adoption of PL/1, being used to
> code Multics, but the compiler was late and not very good and it never
> really caught on.
So, in that I read:
The entire compiler and the Multics operating system were written in EPL, a
large subset of PL/1 ... The EPL compiler was built by a team headed by
M. D. McIlroy and R. Morris ... Several members of the Multics PL/1 project
modified the original EPL compiler to improve its object code performance,
and utilized the knowledge acquired from this experience in the design of
the Multics PL/1 compiler.
The EPL compiler was written when the _original_ PL/1 compiler (supposedly
being produced by a consulting company, Digitek) blew up. More detail is
available here:
http://multicians.org/pl1.html
I assume it's the Digitek compiler you were thinking of above?
Noel
We lost computer pioneer John Backus on this day in 2007; amongst other
things he gave us FORTRAN (yuck!) and BNF, which is ironic, really,
because FORTRAN has no syntax to speak of.
--
Dave Horsfall DTM (VK2KFU) "Those who don't understand security will suffer."
I've put online at https://dspinellis.github.io/unix-history-man/ nine
timelines detailing the evolution of 15,596 unique documented facilities
(commands, system calls, library functions, device drivers, etc.) across
93 major Unix releases tracked by the Unix history repository.
For each facility you get a timeline starting from the release it first
appeared. Clicking on the timeline opens up the manual page for the
corresponding release. (Sadly, the formatting is often messed up,
because more work is needed on the JavaScript troff renderer I'm using.)
The associated scripts and the raw data are all available on GitHub.
Diomidis
A while ago someone was asking about the mt Xinu Unix manuals. I have a
found a complete set, currently owned by Vance Vaughan, one of the mt
Xinu founders. He is willing to donate them to Warren's Unix archive.
However, they are too expensive to ship to Australia.
Would anyone be willing to scan them in for the archive? Ah, there are
a lot of them (8? volumes). If so, I might be able to ship them to
somewhere in the US.
Let me know.
Thanks.
Deborah