Computer science/Catalogs/List of seminal concepts in computer science: Difference between revisions
imported>G. Del Merritt (clarification of some terms, minor reordering) |
imported>G. Del Merritt mNo edit summary |
||
Line 18: | Line 18: | ||
* [[relational database model]] first proposed by [[E.F. Codd]] in 1969. | * [[relational database model]] first proposed by [[E.F. Codd]] in 1969. | ||
* the various ways (past and present) for distributing applications across a network, or making procedure calls across a network: EDI, COM, COM+, CORBA, RPC, XML-RPC, and now XML web services (so-called Service Oriented Architecture, or SOA) | * the various ways (past and present) for distributing applications across a network, or making procedure calls across a network: EDI, COM, COM+, CORBA, RPC, XML-RPC, and now XML web services (so-called Service Oriented Architecture, or SOA) | ||
* advent of managed code languages, such as [[Ada]] and [[java programming language|Java]], that can provide "type safety" and other benefits such as substantial software reuse by means of shared libraries | * advent of managed code languages, such as [[Ada programming language|Ada]] and [[java programming language|Java]], that can provide "type safety" and other benefits such as substantial software reuse by means of shared libraries | ||
==References== | ==References== | ||
<references/> | <references/> |
Revision as of 14:02, 25 March 2008
The metadata subpage is missing. You can start it via filling in this form or by following the instructions that come up after clicking on the [show] link to the right. | |||
---|---|---|---|
|
This is a list of seminal concepts in computer science.
- virtual memory - also memory management in general
- 1952: the first compiler written by Grace Hopper[1] - also programming language, interpreter
- operating system (invention of) - also batch processing, timesharing
- threading and local variable scope, requiring use of stack frames
- stored program architecture
- probably EDVAC was the first instance: Von Neumann architecture (having program and data in same physical memory)
- Harvard Mark I: Harvard architecture (having program and data in different physical memories)
- 1950's (need exact date); Konrad Zuse was likely the first to propose pipelining of processor instructions for faster throughput (invention of); but I don't know what computer actually did it first
- all the other key processor design speedups, at least the biggest concepts (each has a multiple ways of being realized)
- compiler optimizations
- Cross compilation: allows support for new/experimental platforms, or platforms for which a native development environment is not readily available
- Bootstrapping: Getting it all going. Myriad examples include having an OS (Unix) written 99% in a high-level language (C), so that to port the OS to a different processor required mainly writing a C compiler for that processor; along with the item above, a precursor to what open source and embedded projects do when they have to compile their code for various hardware/OS platforms
- hardware abstraction: the BIOS does this in an IBM compatible PC; the measure of success for a hardware abstraction can be seen in part by the portability of the code dependent upon it
- relational database model first proposed by E.F. Codd in 1969.
- the various ways (past and present) for distributing applications across a network, or making procedure calls across a network: EDI, COM, COM+, CORBA, RPC, XML-RPC, and now XML web services (so-called Service Oriented Architecture, or SOA)
- advent of managed code languages, such as Ada and Java, that can provide "type safety" and other benefits such as substantial software reuse by means of shared libraries
References
- ↑ Grace Murray Hopper (proceedings of Grace Hopper Celebration of Women in Computing conference, 1994)