User talk:Bugoyh5

Computer science (or computing science) is the study of the theoretical foundations of information and computation, and of practical techniques for their implementation and application in computer systems.[1][2][3] It is frequently described as the systematic study of algorithmic processes that describe and transform information; the fundamental question underlying computer science is, "What can be (efficiently) automated?"[4] Computer science has many sub-fields; some, such as computer graphics, emphasize the computation of specific results, while others, such as computational complexity theory, study the properties of computational problems. Still others focus on the challenges in implementing computations. For example, programming language theory studies approaches to describing computations, while computer programming applies specific programming languages to solve specific computational problems, and human-computer interaction focuses on the challenges in making computers and computations useful, usable, and universally accessible to people.

The general public sometimes confuses computer science with vocational areas that deal with computers (such as information technology), or think that it relates to their own experience of computers, which typically involves activities such as gaming, web-browsing, and word-processing. However, the focus of computer science is more on understanding the properties of the programs used to implement software such as games and web-browsers, and using that understanding to create new programs or improve existing ones.[5] HISTORY OF COMPUTER PROGRAMMING Hero of Alexandria in the first century invented automated theatres that used analogue programming to control the puppets, doors, lights, and sound effects. Ada Lovelace, daughter of Anabella and Lord Byron (the poet), was the first recognised computer programmer. Anabella gave her love of mathematics to Ada, who after meeting Charles Babbage, translated and expanded a description of his analytical engine. Even though Babbage never completed construction of any of his machines, the work that he and Ada did earned her the title of the world's first computer programmer, see Ada Byron's notes on the analytical engine. The Ada programming language is named for her.

One early programmer known to have completed all the steps for unaided computation, including compiling and testing, is Wallace J. Eckert. This man's work predated the rise of computer languages, because he used the language of mathematics to solve astronomical problems. However, all the ingredients were there: he operated a computing laboratory for Columbia University with equipment provided by IBM, complete with a customer service division, and special purpose engineering consultants, in New York City, in the 1930s, using punch cards to hold the intermediate results of his calculations, and then formatting the punch cards to control the printout of the answers, just as in the work for the census decades earlier. He even had debugging techniques such as color coding, cross-footing, verifying and duplicating. One difference between Eckert and today's programmers is that the example of his work influenced the Manhattan project. His work was recognized by astronomers from Yale University Observatory, Princeton University Observatory, U.S. Naval Observatory, Harvard College Observatory, Student's Observatory of the University of California, Ladd Observatory of Brown University and Sproul Observatory of Swarthmore College.

Alan Turing is often considered the father of computer science and, by proxy, of the craft of programming. He was responsible for helping design and program a computer to break the German ENIGMA code during World War II.

Programming language measurements A to Z


 * Java 6 steady state approximate jvm steady state

Ada 2005 GNAT large-scale safety-critical software

ATS dependent types & linear types plus theorem proving

BASIC FreeBASIC quickbasic compatible imperative programming Gentoo

C CINT seamless c c++ interpreter compiler Gentoo

C Cyclone safe dialect of c Debian

C GNU gcc unchecked low-level programming

C Intel unchecked low-level programming Gentoo

C Tiny unchecked low-level programming Debian

C# Mono oo plus functional style (mono is not ms .net)

C++ GNU g++ c plus objects plus generics

C++ Intel c plus objects plus generics Gentoo

CAL lazy functional programming for jvm Gentoo

Clean lazy & strict pure functional programming

D Digital Mars c++ reduced and simplified Gentoo

D GNU c++ reduced and simplified Debian

Dylan Gwydion multi-method oo programming Debian

Eiffel SmartEiffel everything is an object plus design by contract Gentoo

Erlang HiPE concurrent real-time distributed fault-tolerant software

F# Mono higher-order type-safe programming (mono is not ms .net)

Forth bigForth extensible postfix stack programming Gentoo

Forth GNU GForth extensible postfix stack programming Gentoo

Fortran G95 pioneering numeric and scientific programming Gentoo

Fortran Intel pioneering numeric and scientific programming

Groovy “agile” “dynamic” “java compatible” for jvm

Haskell GHC lazy pure functional programming

Icon high-level string processing Gentoo

Io everything is a prototype object minimalism Gentoo

Java 1.4 -server ubiquitous jit server virtual machine Gentoo

Java 6 -client ubiquitous jit client virtual machine Gentoo

Java 6 -server ubiquitous jit server virtual machine

Java 6 -Xint ubiquitous bytecode interpreter virtual machine

Java 6 -Xms64m initial java server heap size 64m Gentoo

Java GNU gcj optimizing ahead-of-time compiler Gentoo

JavaScript JavaScriptCore WebKit-based ECMA scripting implementation Debian

JavaScript Rhino web-browser to jvm scripting Gentoo

JavaScript SpiderMonkey ubiquitous web-browser embedded scripting Gentoo

JavaScript TraceMonkey ubiquitous web-browser embedded scripting

JavaScript V8

Lisaac everything is a prototype object plus design by contract

Lisp SBCL pioneering s-expression oriented programming

Lua associative arrays for extensible embedded scripting

Lua LuaJIT jit compiler fully compatible with lua 5.1

Matlab GNU Octave linear and nonlinear problems and numerical experiments Debian

Mercury first order logic & types & modes Gentoo

Mozart/Oz multi-multi-multi-paradigm distributed programming

Nice multi-method type-safe oo for jvm Gentoo

Oberon-2 OO2C modular programming plus objects Gentoo

Objective-C GNU c plus a thin layer of smalltalk Debian

OCaml modular type-safe strict functional programming plus objects

OCaml (bytecode) modular type-safe strict functional programming plus objects Debian

Parrot PIR intermediate code for parrot byte code or parrot asm Debian

Pascal Free Pascal imperative programming plus objects

Perl server-side shell & cgi scripts

PHP scripts embedded in html, and much more

Pike explicitly-typed dynamic oo programming Gentoo

Prolog SWI goal-oriented pattern-matching rules and facts Gentoo

Prolog YAP goal-oriented pattern-matching rules and facts Gentoo

Python uncluttered imperative programming plus objects

Python 3 the new Python

Python IronPython scripting for .net (mono is not ms .net) Gentoo

Python Psyco representation-based just-in-time specialization Gentoo

Python pypy Python in Python

Rebol metadata scripting for distributed computing Gentoo

Rexx Regina historic - originally ibm - scripting Debian

Ruby programmer fun - everything is an object scripting

Ruby 1.9 the new Ruby

Ruby JRuby everything is an object scripting for jvm

S-Lang embeddable extension language Debian

Scala higher-order type-safe programming for jvm

Scheme Bigloo statically-scoped properly tail-recursive dialect of lisp Debian

Scheme Chicken translate scheme source to portable c code Gentoo

Scheme Ikarus R6RS compatible incremental compiler Gentoo

Scheme PLT statically-scoped properly tail-recursive dialect of lisp

Smalltalk GNU uniform reflective environment - for scripting Gentoo

Smalltalk Squeak uniform reflective environment - real live objects Gentoo

Smalltalk VisualWorks uniform reflective environment - real live objects

SML MLton whole-program optimizing compiler Gentoo

SML SML/NJ modular type-safe strict functional programming Gentoo

Tcl everything is a string - programmable programming Gentoo

Zonnon Mono active objects (mono is not ms .net) Gentoo