4 ms·
Nobody at the time gave a hoot about "unsafe memory accesses". That is a wholly recent conceit. Nobody then cared about security. Sendmail was how e-mail was de
by ncmncm 4y ago
Nobody at the time gave a hoot about "unsafe memory accesses". That is a wholly recent conceit. Nobody then cared about security. Sendmail was how e-mail was delivered, and was, believe it, widely admired.
Java was just enough like the C++ of 1990 to compete, but with garbage collection and a big library, and without confusing pointers, so lower-skilled programmers could use it. That is all. Computers were literally thousands of times slower than today. Java was considered just barely fast enough.
But without freeing programmers from the Microsoft frameworks treadmill, it would have sunk without a trace.
- AlbertCory 4y ago> Nobody at the time gave a hoot about "unsafe memory accesses" Right. We had Purify for that.
- ncmncm 4y agoThat came later. Then valgrind ate its lunch. Some people still use that! Sanitizers, now.
- Danidada 4y agoaccording to James gosling (the creator of Java) in a interview from a year or two ago with lex Friedman he said he wanted a C++-like language but without its pitfalls: pointers bugs and bad concurremcy/synchronization primitives. This was to bring enterprise programmers (who mainly used c++ at that point) to the JVM ecosystem. He expected an explosion of jvm languages after that which, sadly, didn't happen. I think there were more pitfalls which I don't remember now. Maybe he is saying bull now to look more cool, but he sounded rather convincing in the interview. I'd recommend to listen to it
- jvanderbot 4y agoThat may be why it was designed, but GP was talking about why it was adopted. Those are such totally different things that it's not worth comparing them. Lisp?
- ncmncm 4y agoGosling's chief skill always was to sound convincing. (Lord knows language design wasn't it.) The contempt he had for Java coders is hard to miss in writings from the time.
- LeonidasXIV 4y agoThat sounds suspiciously like Rob Pike and Go coders.
- ncmncm 4y agoRob is a careful student of history.
- wiseowise 4y ago> The contempt he had for Java coders is hard to miss in writings from the time. Can you send some examples? Curios to read those.
- rukuu001 4y agoYeah no one ever saw a Java NullPointerException before hey? No memory leaks and portability were the main benefits we were sold on at the time
- eru 4y ago> Yeah no one ever saw a Java NullPointerException before hey? At least you get an error message. Silently continuing when things go wrong is worse.
- implements 4y agoAnd web page Applets being perfectly secure, iirc - due to the JVM sandbox.
- jeremyjh 4y ago> Nobody at the time gave a hoot about "unsafe memory accesses". No, that was much of the point. Memory leaks, pointer overruns, use after free bugs were a huge time sink. In addition to portability, industry wanted a language without these problems.
- salmo 4y agoI think it’s mostly semantics here. Companies didn’t care about it for security. They cared about it for productivity. Enterprise development is always about delivering features first. Performance, security, reliability, etc. come after that.
- Gibbon1 4y agoClassic old school problem would be your bug overwrites a pointer with garbage. And then whatever that points to, like OS code or data, gets trashed next. Your computer starts acting 'weird'. Worse changing random unrelated things would make the problem go away. Huge time sink.
- Eleison23 4y agoSo here's an interesting story of how I became a C programmer. Around 1990-1991, I was deeply into TinyMUD and similar games. An acquaintance had forked TinyMUCK and developed it into a programmable system using a derivative of Forth. Here's the catch: up until this point, development had been done on 4.2BSD VAX, and dereferencing NULL pointers was no big deal there. I was tasked with porting to SunOS 4, where if you deref NULL you crash with SEGV. Therefore I had to get real good at GDB real fast and chase every instance of NULL usage, where I'd put in an initial check first. I did my job alright and before long, our server code was running smoothly cross-platform, and I'm fairly sure that my patches had far-reaching effects beyond the SunOS platform I'd developed on. My colleagues and I were at the forefront of a wave of new Internet users in the early-to-mid 90s, and the embedded programming language environment of a simple text "adventure game" was conducive to many people learning how to program in a simple and forgiving environment. Those of us who hacked clients and servers were a somewhat elite vanguard; I decided to specialize in systems administration and had an interesting career soon afterwards. And it all started because some VAX programmer had thought it was no big deal to dereference NULL pointers in a pervasive way throughout the ANSI C codebase of a game server.