Programming Languages
Dan Tobias (Talk | contribs) |
Dan Tobias (Talk | contribs) (→Programming languages) |
||
(219 intermediate revisions by 11 users not shown) | |||
Line 1: | Line 1: | ||
− | { | + | {{FormatInfo |
− | | | + | |formattype=Languages |
− | | | + | |thiscat=Programming Languages |
− | + | |released=~1950 | |
− | | | + | |image=Babbage difference engine drawing.gif |
− | | | + | |caption=Babbage's Difference Engine |
− | |} | + | }} |
+ | '''Programming languages''' are languages expected to be executed (interpreted, compiled, etc.) by a machine in order to perform operations or algorithms. They are distinct from markup languages, which represent the structure of a document rather than specific operations to be performed, though it is possible to combine both in a document (e.g., HTML containing embedded JavaScript, or PHP code which includes HTML). Programming language code is stored as [[source code]] which may be directly interpreted by a machine or compiled or assembled into [[executables]]. | ||
− | Programming languages | + | == Programming languages == |
− | * Ada | + | * [[ABC (programming language)]] |
− | * | + | * [[ActionScript]] (Flash) |
− | * APL | + | ** [[ActionScript Byte Code]] |
− | * Assembly language (various versions for different machine architectures) | + | * [[Ada]] |
− | * BASIC (Beginner's All Purpose Symbolic Instruction Code) | + | * [[ALGOL]] |
− | * C | + | * [[Anim8or Scripting Language]] |
− | * C++ | + | * [[APL]] |
− | * C | + | * [[APT (programming language)|APT]] |
− | * COBOL (COmmon Business-Oriented Language) | + | * [[AppleScript]] |
− | * FORTRAN (FORmula TRANslation) | + | * [[Arc (programming language)|Arc]] |
− | * Java | + | * [[Arduino programming language]] |
− | * JavaScript (JScript, | + | * [[Assembly language]] (.asm, .s) (various versions for different machine architectures) |
− | * | + | * [[Aussie++]] |
− | * Logo | + | * [[Austral]] |
− | * Machine language (various versions for different machine architectures) | + | * [[AutoHotkey]] |
− | * MUMPS (Massachusetts General Hospital Utility Multi-Programming System) | + | * [[AutoLISP]] |
− | * Pascal | + | * [[AWK]] |
− | * Perl | + | * [[B]] |
− | * PHP | + | * [[BASIC]] (Beginner's All Purpose Symbolic Instruction Code) (.bas) -- See also [[Tokenized BASIC]] |
− | * PL/ | + | * [[Batch file]] (DOS, Windows, OS/2) |
− | * Prolog | + | * [[BCPL]] |
− | * Python | + | * [[BLISS]] |
− | * RPG | + | * [[Blitz BASIC]] |
− | * SNOBOL | + | ** [[Blitz3D]] |
+ | * [[BlooP, FlooP, and GlooP]] | ||
+ | * [[Bourne shell script]] (.sh) | ||
+ | * [[Brainfuck]] | ||
+ | * [[Breder]] | ||
+ | * [[C]] (.c, .cc, .h) | ||
+ | * [[C Sharp|C#]] (.cs) | ||
+ | * [[C shell script]] | ||
+ | * [[C++]] (.cpp, .cxx) | ||
+ | * [[C+=]] | ||
+ | * [[CakeML]] | ||
+ | * [[CEEMAC]] | ||
+ | * [[CFEngine]] | ||
+ | * [[CHIP-8]] | ||
+ | * [[ChordQL]] | ||
+ | * [[Clipper (programming language)]] | ||
+ | * [[Clojure]] | ||
+ | ** [[ClojureScript]] | ||
+ | * [[COBOL]] (COmmon Business-Oriented Language) | ||
+ | * [[CoffeeScript]] | ||
+ | * [[ColdFusion]] | ||
+ | * [[COMAL]] | ||
+ | * [[COMIT]] | ||
+ | * [[COW]] | ||
+ | * [[Coq]] | ||
+ | * [[CORC]] (Cornell Computing Language) | ||
+ | * [[CPL]] | ||
+ | * [[Crystal]] | ||
+ | * [[CUPL]] (Cornell University Programming Language) | ||
+ | * [[Cython (Pyrex)]] | ||
+ | * [[D]] | ||
+ | * [[Dart]] (was Dash) | ||
+ | * [[Dern]] | ||
+ | * [[dBase programming language]] | ||
+ | * [[DogeScript]] | ||
+ | * [[Dylan]] | ||
+ | * [[Elixir]] | ||
+ | * [[Elm]] | ||
+ | * [[Erlang]] | ||
+ | * [[Expect]] | ||
+ | * [[Extended Batch Language]] (EBL) | ||
+ | * [[F Sharp|F#]] | ||
+ | * [[Fantom]] | ||
+ | * [[Fish shell]] (*.fish) | ||
+ | * [[Flare]] | ||
+ | * [[Flow]] | ||
+ | * [[Forth]] | ||
+ | * [[FORTRAN]] (FORmula TRANslation) | ||
+ | * [[FoxPro programming language]] | ||
+ | * [[Free Pascal]] | ||
+ | * [[Fusion (programming language)|Fusion]] (.fu, .ci) | ||
+ | * [[GAMS]] (.gms) | ||
+ | * [[GDL Script]] - scripting language used in ARCHICAD (.gdl) | ||
+ | * [[Gherkin]]/Cucumber | ||
+ | * [[Go]] | ||
+ | * [[Graphics Programming Language]] (GPL) (mid-level language on TI computers) | ||
+ | * [[Groovy]] | ||
+ | * [[HamsterSpeak]] | ||
+ | * [[Haskell]] | ||
+ | * [[Haxe]] | ||
+ | * [[High Level Shading Language]] (HLSL) | ||
+ | * [[Hoon]] | ||
+ | * [[Hopscotch]] | ||
+ | * [[HyperTalk]] | ||
+ | * [[IDL]] | ||
+ | * [[INTERCAL]] | ||
+ | * [[Ioke]] | ||
+ | * [[Java]] (.j, .jav, .java) | ||
+ | * [[JavaScript]] (JScript, [[ECMAScript]]) (.js) | ||
+ | ** [[Node.js]] | ||
+ | ** [[React]] | ||
+ | ** [[TypeScript]] | ||
+ | * [[JCL]] (Job Control Language; used on IBM mainframes) | ||
+ | * [[JOSS]] | ||
+ | * [[JSONata]] [http://jsonata.org/] | ||
+ | * [[JSX]] | ||
+ | * [[Julia]] | ||
+ | * [[Kotlin]] | ||
+ | * [[LISP]] | ||
+ | * [[LiveScript]] | ||
+ | * [[Logo]] | ||
+ | * [[LOLCODE]] | ||
+ | * [[Lollipop]] | ||
+ | * [[Lua]] | ||
+ | * [[Lurk]] | ||
+ | * [[Machine language]] (various versions for different machine architectures) | ||
+ | * [[MATLAB script file]] (.m) | ||
+ | * [[MDL (programming language)|MDL]] (.mud) | ||
+ | * [[Microcode]] | ||
+ | * [[mIRC scripting language]] | ||
+ | * [[ML]] | ||
+ | * [[MUMPS]] (Massachusetts General Hospital Utility Multi-Programming System) | ||
+ | * [[Music Macro Language]] (.mmi) | ||
+ | * [[Nim]] | ||
+ | * [[Nock]] | ||
+ | * [[NetLogo]] | ||
+ | * [[Object Pascal]] (including Delphi) | ||
+ | * [[Objective-C]] (.m, .h) (used in Mac and iOS development) | ||
+ | * [[OCaml]] | ||
+ | * [[OpenGL Shading Language]] (GLSL) | ||
+ | * [[P (Microsoft programming language)|P]] (Microsoft) | ||
+ | * [[Pascal]] (.pas) | ||
+ | * [[Pawn]] | ||
+ | * [[Perl]] (.pl, .pm) | ||
+ | * [[PHP]] (.php) | ||
+ | * [[Piet]] | ||
+ | * [[PikaScript]] | ||
+ | * [[PILOT]] | ||
+ | * [[Pixie (programming language)|Pixie]] | ||
+ | * [[Pixilang]] (.pixi) | ||
+ | * [[PL/I]] | ||
+ | * [[PLASMA]] | ||
+ | * [[PostScript]] | ||
+ | * [[PowerShell]] | ||
+ | * [[Processing]] | ||
+ | * [[Programmable Command Language]] (PCL), for TOPS-20 | ||
+ | * [[Prolog]] | ||
+ | * [[Pyramid]] | ||
+ | * [[Python]] (.py, .pyc, .pyo, .pyd) | ||
+ | * [[QML]] | ||
+ | * [[Q Sharp|Q#]] | ||
+ | * [[Quorum]] | ||
+ | * [[R]] | ||
+ | * [[Racket]] | ||
+ | * [[Raku]] | ||
+ | * [[Rant]] | ||
+ | * [[Ratfor]] | ||
+ | * [[Redcode]] | ||
+ | * [[RenderWare object]] (.rwx) | ||
+ | * [[RobotWar]] | ||
+ | * [[RPG]]/RPGLE/RPG IV/RPG ILE (.rpgle, .sqlrpgle) | ||
+ | * [[Ruby]] | ||
+ | * [[Rust]] | ||
+ | * [[S]] | ||
+ | * [[SAIL]] | ||
+ | * [[Scala]] | ||
+ | * [[Scheme]] | ||
+ | * [[SCODL]] | ||
+ | * [[Scratch]] | ||
+ | * [[Server Side Includes]] | ||
+ | * [[Shen]] | ||
+ | * [[Sikuli]] | ||
+ | * [[Skip]] | ||
+ | * [[Smalltalk]] | ||
+ | * [[SNOBOL]] | ||
+ | * [[Solidity]] | ||
+ | * [[Squiggle]] | ||
+ | * [[Squirrel]] | ||
+ | * [[Standard ML]] | ||
+ | * [[StarLogo]] | ||
+ | * [[Swift]] (Apple) (.swift) | ||
+ | * [[Swift (parallel scripting)]] | ||
+ | * [[SYSDOOM]] | ||
+ | * [[Tabloid (programming language)|Tabloid]] | ||
+ | * [[Tcl]] | ||
+ | * [[TECO]] | ||
+ | * [[TRAC programming language]] | ||
+ | * [[TUTOR]] | ||
+ | * [[TypeScript]] | ||
+ | * [[Verilog]] | ||
+ | * [[vim script]] | ||
+ | * [[Visual Basic]] | ||
+ | * [[VBScript]] | ||
+ | * [[Vue.js]] component files | ||
+ | * [[WaveGL]] | ||
+ | * [[WebAssembly]] | ||
+ | * [[Wenyan]] (文言) | ||
+ | * [[Windows Script File]] | ||
+ | * [[WMLScript]] | ||
+ | * [[Wolfram Language]] | ||
+ | * [[Wuffs]] | ||
+ | * [[ZAP]] | ||
+ | * [[Z-code]] | ||
+ | * [[ZIL]] | ||
+ | |||
+ | == Logical assertion languages == | ||
+ | * [[SNARK]] | ||
+ | |||
+ | == Query languages == | ||
+ | * [[Fauna Query Language]] (FQL) | ||
+ | * [[PRQL]] | ||
+ | * [[SPARQL]] | ||
+ | * [[SQL]] | ||
+ | |||
+ | == Templates, macros, preprocessors, etc. == | ||
+ | * [[Cascading Style Sheets|CSS]] | ||
+ | * [[doT]] | ||
+ | * [[DSSSL]] | ||
+ | * [[Jinja]] | ||
+ | * [[Jsonnet]] [https://jsonnet.org/] | ||
+ | * [[Liquid]] (.liquid) | ||
+ | * [[M4]] (.m4) | ||
+ | * [[Pug]] | ||
+ | * [[Smarty]] | ||
+ | * [[XSL]] | ||
+ | * [[XSLT]] | ||
+ | |||
+ | For additional macro formats, especially binary formats, see [[Executables#Macros or automated scripting]]. | ||
+ | |||
+ | See also [[Web#Scripts/Applets/Plug-Ins/Frameworks/APIs/Templating]]. | ||
+ | |||
+ | See [[Wikipedia:Category:Template engines]] for another list of template systems. | ||
+ | |||
+ | == Other/Miscellaneous == | ||
+ | * [[Nomyx language]] | ||
+ | * [[Programmable calculators]] | ||
+ | |||
+ | == See also == | ||
+ | * [[Development]] | ||
+ | * [[Executables]] | ||
+ | * [[Interactive Fiction]] engines often use specialized programming languages for game development. | ||
+ | * [[Resources]] | ||
+ | * [[Source code]] | ||
+ | |||
+ | == External links == | ||
+ | ===Resources=== | ||
+ | * A comprehensive list of over 2000 programming languages and a small sample programs for each of them is available [http://www.99-bottles-of-beer.net/ here] | ||
+ | * [http://rosettacode.org/ Rosetta Code] attempts to present solutions to the same task in different programming languages. | ||
+ | * [http://storify.com/carlzimmer/coding-for-middle-school-girls?utm_content=storify-pingback&utm_source=t.co&utm_campaign=&awesm=sfy.co_s2LP&utm_medium=sfy.co-twitter Coding for middle-school girls] (tips on introducing them to programming) | ||
+ | * [http://langpop.corger.nl/ Programming language popularity chart (based on Github and StackOverflow activity)] | ||
+ | * [http://hivelogic.com/articles/top-10-programming-fonts Top 10 programming fonts] | ||
+ | * [http://www.integralwebsolutions.co.za/Blog/EntryId/901/What-s-The-Most-Popular-Programming-Language.aspx What’s The Most Popular Programming Language?] | ||
+ | * [http://lifehacker.com/which-programming-language-should-i-learn-first-1477153665 Which programming language should I learn first?] | ||
+ | * [http://exple.tive.org/blarg/2013/10/22/citation-needed/ Why array indices start at zero; historical info] | ||
+ | * [http://www.codecademy.com/ Code Academy: learn to code interactively online] | ||
+ | * [http://howto.cnet.com/8301-11310_39-57615356-285/best-free-sites-for-learning-how-to-write-code/ Best free sites for learning how to write code] | ||
+ | |||
+ | === Commentary === | ||
+ | * [http://boingboing.net/2013/02/27/what-most-schools-should-reall.html Why you should learn to program] | ||
+ | * [http://mentalfloss.com/article/53160/meet-refrigerator-ladies-who-programmed-eniac Meet the 'Refrigerator Ladies' Who Programmed the ENIAC] | ||
+ | * [http://devblog.avdi.org/2014/01/31/the-moderately-enthusiastic-programmer/ The Moderately Enthusiastic Programmer] | ||
+ | * [http://techcrunch.com/2013/10/10/my-experience-as-a-fourth-grade-hacker/ My Experience As A Fourth Grade Hacker] | ||
+ | * [https://medium.com/learning-to-code/565fc9dcb329 Things I Wish Someone Had Told Me When I Was Learning How to Code] | ||
+ | * [http://michaelochurch.wordpress.com/2012/01/15/the-problem-with-programming-language/ A problem with the term, programming “language”] | ||
+ | * [http://animalnewyork.com/2014/artists-notebook-ramsey-nasser/ Discussion of creating programming languages in Arabic] | ||
+ | * [http://www.viva64.com/en/b/0260/ The Last Line Effect] | ||
+ | * [http://bost.ocks.org/mike/algorithms/ Visualizing algorithms] | ||
+ | * [http://www.playthepast.org/?p=4982 Excavating Code: An Archaeological Record of Software Development] | ||
+ | * [https://medium.com/towards-a-remarkable-career/the-art-of-the-bug-ac5a535315fa The art of the bug: Failure should be fun] | ||
+ | * [https://speakerdeck.com/craigstuntz/incredibly-strange-programming-languages Incredibly Strange Programming Languages (presentation)] | ||
+ | |||
+ | ===Humor=== | ||
+ | * [http://james-iry.blogspot.com/2009/05/brief-incomplete-and-mostly-wrong.html A Brief, Incomplete, and Mostly Wrong History of Programming Languages] | ||
+ | * [http://colinm.org/language_checklist.html Programming Language Checklist] | ||
+ | * [http://www.quora.com/Programming-Languages/If-there-is-a-war-of-programming-languages-who-would-you-support-and-why/answer/Prithviraj-Udaya?srid=LZ&st=ns Programming languages as Tolkien characters] | ||
+ | * [http://programmingisterrible.com/post/65781074112/devils-dictionary-of-programming Devil's Dictionary of Programming] | ||
+ | * [http://9gag.com/gag/av0z0Bn?ref=fb.s This Is Why You Shouldn't Interrupt A Programmer] | ||
+ | * [http://kingjamesprogramming.tumblr.com/ Random mashup generator of the King James Bible and a programming book] | ||
+ | * [http://moviecode.tumblr.com/ What the computer code seen on screens in movies and TV shows actually does] | ||
+ | |||
+ | ===Misc.=== | ||
+ | * [http://abcnews.go.com/Politics/video/obama-slow-man-27453525 President Obama writes a line of code (video)] | ||
+ | * [https://medium.com/@3fingeredfox/margaret-hamilton-lead-software-engineer-project-apollo-158754170da8 Picture: Margaret Hamilton, lead software engineer, Project Apollo, with source code from moon landing mission] | ||
+ | * [http://www.watchpeoplecode.com/ Watch People Code (live video streams)] |
Latest revision as of 21:17, 6 February 2024
Programming languages are languages expected to be executed (interpreted, compiled, etc.) by a machine in order to perform operations or algorithms. They are distinct from markup languages, which represent the structure of a document rather than specific operations to be performed, though it is possible to combine both in a document (e.g., HTML containing embedded JavaScript, or PHP code which includes HTML). Programming language code is stored as source code which may be directly interpreted by a machine or compiled or assembled into executables.
Contents |
[edit] Programming languages
- ABC (programming language)
- ActionScript (Flash)
- Ada
- ALGOL
- Anim8or Scripting Language
- APL
- APT
- AppleScript
- Arc
- Arduino programming language
- Assembly language (.asm, .s) (various versions for different machine architectures)
- Aussie++
- Austral
- AutoHotkey
- AutoLISP
- AWK
- B
- BASIC (Beginner's All Purpose Symbolic Instruction Code) (.bas) -- See also Tokenized BASIC
- Batch file (DOS, Windows, OS/2)
- BCPL
- BLISS
- Blitz BASIC
- BlooP, FlooP, and GlooP
- Bourne shell script (.sh)
- Brainfuck
- Breder
- C (.c, .cc, .h)
- C# (.cs)
- C shell script
- C++ (.cpp, .cxx)
- C+=
- CakeML
- CEEMAC
- CFEngine
- CHIP-8
- ChordQL
- Clipper (programming language)
- Clojure
- COBOL (COmmon Business-Oriented Language)
- CoffeeScript
- ColdFusion
- COMAL
- COMIT
- COW
- Coq
- CORC (Cornell Computing Language)
- CPL
- Crystal
- CUPL (Cornell University Programming Language)
- Cython (Pyrex)
- D
- Dart (was Dash)
- Dern
- dBase programming language
- DogeScript
- Dylan
- Elixir
- Elm
- Erlang
- Expect
- Extended Batch Language (EBL)
- F#
- Fantom
- Fish shell (*.fish)
- Flare
- Flow
- Forth
- FORTRAN (FORmula TRANslation)
- FoxPro programming language
- Free Pascal
- Fusion (.fu, .ci)
- GAMS (.gms)
- GDL Script - scripting language used in ARCHICAD (.gdl)
- Gherkin/Cucumber
- Go
- Graphics Programming Language (GPL) (mid-level language on TI computers)
- Groovy
- HamsterSpeak
- Haskell
- Haxe
- High Level Shading Language (HLSL)
- Hoon
- Hopscotch
- HyperTalk
- IDL
- INTERCAL
- Ioke
- Java (.j, .jav, .java)
- JavaScript (JScript, ECMAScript) (.js)
- JCL (Job Control Language; used on IBM mainframes)
- JOSS
- JSONata [1]
- JSX
- Julia
- Kotlin
- LISP
- LiveScript
- Logo
- LOLCODE
- Lollipop
- Lua
- Lurk
- Machine language (various versions for different machine architectures)
- MATLAB script file (.m)
- MDL (.mud)
- Microcode
- mIRC scripting language
- ML
- MUMPS (Massachusetts General Hospital Utility Multi-Programming System)
- Music Macro Language (.mmi)
- Nim
- Nock
- NetLogo
- Object Pascal (including Delphi)
- Objective-C (.m, .h) (used in Mac and iOS development)
- OCaml
- OpenGL Shading Language (GLSL)
- P (Microsoft)
- Pascal (.pas)
- Pawn
- Perl (.pl, .pm)
- PHP (.php)
- Piet
- PikaScript
- PILOT
- Pixie
- Pixilang (.pixi)
- PL/I
- PLASMA
- PostScript
- PowerShell
- Processing
- Programmable Command Language (PCL), for TOPS-20
- Prolog
- Pyramid
- Python (.py, .pyc, .pyo, .pyd)
- QML
- Q#
- Quorum
- R
- Racket
- Raku
- Rant
- Ratfor
- Redcode
- RenderWare object (.rwx)
- RobotWar
- RPG/RPGLE/RPG IV/RPG ILE (.rpgle, .sqlrpgle)
- Ruby
- Rust
- S
- SAIL
- Scala
- Scheme
- SCODL
- Scratch
- Server Side Includes
- Shen
- Sikuli
- Skip
- Smalltalk
- SNOBOL
- Solidity
- Squiggle
- Squirrel
- Standard ML
- StarLogo
- Swift (Apple) (.swift)
- Swift (parallel scripting)
- SYSDOOM
- Tabloid
- Tcl
- TECO
- TRAC programming language
- TUTOR
- TypeScript
- Verilog
- vim script
- Visual Basic
- VBScript
- Vue.js component files
- WaveGL
- WebAssembly
- Wenyan (文言)
- Windows Script File
- WMLScript
- Wolfram Language
- Wuffs
- ZAP
- Z-code
- ZIL
[edit] Logical assertion languages
[edit] Query languages
- Fauna Query Language (FQL)
- PRQL
- SPARQL
- SQL
[edit] Templates, macros, preprocessors, etc.
For additional macro formats, especially binary formats, see Executables#Macros or automated scripting.
See also Web#Scripts/Applets/Plug-Ins/Frameworks/APIs/Templating.
See Wikipedia:Category:Template engines for another list of template systems.
[edit] Other/Miscellaneous
[edit] See also
- Development
- Executables
- Interactive Fiction engines often use specialized programming languages for game development.
- Resources
- Source code
[edit] External links
[edit] Resources
- A comprehensive list of over 2000 programming languages and a small sample programs for each of them is available here
- Rosetta Code attempts to present solutions to the same task in different programming languages.
- Coding for middle-school girls (tips on introducing them to programming)
- Programming language popularity chart (based on Github and StackOverflow activity)
- Top 10 programming fonts
- What’s The Most Popular Programming Language?
- Which programming language should I learn first?
- Why array indices start at zero; historical info
- Code Academy: learn to code interactively online
- Best free sites for learning how to write code
[edit] Commentary
- Why you should learn to program
- Meet the 'Refrigerator Ladies' Who Programmed the ENIAC
- The Moderately Enthusiastic Programmer
- My Experience As A Fourth Grade Hacker
- Things I Wish Someone Had Told Me When I Was Learning How to Code
- A problem with the term, programming “language”
- Discussion of creating programming languages in Arabic
- The Last Line Effect
- Visualizing algorithms
- Excavating Code: An Archaeological Record of Software Development
- The art of the bug: Failure should be fun
- Incredibly Strange Programming Languages (presentation)
[edit] Humor
- A Brief, Incomplete, and Mostly Wrong History of Programming Languages
- Programming Language Checklist
- Programming languages as Tolkien characters
- Devil's Dictionary of Programming
- This Is Why You Shouldn't Interrupt A Programmer
- Random mashup generator of the King James Bible and a programming book
- What the computer code seen on screens in movies and TV shows actually does