3 ms·
1984: MacOS GUI programming in (Lisa)Pascal, Lightspeed Pascal came the following year, and the MPW with Object Pascal a couple of years later. OOP wasn't very
by informatimago 12y ago
1984: MacOS GUI programming in (Lisa)Pascal, Lightspeed Pascal came the following year, and the MPW with Object Pascal a couple of years later.
OOP wasn't very common yet, but when you look at the Mac Toolbox, you can see that it is definitely an OO design (eg. Window is a subclass of GrafPort and Dialog is a subclass of Window, see also the various Control and "subclasses").
Therefore I would say that 1984 with the Macintosh starts modern programming age, marked with high level programming languages (the Mac Toolbox was written in Pascal! (only the Mac OS was written in Assembler, and of course Quickdraw was first debugged in Pascal, and then hand-optimized in assembler), and with object oriented programming.
Of course, when people started to write Mac applications in C, it was a set-back, but then NeXTSTEP made a big advance with Objective-C and OpenStep (now Cocoa, ie. MacOSX and iOS), which allowed the creation of the web (and therefore Javascript).
But really, OpenStep (Cocoa) is just a cleaned up version of the Mac Toolbox (which was itself a dumbed down version of Smalltalk developped in the 70's at the PARC).
So I would say that not much new since then. We've heard of some experiment where some program was run on the Amazon cloud to debug programs on a cost of $8/bug (which assumedly is cheaper than a programmer debugging), but we don't have those kind of AI aids integrated in our tool boxes. We've heard of some automatic proof systems (Coq, ACL, etc), but management wouldn't let us invest in their use (perhaps rightly so, they seem to be as much time sinks as programming itself).
We ARE still programming like it wask 1984!!! (unfortunately).
Well, not exactly, ok. Now compilations are instantaneous instead of taking hours, and just try to write your next program on a 512x342 pixel screen (or just a 80x25 terminal) with no Internet access for the documentation (all the documentation printed in thick bibles on your knees! (Imagine Android documentation printed!)).
Ok, there's some progress still: nowadays I use Common Lisp and emacs all the time (for a pale rendition of the 80's Lisp Machines), and people often use Ruby or python, or even Java, which are run with garbage collectors. So this invention from 1959 finally takes ground, helping us concentrate on solving users' problem instead of managing computing resources.