For questions about the history of programming and computing.

learn more… | top users | synonyms

44
votes
8answers
5k views

Why a static main method in Java and C#, rather than a constructor?

I’m Looking for a definitive answer from a primary or secondary source for why (notably) Java and C# decided to have a static method as their entry point, rather than representing an application ...
44
votes
5answers
9k views

Why doesn't Java 8 include immutable collections?

The Java team has done a ton of great work removing barriers to functional programming in Java 8. In particular, the changes to the java.util Collections do a great job of chaining transformations ...
1
vote
0answers
59 views

Were Java and Flash necessary pre-cursors to JavaScript and HTML5? [on hold]

Java appeared in the Netscape browser in 1995, with Javascript and Flash very soon after (I think). Java and Flash allowed programmers to add rich interactions to otherwise static sites, which can now ...
6
votes
1answer
214 views

Why was the grave but not the acute accent included in ASCII?

While looking at the Unicode properties (code point, script, block, UTF-8 and UTF-16 encoding, etc.) of some characters, I stumbled upon major differences between ` ("GRAVE ACCENT") and ´ ("ACUTE ...
15
votes
3answers
2k views

What happened to Concurrent C?

I recently checked out a fantastic book from my college library. It is a bit old at 1989, but the language it describes sounds rather nice. And even while I may not be using it soon, I wanted to ...
9
votes
4answers
723 views

What features did c get from c++? [on hold]

What features were added to C that were originally in C++? When where they added and for what reason(what where the pro/con arguments)? How do they differ in C as compared to C++? Did the features ...
2
votes
2answers
67 views

What is the origin of the tag property in UI toolkits?

I've seen the tag property in all UI frameworks I worked with: UIKit, Forms, OpenStep, even Delphi 6. Was it in the original Macintosh Toolbox or Xerox's framework? WhAt was the original idea behind ...
10
votes
7answers
2k views

Why did the creators of the Internet Protocol decide to use IP addresses to identify a particular computer? [closed]

Why did the creators of the Internet Protocol decide to use IP addresses to identify a particular computer? Why not just have a unique ID assigned to each computer upon manufacture, then use that ID ...
4
votes
2answers
237 views

Why was the AT&T assembly syntax designed this way?

The AT&T assembly syntax, often called the GAS syntax, keeps surprising me. For example, its parameter order: mov $100,%eax /* Destination after source */ This just seems so counter-intuitive! ...
34
votes
4answers
3k views

Why are structs and classes separate concepts in C#?

While programming in C#, I stumbled upon a strange language design decision that I just can't understand. So, C# (and the CLR) has two aggregate data types: struct (value-type, stored on the stack, ...
30
votes
5answers
736 views

Why was the Itanium processor difficult to write a compiler for?

It's commonly stated that Intel's Itanium 64-bit processor architecture failed because the revolutionary EPIC instruction set was very difficult to write a good compiler for, which meant a lack of ...
74
votes
9answers
28k views

Why did Alan Kay say, “The Internet was so well done, but the web was by amateurs”?

OK, so I paraphrased. The full quote: The Internet was done so well that most people think of it as a natural resource like the Pacific Ocean, rather than something that was man-made. When was the ...
8
votes
2answers
504 views

Why did programming languages start using = for assignment?

In most early algorithms books, <- referred to assignment and = referred to comparison. But nowadays the only languages that don't use = for assignment are Pascal (:=) and toy languages like COOL. ...
0
votes
2answers
115 views

Origin of naming generic types as T? [closed]

I've noticed that most people use the name T for generic types, instead of any other names. What's the origin of this convention? And.. why T (for type)? why not TYPE or Variable or any other name? ...
0
votes
1answer
101 views

What is the name/origin for this C code indentation style?

Look at the following code. Specifically, at the formatting of the variable declarations. I haven't encountered this indentation style in the past, but lately I stumbled upon two different code ...
0
votes
1answer
133 views

Origin of the “array” term in computer science [closed]

Starting from this wikipedia page, and exploring the linked pages, I have tried to find the origins of the word "array" in the context of computer science. I have so far come nowhere, and am pursuing ...
11
votes
2answers
4k views

Why does C use the asterisk for pointers?

I'm just now learning about C. I find it odd that the creators chose the asterisk (*) as the symbol for pointers rather than a symbol that actually looks like a pointer (->). Considering how ...
1
vote
0answers
187 views

Why do all browser user agent strings begin with 'Mozilla/5.0'? [closed]

I recently had to investigate quite long list of user agent names from different devices, and what surprised me is that all those strings begin with 'Mozilla/5.0'. There had to be something special ...
4
votes
3answers
3k views

C Flexible Arrays: When did they become part of the standard?

I learned to program in C many years ago, and used C steadily for about 10 years. These days, I occasionally have to look at C code, because our Informix 4GL RDS customized runners also contain C ...
35
votes
6answers
14k views

What is the history of why bytes are eight bits?

What where the historical forces at work, the tradeoffs to make, in deciding to use groups of eight bits as the fundamental unit ? There were machines, once upon a time, using other word sizes, ...
41
votes
15answers
10k views

How have languages influenced CPU design? [closed]

We are often told that the hardware doesn't care what language a program is written in as it only sees the compiled binary code, however this is not the whole truth. For example, consider the humble ...
4
votes
2answers
296 views

How did people write end-user software in Smalltalk?

There is something I've never understood about Smalltalk, since reading about it in a book when I was a child, tho' I have never used it "in anger". I know that it is turtles-all-the-way-down, that ...
-3
votes
3answers
176 views

Are there any programming languages that don't descend from C? [closed]

I mean descend as in languages who's original compiler/interpreter was written in C or in a language that descends from C. If you don't count assembly, the only thing that comes to my mind is B. Are ...
17
votes
1answer
1k views

Books and stories on programming culture, specifically in the 80's / early 90's [closed]

I've enjoyed a number of (fiction/non-fiction books) about hacker culture and running a software business in the 80's, 90's. For some reason things seemed so much more exciting back then. Examples ...
3
votes
5answers
983 views

First dedicated IDE?

What was the first program that was created as a dedicated IDE? That is, purpose built for coding, rather than simply allowing integration as part of its expansion options. This is opposed to a text ...
-2
votes
1answer
161 views

Why are mostly 9999, 99999… are used for making comparisons [closed]

I (I am sure everyone else also) have always seen comparisons of some value to 999 or 9999 .... etc. for e.g.: in CSS z-index: 9999 or some times str.length < 99999 I wonder if there is some ...
6
votes
4answers
4k views

How did programming work when programmers used punchcards?

I saw this: Learning to program on punchcards and I've seen this: http://en.wikipedia.org/wiki/Computer_programming_in_the_punched_card_era but they leave much to be desired. Can anyone explain to ...
2
votes
5answers
606 views

Why lambda/closures expressions came so late to C++?

I was reading a really great Bjarne Stroustrup's article where he exposes some C++ myths. I look at code that focus my attention, because I wouldn't know that C++ supports this kind of expressions. ...
5
votes
2answers
272 views

Where did the three tenets of OOP originate

It is easy to find the origin of the term OOP coined by Alan Kay when he created Smalltalk, but I can't find if when creating the language he also created the 3 tenets of OOP (Encapsulation, ...
3
votes
3answers
178 views

Why is Win32 API's WM_MOVE being called while dragging the window?

I have two callbacks for WM_MOVE and WM_MOVING. Oddly enough, WM_MOVE is being called while dragging the window. I expected WM_MOVE to be called only when I'm done dragging the window. MSDN says that ...
305
votes
9answers
76k views

Why is 80 characters the 'standard' limit for code width?

Why is 80 characters the "standard" limit for code width? Why 80 and not 79, 81 or 100? What is the origin of this particular value?
10
votes
4answers
861 views

Historical precedent for why Prolog is less popular than SQL in Imperative Programming? [closed]

It seems that writing Declarative SQL is very popular in Imperative Programming. However, it also seems that writing Declarative Prolog could save a lot of complexity but this is not very common. ...
0
votes
1answer
46 views

How can I determine which version of Python introduced a particular module to the std lib? [closed]

Is there a single timeline-style resource available showing the history of the modules available in different versions of Python? I'd like to, for instance, easily determine which version of Python ...
5
votes
5answers
3k views

False friends? Keyword “static” in C compared to C++, C# and Java

To me, the use of the keyword static in C and languages like C# and Java are "false friends" like "to become" in English and "bekommen" in German (= "to get" in English), because they mean different ...
6
votes
1answer
325 views

The Lisp in Gnu

Since the GNU project is celebrating its anniversary, and the initial announcement for GNU is linked to (http://www.gnu.org/gnu/initial-announcement.en.html) all over the place, I reread it and I ...
1
vote
1answer
217 views

Why does GCC use AT&T syntax by default?

I think title says it all :) Is there any particular practical reason (I guess it's mostly historic, but I'm unable to find it on my own) why GCC uses AT&T/GAS syntax? Note: I know this is just ...
7
votes
1answer
332 views

Original source of `(seed * 9301 + 49297) % 233280` random algorithm?

If you search for examples of creating a seeded (pseudo)Random number generator, you will run into stuff like this (specific example http://indiegamr.com/generate-repeatable-random-numbers-in-js/): ...
1
vote
1answer
115 views

Why are Apache 2.0 works excluded from OpenBSD?

From http://www.openbsd.org/policy.html The original Apache license was similar to the Berkeley license, but source code published under version 2 of the Apache license is subject to additional ...
20
votes
2answers
2k views

When did the term “snake case” come into use? [closed]

Many people use the term Snake Case to describe variables or other symbols with_the_form_of_underscores. In the past week, I've launched several broad searches. I can't find anything about the origin ...
38
votes
9answers
7k views

What did people do before templates in C++? [duplicate]

I am not new to programming, but I am one that started a few years ago, and I do love templates. But in the before times, how did people deal with situations where they needed compile-time code ...
4
votes
9answers
468 views

Why were punch cards used for programming

I am doing a research essay on the history of programming languages, and I was wondering, why did programmers ever write their programs on punch cards? Didn't computer screens and keyboards already ...
14
votes
2answers
1k views

Why is the Unix linker called “ld”

Tried to search the web and couldn't find an answer. It might have something to do with "load", but that doesn't make much sense to me. Obviously, "ln" was already taken, but where does that "d" come ...
65
votes
10answers
10k views

Why was the first compiler written before the first interpreter?

The first compiler was written by Grace Hopper in 1952 while the Lisp interpreter was written in 1958 by John McCarthy's student Steve Russell. Writing a compiler seems like a much harder problem than ...
2
votes
3answers
181 views

How was the system clock first used in early computers?

This question is about the clock that keeps current time, not about the signal that sequences the circuitry (the wall clock, not the metronome). First computers were pure calculators, just very ...
-2
votes
1answer
189 views

Who first used the phrase “Those who only live by the GUI, will die by the GUI” [closed]

I have heard a similar quote several times, as either "Live by the GUI, die by the GUI" or "Those who only live by the GUI, will die by the GUI". The first time I heard this was in an ...
0
votes
4answers
953 views

Why was Fortran never used to develop an Operating System?

I'm not a Fortran developer myself, but I'm about to use it a little and found myself wondering why, if it is much older than C but equally as performant as C, was it never used to develop any ...
1
vote
1answer
281 views

Which programming language first came up with the finally block?

Which programming language first came up with the finally block? I ask purely out of curiosity. It is a very useful piece of syntactic sugar, and whoever first created it surely has a very ...
55
votes
10answers
19k views

Why has C prevailed over Pascal? [closed]

My understanding is that in the 1980s, and perhaps in the 1990s too, Pascal and C were pretty much head-to-head as production languages. Is the ultimate demise of Pascal only due to Borland's neglect ...
3
votes
1answer
399 views

Why did Shannon's outguessing machine beat Hagelbarger's?

I'm reading "Rock Breaks Scissors", which describes two "outguessing machines" built at Bell Labs that try to exploit human non-randomness in the game of matching pennies. There was an outguessing ...
5
votes
4answers
322 views

Why does “charset” really mean “encoding” in common usage?

Something that has long confused me is that so much software uses the terms "charset" and "encoding" as synonyms. When people refer to a unicode "encoding", they always mean a ruleset for ...