Re: 44 gallon drums
A meter used to be exactly 39.37 inches. It was redefined so 2.54 cm was exactly one inch shrinking the inch a bit.
1069 publicly visible posts • joined 6 Jun 2015
In C++ free() also works for null pointers - no need to check. Storing null in the pointer only works for the current copy - there may be others.
I have never had trouble with C++ - just use value semantics and don't use pointers. Just declare vectors, strings, maps etc. and let the destructor take care of cleaning up. Copy the containers and don't use pointers.
Of course, there are still traps for the unwary but trying to determine ownership etc. can't be good for clean code.
If you want a safe language, just use LISP.
My office was arranged in several piles of paper. The rule was: 1 inch per month. I could always find what I wanted but the clean desk patrol was not happy. We once had a security audit and they checked every box including "passed." They must have been flustered - I found this report card when it surfaced a month later.
Rochester Institute of Technology has people modeling these events. The spins of the original black holes really warps the space-time around the objects and results in gravitational waves being emitted preferentially in one direction. In this case, the missing 15 solar masses is emitted in one direction and the resulting black hole is kicked in the opposite direction (as much as .01 times the speed of light). During the last seconds of the event, the spins of the incoming black holes rotates by a large amount.
I wouldn't want to be near any such event.
55 years ago I wrote the major part of the second Dartmouth College time-sharing system. Everything was teletypes. We used DN-30's to multiplex 50 ttys (2 remote and 2 local) to a GE 635. In the real early days the Bell system was leary of computers on their lines so all datasets connected to a computer reversed mark and space. Repairmen had no clue as to why there testing didn't work. BASIC was the language of choice for users.
It was fun bending a giant mainframe to your will.
Actually DOPE stood for Dartmouth Oversimplified Programming Experiment that I wrote in 1962. It was a precursor to BASIC.
I have also written a simulator for the LGP-30 in Java with all of the buttons etc. The LGP-30 executed about 60 instructions per second unless you cleverly organized data so it didn't have to wait a revolution to access it.
A fun machine.
In college I wrote an ALGOL-68 compiler. I was at the December 1968 meeting that "finalized" the report. It is a fairly clean language with a garbage collector (although the specification didn't require collecting everything but it could have). It had a strict type system and clarified many type issues. The two-level syntax made the standard somewhat hard to read until you got used to it.
All in all, I thought it was a step forward in language development.
It answered the question as to why you can write:
x := 2
but not:
2 := x
I did not write all of the transput though.
At Xerox, many years ago, we had an off-site garage used for building computers. They had a large stock of RAM chips kept in a locked cage with 12' high walls. One night some people entered the facility and climbed the 12' high walls and went shopping for RAM chips. On the way out they told security not to worry.
They got away with it!
LISP is older than almost all other languages and is memory safe. A modern LISP compiler can produce code just a fast as C. Modern GCs are very fast and can do hard real time. Memory allocation is much faster than malloc. etc. Yes, operating systems have been written in lisp, smalltalk etc.
My father once complained to the railroad that his wire (one inch in diameter) was arriving tangled. So the railroad put a monitor in the next boxcar. They came back red-faced because the monitor was driven off-scale in the local switch yard and stopped recording for the rest of the trip.
At RIT we had our own support group in the computer science department. They ran file servers, mail, web server etc. They were excellent. Then the university decided that all web pages belonged to them, the mail servers belonged to them etc. So now there is a crappy home page for the CS department, mail is microsoft crap etc.
Oh well.
In 1965 when teletypes were the main device to communicate with computers our secretary at the computer center received a call and shortly hung up laughing. Seems someone called with a problem and she said before the caller explained the problem, "Please press the left button on the teletype to turn off that buzzing." The buzzing stopped and then she asked what the problem was. The caller said, "that was the problem - I couldn't figure out how to turn off the buzzer."
Problem solved before being explained.
A multiply or divide took one revolution of the drum. The LGP-30 was a bit serial machine. By properly positioning the instructions and operands one could get the speed up to about 200 instructions per second. Otherwise it ran about 60 instructions per second. It had a drum memory of 4096 31-bit words. The accumulator, instruction register, and program counter were also recirculating registers on the drum. A fun machine to work with.
Yes - I programmed DOPE on the LGP-30 in 1962. Tom Kurtz just threw an LGP-30 manual at me and said, "go to it." My first program played NIM and then in the Spring term I wrote DOPE and then discovered that Kemeny had a freshman class use it to verify that amateurs could use a computer. Tom was always smiling and enjoyed life. The actual time sharing system was programmed by undergraduates John McGeachie and Mike Bush and went online in 1964. Tom Kurtz was an excellent statistician and mathematician. He was always ready to talk with anyone. I knew him for many years. He will be missed.
I think this is a shame. As we move from written records to ephemeral computer records a lot of history will disappear in 100 years. You can't even read the old media because standards have changed and none of the current stuff will read the old media.
My thesis is on 9-track magnetic tape. I doubt I will ever be able to read it.
There are still computer museums around with working computers.
When running Dartmouth Timesharing one of the processors (GE DN-30) was a real-time processor. Typing a patch live (in octal) and then patching a branch to the new code was "interesting." If you got a line feed after patching in the branch then everything was good. If the machine rebooted from paper tape you were not good.
We were young and talented 60 years ago.
At MIT, decades ago, people kept crashing the PDP-6 by finding bugs in the operating system. So they added a command "crash" that crashed the machine. After people trying the command and crashing the machine it turned out that crashing the machine wasn't a challenge any more and the machine became very reliable.