CINXE.COM
List of programming languages by type - Wikipedia
<!DOCTYPE html> <html class="client-nojs vector-feature-language-in-header-enabled vector-feature-language-in-main-page-header-disabled vector-feature-page-tools-pinned-disabled vector-feature-toc-pinned-clientpref-1 vector-feature-main-menu-pinned-disabled vector-feature-limited-width-clientpref-1 vector-feature-limited-width-content-enabled vector-feature-custom-font-size-clientpref-1 vector-feature-appearance-pinned-clientpref-1 vector-feature-night-mode-enabled skin-theme-clientpref-day vector-sticky-header-enabled vector-toc-available" lang="en" dir="ltr"> <head> <meta charset="UTF-8"> <title>List of programming languages by type - Wikipedia</title> <script>(function(){var className="client-js vector-feature-language-in-header-enabled vector-feature-language-in-main-page-header-disabled vector-feature-page-tools-pinned-disabled vector-feature-toc-pinned-clientpref-1 vector-feature-main-menu-pinned-disabled vector-feature-limited-width-clientpref-1 vector-feature-limited-width-content-enabled vector-feature-custom-font-size-clientpref-1 vector-feature-appearance-pinned-clientpref-1 vector-feature-night-mode-enabled skin-theme-clientpref-day vector-sticky-header-enabled vector-toc-available";var cookie=document.cookie.match(/(?:^|; )enwikimwclientpreferences=([^;]+)/);if(cookie){cookie[1].split('%2C').forEach(function(pref){className=className.replace(new RegExp('(^| )'+pref.replace(/-clientpref-\w+$|[^\w-]+/g,'')+'-clientpref-\\w+( |$)'),'$1'+pref+'$2');});}document.documentElement.className=className;}());RLCONF={"wgBreakFrames":false,"wgSeparatorTransformTable":["",""],"wgDigitTransformTable":["",""],"wgDefaultDateFormat":"dmy", "wgMonthNames":["","January","February","March","April","May","June","July","August","September","October","November","December"],"wgRequestId":"c431445a-7582-4b67-b447-a8356014d71f","wgCanonicalNamespace":"","wgCanonicalSpecialPageName":false,"wgNamespaceNumber":0,"wgPageName":"List_of_programming_languages_by_type","wgTitle":"List of programming languages by type","wgCurRevisionId":1276098860,"wgRevisionId":1276098860,"wgArticleId":144144,"wgIsArticle":true,"wgIsRedirect":false,"wgAction":"view","wgUserName":null,"wgUserGroups":["*"],"wgCategories":["Articles with short description","Short description is different from Wikidata","All articles with unsourced statements","Articles with unsourced statements from January 2018","Articles to be expanded from November 2016","All articles to be expanded","Articles to be expanded from April 2018","Articles to be expanded from September 2018","Articles with unsourced statements from March 2015", "Articles with unsourced statements from August 2015","Lists of programming languages","Array programming languages"],"wgPageViewLanguage":"en","wgPageContentLanguage":"en","wgPageContentModel":"wikitext","wgRelevantPageName":"List_of_programming_languages_by_type","wgRelevantArticleId":144144,"wgIsProbablyEditable":true,"wgRelevantPageIsProbablyEditable":true,"wgRestrictionEdit":[],"wgRestrictionMove":[],"wgNoticeProject":"wikipedia","wgCiteReferencePreviewsActive":false,"wgFlaggedRevsParams":{"tags":{"status":{"levels":1}}},"wgMediaViewerOnClick":true,"wgMediaViewerEnabledByDefault":true,"wgPopupsFlags":0,"wgVisualEditor":{"pageLanguageCode":"en","pageLanguageDir":"ltr","pageVariantFallbacks":"en"},"wgMFDisplayWikibaseDescriptions":{"search":true,"watchlist":true,"tagline":false,"nearby":true},"wgWMESchemaEditAttemptStepOversample":false,"wgWMEPageLength":90000,"wgEditSubmitButtonLabelPublish":true,"wgULSPosition":"interlanguage","wgULSisCompactLinksEnabled":false, "wgVector2022LanguageInHeader":true,"wgULSisLanguageSelectorEmpty":false,"wgWikibaseItemId":"Q389085","wgCheckUserClientHintsHeadersJsApi":["brands","architecture","bitness","fullVersionList","mobile","model","platform","platformVersion"],"GEHomepageSuggestedEditsEnableTopics":true,"wgGETopicsMatchModeEnabled":false,"wgGEStructuredTaskRejectionReasonTextInputEnabled":false,"wgGELevelingUpEnabledForUser":false};RLSTATE={"ext.globalCssJs.user.styles":"ready","site.styles":"ready","user.styles":"ready","ext.globalCssJs.user":"ready","user":"ready","user.options":"loading","ext.cite.styles":"ready","skins.vector.search.codex.styles":"ready","skins.vector.styles":"ready","skins.vector.icons":"ready","jquery.tablesorter.styles":"ready","jquery.makeCollapsible.styles":"ready","ext.wikimediamessages.styles":"ready","ext.visualEditor.desktopArticleTarget.noscript":"ready","ext.uls.interlanguage":"ready","wikibase.client.init":"ready","ext.wikimediaBadges":"ready"};RLPAGEMODULES=[ "ext.cite.ux-enhancements","site","mediawiki.page.ready","jquery.tablesorter","jquery.makeCollapsible","mediawiki.toc","skins.vector.js","ext.centralNotice.geoIP","ext.centralNotice.startUp","ext.gadget.ReferenceTooltips","ext.gadget.switcher","ext.urlShortener.toolbar","ext.centralauth.centralautologin","mmv.bootstrap","ext.popups","ext.visualEditor.desktopArticleTarget.init","ext.visualEditor.targetLoader","ext.echo.centralauth","ext.eventLogging","ext.wikimediaEvents","ext.navigationTiming","ext.uls.interface","ext.cx.eventlogging.campaigns","ext.cx.uls.quick.actions","wikibase.client.vector-2022","ext.checkUser.clientHints","ext.growthExperiments.SuggestedEditSession"];</script> <script>(RLQ=window.RLQ||[]).push(function(){mw.loader.impl(function(){return["user.options@12s5i",function($,jQuery,require,module){mw.user.tokens.set({"patrolToken":"+\\","watchToken":"+\\","csrfToken":"+\\"}); }];});});</script> <link rel="stylesheet" href="/w/load.php?lang=en&modules=ext.cite.styles%7Cext.uls.interlanguage%7Cext.visualEditor.desktopArticleTarget.noscript%7Cext.wikimediaBadges%7Cext.wikimediamessages.styles%7Cjquery.makeCollapsible.styles%7Cjquery.tablesorter.styles%7Cskins.vector.icons%2Cstyles%7Cskins.vector.search.codex.styles%7Cwikibase.client.init&only=styles&skin=vector-2022"> <script async="" src="/w/load.php?lang=en&modules=startup&only=scripts&raw=1&skin=vector-2022"></script> <meta name="ResourceLoaderDynamicStyles" content=""> <link rel="stylesheet" href="/w/load.php?lang=en&modules=site.styles&only=styles&skin=vector-2022"> <meta name="generator" content="MediaWiki 1.44.0-wmf.16"> <meta name="referrer" content="origin"> <meta name="referrer" content="origin-when-cross-origin"> <meta name="robots" content="max-image-preview:standard"> <meta name="format-detection" content="telephone=no"> <meta name="viewport" content="width=1120"> <meta property="og:title" content="List of programming languages by type - Wikipedia"> <meta property="og:type" content="website"> <link rel="preconnect" href="//upload.wikimedia.org"> <link rel="alternate" media="only screen and (max-width: 640px)" href="//en.m.wikipedia.org/wiki/List_of_programming_languages_by_type"> <link rel="alternate" type="application/x-wiki" title="Edit this page" href="/w/index.php?title=List_of_programming_languages_by_type&action=edit"> <link rel="apple-touch-icon" href="/static/apple-touch/wikipedia.png"> <link rel="icon" href="/static/favicon/wikipedia.ico"> <link rel="search" type="application/opensearchdescription+xml" href="/w/rest.php/v1/search" title="Wikipedia (en)"> <link rel="EditURI" type="application/rsd+xml" href="//en.wikipedia.org/w/api.php?action=rsd"> <link rel="canonical" href="https://en.wikipedia.org/wiki/List_of_programming_languages_by_type"> <link rel="license" href="https://creativecommons.org/licenses/by-sa/4.0/deed.en"> <link rel="alternate" type="application/atom+xml" title="Wikipedia Atom feed" href="/w/index.php?title=Special:RecentChanges&feed=atom"> <link rel="dns-prefetch" href="//meta.wikimedia.org" /> <link rel="dns-prefetch" href="login.wikimedia.org"> </head> <body class="skin--responsive skin-vector skin-vector-search-vue mediawiki ltr sitedir-ltr mw-hide-empty-elt ns-0 ns-subject mw-editable page-List_of_programming_languages_by_type rootpage-List_of_programming_languages_by_type skin-vector-2022 action-view"><a class="mw-jump-link" href="#bodyContent">Jump to content</a> <div class="vector-header-container"> <header class="vector-header mw-header"> <div class="vector-header-start"> <nav class="vector-main-menu-landmark" aria-label="Site"> <div id="vector-main-menu-dropdown" class="vector-dropdown vector-main-menu-dropdown vector-button-flush-left vector-button-flush-right" title="Main menu" > <input type="checkbox" id="vector-main-menu-dropdown-checkbox" role="button" aria-haspopup="true" data-event-name="ui.dropdown-vector-main-menu-dropdown" class="vector-dropdown-checkbox " aria-label="Main menu" > <label id="vector-main-menu-dropdown-label" for="vector-main-menu-dropdown-checkbox" class="vector-dropdown-label cdx-button cdx-button--fake-button cdx-button--fake-button--enabled cdx-button--weight-quiet cdx-button--icon-only " aria-hidden="true" ><span class="vector-icon mw-ui-icon-menu mw-ui-icon-wikimedia-menu"></span> <span class="vector-dropdown-label-text">Main menu</span> </label> <div class="vector-dropdown-content"> <div id="vector-main-menu-unpinned-container" class="vector-unpinned-container"> <div id="vector-main-menu" class="vector-main-menu vector-pinnable-element"> <div class="vector-pinnable-header vector-main-menu-pinnable-header vector-pinnable-header-unpinned" data-feature-name="main-menu-pinned" data-pinnable-element-id="vector-main-menu" data-pinned-container-id="vector-main-menu-pinned-container" data-unpinned-container-id="vector-main-menu-unpinned-container" > <div class="vector-pinnable-header-label">Main menu</div> <button class="vector-pinnable-header-toggle-button vector-pinnable-header-pin-button" data-event-name="pinnable-header.vector-main-menu.pin">move to sidebar</button> <button class="vector-pinnable-header-toggle-button vector-pinnable-header-unpin-button" data-event-name="pinnable-header.vector-main-menu.unpin">hide</button> </div> <div id="p-navigation" class="vector-menu mw-portlet mw-portlet-navigation" > <div class="vector-menu-heading"> Navigation </div> <div class="vector-menu-content"> <ul class="vector-menu-content-list"> <li id="n-mainpage-description" class="mw-list-item"><a href="/wiki/Main_Page" title="Visit the main page [z]" accesskey="z"><span>Main page</span></a></li><li id="n-contents" class="mw-list-item"><a href="/wiki/Wikipedia:Contents" title="Guides to browsing Wikipedia"><span>Contents</span></a></li><li id="n-currentevents" class="mw-list-item"><a href="/wiki/Portal:Current_events" title="Articles related to current events"><span>Current events</span></a></li><li id="n-randompage" class="mw-list-item"><a href="/wiki/Special:Random" title="Visit a randomly selected article [x]" accesskey="x"><span>Random article</span></a></li><li id="n-aboutsite" class="mw-list-item"><a href="/wiki/Wikipedia:About" title="Learn about Wikipedia and how it works"><span>About Wikipedia</span></a></li><li id="n-contactpage" class="mw-list-item"><a href="//en.wikipedia.org/wiki/Wikipedia:Contact_us" title="How to contact Wikipedia"><span>Contact us</span></a></li> </ul> </div> </div> <div id="p-interaction" class="vector-menu mw-portlet mw-portlet-interaction" > <div class="vector-menu-heading"> Contribute </div> <div class="vector-menu-content"> <ul class="vector-menu-content-list"> <li id="n-help" class="mw-list-item"><a href="/wiki/Help:Contents" title="Guidance on how to use and edit Wikipedia"><span>Help</span></a></li><li id="n-introduction" class="mw-list-item"><a href="/wiki/Help:Introduction" title="Learn how to edit Wikipedia"><span>Learn to edit</span></a></li><li id="n-portal" class="mw-list-item"><a href="/wiki/Wikipedia:Community_portal" title="The hub for editors"><span>Community portal</span></a></li><li id="n-recentchanges" class="mw-list-item"><a href="/wiki/Special:RecentChanges" title="A list of recent changes to Wikipedia [r]" accesskey="r"><span>Recent changes</span></a></li><li id="n-upload" class="mw-list-item"><a href="/wiki/Wikipedia:File_upload_wizard" title="Add images or other media for use on Wikipedia"><span>Upload file</span></a></li><li id="n-specialpages" class="mw-list-item"><a href="/wiki/Special:SpecialPages"><span>Special pages</span></a></li> </ul> </div> </div> </div> </div> </div> </div> </nav> <a href="/wiki/Main_Page" class="mw-logo"> <img class="mw-logo-icon" src="/static/images/icons/wikipedia.png" alt="" aria-hidden="true" height="50" width="50"> <span class="mw-logo-container skin-invert"> <img class="mw-logo-wordmark" alt="Wikipedia" src="/static/images/mobile/copyright/wikipedia-wordmark-en.svg" style="width: 7.5em; height: 1.125em;"> <img class="mw-logo-tagline" alt="The Free Encyclopedia" src="/static/images/mobile/copyright/wikipedia-tagline-en.svg" width="117" height="13" style="width: 7.3125em; height: 0.8125em;"> </span> </a> </div> <div class="vector-header-end"> <div id="p-search" role="search" class="vector-search-box-vue vector-search-box-collapses vector-search-box-show-thumbnail vector-search-box-auto-expand-width vector-search-box"> <a href="/wiki/Special:Search" class="cdx-button cdx-button--fake-button cdx-button--fake-button--enabled cdx-button--weight-quiet cdx-button--icon-only search-toggle" title="Search Wikipedia [f]" accesskey="f"><span class="vector-icon mw-ui-icon-search mw-ui-icon-wikimedia-search"></span> <span>Search</span> </a> <div class="vector-typeahead-search-container"> <div class="cdx-typeahead-search cdx-typeahead-search--show-thumbnail cdx-typeahead-search--auto-expand-width"> <form action="/w/index.php" id="searchform" class="cdx-search-input cdx-search-input--has-end-button"> <div id="simpleSearch" class="cdx-search-input__input-wrapper" data-search-loc="header-moved"> <div class="cdx-text-input cdx-text-input--has-start-icon"> <input class="cdx-text-input__input" type="search" name="search" placeholder="Search Wikipedia" aria-label="Search Wikipedia" autocapitalize="sentences" title="Search Wikipedia [f]" accesskey="f" id="searchInput" > <span class="cdx-text-input__icon cdx-text-input__start-icon"></span> </div> <input type="hidden" name="title" value="Special:Search"> </div> <button class="cdx-button cdx-search-input__end-button">Search</button> </form> </div> </div> </div> <nav class="vector-user-links vector-user-links-wide" aria-label="Personal tools"> <div class="vector-user-links-main"> <div id="p-vector-user-menu-preferences" class="vector-menu mw-portlet emptyPortlet" > <div class="vector-menu-content"> <ul class="vector-menu-content-list"> </ul> </div> </div> <div id="p-vector-user-menu-userpage" class="vector-menu mw-portlet emptyPortlet" > <div class="vector-menu-content"> <ul class="vector-menu-content-list"> </ul> </div> </div> <nav class="vector-appearance-landmark" aria-label="Appearance"> <div id="vector-appearance-dropdown" class="vector-dropdown " title="Change the appearance of the page's font size, width, and color" > <input type="checkbox" id="vector-appearance-dropdown-checkbox" role="button" aria-haspopup="true" data-event-name="ui.dropdown-vector-appearance-dropdown" class="vector-dropdown-checkbox " aria-label="Appearance" > <label id="vector-appearance-dropdown-label" for="vector-appearance-dropdown-checkbox" class="vector-dropdown-label cdx-button cdx-button--fake-button cdx-button--fake-button--enabled cdx-button--weight-quiet cdx-button--icon-only " aria-hidden="true" ><span class="vector-icon mw-ui-icon-appearance mw-ui-icon-wikimedia-appearance"></span> <span class="vector-dropdown-label-text">Appearance</span> </label> <div class="vector-dropdown-content"> <div id="vector-appearance-unpinned-container" class="vector-unpinned-container"> </div> </div> </div> </nav> <div id="p-vector-user-menu-notifications" class="vector-menu mw-portlet emptyPortlet" > <div class="vector-menu-content"> <ul class="vector-menu-content-list"> </ul> </div> </div> <div id="p-vector-user-menu-overflow" class="vector-menu mw-portlet" > <div class="vector-menu-content"> <ul class="vector-menu-content-list"> <li id="pt-sitesupport-2" class="user-links-collapsible-item mw-list-item user-links-collapsible-item"><a data-mw="interface" href="https://donate.wikimedia.org/?wmf_source=donate&wmf_medium=sidebar&wmf_campaign=en.wikipedia.org&uselang=en" class=""><span>Donate</span></a> </li> <li id="pt-createaccount-2" class="user-links-collapsible-item mw-list-item user-links-collapsible-item"><a data-mw="interface" href="/w/index.php?title=Special:CreateAccount&returnto=List+of+programming+languages+by+type" title="You are encouraged to create an account and log in; however, it is not mandatory" class=""><span>Create account</span></a> </li> <li id="pt-login-2" class="user-links-collapsible-item mw-list-item user-links-collapsible-item"><a data-mw="interface" href="/w/index.php?title=Special:UserLogin&returnto=List+of+programming+languages+by+type" title="You're encouraged to log in; however, it's not mandatory. [o]" accesskey="o" class=""><span>Log in</span></a> </li> </ul> </div> </div> </div> <div id="vector-user-links-dropdown" class="vector-dropdown vector-user-menu vector-button-flush-right vector-user-menu-logged-out" title="Log in and more options" > <input type="checkbox" id="vector-user-links-dropdown-checkbox" role="button" aria-haspopup="true" data-event-name="ui.dropdown-vector-user-links-dropdown" class="vector-dropdown-checkbox " aria-label="Personal tools" > <label id="vector-user-links-dropdown-label" for="vector-user-links-dropdown-checkbox" class="vector-dropdown-label cdx-button cdx-button--fake-button cdx-button--fake-button--enabled cdx-button--weight-quiet cdx-button--icon-only " aria-hidden="true" ><span class="vector-icon mw-ui-icon-ellipsis mw-ui-icon-wikimedia-ellipsis"></span> <span class="vector-dropdown-label-text">Personal tools</span> </label> <div class="vector-dropdown-content"> <div id="p-personal" class="vector-menu mw-portlet mw-portlet-personal user-links-collapsible-item" title="User menu" > <div class="vector-menu-content"> <ul class="vector-menu-content-list"> <li id="pt-sitesupport" class="user-links-collapsible-item mw-list-item"><a href="https://donate.wikimedia.org/?wmf_source=donate&wmf_medium=sidebar&wmf_campaign=en.wikipedia.org&uselang=en"><span>Donate</span></a></li><li id="pt-createaccount" class="user-links-collapsible-item mw-list-item"><a href="/w/index.php?title=Special:CreateAccount&returnto=List+of+programming+languages+by+type" title="You are encouraged to create an account and log in; however, it is not mandatory"><span class="vector-icon mw-ui-icon-userAdd mw-ui-icon-wikimedia-userAdd"></span> <span>Create account</span></a></li><li id="pt-login" class="user-links-collapsible-item mw-list-item"><a href="/w/index.php?title=Special:UserLogin&returnto=List+of+programming+languages+by+type" title="You're encouraged to log in; however, it's not mandatory. [o]" accesskey="o"><span class="vector-icon mw-ui-icon-logIn mw-ui-icon-wikimedia-logIn"></span> <span>Log in</span></a></li> </ul> </div> </div> <div id="p-user-menu-anon-editor" class="vector-menu mw-portlet mw-portlet-user-menu-anon-editor" > <div class="vector-menu-heading"> Pages for logged out editors <a href="/wiki/Help:Introduction" aria-label="Learn more about editing"><span>learn more</span></a> </div> <div class="vector-menu-content"> <ul class="vector-menu-content-list"> <li id="pt-anoncontribs" class="mw-list-item"><a href="/wiki/Special:MyContributions" title="A list of edits made from this IP address [y]" accesskey="y"><span>Contributions</span></a></li><li id="pt-anontalk" class="mw-list-item"><a href="/wiki/Special:MyTalk" title="Discussion about edits from this IP address [n]" accesskey="n"><span>Talk</span></a></li> </ul> </div> </div> </div> </div> </nav> </div> </header> </div> <div class="mw-page-container"> <div class="mw-page-container-inner"> <div class="vector-sitenotice-container"> <div id="siteNotice"><!-- CentralNotice --></div> </div> <div class="vector-column-start"> <div class="vector-main-menu-container"> <div id="mw-navigation"> <nav id="mw-panel" class="vector-main-menu-landmark" aria-label="Site"> <div id="vector-main-menu-pinned-container" class="vector-pinned-container"> </div> </nav> </div> </div> <div class="vector-sticky-pinned-container"> <nav id="mw-panel-toc" aria-label="Contents" data-event-name="ui.sidebar-toc" class="mw-table-of-contents-container vector-toc-landmark"> <div id="vector-toc-pinned-container" class="vector-pinned-container"> <div id="vector-toc" class="vector-toc vector-pinnable-element"> <div class="vector-pinnable-header vector-toc-pinnable-header vector-pinnable-header-pinned" data-feature-name="toc-pinned" data-pinnable-element-id="vector-toc" > <h2 class="vector-pinnable-header-label">Contents</h2> <button class="vector-pinnable-header-toggle-button vector-pinnable-header-pin-button" data-event-name="pinnable-header.vector-toc.pin">move to sidebar</button> <button class="vector-pinnable-header-toggle-button vector-pinnable-header-unpin-button" data-event-name="pinnable-header.vector-toc.unpin">hide</button> </div> <ul class="vector-toc-contents" id="mw-panel-toc-list"> <li id="toc-mw-content-text" class="vector-toc-list-item vector-toc-level-1"> <a href="#" class="vector-toc-link"> <div class="vector-toc-text">(Top)</div> </a> </li> <li id="toc-Agent-oriented_programming_languages" class="vector-toc-list-item vector-toc-level-1"> <a class="vector-toc-link" href="#Agent-oriented_programming_languages"> <div class="vector-toc-text"> <span class="vector-toc-numb">1</span> <span>Agent-oriented programming languages</span> </div> </a> <ul id="toc-Agent-oriented_programming_languages-sublist" class="vector-toc-list"> </ul> </li> <li id="toc-Array_languages" class="vector-toc-list-item vector-toc-level-1"> <a class="vector-toc-link" href="#Array_languages"> <div class="vector-toc-text"> <span class="vector-toc-numb">2</span> <span>Array languages</span> </div> </a> <ul id="toc-Array_languages-sublist" class="vector-toc-list"> </ul> </li> <li id="toc-Aspect-oriented_programming_languages" class="vector-toc-list-item vector-toc-level-1"> <a class="vector-toc-link" href="#Aspect-oriented_programming_languages"> <div class="vector-toc-text"> <span class="vector-toc-numb">3</span> <span>Aspect-oriented programming languages</span> </div> </a> <ul id="toc-Aspect-oriented_programming_languages-sublist" class="vector-toc-list"> </ul> </li> <li id="toc-Assembly_languages" class="vector-toc-list-item vector-toc-level-1"> <a class="vector-toc-link" href="#Assembly_languages"> <div class="vector-toc-text"> <span class="vector-toc-numb">4</span> <span>Assembly languages</span> </div> </a> <ul id="toc-Assembly_languages-sublist" class="vector-toc-list"> </ul> </li> <li id="toc-Authoring_languages" class="vector-toc-list-item vector-toc-level-1"> <a class="vector-toc-link" href="#Authoring_languages"> <div class="vector-toc-text"> <span class="vector-toc-numb">5</span> <span>Authoring languages</span> </div> </a> <ul id="toc-Authoring_languages-sublist" class="vector-toc-list"> </ul> </li> <li id="toc-Command-line_interface_languages" class="vector-toc-list-item vector-toc-level-1"> <a class="vector-toc-link" href="#Command-line_interface_languages"> <div class="vector-toc-text"> <span class="vector-toc-numb">6</span> <span>Command-line interface languages</span> </div> </a> <ul id="toc-Command-line_interface_languages-sublist" class="vector-toc-list"> </ul> </li> <li id="toc-Compiled_languages" class="vector-toc-list-item vector-toc-level-1"> <a class="vector-toc-link" href="#Compiled_languages"> <div class="vector-toc-text"> <span class="vector-toc-numb">7</span> <span>Compiled languages</span> </div> </a> <ul id="toc-Compiled_languages-sublist" class="vector-toc-list"> </ul> </li> <li id="toc-Concatenative_programming_languages" class="vector-toc-list-item vector-toc-level-1"> <a class="vector-toc-link" href="#Concatenative_programming_languages"> <div class="vector-toc-text"> <span class="vector-toc-numb">8</span> <span>Concatenative programming languages</span> </div> </a> <ul id="toc-Concatenative_programming_languages-sublist" class="vector-toc-list"> </ul> </li> <li id="toc-Concurrent_languages" class="vector-toc-list-item vector-toc-level-1"> <a class="vector-toc-link" href="#Concurrent_languages"> <div class="vector-toc-text"> <span class="vector-toc-numb">9</span> <span>Concurrent languages</span> </div> </a> <ul id="toc-Concurrent_languages-sublist" class="vector-toc-list"> </ul> </li> <li id="toc-Constraint_programming_languages" class="vector-toc-list-item vector-toc-level-1"> <a class="vector-toc-link" href="#Constraint_programming_languages"> <div class="vector-toc-text"> <span class="vector-toc-numb">10</span> <span>Constraint programming languages</span> </div> </a> <ul id="toc-Constraint_programming_languages-sublist" class="vector-toc-list"> </ul> </li> <li id="toc-Curly_bracket_languages" class="vector-toc-list-item vector-toc-level-1"> <a class="vector-toc-link" href="#Curly_bracket_languages"> <div class="vector-toc-text"> <span class="vector-toc-numb">11</span> <span>Curly bracket languages</span> </div> </a> <ul id="toc-Curly_bracket_languages-sublist" class="vector-toc-list"> </ul> </li> <li id="toc-Dataflow_languages" class="vector-toc-list-item vector-toc-level-1"> <a class="vector-toc-link" href="#Dataflow_languages"> <div class="vector-toc-text"> <span class="vector-toc-numb">12</span> <span>Dataflow languages</span> </div> </a> <ul id="toc-Dataflow_languages-sublist" class="vector-toc-list"> </ul> </li> <li id="toc-Data-oriented_languages" class="vector-toc-list-item vector-toc-level-1"> <a class="vector-toc-link" href="#Data-oriented_languages"> <div class="vector-toc-text"> <span class="vector-toc-numb">13</span> <span>Data-oriented languages</span> </div> </a> <ul id="toc-Data-oriented_languages-sublist" class="vector-toc-list"> </ul> </li> <li id="toc-Decision_table_languages" class="vector-toc-list-item vector-toc-level-1"> <a class="vector-toc-link" href="#Decision_table_languages"> <div class="vector-toc-text"> <span class="vector-toc-numb">14</span> <span>Decision table languages</span> </div> </a> <ul id="toc-Decision_table_languages-sublist" class="vector-toc-list"> </ul> </li> <li id="toc-Declarative_languages" class="vector-toc-list-item vector-toc-level-1"> <a class="vector-toc-link" href="#Declarative_languages"> <div class="vector-toc-text"> <span class="vector-toc-numb">15</span> <span>Declarative languages</span> </div> </a> <ul id="toc-Declarative_languages-sublist" class="vector-toc-list"> </ul> </li> <li id="toc-Embeddable_languages" class="vector-toc-list-item vector-toc-level-1"> <a class="vector-toc-link" href="#Embeddable_languages"> <div class="vector-toc-text"> <span class="vector-toc-numb">16</span> <span>Embeddable languages</span> </div> </a> <button aria-controls="toc-Embeddable_languages-sublist" class="cdx-button cdx-button--weight-quiet cdx-button--icon-only vector-toc-toggle"> <span class="vector-icon mw-ui-icon-wikimedia-expand"></span> <span>Toggle Embeddable languages subsection</span> </button> <ul id="toc-Embeddable_languages-sublist" class="vector-toc-list"> <li id="toc-In_source_code" class="vector-toc-list-item vector-toc-level-2"> <a class="vector-toc-link" href="#In_source_code"> <div class="vector-toc-text"> <span class="vector-toc-numb">16.1</span> <span>In source code</span> </div> </a> <ul id="toc-In_source_code-sublist" class="vector-toc-list"> <li id="toc-Server_side" class="vector-toc-list-item vector-toc-level-3"> <a class="vector-toc-link" href="#Server_side"> <div class="vector-toc-text"> <span class="vector-toc-numb">16.1.1</span> <span>Server side</span> </div> </a> <ul id="toc-Server_side-sublist" class="vector-toc-list"> </ul> </li> <li id="toc-Client_side" class="vector-toc-list-item vector-toc-level-3"> <a class="vector-toc-link" href="#Client_side"> <div class="vector-toc-text"> <span class="vector-toc-numb">16.1.2</span> <span>Client side</span> </div> </a> <ul id="toc-Client_side-sublist" class="vector-toc-list"> </ul> </li> </ul> </li> <li id="toc-In_object_code" class="vector-toc-list-item vector-toc-level-2"> <a class="vector-toc-link" href="#In_object_code"> <div class="vector-toc-text"> <span class="vector-toc-numb">16.2</span> <span>In object code</span> </div> </a> <ul id="toc-In_object_code-sublist" class="vector-toc-list"> </ul> </li> </ul> </li> <li id="toc-Educational_programming_languages" class="vector-toc-list-item vector-toc-level-1"> <a class="vector-toc-link" href="#Educational_programming_languages"> <div class="vector-toc-text"> <span class="vector-toc-numb">17</span> <span>Educational programming languages</span> </div> </a> <ul id="toc-Educational_programming_languages-sublist" class="vector-toc-list"> </ul> </li> <li id="toc-Esoteric_languages" class="vector-toc-list-item vector-toc-level-1"> <a class="vector-toc-link" href="#Esoteric_languages"> <div class="vector-toc-text"> <span class="vector-toc-numb">18</span> <span>Esoteric languages</span> </div> </a> <ul id="toc-Esoteric_languages-sublist" class="vector-toc-list"> </ul> </li> <li id="toc-Extension_languages" class="vector-toc-list-item vector-toc-level-1"> <a class="vector-toc-link" href="#Extension_languages"> <div class="vector-toc-text"> <span class="vector-toc-numb">19</span> <span>Extension languages</span> </div> </a> <ul id="toc-Extension_languages-sublist" class="vector-toc-list"> </ul> </li> <li id="toc-Fourth-generation_languages" class="vector-toc-list-item vector-toc-level-1"> <a class="vector-toc-link" href="#Fourth-generation_languages"> <div class="vector-toc-text"> <span class="vector-toc-numb">20</span> <span>Fourth-generation languages</span> </div> </a> <ul id="toc-Fourth-generation_languages-sublist" class="vector-toc-list"> </ul> </li> <li id="toc-Functional_languages" class="vector-toc-list-item vector-toc-level-1"> <a class="vector-toc-link" href="#Functional_languages"> <div class="vector-toc-text"> <span class="vector-toc-numb">21</span> <span>Functional languages</span> </div> </a> <button aria-controls="toc-Functional_languages-sublist" class="cdx-button cdx-button--weight-quiet cdx-button--icon-only vector-toc-toggle"> <span class="vector-icon mw-ui-icon-wikimedia-expand"></span> <span>Toggle Functional languages subsection</span> </button> <ul id="toc-Functional_languages-sublist" class="vector-toc-list"> <li id="toc-Pure" class="vector-toc-list-item vector-toc-level-2"> <a class="vector-toc-link" href="#Pure"> <div class="vector-toc-text"> <span class="vector-toc-numb">21.1</span> <span>Pure</span> </div> </a> <ul id="toc-Pure-sublist" class="vector-toc-list"> </ul> </li> <li id="toc-Impure" class="vector-toc-list-item vector-toc-level-2"> <a class="vector-toc-link" href="#Impure"> <div class="vector-toc-text"> <span class="vector-toc-numb">21.2</span> <span>Impure</span> </div> </a> <ul id="toc-Impure-sublist" class="vector-toc-list"> </ul> </li> </ul> </li> <li id="toc-Hardware_description_languages" class="vector-toc-list-item vector-toc-level-1"> <a class="vector-toc-link" href="#Hardware_description_languages"> <div class="vector-toc-text"> <span class="vector-toc-numb">22</span> <span>Hardware description languages</span> </div> </a> <button aria-controls="toc-Hardware_description_languages-sublist" class="cdx-button cdx-button--weight-quiet cdx-button--icon-only vector-toc-toggle"> <span class="vector-icon mw-ui-icon-wikimedia-expand"></span> <span>Toggle Hardware description languages subsection</span> </button> <ul id="toc-Hardware_description_languages-sublist" class="vector-toc-list"> <li id="toc-HDLs_for_analog_circuit_design" class="vector-toc-list-item vector-toc-level-2"> <a class="vector-toc-link" href="#HDLs_for_analog_circuit_design"> <div class="vector-toc-text"> <span class="vector-toc-numb">22.1</span> <span>HDLs for analog circuit design</span> </div> </a> <ul id="toc-HDLs_for_analog_circuit_design-sublist" class="vector-toc-list"> </ul> </li> <li id="toc-HDLs_for_digital_circuit_design" class="vector-toc-list-item vector-toc-level-2"> <a class="vector-toc-link" href="#HDLs_for_digital_circuit_design"> <div class="vector-toc-text"> <span class="vector-toc-numb">22.2</span> <span>HDLs for digital circuit design</span> </div> </a> <ul id="toc-HDLs_for_digital_circuit_design-sublist" class="vector-toc-list"> </ul> </li> </ul> </li> <li id="toc-Imperative_languages" class="vector-toc-list-item vector-toc-level-1"> <a class="vector-toc-link" href="#Imperative_languages"> <div class="vector-toc-text"> <span class="vector-toc-numb">23</span> <span>Imperative languages</span> </div> </a> <ul id="toc-Imperative_languages-sublist" class="vector-toc-list"> </ul> </li> <li id="toc-Interactive_mode_languages" class="vector-toc-list-item vector-toc-level-1"> <a class="vector-toc-link" href="#Interactive_mode_languages"> <div class="vector-toc-text"> <span class="vector-toc-numb">24</span> <span>Interactive mode languages</span> </div> </a> <ul id="toc-Interactive_mode_languages-sublist" class="vector-toc-list"> </ul> </li> <li id="toc-Interpreted_languages" class="vector-toc-list-item vector-toc-level-1"> <a class="vector-toc-link" href="#Interpreted_languages"> <div class="vector-toc-text"> <span class="vector-toc-numb">25</span> <span>Interpreted languages</span> </div> </a> <ul id="toc-Interpreted_languages-sublist" class="vector-toc-list"> </ul> </li> <li id="toc-Iterative_languages" class="vector-toc-list-item vector-toc-level-1"> <a class="vector-toc-link" href="#Iterative_languages"> <div class="vector-toc-text"> <span class="vector-toc-numb">26</span> <span>Iterative languages</span> </div> </a> <ul id="toc-Iterative_languages-sublist" class="vector-toc-list"> </ul> </li> <li id="toc-Languages_by_memory_management_type" class="vector-toc-list-item vector-toc-level-1"> <a class="vector-toc-link" href="#Languages_by_memory_management_type"> <div class="vector-toc-text"> <span class="vector-toc-numb">27</span> <span>Languages by memory management type</span> </div> </a> <button aria-controls="toc-Languages_by_memory_management_type-sublist" class="cdx-button cdx-button--weight-quiet cdx-button--icon-only vector-toc-toggle"> <span class="vector-icon mw-ui-icon-wikimedia-expand"></span> <span>Toggle Languages by memory management type subsection</span> </button> <ul id="toc-Languages_by_memory_management_type-sublist" class="vector-toc-list"> <li id="toc-Garbage_collected_languages" class="vector-toc-list-item vector-toc-level-2"> <a class="vector-toc-link" href="#Garbage_collected_languages"> <div class="vector-toc-text"> <span class="vector-toc-numb">27.1</span> <span>Garbage collected languages</span> </div> </a> <ul id="toc-Garbage_collected_languages-sublist" class="vector-toc-list"> </ul> </li> <li id="toc-Languages_with_manual_memory_management" class="vector-toc-list-item vector-toc-level-2"> <a class="vector-toc-link" href="#Languages_with_manual_memory_management"> <div class="vector-toc-text"> <span class="vector-toc-numb">27.2</span> <span>Languages with manual memory management</span> </div> </a> <ul id="toc-Languages_with_manual_memory_management-sublist" class="vector-toc-list"> </ul> </li> <li id="toc-Languages_with_optional_manual_memory_management" class="vector-toc-list-item vector-toc-level-2"> <a class="vector-toc-link" href="#Languages_with_optional_manual_memory_management"> <div class="vector-toc-text"> <span class="vector-toc-numb">27.3</span> <span>Languages with optional manual memory management</span> </div> </a> <ul id="toc-Languages_with_optional_manual_memory_management-sublist" class="vector-toc-list"> </ul> </li> <li id="toc-Languages_with_deterministic_memory_management" class="vector-toc-list-item vector-toc-level-2"> <a class="vector-toc-link" href="#Languages_with_deterministic_memory_management"> <div class="vector-toc-text"> <span class="vector-toc-numb">27.4</span> <span>Languages with deterministic memory management</span> </div> </a> <ul id="toc-Languages_with_deterministic_memory_management-sublist" class="vector-toc-list"> </ul> </li> <li id="toc-Languages_with_automatic_reference_counting_(ARC)" class="vector-toc-list-item vector-toc-level-2"> <a class="vector-toc-link" href="#Languages_with_automatic_reference_counting_(ARC)"> <div class="vector-toc-text"> <span class="vector-toc-numb">27.5</span> <span>Languages with automatic reference counting (ARC)</span> </div> </a> <ul id="toc-Languages_with_automatic_reference_counting_(ARC)-sublist" class="vector-toc-list"> </ul> </li> </ul> </li> <li id="toc-List-based_languages_–_LISPs" class="vector-toc-list-item vector-toc-level-1"> <a class="vector-toc-link" href="#List-based_languages_–_LISPs"> <div class="vector-toc-text"> <span class="vector-toc-numb">28</span> <span>List-based languages – LISPs</span> </div> </a> <ul id="toc-List-based_languages_–_LISPs-sublist" class="vector-toc-list"> </ul> </li> <li id="toc-Little_languages" class="vector-toc-list-item vector-toc-level-1"> <a class="vector-toc-link" href="#Little_languages"> <div class="vector-toc-text"> <span class="vector-toc-numb">29</span> <span>Little languages</span> </div> </a> <ul id="toc-Little_languages-sublist" class="vector-toc-list"> </ul> </li> <li id="toc-Logic-based_languages" class="vector-toc-list-item vector-toc-level-1"> <a class="vector-toc-link" href="#Logic-based_languages"> <div class="vector-toc-text"> <span class="vector-toc-numb">30</span> <span>Logic-based languages</span> </div> </a> <ul id="toc-Logic-based_languages-sublist" class="vector-toc-list"> </ul> </li> <li id="toc-Machine_languages" class="vector-toc-list-item vector-toc-level-1"> <a class="vector-toc-link" href="#Machine_languages"> <div class="vector-toc-text"> <span class="vector-toc-numb">31</span> <span>Machine languages</span> </div> </a> <ul id="toc-Machine_languages-sublist" class="vector-toc-list"> </ul> </li> <li id="toc-Macro_languages" class="vector-toc-list-item vector-toc-level-1"> <a class="vector-toc-link" href="#Macro_languages"> <div class="vector-toc-text"> <span class="vector-toc-numb">32</span> <span>Macro languages</span> </div> </a> <button aria-controls="toc-Macro_languages-sublist" class="cdx-button cdx-button--weight-quiet cdx-button--icon-only vector-toc-toggle"> <span class="vector-icon mw-ui-icon-wikimedia-expand"></span> <span>Toggle Macro languages subsection</span> </button> <ul id="toc-Macro_languages-sublist" class="vector-toc-list"> <li id="toc-Textual_substitution_macro_languages" class="vector-toc-list-item vector-toc-level-2"> <a class="vector-toc-link" href="#Textual_substitution_macro_languages"> <div class="vector-toc-text"> <span class="vector-toc-numb">32.1</span> <span>Textual substitution macro languages</span> </div> </a> <ul id="toc-Textual_substitution_macro_languages-sublist" class="vector-toc-list"> </ul> </li> <li id="toc-Application_macro_languages" class="vector-toc-list-item vector-toc-level-2"> <a class="vector-toc-link" href="#Application_macro_languages"> <div class="vector-toc-text"> <span class="vector-toc-numb">32.2</span> <span>Application macro languages</span> </div> </a> <ul id="toc-Application_macro_languages-sublist" class="vector-toc-list"> </ul> </li> </ul> </li> <li id="toc-Metaprogramming_languages" class="vector-toc-list-item vector-toc-level-1"> <a class="vector-toc-link" href="#Metaprogramming_languages"> <div class="vector-toc-text"> <span class="vector-toc-numb">33</span> <span>Metaprogramming languages</span> </div> </a> <ul id="toc-Metaprogramming_languages-sublist" class="vector-toc-list"> </ul> </li> <li id="toc-Multiparadigm_languages" class="vector-toc-list-item vector-toc-level-1"> <a class="vector-toc-link" href="#Multiparadigm_languages"> <div class="vector-toc-text"> <span class="vector-toc-numb">34</span> <span>Multiparadigm languages</span> </div> </a> <ul id="toc-Multiparadigm_languages-sublist" class="vector-toc-list"> </ul> </li> <li id="toc-Numerical_analysis" class="vector-toc-list-item vector-toc-level-1"> <a class="vector-toc-link" href="#Numerical_analysis"> <div class="vector-toc-text"> <span class="vector-toc-numb">35</span> <span>Numerical analysis</span> </div> </a> <ul id="toc-Numerical_analysis-sublist" class="vector-toc-list"> </ul> </li> <li id="toc-Non-English-based_languages" class="vector-toc-list-item vector-toc-level-1"> <a class="vector-toc-link" href="#Non-English-based_languages"> <div class="vector-toc-text"> <span class="vector-toc-numb">36</span> <span>Non-English-based languages</span> </div> </a> <ul id="toc-Non-English-based_languages-sublist" class="vector-toc-list"> </ul> </li> <li id="toc-Object-oriented_class-based_languages" class="vector-toc-list-item vector-toc-level-1"> <a class="vector-toc-link" href="#Object-oriented_class-based_languages"> <div class="vector-toc-text"> <span class="vector-toc-numb">37</span> <span>Object-oriented class-based languages</span> </div> </a> <button aria-controls="toc-Object-oriented_class-based_languages-sublist" class="cdx-button cdx-button--weight-quiet cdx-button--icon-only vector-toc-toggle"> <span class="vector-icon mw-ui-icon-wikimedia-expand"></span> <span>Toggle Object-oriented class-based languages subsection</span> </button> <ul id="toc-Object-oriented_class-based_languages-sublist" class="vector-toc-list"> <li id="toc-Multiple_dispatch" class="vector-toc-list-item vector-toc-level-2"> <a class="vector-toc-link" href="#Multiple_dispatch"> <div class="vector-toc-text"> <span class="vector-toc-numb">37.1</span> <span>Multiple dispatch</span> </div> </a> <ul id="toc-Multiple_dispatch-sublist" class="vector-toc-list"> </ul> </li> <li id="toc-Single_dispatch" class="vector-toc-list-item vector-toc-level-2"> <a class="vector-toc-link" href="#Single_dispatch"> <div class="vector-toc-text"> <span class="vector-toc-numb">37.2</span> <span>Single dispatch</span> </div> </a> <ul id="toc-Single_dispatch-sublist" class="vector-toc-list"> </ul> </li> </ul> </li> <li id="toc-Object-oriented_prototype-based_languages" class="vector-toc-list-item vector-toc-level-1"> <a class="vector-toc-link" href="#Object-oriented_prototype-based_languages"> <div class="vector-toc-text"> <span class="vector-toc-numb">38</span> <span>Object-oriented prototype-based languages</span> </div> </a> <ul id="toc-Object-oriented_prototype-based_languages-sublist" class="vector-toc-list"> </ul> </li> <li id="toc-Off-side_rule_languages" class="vector-toc-list-item vector-toc-level-1"> <a class="vector-toc-link" href="#Off-side_rule_languages"> <div class="vector-toc-text"> <span class="vector-toc-numb">39</span> <span>Off-side rule languages</span> </div> </a> <ul id="toc-Off-side_rule_languages-sublist" class="vector-toc-list"> </ul> </li> <li id="toc-Procedural_languages" class="vector-toc-list-item vector-toc-level-1"> <a class="vector-toc-link" href="#Procedural_languages"> <div class="vector-toc-text"> <span class="vector-toc-numb">40</span> <span>Procedural languages</span> </div> </a> <ul id="toc-Procedural_languages-sublist" class="vector-toc-list"> </ul> </li> <li id="toc-Query_languages" class="vector-toc-list-item vector-toc-level-1"> <a class="vector-toc-link" href="#Query_languages"> <div class="vector-toc-text"> <span class="vector-toc-numb">41</span> <span>Query languages</span> </div> </a> <ul id="toc-Query_languages-sublist" class="vector-toc-list"> </ul> </li> <li id="toc-Reflective_languages" class="vector-toc-list-item vector-toc-level-1"> <a class="vector-toc-link" href="#Reflective_languages"> <div class="vector-toc-text"> <span class="vector-toc-numb">42</span> <span>Reflective languages</span> </div> </a> <ul id="toc-Reflective_languages-sublist" class="vector-toc-list"> </ul> </li> <li id="toc-Rule-based_languages" class="vector-toc-list-item vector-toc-level-1"> <a class="vector-toc-link" href="#Rule-based_languages"> <div class="vector-toc-text"> <span class="vector-toc-numb">43</span> <span>Rule-based languages</span> </div> </a> <ul id="toc-Rule-based_languages-sublist" class="vector-toc-list"> </ul> </li> <li id="toc-Scripting_languages" class="vector-toc-list-item vector-toc-level-1"> <a class="vector-toc-link" href="#Scripting_languages"> <div class="vector-toc-text"> <span class="vector-toc-numb">44</span> <span>Scripting languages</span> </div> </a> <ul id="toc-Scripting_languages-sublist" class="vector-toc-list"> </ul> </li> <li id="toc-Stack-based_languages" class="vector-toc-list-item vector-toc-level-1"> <a class="vector-toc-link" href="#Stack-based_languages"> <div class="vector-toc-text"> <span class="vector-toc-numb">45</span> <span>Stack-based languages</span> </div> </a> <ul id="toc-Stack-based_languages-sublist" class="vector-toc-list"> </ul> </li> <li id="toc-Synchronous_languages" class="vector-toc-list-item vector-toc-level-1"> <a class="vector-toc-link" href="#Synchronous_languages"> <div class="vector-toc-text"> <span class="vector-toc-numb">46</span> <span>Synchronous languages</span> </div> </a> <ul id="toc-Synchronous_languages-sublist" class="vector-toc-list"> </ul> </li> <li id="toc-Shading_languages" class="vector-toc-list-item vector-toc-level-1"> <a class="vector-toc-link" href="#Shading_languages"> <div class="vector-toc-text"> <span class="vector-toc-numb">47</span> <span>Shading languages</span> </div> </a> <button aria-controls="toc-Shading_languages-sublist" class="cdx-button cdx-button--weight-quiet cdx-button--icon-only vector-toc-toggle"> <span class="vector-icon mw-ui-icon-wikimedia-expand"></span> <span>Toggle Shading languages subsection</span> </button> <ul id="toc-Shading_languages-sublist" class="vector-toc-list"> <li id="toc-Real-time_rendering" class="vector-toc-list-item vector-toc-level-2"> <a class="vector-toc-link" href="#Real-time_rendering"> <div class="vector-toc-text"> <span class="vector-toc-numb">47.1</span> <span>Real-time rendering</span> </div> </a> <ul id="toc-Real-time_rendering-sublist" class="vector-toc-list"> </ul> </li> <li id="toc-Offline_rendering" class="vector-toc-list-item vector-toc-level-2"> <a class="vector-toc-link" href="#Offline_rendering"> <div class="vector-toc-text"> <span class="vector-toc-numb">47.2</span> <span>Offline rendering</span> </div> </a> <ul id="toc-Offline_rendering-sublist" class="vector-toc-list"> </ul> </li> </ul> </li> <li id="toc-Syntax-handling_languages" class="vector-toc-list-item vector-toc-level-1"> <a class="vector-toc-link" href="#Syntax-handling_languages"> <div class="vector-toc-text"> <span class="vector-toc-numb">48</span> <span>Syntax-handling languages</span> </div> </a> <ul id="toc-Syntax-handling_languages-sublist" class="vector-toc-list"> </ul> </li> <li id="toc-System_languages" class="vector-toc-list-item vector-toc-level-1"> <a class="vector-toc-link" href="#System_languages"> <div class="vector-toc-text"> <span class="vector-toc-numb">49</span> <span>System languages</span> </div> </a> <ul id="toc-System_languages-sublist" class="vector-toc-list"> </ul> </li> <li id="toc-Transformation_languages" class="vector-toc-list-item vector-toc-level-1"> <a class="vector-toc-link" href="#Transformation_languages"> <div class="vector-toc-text"> <span class="vector-toc-numb">50</span> <span>Transformation languages</span> </div> </a> <ul id="toc-Transformation_languages-sublist" class="vector-toc-list"> </ul> </li> <li id="toc-Visual_languages" class="vector-toc-list-item vector-toc-level-1"> <a class="vector-toc-link" href="#Visual_languages"> <div class="vector-toc-text"> <span class="vector-toc-numb">51</span> <span>Visual languages</span> </div> </a> <ul id="toc-Visual_languages-sublist" class="vector-toc-list"> </ul> </li> <li id="toc-Wirth_languages" class="vector-toc-list-item vector-toc-level-1"> <a class="vector-toc-link" href="#Wirth_languages"> <div class="vector-toc-text"> <span class="vector-toc-numb">52</span> <span>Wirth languages</span> </div> </a> <ul id="toc-Wirth_languages-sublist" class="vector-toc-list"> </ul> </li> <li id="toc-XML-based_languages" class="vector-toc-list-item vector-toc-level-1"> <a class="vector-toc-link" href="#XML-based_languages"> <div class="vector-toc-text"> <span class="vector-toc-numb">53</span> <span>XML-based languages</span> </div> </a> <ul id="toc-XML-based_languages-sublist" class="vector-toc-list"> </ul> </li> <li id="toc-See_also" class="vector-toc-list-item vector-toc-level-1"> <a class="vector-toc-link" href="#See_also"> <div class="vector-toc-text"> <span class="vector-toc-numb">54</span> <span>See also</span> </div> </a> <ul id="toc-See_also-sublist" class="vector-toc-list"> </ul> </li> <li id="toc-Notes" class="vector-toc-list-item vector-toc-level-1"> <a class="vector-toc-link" href="#Notes"> <div class="vector-toc-text"> <span class="vector-toc-numb">55</span> <span>Notes</span> </div> </a> <ul id="toc-Notes-sublist" class="vector-toc-list"> </ul> </li> <li id="toc-References" class="vector-toc-list-item vector-toc-level-1"> <a class="vector-toc-link" href="#References"> <div class="vector-toc-text"> <span class="vector-toc-numb">56</span> <span>References</span> </div> </a> <ul id="toc-References-sublist" class="vector-toc-list"> </ul> </li> </ul> </div> </div> </nav> </div> </div> <div class="mw-content-container"> <main id="content" class="mw-body"> <header class="mw-body-header vector-page-titlebar"> <nav aria-label="Contents" class="vector-toc-landmark"> <div id="vector-page-titlebar-toc" class="vector-dropdown vector-page-titlebar-toc vector-button-flush-left" title="Table of Contents" > <input type="checkbox" id="vector-page-titlebar-toc-checkbox" role="button" aria-haspopup="true" data-event-name="ui.dropdown-vector-page-titlebar-toc" class="vector-dropdown-checkbox " aria-label="Toggle the table of contents" > <label id="vector-page-titlebar-toc-label" for="vector-page-titlebar-toc-checkbox" class="vector-dropdown-label cdx-button cdx-button--fake-button cdx-button--fake-button--enabled cdx-button--weight-quiet cdx-button--icon-only " aria-hidden="true" ><span class="vector-icon mw-ui-icon-listBullet mw-ui-icon-wikimedia-listBullet"></span> <span class="vector-dropdown-label-text">Toggle the table of contents</span> </label> <div class="vector-dropdown-content"> <div id="vector-page-titlebar-toc-unpinned-container" class="vector-unpinned-container"> </div> </div> </div> </nav> <h1 id="firstHeading" class="firstHeading mw-first-heading"><span class="mw-page-title-main">List of programming languages by type</span></h1> <div id="p-lang-btn" class="vector-dropdown mw-portlet mw-portlet-lang" > <input type="checkbox" id="p-lang-btn-checkbox" role="button" aria-haspopup="true" data-event-name="ui.dropdown-p-lang-btn" class="vector-dropdown-checkbox mw-interlanguage-selector" aria-label="Go to an article in another language. Available in 7 languages" > <label id="p-lang-btn-label" for="p-lang-btn-checkbox" class="vector-dropdown-label cdx-button cdx-button--fake-button cdx-button--fake-button--enabled cdx-button--weight-quiet cdx-button--action-progressive mw-portlet-lang-heading-7" aria-hidden="true" ><span class="vector-icon mw-ui-icon-language-progressive mw-ui-icon-wikimedia-language-progressive"></span> <span class="vector-dropdown-label-text">7 languages</span> </label> <div class="vector-dropdown-content"> <div class="vector-menu-content"> <ul class="vector-menu-content-list"> <li class="interlanguage-link interwiki-ar mw-list-item"><a href="https://ar.wikipedia.org/wiki/%D9%82%D8%A7%D8%A6%D9%85%D8%A9_%D9%84%D8%BA%D8%A7%D8%AA_%D8%A7%D9%84%D8%A8%D8%B1%D9%85%D8%AC%D8%A9_%D9%88%D9%81%D9%82_%D8%A7%D9%84%D9%86%D9%88%D8%B9" title="قائمة لغات البرمجة وفق النوع – Arabic" lang="ar" hreflang="ar" data-title="قائمة لغات البرمجة وفق النوع" data-language-autonym="العربية" data-language-local-name="Arabic" class="interlanguage-link-target"><span>العربية</span></a></li><li class="interlanguage-link interwiki-be mw-list-item"><a href="https://be.wikipedia.org/wiki/%D0%A1%D0%BF%D1%96%D1%81_%D0%BC%D0%BE%D1%9E_%D0%BF%D1%80%D0%B0%D0%B3%D1%80%D0%B0%D0%BC%D0%B0%D0%B2%D0%B0%D0%BD%D0%BD%D1%8F_%D0%BF%D0%B0%D0%B2%D0%BE%D0%B4%D0%BB%D0%B5_%D0%BA%D0%B0%D1%82%D1%8D%D0%B3%D0%BE%D1%80%D1%8B%D0%B9" title="Спіс моў праграмавання паводле катэгорый – Belarusian" lang="be" hreflang="be" data-title="Спіс моў праграмавання паводле катэгорый" data-language-autonym="Беларуская" data-language-local-name="Belarusian" class="interlanguage-link-target"><span>Беларуская</span></a></li><li class="interlanguage-link interwiki-fa mw-list-item"><a href="https://fa.wikipedia.org/wiki/%D9%81%D9%87%D8%B1%D8%B3%D8%AA_%D8%B2%D8%A8%D8%A7%D9%86%E2%80%8C%D9%87%D8%A7%DB%8C_%D8%A8%D8%B1%D9%86%D8%A7%D9%85%D9%87%E2%80%8C%D9%86%D9%88%DB%8C%D8%B3%DB%8C_%D8%A8%D8%B1_%D9%BE%D8%A7%DB%8C%D9%87_%D9%86%D9%88%D8%B9" title="فهرست زبانهای برنامهنویسی بر پایه نوع – Persian" lang="fa" hreflang="fa" data-title="فهرست زبانهای برنامهنویسی بر پایه نوع" data-language-autonym="فارسی" data-language-local-name="Persian" class="interlanguage-link-target"><span>فارسی</span></a></li><li class="interlanguage-link interwiki-hu mw-list-item"><a href="https://hu.wikipedia.org/wiki/Programoz%C3%A1si_nyelvek_kateg%C3%B3ri%C3%A1k_szerint" title="Programozási nyelvek kategóriák szerint – Hungarian" lang="hu" hreflang="hu" data-title="Programozási nyelvek kategóriák szerint" data-language-autonym="Magyar" data-language-local-name="Hungarian" class="interlanguage-link-target"><span>Magyar</span></a></li><li class="interlanguage-link interwiki-ro mw-list-item"><a href="https://ro.wikipedia.org/wiki/List%C4%83_de_limbaje_de_programare_dup%C4%83_categorie" title="Listă de limbaje de programare după categorie – Romanian" lang="ro" hreflang="ro" data-title="Listă de limbaje de programare după categorie" data-language-autonym="Română" data-language-local-name="Romanian" class="interlanguage-link-target"><span>Română</span></a></li><li class="interlanguage-link interwiki-ru mw-list-item"><a href="https://ru.wikipedia.org/wiki/%D0%9F%D1%80%D0%BE%D0%B5%D0%BA%D1%82:%D0%98%D0%BD%D1%84%D0%BE%D1%80%D0%BC%D0%B0%D1%86%D0%B8%D0%BE%D0%BD%D0%BD%D1%8B%D0%B5_%D1%82%D0%B5%D1%85%D0%BD%D0%BE%D0%BB%D0%BE%D0%B3%D0%B8%D0%B8/%D0%A1%D0%BF%D0%B8%D1%81%D0%BA%D0%B8/%D0%A1%D0%BF%D0%B8%D1%81%D0%BE%D0%BA_%D1%8F%D0%B7%D1%8B%D0%BA%D0%BE%D0%B2_%D0%BF%D1%80%D0%BE%D0%B3%D1%80%D0%B0%D0%BC%D0%BC%D0%B8%D1%80%D0%BE%D0%B2%D0%B0%D0%BD%D0%B8%D1%8F_%D0%BF%D0%BE_%D0%BA%D0%B0%D1%82%D0%B5%D0%B3%D0%BE%D1%80%D0%B8%D1%8F%D0%BC" title="Проект:Информационные технологии/Списки/Список языков программирования по категориям – Russian" lang="ru" hreflang="ru" data-title="Проект:Информационные технологии/Списки/Список языков программирования по категориям" data-language-autonym="Русский" data-language-local-name="Russian" class="interlanguage-link-target"><span>Русский</span></a></li><li class="interlanguage-link interwiki-vi mw-list-item"><a href="https://vi.wikipedia.org/wiki/Danh_s%C3%A1ch_ng%C3%B4n_ng%E1%BB%AF_l%E1%BA%ADp_tr%C3%ACnh_theo_lo%E1%BA%A1i" title="Danh sách ngôn ngữ lập trình theo loại – Vietnamese" lang="vi" hreflang="vi" data-title="Danh sách ngôn ngữ lập trình theo loại" data-language-autonym="Tiếng Việt" data-language-local-name="Vietnamese" class="interlanguage-link-target"><span>Tiếng Việt</span></a></li> </ul> <div class="after-portlet after-portlet-lang"><span class="wb-langlinks-edit wb-langlinks-link"><a href="https://www.wikidata.org/wiki/Special:EntityPage/Q389085#sitelinks-wikipedia" title="Edit interlanguage links" class="wbc-editpage">Edit links</a></span></div> </div> </div> </div> </header> <div class="vector-page-toolbar"> <div class="vector-page-toolbar-container"> <div id="left-navigation"> <nav aria-label="Namespaces"> <div id="p-associated-pages" class="vector-menu vector-menu-tabs mw-portlet mw-portlet-associated-pages" > <div class="vector-menu-content"> <ul class="vector-menu-content-list"> <li id="ca-nstab-main" class="selected vector-tab-noicon mw-list-item"><a href="/wiki/List_of_programming_languages_by_type" title="View the content page [c]" accesskey="c"><span>Article</span></a></li><li id="ca-talk" class="vector-tab-noicon mw-list-item"><a href="/wiki/Talk:List_of_programming_languages_by_type" rel="discussion" title="Discuss improvements to the content page [t]" accesskey="t"><span>Talk</span></a></li> </ul> </div> </div> <div id="vector-variants-dropdown" class="vector-dropdown emptyPortlet" > <input type="checkbox" id="vector-variants-dropdown-checkbox" role="button" aria-haspopup="true" data-event-name="ui.dropdown-vector-variants-dropdown" class="vector-dropdown-checkbox " aria-label="Change language variant" > <label id="vector-variants-dropdown-label" for="vector-variants-dropdown-checkbox" class="vector-dropdown-label cdx-button cdx-button--fake-button cdx-button--fake-button--enabled cdx-button--weight-quiet" aria-hidden="true" ><span class="vector-dropdown-label-text">English</span> </label> <div class="vector-dropdown-content"> <div id="p-variants" class="vector-menu mw-portlet mw-portlet-variants emptyPortlet" > <div class="vector-menu-content"> <ul class="vector-menu-content-list"> </ul> </div> </div> </div> </div> </nav> </div> <div id="right-navigation" class="vector-collapsible"> <nav aria-label="Views"> <div id="p-views" class="vector-menu vector-menu-tabs mw-portlet mw-portlet-views" > <div class="vector-menu-content"> <ul class="vector-menu-content-list"> <li id="ca-view" class="selected vector-tab-noicon mw-list-item"><a href="/wiki/List_of_programming_languages_by_type"><span>Read</span></a></li><li id="ca-edit" class="vector-tab-noicon mw-list-item"><a href="/w/index.php?title=List_of_programming_languages_by_type&action=edit" title="Edit this page [e]" accesskey="e"><span>Edit</span></a></li><li id="ca-history" class="vector-tab-noicon mw-list-item"><a href="/w/index.php?title=List_of_programming_languages_by_type&action=history" title="Past revisions of this page [h]" accesskey="h"><span>View history</span></a></li> </ul> </div> </div> </nav> <nav class="vector-page-tools-landmark" aria-label="Page tools"> <div id="vector-page-tools-dropdown" class="vector-dropdown vector-page-tools-dropdown" > <input type="checkbox" id="vector-page-tools-dropdown-checkbox" role="button" aria-haspopup="true" data-event-name="ui.dropdown-vector-page-tools-dropdown" class="vector-dropdown-checkbox " aria-label="Tools" > <label id="vector-page-tools-dropdown-label" for="vector-page-tools-dropdown-checkbox" class="vector-dropdown-label cdx-button cdx-button--fake-button cdx-button--fake-button--enabled cdx-button--weight-quiet" aria-hidden="true" ><span class="vector-dropdown-label-text">Tools</span> </label> <div class="vector-dropdown-content"> <div id="vector-page-tools-unpinned-container" class="vector-unpinned-container"> <div id="vector-page-tools" class="vector-page-tools vector-pinnable-element"> <div class="vector-pinnable-header vector-page-tools-pinnable-header vector-pinnable-header-unpinned" data-feature-name="page-tools-pinned" data-pinnable-element-id="vector-page-tools" data-pinned-container-id="vector-page-tools-pinned-container" data-unpinned-container-id="vector-page-tools-unpinned-container" > <div class="vector-pinnable-header-label">Tools</div> <button class="vector-pinnable-header-toggle-button vector-pinnable-header-pin-button" data-event-name="pinnable-header.vector-page-tools.pin">move to sidebar</button> <button class="vector-pinnable-header-toggle-button vector-pinnable-header-unpin-button" data-event-name="pinnable-header.vector-page-tools.unpin">hide</button> </div> <div id="p-cactions" class="vector-menu mw-portlet mw-portlet-cactions emptyPortlet vector-has-collapsible-items" title="More options" > <div class="vector-menu-heading"> Actions </div> <div class="vector-menu-content"> <ul class="vector-menu-content-list"> <li id="ca-more-view" class="selected vector-more-collapsible-item mw-list-item"><a href="/wiki/List_of_programming_languages_by_type"><span>Read</span></a></li><li id="ca-more-edit" class="vector-more-collapsible-item mw-list-item"><a href="/w/index.php?title=List_of_programming_languages_by_type&action=edit" title="Edit this page [e]" accesskey="e"><span>Edit</span></a></li><li id="ca-more-history" class="vector-more-collapsible-item mw-list-item"><a href="/w/index.php?title=List_of_programming_languages_by_type&action=history"><span>View history</span></a></li> </ul> </div> </div> <div id="p-tb" class="vector-menu mw-portlet mw-portlet-tb" > <div class="vector-menu-heading"> General </div> <div class="vector-menu-content"> <ul class="vector-menu-content-list"> <li id="t-whatlinkshere" class="mw-list-item"><a href="/wiki/Special:WhatLinksHere/List_of_programming_languages_by_type" title="List of all English Wikipedia pages containing links to this page [j]" accesskey="j"><span>What links here</span></a></li><li id="t-recentchangeslinked" class="mw-list-item"><a href="/wiki/Special:RecentChangesLinked/List_of_programming_languages_by_type" rel="nofollow" title="Recent changes in pages linked from this page [k]" accesskey="k"><span>Related changes</span></a></li><li id="t-upload" class="mw-list-item"><a href="//en.wikipedia.org/wiki/Wikipedia:File_Upload_Wizard" title="Upload files [u]" accesskey="u"><span>Upload file</span></a></li><li id="t-permalink" class="mw-list-item"><a href="/w/index.php?title=List_of_programming_languages_by_type&oldid=1276098860" title="Permanent link to this revision of this page"><span>Permanent link</span></a></li><li id="t-info" class="mw-list-item"><a href="/w/index.php?title=List_of_programming_languages_by_type&action=info" title="More information about this page"><span>Page information</span></a></li><li id="t-cite" class="mw-list-item"><a href="/w/index.php?title=Special:CiteThisPage&page=List_of_programming_languages_by_type&id=1276098860&wpFormIdentifier=titleform" title="Information on how to cite this page"><span>Cite this page</span></a></li><li id="t-urlshortener" class="mw-list-item"><a href="/w/index.php?title=Special:UrlShortener&url=https%3A%2F%2Fen.wikipedia.org%2Fwiki%2FList_of_programming_languages_by_type"><span>Get shortened URL</span></a></li><li id="t-urlshortener-qrcode" class="mw-list-item"><a href="/w/index.php?title=Special:QrCode&url=https%3A%2F%2Fen.wikipedia.org%2Fwiki%2FList_of_programming_languages_by_type"><span>Download QR code</span></a></li> </ul> </div> </div> <div id="p-coll-print_export" class="vector-menu mw-portlet mw-portlet-coll-print_export" > <div class="vector-menu-heading"> Print/export </div> <div class="vector-menu-content"> <ul class="vector-menu-content-list"> <li id="coll-download-as-rl" class="mw-list-item"><a href="/w/index.php?title=Special:DownloadAsPdf&page=List_of_programming_languages_by_type&action=show-download-screen" title="Download this page as a PDF file"><span>Download as PDF</span></a></li><li id="t-print" class="mw-list-item"><a href="/w/index.php?title=List_of_programming_languages_by_type&printable=yes" title="Printable version of this page [p]" accesskey="p"><span>Printable version</span></a></li> </ul> </div> </div> <div id="p-wikibase-otherprojects" class="vector-menu mw-portlet mw-portlet-wikibase-otherprojects" > <div class="vector-menu-heading"> In other projects </div> <div class="vector-menu-content"> <ul class="vector-menu-content-list"> <li id="t-wikibase" class="wb-otherproject-link wb-otherproject-wikibase-dataitem mw-list-item"><a href="https://www.wikidata.org/wiki/Special:EntityPage/Q389085" title="Structured data on this page hosted by Wikidata [g]" accesskey="g"><span>Wikidata item</span></a></li> </ul> </div> </div> </div> </div> </div> </div> </nav> </div> </div> </div> <div class="vector-column-end"> <div class="vector-sticky-pinned-container"> <nav class="vector-page-tools-landmark" aria-label="Page tools"> <div id="vector-page-tools-pinned-container" class="vector-pinned-container"> </div> </nav> <nav class="vector-appearance-landmark" aria-label="Appearance"> <div id="vector-appearance-pinned-container" class="vector-pinned-container"> <div id="vector-appearance" class="vector-appearance vector-pinnable-element"> <div class="vector-pinnable-header vector-appearance-pinnable-header vector-pinnable-header-pinned" data-feature-name="appearance-pinned" data-pinnable-element-id="vector-appearance" data-pinned-container-id="vector-appearance-pinned-container" data-unpinned-container-id="vector-appearance-unpinned-container" > <div class="vector-pinnable-header-label">Appearance</div> <button class="vector-pinnable-header-toggle-button vector-pinnable-header-pin-button" data-event-name="pinnable-header.vector-appearance.pin">move to sidebar</button> <button class="vector-pinnable-header-toggle-button vector-pinnable-header-unpin-button" data-event-name="pinnable-header.vector-appearance.unpin">hide</button> </div> </div> </div> </nav> </div> </div> <div id="bodyContent" class="vector-body" aria-labelledby="firstHeading" data-mw-ve-target-container> <div class="vector-body-before-content"> <div class="mw-indicators"> </div> <div id="siteSub" class="noprint">From Wikipedia, the free encyclopedia</div> </div> <div id="contentSub"><div id="mw-content-subtitle"></div></div> <div id="mw-content-text" class="mw-body-content"><div class="mw-content-ltr mw-parser-output" lang="en" dir="ltr"><p class="mw-empty-elt"> </p> <style data-mw-deduplicate="TemplateStyles:r1129693374">.mw-parser-output .hlist dl,.mw-parser-output .hlist ol,.mw-parser-output .hlist ul{margin:0;padding:0}.mw-parser-output .hlist dd,.mw-parser-output .hlist dt,.mw-parser-output .hlist li{margin:0;display:inline}.mw-parser-output .hlist.inline,.mw-parser-output .hlist.inline dl,.mw-parser-output .hlist.inline ol,.mw-parser-output .hlist.inline ul,.mw-parser-output .hlist dl dl,.mw-parser-output .hlist dl ol,.mw-parser-output .hlist dl ul,.mw-parser-output .hlist ol dl,.mw-parser-output .hlist ol ol,.mw-parser-output .hlist ol ul,.mw-parser-output .hlist ul dl,.mw-parser-output .hlist ul ol,.mw-parser-output .hlist ul ul{display:inline}.mw-parser-output .hlist .mw-empty-li{display:none}.mw-parser-output .hlist dt::after{content:": "}.mw-parser-output .hlist dd::after,.mw-parser-output .hlist li::after{content:" · ";font-weight:bold}.mw-parser-output .hlist dd:last-child::after,.mw-parser-output .hlist dt:last-child::after,.mw-parser-output .hlist li:last-child::after{content:none}.mw-parser-output .hlist dd dd:first-child::before,.mw-parser-output .hlist dd dt:first-child::before,.mw-parser-output .hlist dd li:first-child::before,.mw-parser-output .hlist dt dd:first-child::before,.mw-parser-output .hlist dt dt:first-child::before,.mw-parser-output .hlist dt li:first-child::before,.mw-parser-output .hlist li dd:first-child::before,.mw-parser-output .hlist li dt:first-child::before,.mw-parser-output .hlist li li:first-child::before{content:" (";font-weight:normal}.mw-parser-output .hlist dd dd:last-child::after,.mw-parser-output .hlist dd dt:last-child::after,.mw-parser-output .hlist dd li:last-child::after,.mw-parser-output .hlist dt dd:last-child::after,.mw-parser-output .hlist dt dt:last-child::after,.mw-parser-output .hlist dt li:last-child::after,.mw-parser-output .hlist li dd:last-child::after,.mw-parser-output .hlist li dt:last-child::after,.mw-parser-output .hlist li li:last-child::after{content:")";font-weight:normal}.mw-parser-output .hlist ol{counter-reset:listitem}.mw-parser-output .hlist ol>li{counter-increment:listitem}.mw-parser-output .hlist ol>li::before{content:" "counter(listitem)"\a0 "}.mw-parser-output .hlist dd ol>li:first-child::before,.mw-parser-output .hlist dt ol>li:first-child::before,.mw-parser-output .hlist li ol>li:first-child::before{content:" ("counter(listitem)"\a0 "}</style><style data-mw-deduplicate="TemplateStyles:r1246091330">.mw-parser-output .sidebar{width:22em;float:right;clear:right;margin:0.5em 0 1em 1em;background:var(--background-color-neutral-subtle,#f8f9fa);border:1px solid var(--border-color-base,#a2a9b1);padding:0.2em;text-align:center;line-height:1.4em;font-size:88%;border-collapse:collapse;display:table}body.skin-minerva .mw-parser-output .sidebar{display:table!important;float:right!important;margin:0.5em 0 1em 1em!important}.mw-parser-output .sidebar-subgroup{width:100%;margin:0;border-spacing:0}.mw-parser-output .sidebar-left{float:left;clear:left;margin:0.5em 1em 1em 0}.mw-parser-output .sidebar-none{float:none;clear:both;margin:0.5em 1em 1em 0}.mw-parser-output .sidebar-outer-title{padding:0 0.4em 0.2em;font-size:125%;line-height:1.2em;font-weight:bold}.mw-parser-output .sidebar-top-image{padding:0.4em}.mw-parser-output .sidebar-top-caption,.mw-parser-output .sidebar-pretitle-with-top-image,.mw-parser-output .sidebar-caption{padding:0.2em 0.4em 0;line-height:1.2em}.mw-parser-output .sidebar-pretitle{padding:0.4em 0.4em 0;line-height:1.2em}.mw-parser-output .sidebar-title,.mw-parser-output .sidebar-title-with-pretitle{padding:0.2em 0.8em;font-size:145%;line-height:1.2em}.mw-parser-output .sidebar-title-with-pretitle{padding:0.1em 0.4em}.mw-parser-output .sidebar-image{padding:0.2em 0.4em 0.4em}.mw-parser-output .sidebar-heading{padding:0.1em 0.4em}.mw-parser-output .sidebar-content{padding:0 0.5em 0.4em}.mw-parser-output .sidebar-content-with-subgroup{padding:0.1em 0.4em 0.2em}.mw-parser-output .sidebar-above,.mw-parser-output .sidebar-below{padding:0.3em 0.8em;font-weight:bold}.mw-parser-output .sidebar-collapse .sidebar-above,.mw-parser-output .sidebar-collapse .sidebar-below{border-top:1px solid #aaa;border-bottom:1px solid #aaa}.mw-parser-output .sidebar-navbar{text-align:right;font-size:115%;padding:0 0.4em 0.4em}.mw-parser-output .sidebar-list-title{padding:0 0.4em;text-align:left;font-weight:bold;line-height:1.6em;font-size:105%}.mw-parser-output .sidebar-list-title-c{padding:0 0.4em;text-align:center;margin:0 3.3em}@media(max-width:640px){body.mediawiki .mw-parser-output .sidebar{width:100%!important;clear:both;float:none!important;margin-left:0!important;margin-right:0!important}}body.skin--responsive .mw-parser-output .sidebar a>img{max-width:none!important}@media screen{html.skin-theme-clientpref-night .mw-parser-output .sidebar:not(.notheme) .sidebar-list-title,html.skin-theme-clientpref-night .mw-parser-output .sidebar:not(.notheme) .sidebar-title-with-pretitle{background:transparent!important}html.skin-theme-clientpref-night .mw-parser-output .sidebar:not(.notheme) .sidebar-title-with-pretitle a{color:var(--color-progressive)!important}}@media screen and (prefers-color-scheme:dark){html.skin-theme-clientpref-os .mw-parser-output .sidebar:not(.notheme) .sidebar-list-title,html.skin-theme-clientpref-os .mw-parser-output .sidebar:not(.notheme) .sidebar-title-with-pretitle{background:transparent!important}html.skin-theme-clientpref-os .mw-parser-output .sidebar:not(.notheme) .sidebar-title-with-pretitle a{color:var(--color-progressive)!important}}@media print{body.ns-0 .mw-parser-output .sidebar{display:none!important}}</style><table class="sidebar nomobile nowraplinks" style="width:18.0em;"><tbody><tr><th class="sidebar-title" style="background:#ddddff; font-size:110%;"><a href="/wiki/Lists_of_programming_languages" title="Lists of programming languages">Programming language<br />lists</a></th></tr><tr><td class="sidebar-content" style="text-align: left;"> <ul><li><a href="/wiki/List_of_programming_languages" title="List of programming languages">Alphabetical</a></li> <li><a class="mw-selflink selflink">Categorical</a></li> <li><a href="/wiki/Timeline_of_programming_languages" title="Timeline of programming languages">Chronological</a></li> <li><a href="/wiki/Generational_list_of_programming_languages" title="Generational list of programming languages">Generational</a></li></ul></td> </tr><tr><td class="sidebar-navbar"><link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r1129693374"><style data-mw-deduplicate="TemplateStyles:r1239400231">.mw-parser-output .navbar{display:inline;font-size:88%;font-weight:normal}.mw-parser-output .navbar-collapse{float:left;text-align:left}.mw-parser-output .navbar-boxtext{word-spacing:0}.mw-parser-output .navbar ul{display:inline-block;white-space:nowrap;line-height:inherit}.mw-parser-output .navbar-brackets::before{margin-right:-0.125em;content:"[ "}.mw-parser-output .navbar-brackets::after{margin-left:-0.125em;content:" ]"}.mw-parser-output .navbar li{word-spacing:-0.125em}.mw-parser-output .navbar a>span,.mw-parser-output .navbar a>abbr{text-decoration:inherit}.mw-parser-output .navbar-mini abbr{font-variant:small-caps;border-bottom:none;text-decoration:none;cursor:inherit}.mw-parser-output .navbar-ct-full{font-size:114%;margin:0 7em}.mw-parser-output .navbar-ct-mini{font-size:114%;margin:0 4em}html.skin-theme-clientpref-night .mw-parser-output .navbar li a abbr{color:var(--color-base)!important}@media(prefers-color-scheme:dark){html.skin-theme-clientpref-os .mw-parser-output .navbar li a abbr{color:var(--color-base)!important}}@media print{.mw-parser-output .navbar{display:none!important}}</style><div class="navbar plainlinks hlist navbar-mini"><ul><li class="nv-view"><a href="/wiki/Template:Programming_language_lists" title="Template:Programming language lists"><abbr title="View this template">v</abbr></a></li><li class="nv-talk"><a href="/wiki/Template_talk:Programming_language_lists" title="Template talk:Programming language lists"><abbr title="Discuss this template">t</abbr></a></li><li class="nv-edit"><a href="/wiki/Special:EditPage/Template:Programming_language_lists" title="Special:EditPage/Template:Programming language lists"><abbr title="Edit this template">e</abbr></a></li></ul></div></td></tr></tbody></table> <p>This is a list of notable <a href="/wiki/Programming_language" title="Programming language">programming languages</a>, grouped by type. </p><p>The groupings are overlapping; not mutually exclusive. A language can be listed in multiple groupings. </p> <meta property="mw:PageProp/toc" /> <div class="mw-heading mw-heading2"><h2 id="Agent-oriented_programming_languages">Agent-oriented programming languages</h2><span class="mw-editsection"><span class="mw-editsection-bracket">[</span><a href="/w/index.php?title=List_of_programming_languages_by_type&action=edit&section=1" title="Edit section: Agent-oriented programming languages"><span>edit</span></a><span class="mw-editsection-bracket">]</span></span></div> <style data-mw-deduplicate="TemplateStyles:r1236090951">.mw-parser-output .hatnote{font-style:italic}.mw-parser-output div.hatnote{padding-left:1.6em;margin-bottom:0.5em}.mw-parser-output .hatnote i{font-style:normal}.mw-parser-output .hatnote+link+.hatnote{margin-top:-0.5em}@media print{body.ns-0 .mw-parser-output .hatnote{display:none!important}}</style><div role="note" class="hatnote navigation-not-searchable">Main article: <a href="/wiki/Agent-oriented_programming" title="Agent-oriented programming">Agent-oriented programming</a></div> <p>Agent-oriented programming allows the developer to build, extend and use <a href="/wiki/Software_agent" title="Software agent">software agents</a>, which are abstractions of objects that can message other agents. </p> <ul><li><a href="/wiki/Clojure" title="Clojure">Clojure</a></li> <li><a href="/wiki/F_Sharp_(programming_language)" title="F Sharp (programming language)">F#</a></li> <li><a href="/wiki/GOAL_agent_programming_language" title="GOAL agent programming language">GOAL</a></li> <li><a href="/wiki/SARL_(programming_language)" title="SARL (programming language)">SARL</a></li></ul> <div class="mw-heading mw-heading2"><h2 id="Array_languages">Array languages</h2><span class="mw-editsection"><span class="mw-editsection-bracket">[</span><a href="/w/index.php?title=List_of_programming_languages_by_type&action=edit&section=2" title="Edit section: Array languages"><span>edit</span></a><span class="mw-editsection-bracket">]</span></span></div> <link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r1236090951"><div role="note" class="hatnote navigation-not-searchable">Main category: <a href="/wiki/Category:Array_programming_languages" title="Category:Array programming languages">Array programming languages</a></div> <p><a href="/wiki/Array_programming" title="Array programming">Array programming</a> (also termed <i>vector</i> or <i>multidimensional</i>) languages generalize operations on scalars to apply transparently to <a href="/wiki/Vector_(mathematics)" class="mw-redirect" title="Vector (mathematics)">vectors</a>, <a href="/wiki/Matrix_(mathematics)" title="Matrix (mathematics)">matrices</a>, and <a href="/wiki/Higher-dimensional_array" class="mw-redirect" title="Higher-dimensional array">higher-dimensional arrays</a>. </p> <style data-mw-deduplicate="TemplateStyles:r1184024115">.mw-parser-output .div-col{margin-top:0.3em;column-width:30em}.mw-parser-output .div-col-small{font-size:90%}.mw-parser-output .div-col-rules{column-rule:1px solid #aaa}.mw-parser-output .div-col dl,.mw-parser-output .div-col ol,.mw-parser-output .div-col ul{margin-top:0}.mw-parser-output .div-col li,.mw-parser-output .div-col dd{page-break-inside:avoid;break-inside:avoid-column}</style><div class="div-col" style="column-width: 8em;"> <ul><li><a href="/wiki/A%2B_(programming_language)" title="A+ (programming language)">A+</a></li> <li><a href="/wiki/Ada_(programming_language)" title="Ada (programming language)">Ada</a></li> <li><a href="/wiki/Analytica_(software)" title="Analytica (software)">Analytica</a></li> <li><a href="/wiki/APL_(programming_language)" title="APL (programming language)">APL</a></li> <li><a href="/wiki/Chapel_(programming_language)" title="Chapel (programming language)">Chapel</a></li> <li><a href="/wiki/Dartmouth_BASIC" title="Dartmouth BASIC">Dartmouth BASIC</a></li> <li><a href="/wiki/Fortran" title="Fortran">Fortran</a> (As of <a href="/wiki/Fortran_90" class="mw-redirect" title="Fortran 90">Fortran 90</a>)</li> <li><a href="/wiki/FreeMat" title="FreeMat">FreeMat</a></li> <li><a href="/wiki/GAUSS_(software)" title="GAUSS (software)">GAUSS</a></li> <li><a href="/wiki/Interactive_Data_Language" class="mw-redirect" title="Interactive Data Language">Interactive Data Language</a> (IDL)</li> <li><a href="/wiki/J_(programming_language)" title="J (programming language)">J</a></li> <li><a href="/wiki/Julia_(programming_language)" title="Julia (programming language)">Julia</a></li> <li><a href="/wiki/K_(programming_language)" title="K (programming language)">K</a></li> <li><a href="/wiki/MATLAB" title="MATLAB">MATLAB</a></li> <li><a href="/wiki/GNU_Octave" title="GNU Octave">Octave</a></li> <li><a href="/wiki/Q_(programming_language_from_Kx_Systems)" title="Q (programming language from Kx Systems)">Q</a></li> <li><a href="/wiki/R_(programming_language)" title="R (programming language)">R</a></li> <li><a href="/wiki/Raku_(programming_language)" title="Raku (programming language)">Raku</a><sup id="cite_ref-1" class="reference"><a href="#cite_note-1"><span class="cite-bracket">[</span>1<span class="cite-bracket">]</span></a></sup></li> <li><a href="/wiki/S_(programming_language)" title="S (programming language)">S</a></li> <li><a href="/wiki/Scilab" title="Scilab">Scilab</a></li> <li><a href="/wiki/S-Lang" title="S-Lang">S-Lang</a></li> <li><a href="/wiki/SequenceL" title="SequenceL">SequenceL</a></li> <li><a href="/wiki/Speakeasy_(computational_environment)" title="Speakeasy (computational environment)">Speakeasy</a></li> <li><a href="/wiki/Wolfram_Mathematica" title="Wolfram Mathematica">Wolfram Mathematica</a> (<a href="/wiki/Wolfram_language" class="mw-redirect" title="Wolfram language">Wolfram language</a>)</li> <li><a href="/wiki/X10_(programming_language)" title="X10 (programming language)">X10</a></li> <li><a href="/wiki/ZPL_(programming_language)" class="mw-redirect" title="ZPL (programming language)">ZPL</a></li></ul> </div> <div class="mw-heading mw-heading2"><h2 id="Aspect-oriented_programming_languages">Aspect-oriented programming languages</h2><span class="mw-editsection"><span class="mw-editsection-bracket">[</span><a href="/w/index.php?title=List_of_programming_languages_by_type&action=edit&section=3" title="Edit section: Aspect-oriented programming languages"><span>edit</span></a><span class="mw-editsection-bracket">]</span></span></div> <link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r1236090951"><div role="note" class="hatnote navigation-not-searchable">Main article: <a href="/wiki/Aspect-oriented_programming" title="Aspect-oriented programming">Aspect-oriented programming</a></div> <p>Aspect-oriented programming enables developers to add new functionality to code, known as "advice", without modifying that code itself; rather, it uses a <a href="/wiki/Pointcut" title="Pointcut">pointcut</a> to implement the advice into code blocks. </p> <ul><li><a href="/wiki/Ada_(programming_language)" title="Ada (programming language)">Ada</a></li> <li><a href="/wiki/AspectJ" title="AspectJ">AspectJ</a></li> <li><a href="/wiki/Apache_Groovy" title="Apache Groovy">Groovy</a></li> <li><a href="/wiki/Nemerle" title="Nemerle">Nemerle</a></li> <li><a href="/wiki/Raku_(programming_language)" title="Raku (programming language)">Raku</a><sup id="cite_ref-2" class="reference"><a href="#cite_note-2"><span class="cite-bracket">[</span>2<span class="cite-bracket">]</span></a></sup><sup id="cite_ref-3" class="reference"><a href="#cite_note-3"><span class="cite-bracket">[</span>3<span class="cite-bracket">]</span></a></sup></li></ul> <div class="mw-heading mw-heading2"><h2 id="Assembly_languages">Assembly languages</h2><span class="mw-editsection"><span class="mw-editsection-bracket">[</span><a href="/w/index.php?title=List_of_programming_languages_by_type&action=edit&section=4" title="Edit section: Assembly languages"><span>edit</span></a><span class="mw-editsection-bracket">]</span></span></div> <link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r1236090951"><div role="note" class="hatnote navigation-not-searchable">Main article: <a href="/wiki/Assembly_language" title="Assembly language">Assembly language</a></div> <p><a href="/wiki/Assembly_language" title="Assembly language">Assembly languages</a> directly correspond to a <a href="/wiki/Machine_language" class="mw-redirect" title="Machine language">machine language</a> (see <a href="#Machine_languages">below</a>), so machine code instructions appear in a form understandable by humans, although there may not be a one-to-one mapping between an individual statement and an individual instruction. Assembly languages let programmers use symbolic addresses, which the <a href="/wiki/Assembly_language_assembler" class="mw-redirect" title="Assembly language assembler">assembler</a> converts to absolute or <a href="/wiki/Relocation_(computing)" title="Relocation (computing)">relocatable</a> addresses. Most assemblers also support <a href="/wiki/Macro_(computer_science)" title="Macro (computer science)">macros</a> and <a href="/wiki/Constant_(computer_programming)" title="Constant (computer programming)">symbolic constants</a>. </p> <div class="mw-heading mw-heading2"><h2 id="Authoring_languages">Authoring languages</h2><span class="mw-editsection"><span class="mw-editsection-bracket">[</span><a href="/w/index.php?title=List_of_programming_languages_by_type&action=edit&section=5" title="Edit section: Authoring languages"><span>edit</span></a><span class="mw-editsection-bracket">]</span></span></div> <link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r1236090951"><div role="note" class="hatnote navigation-not-searchable">Main article: <a href="/wiki/Authoring_language" class="mw-redirect" title="Authoring language">Authoring language</a></div> <p>An <a href="/wiki/Authoring_language" class="mw-redirect" title="Authoring language">authoring language</a> is a programming language designed for use by a non-computer expert to easily create tutorials, websites, and other interactive computer programs. </p> <ul><li><a href="/wiki/Darwin_Information_Typing_Architecture" title="Darwin Information Typing Architecture">Darwin Information Typing Architecture</a> (DITA)</li> <li><a href="/wiki/Lasso_(programming_language)" title="Lasso (programming language)">Lasso</a></li> <li><a href="/wiki/PILOT" title="PILOT">PILOT</a></li> <li><a href="/wiki/TUTOR" title="TUTOR">TUTOR</a></li> <li><a href="/wiki/Adobe_Authorware" title="Adobe Authorware">Authorware</a></li></ul> <div class="mw-heading mw-heading2"><h2 id="Command-line_interface_languages">Command-line interface languages</h2><span class="mw-editsection"><span class="mw-editsection-bracket">[</span><a href="/w/index.php?title=List_of_programming_languages_by_type&action=edit&section=6" title="Edit section: Command-line interface languages"><span>edit</span></a><span class="mw-editsection-bracket">]</span></span></div> <p><a href="/wiki/Command-line_interface" title="Command-line interface">Command-line interface</a> (CLI) languages are also called batch languages or job control languages. Examples: </p> <link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r1184024115"><div class="div-col" style="column-width: 15em;"> <ul><li><a href="/wiki/4DOS" title="4DOS">4DOS</a> (shell for <a href="/wiki/IBM_Personal_Computer" title="IBM Personal Computer">IBM PCs</a>)</li> <li><a href="/wiki/4OS2" title="4OS2">4OS2</a> (shell for <a href="/wiki/IBM_Personal_Computer" title="IBM Personal Computer">IBM PCs</a>)</li> <li><a href="/wiki/Bash_(Unix_shell)" title="Bash (Unix shell)">bash</a> (the Bourne-Again shell from <a href="/wiki/GNU" title="GNU">GNU</a>, <a href="/wiki/Free_Software_Foundation" title="Free Software Foundation">Free Software Foundation</a>)</li> <li><a href="/wiki/CLIST" title="CLIST">CLIST</a> (<a href="/wiki/MVS" title="MVS">MVS</a> Command List)</li> <li><a href="/wiki/CMS_EXEC" title="CMS EXEC">CMS EXEC</a></li> <li><a href="/wiki/C_shell" title="C shell">csh</a> and <a href="/wiki/Tcsh" title="Tcsh">tcsh</a> (by <a href="/wiki/Bill_Joy" title="Bill Joy">Bill Joy</a> <a href="/wiki/BSD" class="mw-redirect" title="BSD">UC Berkeley</a>)</li> <li><a href="/wiki/DIGITAL_Command_Language" title="DIGITAL Command Language">DIGITAL Command Language</a> CLI for <a href="/wiki/OpenVMS" title="OpenVMS">VMS</a> (<a href="/wiki/Digital_Equipment_Corporation" title="Digital Equipment Corporation">DEC</a>, <a href="/wiki/Compaq" title="Compaq">Compaq</a>, <a href="/wiki/Hewlett-Packard" title="Hewlett-Packard">HP</a>)</li> <li><a href="/wiki/Batch_file" title="Batch file">DOS batch language</a> (for <a href="/wiki/IBM_Personal_Computer" title="IBM Personal Computer">IBM PC</a> <a href="/wiki/DOS" title="DOS">DOS</a>, pre-<a href="/wiki/Microsoft_Windows" title="Microsoft Windows">Windows</a>)</li> <li><a href="/wiki/EXEC_2" title="EXEC 2">EXEC 2</a></li> <li><a href="/wiki/Expect" title="Expect">Expect</a> (a <a href="/wiki/Unix" title="Unix">Unix</a> automation and test tool)</li> <li><a href="/wiki/Friendly_interactive_shell" class="mw-redirect" title="Friendly interactive shell">fish</a> (a <a href="/wiki/Unix" title="Unix">Unix</a> shell)</li> <li><a href="/wiki/Hamilton_C_shell" title="Hamilton C shell">Hamilton C shell</a> (a C shell for Windows)</li> <li><a href="/wiki/KornShell" title="KornShell">ksh</a> (a standard <a href="/wiki/Unix" title="Unix">Unix</a> shell, written by <a href="/wiki/David_Korn_(computer_scientist)" title="David Korn (computer scientist)">David Korn</a>)</li> <li><a href="/wiki/Nushell" title="Nushell">Nushell</a> (a <a href="/wiki/Cross-platform" class="mw-redirect" title="Cross-platform">cross-platform</a> <a href="/wiki/Shell_(computing)" title="Shell (computing)">shell</a>)</li> <li><a href="/wiki/PowerShell" title="PowerShell">PowerShell</a> (<a href="/wiki/.NET" title=".NET">.NET</a>-based CLI)</li> <li><a href="/wiki/Rc_(Unix_shell)" title="Rc (Unix shell)">rc</a> (shell for <a href="/wiki/Plan_9_from_Bell_Labs" title="Plan 9 from Bell Labs">Plan 9</a>)</li> <li><a href="/wiki/Rexx" title="Rexx">Rexx</a></li> <li><a href="/wiki/Bourne_shell" title="Bourne shell">sh</a> (standard <a href="/wiki/Unix" title="Unix">Unix</a> shell, by <a href="/wiki/Stephen_R._Bourne" title="Stephen R. Bourne">Stephen R. Bourne</a>)</li> <li><a href="/wiki/TACL_(programming_language)" title="TACL (programming language)">TACL</a> (Tandem Advanced Command Language)</li> <li><a href="/wiki/Batch_file" title="Batch file">Windows batch language</a> (input for <a href="/wiki/COMMAND.COM" title="COMMAND.COM">COMMAND.COM</a> or <a href="/wiki/CMD.EXE" class="mw-redirect" title="CMD.EXE">CMD.EXE</a>)</li> <li><a href="/wiki/Z_shell" title="Z shell">zsh</a> (a <a href="/wiki/Unix" title="Unix">Unix</a> shell)</li></ul> </div> <div class="mw-heading mw-heading2"><h2 id="Compiled_languages">Compiled languages</h2><span class="mw-editsection"><span class="mw-editsection-bracket">[</span><a href="/w/index.php?title=List_of_programming_languages_by_type&action=edit&section=7" title="Edit section: Compiled languages"><span>edit</span></a><span class="mw-editsection-bracket">]</span></span></div> <link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r1236090951"><div role="note" class="hatnote navigation-not-searchable">Main article: <a href="/wiki/Compiled_language" title="Compiled language">Compiled language</a></div> <p>These are languages typically processed by <a href="/wiki/Compiler" title="Compiler">compilers</a>, though theoretically any language can be compiled or interpreted. </p> <link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r1184024115"><div class="div-col" style="column-width: 15em;"> <ul><li><a href="/wiki/ArkTS" title="ArkTS">ArkTS</a></li> <li><a href="/wiki/ActionScript" title="ActionScript">ActionScript</a></li> <li><a href="/wiki/Ada_(programming_language)" title="Ada (programming language)">Ada</a> (multi-purpose language)</li> <li><a href="/wiki/ALGOL_58" title="ALGOL 58">ALGOL 58</a> <ul><li><a href="/wiki/JOVIAL" title="JOVIAL">JOVIAL</a></li> <li><a href="/wiki/NELIAC" title="NELIAC">NELIAC</a></li></ul></li> <li><a href="/wiki/ALGOL_60" title="ALGOL 60">ALGOL 60</a> (influential design) <ul><li><a href="/wiki/SMALL" title="SMALL">SMALL</a> a Machine ALGOL</li></ul></li> <li><a href="/wiki/ALGOL_68" title="ALGOL 68">ALGOL 68</a></li> <li><a href="/wiki/Ballerina_(programming_language)" title="Ballerina (programming language)">Ballerina</a>→ <a href="/wiki/Bytecode" title="Bytecode">bytecode</a> runtime</li> <li><a href="/wiki/BASIC" title="BASIC">BASIC</a> (including the first version of Dartmouth BASIC)</li> <li><a href="/wiki/BCPL" title="BCPL">BCPL</a></li> <li><a href="/wiki/C_(programming_language)" title="C (programming language)">C</a> (widely used procedural language)</li> <li><a href="/wiki/C%2B%2B" title="C++">C++</a> (multiparadigm language derived from C)</li> <li><a href="/wiki/C_Sharp_(programming_language)" title="C Sharp (programming language)">C#</a> (into <a href="/wiki/Common_Intermediate_Language" title="Common Intermediate Language">CIL</a> runtime)</li> <li><a href="/wiki/Ceylon_(programming_language)" title="Ceylon (programming language)">Ceylon</a> (into <a href="/wiki/Java_virtual_machine" title="Java virtual machine">JVM</a> <a href="/wiki/Bytecode" title="Bytecode">bytecode</a>)</li> <li><a href="/wiki/CHILL" title="CHILL">CHILL</a></li> <li><a href="/wiki/Clipper_(programming_language)" title="Clipper (programming language)">CLIPPER 5.3</a> (DOS-based)</li> <li><a href="/wiki/LEO_(computer)" title="LEO (computer)">CLEO</a> for Leo computers</li> <li><a href="/wiki/Clojure_(programming_language)" class="mw-redirect" title="Clojure (programming language)">Clojure</a> (into <a href="/wiki/Java_virtual_machine" title="Java virtual machine">JVM</a> <a href="/wiki/Bytecode" title="Bytecode">bytecode</a>)</li> <li><a href="/wiki/COBOL" title="COBOL">COBOL</a></li> <li><a href="/wiki/Cobra_(programming_language)" title="Cobra (programming language)">Cobra</a></li> <li><a href="/wiki/Common_Lisp" title="Common Lisp">Common Lisp</a></li> <li><a href="/wiki/Crystal_(programming_language)" title="Crystal (programming language)">Crystal</a></li> <li><a href="/wiki/Curl_(programming_language)" title="Curl (programming language)">Curl</a></li> <li><a href="/wiki/D_(programming_language)" title="D (programming language)">D</a> (from a reengineering of C++)</li> <li>DASL→Java, <a href="/wiki/JavaScript" title="JavaScript">JS</a>, JSP, Flex.war</li> <li><a href="/wiki/Delphi_(software)" title="Delphi (software)">Delphi</a> (<a href="/wiki/Borland" title="Borland">Borland</a>'s <a href="/wiki/Object_Pascal" title="Object Pascal">Object Pascal</a> development system)</li> <li><a href="/wiki/DIBOL" title="DIBOL">DIBOL</a> (a Digital COBOL)</li> <li><a href="/wiki/Dylan_(programming_language)" title="Dylan (programming language)">Dylan</a></li> <li><a href="/wiki/Eiffel_(programming_language)" title="Eiffel (programming language)">Eiffel</a> (developed by <a href="/wiki/Bertrand_Meyer" title="Bertrand Meyer">Bertrand Meyer</a>) <ul><li><a href="/wiki/Sather" title="Sather">Sather</a></li> <li><a href="/wiki/Ubercode" title="Ubercode">Ubercode</a></li></ul></li> <li><a href="/wiki/Elm_(programming_language)" title="Elm (programming language)">Elm</a></li> <li><a href="/wiki/Emacs_Lisp" title="Emacs Lisp">Emacs Lisp</a></li> <li><a href="/wiki/Emerald_(programming_language)" title="Emerald (programming language)">Emerald</a></li> <li><a href="/wiki/Erlang_(programming_language)" title="Erlang (programming language)">Erlang</a></li> <li><a href="/wiki/Factor_(programming_language)" title="Factor (programming language)">Factor</a></li> <li><a href="/wiki/Fortran" title="Fortran">Fortran</a> (first compiled by <a href="/wiki/IBM" title="IBM">IBM</a>'s <a href="/wiki/John_Backus" title="John Backus">John Backus</a>)</li> <li><a href="/wiki/GAUSS_(software)" title="GAUSS (software)">GAUSS</a></li> <li><a href="/wiki/Go_(programming_language)" title="Go (programming language)">Go</a> (Golang)</li> <li><a href="/wiki/Gosu_(programming_language)" title="Gosu (programming language)">Gosu</a> (into <a href="/wiki/Java_virtual_machine" title="Java virtual machine">JVM</a> <a href="/wiki/Bytecode" title="Bytecode">bytecode</a>)</li> <li><a href="/wiki/Groovy_(programming_language)" class="mw-redirect" title="Groovy (programming language)">Groovy</a> (into <a href="/wiki/Java_virtual_machine" title="Java virtual machine">JVM</a> <a href="/wiki/Bytecode" title="Bytecode">bytecode</a>)</li> <li><a href="/wiki/Haskell" title="Haskell">Haskell</a></li> <li><a href="/wiki/Harbour_(software)" class="mw-redirect" title="Harbour (software)">Harbour</a></li> <li><a href="/wiki/TempleOS" title="TempleOS">HolyC</a></li> <li><a href="/wiki/Inform" title="Inform">Inform</a> (usually story files for <a href="/wiki/Glulx" title="Glulx">Glulx</a> or <a href="/wiki/Z-machine" title="Z-machine">Z-code</a>)</li> <li><a href="/wiki/Java_(programming_language)" title="Java (programming language)">Java</a> (usually <a href="/wiki/Java_virtual_machine" title="Java virtual machine">JVM</a> <a href="/wiki/Bytecode" title="Bytecode">bytecode</a>; to <a href="/wiki/Machine_code" title="Machine code">machine code</a>)</li> <li><a href="/wiki/JOVIAL" title="JOVIAL">JOVIAL</a></li> <li><a href="/wiki/Julia_(programming_language)" title="Julia (programming language)">Julia</a> (on the fly to machine code)</li> <li><a href="/wiki/Kotlin_(programming_language)" title="Kotlin (programming language)">Kotlin</a> (Kotlin/Native uses <a href="/wiki/LLVM" title="LLVM">LLVM</a> to produce binaries)</li> <li><a href="/wiki/LabVIEW" title="LabVIEW">LabVIEW</a></li> <li><a href="/wiki/Mercury_(programming_language)" title="Mercury (programming language)">Mercury</a></li> <li><a href="/wiki/Mesa_(programming_language)" title="Mesa (programming language)">Mesa</a></li> <li><a href="/wiki/Nemerle" title="Nemerle">Nemerle</a> (into intermediate language bytecode)</li> <li><a href="/wiki/Nim_(programming_language)" title="Nim (programming language)">Nim</a></li> <li><a href="/wiki/Objective-C" title="Objective-C">Objective-C</a></li> <li><a href="/wiki/P_(programming_language)" title="P (programming language)">P</a></li> <li><a href="/wiki/Pascal_(programming_language)" title="Pascal (programming language)">Pascal</a> (most implementations)</li> <li><a href="/wiki/PL/I" title="PL/I">PL/I</a> (originally for IBM mainframes)</li> <li><a href="/wiki/Plus_(programming_language)" title="Plus (programming language)">Plus</a></li> <li><a href="/wiki/Python_(programming_language)" title="Python (programming language)">Python</a> (to intermediate <a href="/wiki/Virtual_machine" title="Virtual machine">VM</a> <a href="/wiki/Bytecode" title="Bytecode">bytecode</a>)</li> <li><a href="/wiki/IBM_RPG" title="IBM RPG">RPG</a> (Report Program Generator)</li> <li><a href="/wiki/Red_(programming_language)" title="Red (programming language)">Red</a></li> <li><a href="/wiki/Rust_(programming_language)" title="Rust (programming language)">Rust</a></li> <li><a href="/wiki/Scala_(programming_language)" title="Scala (programming language)">Scala</a> (into <a href="/wiki/Java_virtual_machine" title="Java virtual machine">JVM</a> <a href="/wiki/Bytecode" title="Bytecode">bytecode</a>)</li> <li><a href="/wiki/Scheme_(programming_language)" title="Scheme (programming language)">Scheme</a> (e.g. Gambit)</li> <li><a href="/wiki/SequenceL" title="SequenceL">SequenceL</a> – purely functional, parallelizing and race-free</li> <li><a href="/wiki/Simula" title="Simula">Simula</a> (object-oriented superset of <a href="/wiki/ALGOL_60" title="ALGOL 60">ALGOL 60</a>)</li> <li><a href="/wiki/Smalltalk" title="Smalltalk">Smalltalk</a> platform independent <a href="/wiki/Virtual_machine" title="Virtual machine">VM</a> <a href="/wiki/Bytecode" title="Bytecode">bytecode</a></li> <li><a href="/wiki/Swift_(programming_language)" title="Swift (programming language)">Swift</a></li> <li><a href="/wiki/ML_(programming_language)" title="ML (programming language)">ML</a> <ul><li><a href="/wiki/Standard_ML" title="Standard ML">Standard ML</a> (SML) <ul><li><a href="/wiki/Alice_(programming_language)" title="Alice (programming language)">Alice</a></li></ul></li> <li><a href="/wiki/OCaml" title="OCaml">OCaml</a></li> <li><a href="/wiki/F_Sharp_(programming_language)" title="F Sharp (programming language)">F#</a> (into <a href="/wiki/Common_Intermediate_Language" title="Common Intermediate Language">CIL</a>, generates runtime)</li></ul></li> <li><a href="/wiki/Turing_(programming_language)" title="Turing (programming language)">Turing</a></li> <li><a href="/wiki/V_(programming_language)" title="V (programming language)">V (Vlang)</a></li> <li><a href="/wiki/Vala_(programming_language)" title="Vala (programming language)">Vala</a> (GObject type system)</li> <li><a href="/wiki/Visual_Basic" title="Visual Basic">Visual Basic</a> (<a href="/wiki/Common_Intermediate_Language" title="Common Intermediate Language">CIL</a> JIT runtime)</li> <li><a href="/wiki/Visual_FoxPro" title="Visual FoxPro">Visual FoxPro</a></li> <li><a href="/wiki/Visual_Prolog" title="Visual Prolog">Visual Prolog</a></li> <li><a href="/wiki/Xojo" title="Xojo">Xojo</a></li> <li><a href="/wiki/Zig_(programming_language)" title="Zig (programming language)">Zig</a></li></ul> </div> <div class="mw-heading mw-heading2"><h2 id="Concatenative_programming_languages">Concatenative programming languages</h2><span class="mw-editsection"><span class="mw-editsection-bracket">[</span><a href="/w/index.php?title=List_of_programming_languages_by_type&action=edit&section=8" title="Edit section: Concatenative programming languages"><span>edit</span></a><span class="mw-editsection-bracket">]</span></span></div> <link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r1236090951"><div role="note" class="hatnote navigation-not-searchable">Main article: <a href="/wiki/Concatenative_programming_language" title="Concatenative programming language">Concatenative programming language</a></div> <p>A <a href="/wiki/Concatenative_programming_language" title="Concatenative programming language">concatenative programming language</a> is a <a href="/wiki/Point-free_programming" class="mw-redirect" title="Point-free programming">point-free</a> computer <a href="/wiki/Programming_language" title="Programming language">programming language</a> in which all expressions denote <a href="/wiki/Function_(mathematics)" title="Function (mathematics)">functions</a>, and the <a href="/wiki/Juxtaposition" title="Juxtaposition">juxtaposition</a> of <a href="/wiki/Expression_(computer_science)" title="Expression (computer science)">expressions</a> denotes <a href="/wiki/Function_composition" title="Function composition">function composition</a>.<sup id="cite_ref-dobbscodetalk_4-0" class="reference"><a href="#cite_note-dobbscodetalk-4"><span class="cite-bracket">[</span>4<span class="cite-bracket">]</span></a></sup> Concatenative programming replaces <a href="/wiki/Function_application" title="Function application">function application</a>, which is common in other programming styles, with <a href="/wiki/Function_composition_(computer_science)" title="Function composition (computer science)">function composition</a> as the default way to build <a href="/wiki/Subroutine" class="mw-redirect" title="Subroutine">subroutines</a>. </p> <ul><li><a href="/wiki/Factor_(programming_language)" title="Factor (programming language)">Factor</a></li> <li><a href="/wiki/Forth_(programming_language)" title="Forth (programming language)">Forth</a></li> <li><a href="/wiki/Jq_(programming_language)" title="Jq (programming language)">jq</a> (function application is also supported)</li> <li><a href="/wiki/Joy_(programming_language)" title="Joy (programming language)">Joy</a></li> <li><a href="/wiki/PostScript" title="PostScript">PostScript</a></li> <li><a href="/wiki/Raku_(programming_language)" title="Raku (programming language)">Raku</a><sup id="cite_ref-5" class="reference"><a href="#cite_note-5"><span class="cite-bracket">[</span>5<span class="cite-bracket">]</span></a></sup></li></ul> <div class="mw-heading mw-heading2"><h2 id="Concurrent_languages">Concurrent languages</h2><span class="mw-editsection"><span class="mw-editsection-bracket">[</span><a href="/w/index.php?title=List_of_programming_languages_by_type&action=edit&section=9" title="Edit section: Concurrent languages"><span>edit</span></a><span class="mw-editsection-bracket">]</span></span></div> <link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r1236090951"><div role="note" class="hatnote navigation-not-searchable">Main category: <a href="/wiki/Category:Concurrent_programming_languages" title="Category:Concurrent programming languages">Concurrent programming languages</a></div> <link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r1236090951"><div role="note" class="hatnote navigation-not-searchable">For a more comprehensive list, see <a href="/wiki/List_of_concurrent_and_parallel_programming_languages" title="List of concurrent and parallel programming languages">List of concurrent and parallel programming languages</a>.</div> <p><a href="/wiki/Message_passing" title="Message passing">Message passing</a> languages provide language constructs for <a href="/wiki/Concurrency_(computer_science)" title="Concurrency (computer science)">concurrency</a>. The predominant paradigm for concurrency in mainstream languages such as <a href="/wiki/Java_(programming_language)" title="Java (programming language)">Java</a> is <a href="/wiki/Shared_memory" title="Shared memory">shared memory</a> concurrency. Concurrent languages that make use of message passing have generally been inspired by process calculi such as <a href="/wiki/Communicating_sequential_processes" title="Communicating sequential processes">communicating sequential processes</a> (CSP) or the <a href="/wiki/%CE%A0-calculus" title="Π-calculus">π-calculus</a>. </p> <link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r1184024115"><div class="div-col" style="column-width: 15em;"> <ul><li><a href="/wiki/Ada_(programming_language)" title="Ada (programming language)">Ada</a> – multi-purpose language</li> <li><a href="/wiki/Alef_(programming_language)" title="Alef (programming language)">Alef</a> – concurrent language with threads and message passing, used for systems programming in early versions of <a href="/wiki/Plan_9_from_Bell_Labs" title="Plan 9 from Bell Labs">Plan 9 from Bell Labs</a></li> <li><a href="/wiki/Ateji_PX" title="Ateji PX">Ateji PX</a> – an extension of the Java language for parallelism</li> <li><a href="/wiki/Ballerina_(programming_language)" title="Ballerina (programming language)">Ballerina</a> – a language designed for implementing and orchestrating micro-services. Provides a message based parallel-first concurrency model.</li> <li><a href="/wiki/ChucK" title="ChucK">ChucK</a> – domain specific programming language for audio, precise control over concurrency and timing</li> <li><a href="/wiki/Cilk" title="Cilk">Cilk</a> – a concurrent <a href="/wiki/C_(programming_language)" title="C (programming language)">C</a></li> <li><a href="/wiki/C%CF%89" class="mw-redirect" title="Cω">Cω</a> – C Omega, a research language extending C#, uses asynchronous communication</li> <li><a href="/wiki/Clojure" title="Clojure">Clojure</a> – a dialect of <a href="/wiki/Lisp_(programming_language)" title="Lisp (programming language)">Lisp</a> for the <a href="/wiki/Java_virtual_machine" title="Java virtual machine">Java virtual machine</a></li> <li><a href="/wiki/Chapel_(programming_language)" title="Chapel (programming language)">Chapel</a></li> <li><a href="/wiki/Co-array_Fortran" class="mw-redirect" title="Co-array Fortran">Co-array Fortran</a></li> <li><a href="/wiki/Concurrent_Pascal" title="Concurrent Pascal">Concurrent Pascal</a> (by Brinch-Hansen)</li> <li><a href="/wiki/Curry_(programming_language)" title="Curry (programming language)">Curry</a></li> <li><a href="/wiki/E_(programming_language)" title="E (programming language)">E</a> – uses promises, ensures deadlocks cannot occur</li> <li><a href="/wiki/Eiffel_(programming_language)" title="Eiffel (programming language)">Eiffel</a> (through the <a href="/wiki/SCOOP_(software)" title="SCOOP (software)">SCOOP</a> mechanism, Simple Concurrent Object-Oriented Computation)</li> <li><a href="/wiki/Elixir_(programming_language)" title="Elixir (programming language)">Elixir</a> (runs on the Erlang VM)</li> <li><a href="/wiki/Emerald_(programming_language)" title="Emerald (programming language)">Emerald</a> – uses threads and monitors</li> <li><a href="/wiki/Erlang_(programming_language)" title="Erlang (programming language)">Erlang</a> – uses asynchronous message passing with nothing shared</li> <li><a href="/wiki/Gambit_(scheme_implementation)" class="mw-redirect" title="Gambit (scheme implementation)">Gambit Scheme</a> – using the Termite library</li> <li><a href="/wiki/Gleam_(programming_language)" title="Gleam (programming language)">Gleam</a> (runs on the Erlang VM)</li> <li><a href="/wiki/Go_(programming_language)" title="Go (programming language)">Go</a> (Golang)</li> <li><a href="/wiki/Haskell" title="Haskell">Haskell</a> – supports concurrent, distributed, and parallel programming across multiple machines</li> <li><a href="/wiki/Java_(programming_language)" title="Java (programming language)">Java</a> <ul><li><a href="/wiki/Join_Java" class="mw-redirect" title="Join Java">Join Java</a> – concurrent language based on Java</li> <li><a href="/wiki/X10_(programming_language)" title="X10 (programming language)">X10</a></li></ul></li> <li><a href="/wiki/Julia_(programming_language)" title="Julia (programming language)">Julia</a></li> <li><a href="/wiki/Joule_(programming_language)" title="Joule (programming language)">Joule</a> – dataflow language, communicates by message passing</li> <li><a href="/wiki/LabVIEW" title="LabVIEW">LabVIEW</a></li> <li><a href="/wiki/Limbo_(programming_language)" title="Limbo (programming language)">Limbo</a> – relative of <a href="/wiki/Alef_(programming_language)" title="Alef (programming language)">Alef</a>, used for systems programming in <a href="/wiki/Inferno_(operating_system)" title="Inferno (operating system)">Inferno (operating system)</a></li> <li><a href="/wiki/MultiLisp" title="MultiLisp">MultiLisp</a> – <a href="/wiki/Scheme_(programming_language)" title="Scheme (programming language)">Scheme</a> variant extended to support parallelism</li> <li><a href="/wiki/OCaml" title="OCaml">OCaml</a></li> <li><a href="/wiki/Occam_(programming_language)" title="Occam (programming language)">occam</a> – influenced heavily by <a href="/wiki/Communicating_sequential_processes" title="Communicating sequential processes">Communicating Sequential Processes</a> (CSP) <ul><li><a href="/wiki/Occam-%CF%80" title="Occam-π">occam-π</a> – a modern variant of <a href="/wiki/Occam_(programming_language)" title="Occam (programming language)">occam</a>, which incorporates ideas from Milner's <a href="/wiki/%CE%A0-calculus" title="Π-calculus">π-calculus</a></li></ul></li> <li><a href="/wiki/Orc_(programming_language)" title="Orc (programming language)">Orc</a></li> <li><a href="/wiki/Oz_(programming_language)" title="Oz (programming language)">Oz</a> – multiparadigm language, supports shared-state and message-passing concurrency, and futures, and Mozart Programming System <a href="/wiki/Cross-platform" class="mw-redirect" title="Cross-platform">cross-platform</a> Oz</li> <li><a href="/wiki/P_(programming_language)" title="P (programming language)">P</a></li> <li><a href="/wiki/Pict_(programming_language)" title="Pict (programming language)">Pict</a> – essentially an executable implementation of Milner's <a href="/wiki/%CE%A0-calculus" title="Π-calculus">π-calculus</a></li> <li><a href="/wiki/Python_(programming_language)" title="Python (programming language)">Python</a> – uses thread-based parallelism and process-based parallelism<sup id="cite_ref-6" class="reference"><a href="#cite_note-6"><span class="cite-bracket">[</span>6<span class="cite-bracket">]</span></a></sup></li> <li><a href="/wiki/Raku_(programming_language)" title="Raku (programming language)">Raku</a><sup id="cite_ref-7" class="reference"><a href="#cite_note-7"><span class="cite-bracket">[</span>7<span class="cite-bracket">]</span></a></sup></li> <li><a href="/wiki/Rust_(programming_language)" title="Rust (programming language)">Rust</a></li> <li><a href="/wiki/Scala_(programming_language)" title="Scala (programming language)">Scala</a> – implements Erlang-style <a href="/wiki/Actor_model" title="Actor model">actors</a> on the JVM</li> <li><a href="/wiki/SequenceL" title="SequenceL">SequenceL</a> – purely functional, automatically parallelizing and race-free</li> <li><a href="/wiki/SR_(programming_language)" title="SR (programming language)">SR</a> – research language</li> <li><a href="/wiki/V_(programming_language)" title="V (programming language)">V (Vlang)</a></li> <li><a href="/wiki/Unified_Parallel_C" title="Unified Parallel C">Unified Parallel C</a></li> <li><a href="/wiki/XProc" title="XProc">XProc</a> – XML processing language, enabling concurrency</li></ul> </div> <div class="mw-heading mw-heading2"><h2 id="Constraint_programming_languages">Constraint programming languages</h2><span class="mw-editsection"><span class="mw-editsection-bracket">[</span><a href="/w/index.php?title=List_of_programming_languages_by_type&action=edit&section=10" title="Edit section: Constraint programming languages"><span>edit</span></a><span class="mw-editsection-bracket">]</span></span></div> <link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r1236090951"><div role="note" class="hatnote navigation-not-searchable">Main article: <a href="/wiki/Constraint_programming" title="Constraint programming">Constraint programming</a></div> <p>A <a href="/wiki/Constraint_programming" title="Constraint programming">constraint programming</a> language is a <a href="/wiki/Declarative_programming" title="Declarative programming">declarative programming</a> language where relationships between variables are expressed as <a href="/wiki/Constraint_(mathematics)" title="Constraint (mathematics)">constraints</a>. Execution proceeds by attempting to find values for the variables which satisfy all declared constraints. </p> <ul><li><a href="/wiki/Claire_(programming_language)" title="Claire (programming language)">Claire</a></li> <li><a href="/wiki/Constraint_Handling_Rules" title="Constraint Handling Rules">Constraint Handling Rules</a></li> <li><a href="/wiki/CHIP_(programming_language)" title="CHIP (programming language)">CHIP</a></li> <li><a href="/wiki/ECLiPSe" title="ECLiPSe">ECLiPSe</a></li> <li><a href="/wiki/Kaleidoscope_(programming_language)" title="Kaleidoscope (programming language)">Kaleidoscope</a></li> <li><a href="/wiki/Raku_(programming_language)" title="Raku (programming language)">Raku</a><sup id="cite_ref-8" class="reference"><a href="#cite_note-8"><span class="cite-bracket">[</span>8<span class="cite-bracket">]</span></a></sup></li></ul> <div class="mw-heading mw-heading2"><h2 id="Curly_bracket_languages">Curly bracket languages</h2><span class="mw-editsection"><span class="mw-editsection-bracket">[</span><a href="/w/index.php?title=List_of_programming_languages_by_type&action=edit&section=11" title="Edit section: Curly bracket languages"><span>edit</span></a><span class="mw-editsection-bracket">]</span></span></div> <p>A <b>curly bracket</b> or <b>curly brace</b> language has syntax that defines a block as the statements between <a href="/wiki/Braces_(punctuation)" class="mw-redirect" title="Braces (punctuation)">curly brackets, a.k.a. braces, <code>{}</code></a>. This syntax originated with <a href="/wiki/BCPL" title="BCPL">BCPL</a> (1966), and was popularized by <a href="/wiki/C_(programming_language)" title="C (programming language)">C</a>. Many curly bracket languages <a href="/wiki/List_of_C-family_programming_languages" title="List of C-family programming languages">descend from or are strongly influenced by C</a>. Examples: </p> <link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r1184024115"><div class="div-col" style="column-width: 15em;"> <ul><li><a href="/wiki/Actor-Based_Concurrent_Language" title="Actor-Based Concurrent Language">ABCL/c+</a></li> <li><a href="/wiki/Alef_(programming_language)" title="Alef (programming language)">Alef</a></li> <li><a href="/wiki/AWK" title="AWK">AWK</a></li> <li><a href="/wiki/ArkTS" title="ArkTS">ArkTS</a></li> <li><a href="/wiki/B_(programming_language)" title="B (programming language)">B</a></li> <li><a href="/wiki/Bc_(programming_language)" title="Bc (programming language)">bc</a></li> <li><a href="/wiki/BCPL" title="BCPL">BCPL</a></li> <li><a href="/wiki/Ballerina_(programming_language)" title="Ballerina (programming language)">Ballerina</a></li> <li><a href="/wiki/C_(programming_language)" title="C (programming language)">C</a> – developed circa 1970 at <a href="/wiki/Bell_Labs" title="Bell Labs">Bell Labs</a></li> <li><a href="/wiki/C%2B%2B" title="C++">C++</a></li> <li><a href="/wiki/C_Sharp_(programming_language)" title="C Sharp (programming language)">C#</a></li> <li><a href="/wiki/Ceylon_(programming_language)" title="Ceylon (programming language)">Ceylon</a></li> <li><a href="/wiki/ChucK" title="ChucK">ChucK</a> – audio programming language</li> <li><a href="/wiki/Cilk" title="Cilk">Cilk</a> – concurrent C for multithreaded parallel programming</li> <li><a href="/wiki/Cyclone_(programming_language)" title="Cyclone (programming language)">Cyclone</a> – a safer C variant</li> <li><a href="/wiki/D_(programming_language)" title="D (programming language)">D</a></li> <li><a href="/wiki/Dart_(programming_language)" title="Dart (programming language)">Dart</a></li> <li>DASL – based on Java</li> <li><a href="/wiki/E_(programming_language)" title="E (programming language)">E</a></li> <li><a href="/wiki/ECMAScript" title="ECMAScript">ECMAScript</a> <ul><li><a href="/wiki/AssemblyScript" title="AssemblyScript">AssemblyScript</a></li> <li><a href="/wiki/ActionScript" title="ActionScript">ActionScript</a></li> <li><a href="/wiki/ECMAScript_for_XML" title="ECMAScript for XML">ECMAScript for XML</a></li> <li><a href="/wiki/JavaScript" title="JavaScript">JavaScript</a></li> <li><a href="/wiki/JScript" title="JScript">JScript</a></li> <li><a href="/wiki/TypeScript" title="TypeScript">TypeScript</a></li></ul></li> <li><a href="/wiki/OpenGL_Shading_Language" title="OpenGL Shading Language">GLSL</a></li> <li><a href="/wiki/Go_(programming_language)" title="Go (programming language)">Go</a> (Golang)</li> <li><a href="/wiki/High-Level_Shading_Language" class="mw-redirect" title="High-Level Shading Language">HLSL</a></li> <li><a href="/wiki/Java_(programming_language)" title="Java (programming language)">Java</a> <ul><li><a href="/wiki/Processing_(programming_language)" class="mw-redirect" title="Processing (programming language)">Processing</a></li> <li><a href="/wiki/Groovy_(programming_language)" class="mw-redirect" title="Groovy (programming language)">Groovy</a></li> <li><a href="/wiki/Join_Java" class="mw-redirect" title="Join Java">Join Java</a></li> <li><a href="/wiki/Kotlin_(programming_language)" title="Kotlin (programming language)">Kotlin</a></li> <li><a href="/wiki/Tea_(programming_language)" title="Tea (programming language)">Tea</a></li> <li><a href="/wiki/X10_(programming_language)" title="X10 (programming language)">X10</a></li></ul></li> <li><a href="/wiki/Limbo_(programming_language)" title="Limbo (programming language)">Limbo</a></li> <li><a href="/wiki/LPC_(programming_language)" class="mw-redirect" title="LPC (programming language)">LPC</a></li> <li><a href="/wiki/Maya_Embedded_Language" title="Maya Embedded Language">MEL</a></li> <li><a href="/wiki/Nemerle" title="Nemerle">Nemerle</a> (curly braces optional)<sup id="cite_ref-nemerle-offside_9-0" class="reference"><a href="#cite_note-nemerle-offside-9"><span class="cite-bracket">[</span>9<span class="cite-bracket">]</span></a></sup></li> <li><a href="/wiki/Objective-C" title="Objective-C">Objective-C</a></li> <li><a href="/wiki/PCASTL" title="PCASTL">PCASTL</a></li> <li><a href="/wiki/Perl" title="Perl">Perl</a></li> <li><a href="/wiki/PHP" title="PHP">PHP</a></li> <li><a href="/wiki/Pico_(programming_language)" title="Pico (programming language)">Pico</a></li> <li><a href="/wiki/Pike_(programming_language)" title="Pike (programming language)">Pike</a></li> <li><a href="/wiki/PowerShell" title="PowerShell">PowerShell</a></li> <li><a href="/wiki/R_(programming_language)" title="R (programming language)">R</a></li> <li><a href="/wiki/Raku_(programming_language)" title="Raku (programming language)">Raku</a></li> <li><a href="/wiki/Rust_(programming_language)" title="Rust (programming language)">Rust</a></li> <li><a href="/wiki/S-Lang" title="S-Lang">S-Lang</a></li> <li><a href="/wiki/Scala_(programming_language)" title="Scala (programming language)">Scala</a> (curly-braces optional)</li> <li><a href="/wiki/Sed" title="Sed">sed</a></li> <li><a href="/wiki/Solidity_(programming_language)" class="mw-redirect" title="Solidity (programming language)">Solidity</a><sup id="cite_ref-10" class="reference"><a href="#cite_note-10"><span class="cite-bracket">[</span>10<span class="cite-bracket">]</span></a></sup></li> <li><a href="/wiki/SuperCollider" title="SuperCollider">SuperCollider</a></li> <li><a href="/wiki/Swift_(programming_language)" title="Swift (programming language)">Swift</a></li> <li><a href="/wiki/UnrealScript" class="mw-redirect" title="UnrealScript">UnrealScript</a></li> <li><a href="/wiki/V_(programming_language)" title="V (programming language)">V (Vlang)</a></li> <li><a href="/wiki/Yorick_(programming_language)" title="Yorick (programming language)">Yorick</a></li> <li><a href="/wiki/Zenith_Parsing_Engine" class="mw-redirect" title="Zenith Parsing Engine">YASS</a></li></ul> </div> <div class="mw-heading mw-heading2"><h2 id="Dataflow_languages">Dataflow languages</h2><span class="mw-editsection"><span class="mw-editsection-bracket">[</span><a href="/w/index.php?title=List_of_programming_languages_by_type&action=edit&section=12" title="Edit section: Dataflow languages"><span>edit</span></a><span class="mw-editsection-bracket">]</span></span></div> <p><a href="/wiki/Dataflow_programming" title="Dataflow programming">Dataflow programming</a> languages rely on a (usually visual) representation of the flow of data to specify the program. Frequently used for reacting to discrete events or for processing streams of data. Examples of dataflow languages include: </p> <link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r1184024115"><div class="div-col"> <ul><li><a href="/wiki/Analytica_(software)" title="Analytica (software)">Analytica</a></li> <li><a href="/wiki/Ballerina_(programming_language)" title="Ballerina (programming language)">Ballerina</a></li> <li><a href="/wiki/BMDFM" class="mw-redirect" title="BMDFM">BMDFM</a></li> <li><a href="/wiki/Hartmann_pipeline" class="mw-redirect" title="Hartmann pipeline">Hartmann pipelines</a></li> <li>G (used in <a href="/wiki/LabVIEW" title="LabVIEW">LabVIEW</a>)</li> <li><a href="/wiki/Lucid_(programming_language)" title="Lucid (programming language)">Lucid</a></li> <li><a href="/wiki/Max_(software)" title="Max (software)">Max</a></li> <li><a href="/wiki/Oz_(programming_language)" title="Oz (programming language)">Oz</a></li> <li><a href="/wiki/Prograph" title="Prograph">Prograph</a></li> <li><a href="/wiki/Pure_Data" title="Pure Data">Pure Data</a></li> <li><a href="/wiki/Reaktor" title="Reaktor">Reaktor</a></li> <li><a href="/wiki/StreamBase_Systems#StreamSQL_EventFlow_Language" class="mw-redirect" title="StreamBase Systems">StreamBase StreamSQL EventFlow</a></li> <li><a href="/wiki/Swift_(parallel_scripting_language)" title="Swift (parallel scripting language)">Swift (parallel scripting language)</a></li> <li><a href="/wiki/Agilent_VEE" class="mw-redirect" title="Agilent VEE">VEE</a></li> <li><a href="/wiki/VHDL" title="VHDL">VHDL</a></li> <li><a href="/wiki/VisSim" title="VisSim">VisSim</a></li> <li><a href="/wiki/Vvvv" title="Vvvv">Vvvv</a></li> <li><a href="/wiki/WebMethods_Flow" class="mw-redirect" title="WebMethods Flow">WebMethods Flow</a></li></ul> </div> <div class="mw-heading mw-heading2"><h2 id="Data-oriented_languages">Data-oriented languages</h2><span class="mw-editsection"><span class="mw-editsection-bracket">[</span><a href="/w/index.php?title=List_of_programming_languages_by_type&action=edit&section=13" title="Edit section: Data-oriented languages"><span>edit</span></a><span class="mw-editsection-bracket">]</span></span></div> <p>Data-oriented languages provide powerful ways of searching and manipulating the relations that have been described as entity relationship tables which map one set of things into other sets.<sup class="noprint Inline-Template Template-Fact" style="white-space:nowrap;">[<i><a href="/wiki/Wikipedia:Citation_needed" title="Wikipedia:Citation needed"><span title="This claim needs references to reliable sources. (January 2018)">citation needed</span></a></i>]</sup> Examples of data-oriented languages include: </p> <link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r1184024115"><div class="div-col"> <ul><li><a href="/wiki/Clarion_(programming_language)" title="Clarion (programming language)">Clarion</a></li> <li><a href="/wiki/Clipper_(programming_language)" title="Clipper (programming language)">Clipper</a></li> <li><a href="/wiki/DBase" title="DBase">dBase</a> a relational database access language</li> <li><a href="/wiki/Gremlin_(programming_language)" class="mw-redirect" title="Gremlin (programming language)">Gremlin</a></li> <li><a href="/wiki/MUMPS" title="MUMPS">MUMPS</a> (an ANSI standard general-purpose language with specializations for database work)</li> <li><a href="/wiki/Cach%C3%A9_ObjectScript" title="Caché ObjectScript">Caché ObjectScript</a> (a proprietary superset of MUMPS)</li> <li><a href="/wiki/RETRIEVE" title="RETRIEVE">RETRIEVE</a></li> <li><a href="/wiki/RDQL" class="mw-redirect" title="RDQL">RDQL</a></li> <li><a href="/wiki/SPARQL" title="SPARQL">SPARQL</a></li> <li><a href="/wiki/SQL" title="SQL">SQL</a></li> <li><a href="/wiki/Visual_FoxPro" title="Visual FoxPro">Visual FoxPro</a> – a native RDBMS engine, object-oriented, RAD</li> <li><a href="/wiki/WebDNA" title="WebDNA">WebDNA</a></li> <li><a href="/wiki/Wolfram_Mathematica" title="Wolfram Mathematica">Wolfram Mathematica</a> (<a href="/wiki/Wolfram_language" class="mw-redirect" title="Wolfram language">Wolfram language</a>)</li></ul> </div> <div class="mw-heading mw-heading2"><h2 id="Decision_table_languages">Decision table languages</h2><span class="mw-editsection"><span class="mw-editsection-bracket">[</span><a href="/w/index.php?title=List_of_programming_languages_by_type&action=edit&section=14" title="Edit section: Decision table languages"><span>edit</span></a><span class="mw-editsection-bracket">]</span></span></div> <p><a href="/wiki/Decision_table" title="Decision table">Decision tables</a> can be used as an aid to clarifying the logic before writing a program in any language, but in the 1960s a number of languages were developed where the main logic is expressed directly in the form of a decision table, including: </p> <ul><li><a href="/wiki/Filetab" title="Filetab">Filetab</a></li></ul> <div class="mw-heading mw-heading2"><h2 id="Declarative_languages">Declarative languages</h2><span class="mw-editsection"><span class="mw-editsection-bracket">[</span><a href="/w/index.php?title=List_of_programming_languages_by_type&action=edit&section=15" title="Edit section: Declarative languages"><span>edit</span></a><span class="mw-editsection-bracket">]</span></span></div> <link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r1236090951"><div role="note" class="hatnote navigation-not-searchable">Main category: <a href="/wiki/Category:Declarative_programming_languages" title="Category:Declarative programming languages">Declarative programming languages</a></div> <p><a href="/wiki/Declarative_programming" title="Declarative programming">Declarative languages</a> express the logic of a computation without describing its control flow in detail. <a href="/wiki/Declarative_programming" title="Declarative programming">Declarative programming</a> stands in contrast to <a href="/wiki/Imperative_programming" title="Imperative programming">imperative programming</a> via imperative programming languages, where control flow is specified by serial orders (imperatives). (Pure) <a href="#Functional_languages">functional</a> and <a href="#Logic-based_languages">logic-based</a> programming languages are also declarative, and constitute the major subcategories of the declarative category. This section lists additional examples not in those subcategories. </p> <link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r1184024115"><div class="div-col"> <ul><li><a href="/wiki/Analytica_(software)" title="Analytica (software)">Analytica</a></li> <li><a href="/wiki/Apache_Ant" title="Apache Ant">Ant</a> (combine <a href="/wiki/Declarative_programming" title="Declarative programming">declarative programming</a> and <a href="/wiki/Imperative_programming" title="Imperative programming">imperative programming</a>)</li> <li><a href="/wiki/Curry_(programming_language)" title="Curry (programming language)">Curry</a></li> <li><a href="/wiki/Cypher_(query_language)" title="Cypher (query language)">Cypher</a></li> <li><a href="/wiki/Datalog" title="Datalog">Datalog</a></li> <li>Distributed Application Specification Language (DASL) (combine <a href="/wiki/Declarative_programming" title="Declarative programming">declarative programming</a> and <a href="/wiki/Imperative_programming" title="Imperative programming">imperative programming</a>)</li> <li><a href="/wiki/ECL_(data-centric_programming_language)" title="ECL (data-centric programming language)">ECL</a></li> <li><a href="/wiki/Gremlin_(programming_language)" class="mw-redirect" title="Gremlin (programming language)">Gremlin</a></li> <li><a href="/wiki/Inform" title="Inform">Inform</a> (combine <a href="/wiki/Declarative_programming" title="Declarative programming">declarative programming</a> and <a href="/wiki/Imperative_programming" title="Imperative programming">imperative programming</a>)</li> <li><a href="/wiki/Lustre_(programming_language)" title="Lustre (programming language)">Lustre</a></li> <li><a href="/wiki/Mercury_(programming_language)" title="Mercury (programming language)">Mercury</a></li> <li><a href="/wiki/Metafont" title="Metafont">Metafont</a></li> <li><a href="/wiki/MetaPost" title="MetaPost">MetaPost</a></li> <li><a href="/wiki/Modelica" title="Modelica">Modelica</a></li> <li><a href="/wiki/Nix_(package_manager)#Implementation" title="Nix (package manager)">Nix</a></li> <li><a href="/wiki/Prolog" title="Prolog">Prolog</a></li> <li><a href="/wiki/QML" title="QML">QML</a></li> <li><a href="/wiki/Oz_(programming_language)" title="Oz (programming language)">Oz</a></li> <li><a href="/wiki/RDQL" class="mw-redirect" title="RDQL">RDQL</a></li> <li><a href="/wiki/SequenceL" title="SequenceL">SequenceL</a> – purely functional, automatically parallelizing and race-free</li> <li><a href="/wiki/SPARQL" title="SPARQL">SPARQL</a></li> <li><a href="/wiki/SQL" title="SQL">SQL</a> (Only DQL, not DDL, DCL, and DML)</li> <li><a href="/wiki/Souffl%C3%A9_(programming_language)" title="Soufflé (programming language)">Soufflé</a></li> <li><a href="/wiki/Wolfram_Mathematica" title="Wolfram Mathematica">Wolfram Mathematica</a> (<a href="/wiki/Wolfram_language" class="mw-redirect" title="Wolfram language">Wolfram language</a>)</li> <li><a href="/wiki/XBase" title="XBase">xBase</a></li> <li><a href="/wiki/XSL_Transformations" class="mw-redirect" title="XSL Transformations">XSL Transformations</a></li></ul> </div> <div class="mw-heading mw-heading2"><h2 id="Embeddable_languages">Embeddable languages</h2><span class="mw-editsection"><span class="mw-editsection-bracket">[</span><a href="/w/index.php?title=List_of_programming_languages_by_type&action=edit&section=16" title="Edit section: Embeddable languages"><span>edit</span></a><span class="mw-editsection-bracket">]</span></span></div> <div class="mw-heading mw-heading3"><h3 id="In_source_code">In source code</h3><span class="mw-editsection"><span class="mw-editsection-bracket">[</span><a href="/w/index.php?title=List_of_programming_languages_by_type&action=edit&section=17" title="Edit section: In source code"><span>edit</span></a><span class="mw-editsection-bracket">]</span></span></div> <p>Source embeddable languages embed small pieces of executable code inside a piece of free-form text, often a web page. </p><p>Client-side embedded languages are limited by the abilities of the browser or intended client. They aim to provide dynamism to web pages without the need to recontact the server. </p><p>Server-side embedded languages are much more flexible, since almost any language can be built into a server. The aim of having fragments of server-side code embedded in a web page is to generate additional markup dynamically; the code itself disappears when the page is served, to be replaced by its output. </p> <div class="mw-heading mw-heading4"><h4 id="Server_side">Server side</h4><span class="mw-editsection"><span class="mw-editsection-bracket">[</span><a href="/w/index.php?title=List_of_programming_languages_by_type&action=edit&section=18" title="Edit section: Server side"><span>edit</span></a><span class="mw-editsection-bracket">]</span></span></div> <ul><li><a href="/wiki/PHP" title="PHP">PHP</a></li> <li><a href="/wiki/VBScript" title="VBScript">VBScript</a></li> <li><a href="/wiki/Tcl" title="Tcl">Tcl</a> – server-side in <a href="/wiki/NaviServer" title="NaviServer">NaviServer</a> and an essential component in electronics industry systems</li> <li><a href="/wiki/WebDNA" title="WebDNA">WebDNA</a> – dedicated to database-driven websites</li></ul> <p>The above examples are particularly dedicated to this purpose. A large number of other languages, such as <a href="/wiki/Erlang_(programming_language)" title="Erlang (programming language)">Erlang</a>, <a href="/wiki/Scala_(programming_language)" title="Scala (programming language)">Scala</a>, <a href="/wiki/Perl" title="Perl">Perl</a>, <a href="/wiki/Ring_(programming_language)" title="Ring (programming language)">Ring</a> and <a href="/wiki/Ruby_(programming_language)" title="Ruby (programming language)">Ruby</a> can be adapted (for instance, by being made into <a href="/wiki/Apache_HTTP_Server" title="Apache HTTP Server">Apache</a> modules). </p> <div class="mw-heading mw-heading4"><h4 id="Client_side">Client side</h4><span class="mw-editsection"><span class="mw-editsection-bracket">[</span><a href="/w/index.php?title=List_of_programming_languages_by_type&action=edit&section=19" title="Edit section: Client side"><span>edit</span></a><span class="mw-editsection-bracket">]</span></span></div> <ul><li><a href="/wiki/ActionScript" title="ActionScript">ActionScript</a></li> <li><a href="/wiki/JavaScript" title="JavaScript">JavaScript (aka ECMAScript or JScript)</a></li> <li><a href="/wiki/VBScript" title="VBScript">VBScript</a> (Windows only)</li></ul> <div class="mw-heading mw-heading3"><h3 id="In_object_code">In object code</h3><span class="mw-editsection"><span class="mw-editsection-bracket">[</span><a href="/w/index.php?title=List_of_programming_languages_by_type&action=edit&section=20" title="Edit section: In object code"><span>edit</span></a><span class="mw-editsection-bracket">]</span></span></div> <p>A wide variety of dynamic or scripting languages can be embedded in compiled executable code. Basically, object code for the language's <a href="/wiki/Interpreter_(computing)" title="Interpreter (computing)">interpreter</a> needs to be linked into the executable. Source code fragments for the embedded language can then be passed to an evaluation function as strings. Application control languages can be implemented this way, if the source code is input by the user. Languages with small interpreters are preferred. </p> <link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r1184024115"><div class="div-col"> <ul><li><a href="/wiki/AngelScript" title="AngelScript">AngelScript</a></li> <li><a href="/wiki/Ch_(computer_programming)" title="Ch (computer programming)">Ch</a></li> <li><a href="/wiki/Extensible_Embeddable_Language" title="Extensible Embeddable Language">EEL</a></li> <li><a href="/wiki/Io_(programming_language)" title="Io (programming language)">Io</a></li> <li><a href="/wiki/Jq_(programming_language)" title="Jq (programming language)">jq</a> (C and Go)</li> <li><a href="/wiki/Julia_(programming_language)" title="Julia (programming language)">Julia</a></li> <li><a href="/wiki/Lua_(programming_language)" title="Lua (programming language)">Lua</a></li> <li><a href="/wiki/Python_(programming_language)" title="Python (programming language)">Python</a></li> <li><a href="/wiki/Ring_(programming_language)" title="Ring (programming language)">Ring</a></li> <li><a href="/wiki/Ruby_(programming_language)" title="Ruby (programming language)">Ruby</a> (via <a href="/wiki/Mruby" title="Mruby">mruby</a>)</li> <li><a href="/wiki/Squirrel_(programming_language)" title="Squirrel (programming language)">Squirrel</a></li> <li><a href="/wiki/Tcl" title="Tcl">Tcl</a></li></ul> </div> <div class="mw-heading mw-heading2"><h2 id="Educational_programming_languages">Educational programming languages</h2><span class="mw-editsection"><span class="mw-editsection-bracket">[</span><a href="/w/index.php?title=List_of_programming_languages_by_type&action=edit&section=21" title="Edit section: Educational programming languages"><span>edit</span></a><span class="mw-editsection-bracket">]</span></span></div> <link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r1236090951"><div role="note" class="hatnote navigation-not-searchable">For a more comprehensive list, see <a href="/wiki/List_of_educational_programming_languages" title="List of educational programming languages">List of educational programming languages</a>.</div> <p>Languages developed primarily for the purpose of teaching and learning of programming. </p> <link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r1184024115"><div class="div-col"> <ul><li><a href="/wiki/Alice_(software)" title="Alice (software)">Alice</a></li> <li><a href="/wiki/Blockly" title="Blockly">Blockly</a></li> <li><a href="/wiki/Catrobat" title="Catrobat">Catrobat</a></li> <li><a href="/wiki/COMAL_(programming_language)" class="mw-redirect" title="COMAL (programming language)">COMAL</a></li> <li><a href="/wiki/ELAN_(programming_language)" title="ELAN (programming language)">Elan</a></li> <li><a href="/wiki/Emerald_(programming_language)" title="Emerald (programming language)">Emerald</a></li> <li><a href="/wiki/Ezhil_(programming_language)" title="Ezhil (programming language)">Ezhil</a></li> <li><a href="/wiki/Logo_(programming_language)" title="Logo (programming language)">Logo</a></li> <li><a href="/wiki/Modula-2" title="Modula-2">Modula-2</a></li> <li><a href="/wiki/Pascal_(programming_language)" title="Pascal (programming language)">Pascal</a></li> <li><a href="/wiki/Racket_(programming_language)" title="Racket (programming language)">Racket</a></li> <li><a href="/wiki/Scheme_(programming_language)" title="Scheme (programming language)">Scheme</a></li> <li><a href="/wiki/Scratch_(programming_language)" title="Scratch (programming language)">Scratch</a></li> <li><a href="/wiki/Snap!_(programming_language)" title="Snap! (programming language)">Snap!</a></li> <li><a href="/wiki/Turing_(programming_language)" title="Turing (programming language)">Turing</a></li> <li><a href="/wiki/Wolfram_Mathematica" title="Wolfram Mathematica">Wolfram Mathematica</a> (<a href="/wiki/Wolfram_language" class="mw-redirect" title="Wolfram language">Wolfram language</a>)</li></ul> </div> <div class="mw-heading mw-heading2"><h2 id="Esoteric_languages">Esoteric languages</h2><span class="mw-editsection"><span class="mw-editsection-bracket">[</span><a href="/w/index.php?title=List_of_programming_languages_by_type&action=edit&section=22" title="Edit section: Esoteric languages"><span>edit</span></a><span class="mw-editsection-bracket">]</span></span></div> <link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r1236090951"><div role="note" class="hatnote navigation-not-searchable">Main category: <a href="/wiki/Category:Esoteric_programming_languages" title="Category:Esoteric programming languages">Esoteric programming languages</a></div> <p>An <a href="/wiki/Esoteric_programming_language" title="Esoteric programming language">esoteric programming language</a> is a programming language designed as a test of the boundaries of computer programming language design, as a proof of concept, or as a joke. </p> <link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r1184024115"><div class="div-col"> <ul><li><a href="/wiki/Beatnik_(programming_language)" title="Beatnik (programming language)">Beatnik</a></li> <li><a href="/wiki/Befunge" title="Befunge">Befunge</a></li> <li><a href="/wiki/Brainfuck" title="Brainfuck">Brainfuck</a></li> <li><a href="/wiki/Chef_(programming_language)" class="mw-redirect" title="Chef (programming language)">Chef</a></li> <li><a href="/wiki/INTERCAL" title="INTERCAL">INTERCAL</a></li> <li><a href="/wiki/LOLCODE" title="LOLCODE">LOLCODE</a></li> <li><a href="/wiki/Malbolge" title="Malbolge">Malbolge</a></li> <li><a href="/w/index.php?title=Power_Code&action=edit&redlink=1" class="new" title="Power Code (page does not exist)">Power Code</a> <sup id="cite_ref-11" class="reference"><a href="#cite_note-11"><span class="cite-bracket">[</span>11<span class="cite-bracket">]</span></a></sup></li> <li><a href="/wiki/Piet_(programming_language)" class="mw-redirect" title="Piet (programming language)">Piet</a></li> <li><a href="/wiki/Shakespeare_(programming_language)" class="mw-redirect" title="Shakespeare (programming language)">Shakespeare</a></li> <li><a href="/wiki/Whitespace_(programming_language)" title="Whitespace (programming language)">Whitespace</a></li></ul> </div> <div class="mw-heading mw-heading2"><h2 id="Extension_languages">Extension languages</h2><span class="mw-editsection"><span class="mw-editsection-bracket">[</span><a href="/w/index.php?title=List_of_programming_languages_by_type&action=edit&section=23" title="Edit section: Extension languages"><span>edit</span></a><span class="mw-editsection-bracket">]</span></span></div> <p><a href="/wiki/Extension_programming_language" class="mw-redirect" title="Extension programming language">Extension programming languages</a> are languages embedded into another program and used to harness its features in extension scripts. </p> <link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r1184024115"><div class="div-col"> <ul><li><a href="/wiki/AutoLISP" title="AutoLISP">AutoLISP</a> (specific to <a href="/wiki/AutoCAD" title="AutoCAD">AutoCAD</a>)</li> <li><a href="/wiki/BeanShell" title="BeanShell">BeanShell</a></li> <li><a href="/wiki/Cakewalk_(sequencer)#Features" title="Cakewalk (sequencer)">CAL</a></li> <li><a href="/wiki/C/AL" title="C/AL">C/AL</a> (C/SIDE)</li> <li><a href="/wiki/GNU_Guile" title="GNU Guile">Guile</a></li> <li><a href="/wiki/Emacs_Lisp" title="Emacs Lisp">Emacs Lisp</a></li> <li><a href="/wiki/JavaScript" title="JavaScript">JavaScript</a> and some dialects, e.g., <a href="/wiki/JScript" title="JScript">JScript</a></li> <li><a href="/wiki/Lua_(programming_language)" title="Lua (programming language)">Lua</a> (embedded in many games)</li> <li><a href="/wiki/OpenCL" title="OpenCL">OpenCL</a> (extension of C and C++ to use the GPU and parallel extensions of the CPU)</li> <li><a href="/wiki/OptimJ" title="OptimJ">OptimJ</a> (extension of Java with language support for writing optimization models and powerful abstractions for bulk data processing)</li> <li><a href="/wiki/Perl" title="Perl">Perl</a></li> <li><a href="/wiki/Pike_(programming_language)" title="Pike (programming language)">Pike</a></li> <li><a href="/wiki/PowerShell" title="PowerShell">PowerShell</a></li> <li><a href="/wiki/Python_(programming_language)" title="Python (programming language)">Python</a> (embedded in Maya, Blender, and other 3-D animation packages)</li> <li><a href="/wiki/Rexx" title="Rexx">Rexx</a></li> <li><a href="/wiki/Ring_(programming_language)" title="Ring (programming language)">Ring</a></li> <li><a href="/wiki/Ruby_(programming_language)" title="Ruby (programming language)">Ruby</a> (Google SketchUp)</li> <li><a href="/wiki/S-Lang" title="S-Lang">S-Lang</a></li> <li><a href="/wiki/SQL" title="SQL">SQL</a></li> <li><a href="/wiki/Squirrel_(programming_language)" title="Squirrel (programming language)">Squirrel</a></li> <li><a href="/wiki/Tcl" title="Tcl">Tcl</a></li> <li><a href="/wiki/Vim_script" class="mw-redirect" title="Vim script">Vim script</a> (vim)</li> <li><a href="/wiki/Visual_Basic_for_Applications" title="Visual Basic for Applications">Visual Basic for Applications</a> (VBA)</li></ul> </div> <div class="mw-heading mw-heading2"><h2 id="Fourth-generation_languages">Fourth-generation languages</h2><span class="mw-editsection"><span class="mw-editsection-bracket">[</span><a href="/w/index.php?title=List_of_programming_languages_by_type&action=edit&section=24" title="Edit section: Fourth-generation languages"><span>edit</span></a><span class="mw-editsection-bracket">]</span></span></div> <link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r1236090951"><div role="note" class="hatnote navigation-not-searchable">Main category: <a href="/wiki/Category:Fourth-generation_programming_languages" title="Category:Fourth-generation programming languages">Fourth-generation programming languages</a></div> <p><a href="/wiki/Fourth-generation_programming_language" title="Fourth-generation programming language">Fourth-generation programming languages</a> are high-level languages built around database systems. They are generally used in commercial environments. </p> <link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r1184024115"><div class="div-col"> <ul><li><a href="/wiki/1C:Enterprise_programming_language" class="mw-redirect" title="1C:Enterprise programming language">1C:Enterprise programming language</a></li> <li><a href="/wiki/ABAP" title="ABAP">ABAP</a></li> <li><a href="/wiki/CorVision" title="CorVision">CorVision</a></li> <li><a href="/wiki/Computer_Sciences_Corporation" title="Computer Sciences Corporation">CSC</a>'s GraphTalk</li> <li><a href="/wiki/DATACOM/DB" title="DATACOM/DB">CA-IDEAL</a> (Interactive Development Environment for an Application Life) for use with <a href="/wiki/DATACOM/DB" title="DATACOM/DB">CA-DATACOM/DB</a></li> <li><a href="/wiki/Easytrieve" title="Easytrieve">Easytrieve</a> report generator (now CA-Easytrieve Plus)</li> <li><a href="/wiki/FOCUS" title="FOCUS">FOCUS</a></li> <li><a href="/wiki/IBM_Informix-4GL" title="IBM Informix-4GL">IBM Informix-4GL</a></li> <li><a href="/wiki/LINC_4GL" title="LINC 4GL">LINC 4GL</a></li> <li><a href="/wiki/LiveCode" title="LiveCode">LiveCode</a> (Not based on a database; still, the goal is to work at a higher level of abstraction than 3GLs.)</li> <li><a href="/wiki/MAPPER" title="MAPPER">MAPPER</a> (<a href="/wiki/Unisys" title="Unisys">Unisys/Sperry</a>) – now part of BIS</li> <li><a href="/wiki/MARK_IV_(software)" class="mw-redirect" title="MARK IV (software)">MARK-IV</a> (<a href="/wiki/Sterling_Software" title="Sterling Software">Sterling/Informatics</a>) now VISION:BUILDER of CA</li> <li><a href="/wiki/NATURAL" class="mw-redirect" title="NATURAL">NATURAL</a></li> <li><a href="/wiki/Progress_4GL" class="mw-redirect" title="Progress 4GL">Progress 4GL</a></li> <li><a href="/wiki/PV-Wave" title="PV-Wave">PV-Wave</a></li> <li><a href="/wiki/RETRIEVE" title="RETRIEVE">RETRIEVE</a></li> <li><a href="/wiki/SAS_System" class="mw-redirect" title="SAS System">SAS</a></li> <li><a href="/wiki/SQL" title="SQL">SQL</a></li> <li><a href="/wiki/Ubercode" title="Ubercode">Ubercode</a> (VHLL, or Very-High-Level Language)</li> <li><a href="/wiki/Uniface_(programming_language)" title="Uniface (programming language)">Uniface</a></li> <li><a href="/wiki/Visual_DataFlex" class="mw-redirect" title="Visual DataFlex">Visual DataFlex</a></li> <li><a href="/wiki/Visual_FoxPro" title="Visual FoxPro">Visual FoxPro</a></li> <li><a href="/wiki/XBase" title="XBase">xBase</a></li></ul> </div> <div class="mw-heading mw-heading2"><h2 id="Functional_languages">Functional languages</h2><span class="mw-editsection"><span class="mw-editsection-bracket">[</span><a href="/w/index.php?title=List_of_programming_languages_by_type&action=edit&section=25" title="Edit section: Functional languages"><span>edit</span></a><span class="mw-editsection-bracket">]</span></span></div> <link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r1236090951"><div role="note" class="hatnote navigation-not-searchable">Main category: <a href="/wiki/Category:Functional_languages" title="Category:Functional languages">Functional languages</a></div> <p><a href="/wiki/Functional_programming" title="Functional programming">Functional programming</a> languages define programs and subroutines as mathematical functions and treat them as first-class. Many so-called functional languages are "impure", containing imperative features. Many functional languages are tied to mathematical calculation tools. Functional languages include: </p> <div class="mw-heading mw-heading3"><h3 id="Pure">Pure</h3><span class="mw-editsection"><span class="mw-editsection-bracket">[</span><a href="/w/index.php?title=List_of_programming_languages_by_type&action=edit&section=26" title="Edit section: Pure"><span>edit</span></a><span class="mw-editsection-bracket">]</span></span></div> <link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r1184024115"><div class="div-col" style="column-width: 10em;"> <ul><li><a href="/wiki/Agda_(programming_language)" title="Agda (programming language)">Agda</a></li> <li><a href="/wiki/Clean_(programming_language)" title="Clean (programming language)">Clean</a></li> <li><a href="/wiki/Coq_(software)" title="Coq (software)">Coq</a> (Gallina)</li> <li><a href="/wiki/Cuneiform_(programming_language)" title="Cuneiform (programming language)">Cuneiform</a></li> <li><a href="/wiki/Curry_(programming_language)" title="Curry (programming language)">Curry</a></li> <li><a href="/wiki/Elm_(programming_language)" title="Elm (programming language)">Elm</a></li> <li><a href="/wiki/Futhark_(programming_language)" title="Futhark (programming language)">Futhark</a></li> <li><a href="/wiki/Haskell" title="Haskell">Haskell</a></li> <li><a href="/wiki/Hope_(programming_language)" title="Hope (programming language)">Hope</a></li> <li><a href="/wiki/Idris_(programming_language)" title="Idris (programming language)">Idris</a></li> <li><a href="/wiki/Joy_(programming_language)" title="Joy (programming language)">Joy</a></li> <li><a href="/wiki/Jq_(programming_language)" title="Jq (programming language)">jq</a> (but functions are 2nd class)</li> <li><a href="/wiki/Lean_(proof_assistant)" title="Lean (proof assistant)">Lean</a></li> <li><a href="/wiki/Mercury_(programming_language)" title="Mercury (programming language)">Mercury</a></li> <li><a href="/wiki/Miranda_(programming_language)" title="Miranda (programming language)">Miranda</a></li> <li><a href="/wiki/Pure_(programming_language)" title="Pure (programming language)">Pure</a></li> <li><a href="/wiki/PureScript" title="PureScript">PureScript</a></li> <li><a href="/wiki/Ur_(programming_language)" title="Ur (programming language)">Ur</a></li> <li><a href="/wiki/Kent_Recursive_Calculator" title="Kent Recursive Calculator">KRC</a></li> <li><a href="/wiki/SAC_programming_language" title="SAC programming language">SAC</a></li> <li><a href="/wiki/SASL_(programming_language)" title="SASL (programming language)">SASL</a></li> <li><a href="/wiki/SequenceL" title="SequenceL">SequenceL</a></li></ul> </div> <div class="mw-heading mw-heading3"><h3 id="Impure">Impure</h3><span class="mw-editsection"><span class="mw-editsection-bracket">[</span><a href="/w/index.php?title=List_of_programming_languages_by_type&action=edit&section=27" title="Edit section: Impure"><span>edit</span></a><span class="mw-editsection-bracket">]</span></span></div> <link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r1184024115"><div class="div-col" style="column-width: 15em;"> <ul><li><a href="/wiki/APL_(programming_language)" title="APL (programming language)">APL</a></li> <li><a href="/wiki/ATS_(programming_language)" title="ATS (programming language)">ATS</a></li> <li><a href="/wiki/CAL_(programming_language)" title="CAL (programming language)">CAL</a></li> <li><a href="/wiki/C%2B%2B" title="C++">C++</a> (since <a href="/wiki/C%2B%2B11" title="C++11">C++11</a>)</li> <li><a href="/wiki/C_Sharp_(programming_language)" title="C Sharp (programming language)">C#</a></li> <li><a href="/wiki/VB.NET" class="mw-redirect" title="VB.NET">VB.NET</a></li> <li><a href="/wiki/Ceylon_(programming_language)" title="Ceylon (programming language)">Ceylon</a></li> <li><a href="/wiki/Curl_(programming_language)" title="Curl (programming language)">Curl</a></li> <li><a href="/wiki/D_(programming_language)" title="D (programming language)">D</a></li> <li><a href="/wiki/Dart_(programming_language)" title="Dart (programming language)">Dart</a></li> <li><a href="/wiki/ECMAScript" title="ECMAScript">ECMAScript</a> <ul><li><a href="/wiki/ActionScript" title="ActionScript">ActionScript</a></li> <li><a href="/wiki/ECMAScript_for_XML" title="ECMAScript for XML">ECMAScript for XML</a></li> <li><a href="/wiki/JavaScript" title="JavaScript">JavaScript</a></li> <li><a href="/wiki/JScript" title="JScript">JScript</a></li> <li><a href="/wiki/Source_(programming_language)" title="Source (programming language)">Source</a></li> <li><a href="/wiki/ArkTS" title="ArkTS">ArkTS</a></li> <li><a href="/wiki/TypeScript" title="TypeScript">TypeScript</a></li></ul></li> <li><a href="/wiki/Erlang_(programming_language)" title="Erlang (programming language)">Erlang</a> <ul><li><a href="/wiki/Elixir_(programming_language)" title="Elixir (programming language)">Elixir</a></li> <li><a href="/wiki/Gleam_(programming_language)" title="Gleam (programming language)">Gleam</a></li> <li><a href="/wiki/LFE_(programming_language)" title="LFE (programming language)">LFE</a></li></ul></li> <li><a href="/w/index.php?title=Fexl_(programming_language)&action=edit&redlink=1" class="new" title="Fexl (programming language) (page does not exist)">Fexl</a></li> <li><a href="/wiki/Flix_(programming_language)" title="Flix (programming language)">Flix</a></li> <li><a href="/wiki/LabVIEW" title="LabVIEW">G (used in LabVIEW)</a></li> <li><a href="/wiki/Groovy_(programming_language)" class="mw-redirect" title="Groovy (programming language)">Groovy</a></li> <li><a href="/wiki/Hop_(software)" title="Hop (software)">Hop</a></li> <li><a href="/wiki/J_(programming_language)" title="J (programming language)">J</a></li> <li><a href="/wiki/Java_(programming_language)" title="Java (programming language)">Java (since version 8)</a></li> <li><a href="/wiki/Julia_(programming_language)" title="Julia (programming language)">Julia</a></li> <li><a href="/wiki/Kotlin_(programming_language)" title="Kotlin (programming language)">Kotlin</a></li> <li><a href="/wiki/Lisp_(programming_language)" title="Lisp (programming language)">Lisp</a> <ul><li><a href="/wiki/Clojure" title="Clojure">Clojure</a></li> <li><a href="/wiki/Common_Lisp" title="Common Lisp">Common Lisp</a></li> <li><a href="/wiki/Dylan_(programming_language)" title="Dylan (programming language)">Dylan</a></li> <li><a href="/wiki/Emacs_Lisp" title="Emacs Lisp">Emacs Lisp</a></li> <li><a href="/wiki/LFE_(programming_language)" title="LFE (programming language)">LFE</a></li> <li><a href="/wiki/Little_b_(programming_language)" title="Little b (programming language)">Little b</a></li> <li><a href="/wiki/Logo_(programming_language)" title="Logo (programming language)">Logo</a></li> <li><a href="/wiki/Racket_(programming_language)" title="Racket (programming language)">Racket</a></li> <li><a href="/wiki/Scheme_(programming_language)" title="Scheme (programming language)">Scheme</a> <ul><li><a href="/wiki/GNU_Guile" title="GNU Guile">Guile</a></li></ul></li> <li><a href="/wiki/Tea_(programming_language)" title="Tea (programming language)">Tea</a></li></ul></li> <li><a href="/wiki/ML_(programming_language)" title="ML (programming language)">ML</a> <ul><li><a href="/wiki/Standard_ML" title="Standard ML">Standard ML</a> (SML) <ul><li><a href="/wiki/Alice_(programming_language)" title="Alice (programming language)">Alice</a></li></ul></li> <li><a href="/wiki/OCaml" title="OCaml">OCaml</a></li> <li><a href="/wiki/F_Sharp_(programming_language)" title="F Sharp (programming language)">F#</a></li></ul></li> <li><a href="/wiki/Nemerle" title="Nemerle">Nemerle</a></li> <li><a href="/wiki/Nim_(programming_language)" title="Nim (programming language)">Nim</a></li> <li><a href="/wiki/Opal_(programming_language)" title="Opal (programming language)">Opal</a></li> <li><a href="/wiki/OPS5" title="OPS5">OPS5</a></li> <li><a href="/wiki/Perl" title="Perl">Perl</a></li> <li><a href="/wiki/PHP" title="PHP">PHP</a></li> <li><a href="/wiki/PL/pgSQL" title="PL/pgSQL">PL/pgSQL</a></li> <li><a href="/wiki/Python_(programming_language)" title="Python (programming language)">Python</a></li> <li><a href="/wiki/Q_(equational_programming_language)" class="mw-redirect" title="Q (equational programming language)">Q (equational programming language)</a></li> <li><a href="/wiki/Q_(programming_language_from_Kx_Systems)" title="Q (programming language from Kx Systems)">Q (programming language from Kx Systems)</a></li> <li><a href="/wiki/R_(programming_language)" title="R (programming language)">R</a></li> <li><a href="/wiki/Raku_(programming_language)" title="Raku (programming language)">Raku</a></li> <li><a href="/wiki/Rebol" title="Rebol">Rebol</a></li> <li><a href="/wiki/Red_(programming_language)" title="Red (programming language)">Red</a></li> <li><a href="/wiki/Ring_(programming_language)" title="Ring (programming language)">Ring</a></li> <li><a href="/wiki/Ruby_(programming_language)" title="Ruby (programming language)">Ruby</a></li> <li><a href="/wiki/REFAL" class="mw-redirect" title="REFAL">REFAL</a></li> <li><a href="/wiki/Rust_(programming_language)" title="Rust (programming language)">Rust</a></li> <li><a href="/wiki/Scala_(programming_language)" title="Scala (programming language)">Scala</a></li> <li><a href="/wiki/Swift_(programming_language)" title="Swift (programming language)">Swift</a></li> <li><a href="/wiki/Spreadsheet" title="Spreadsheet">Spreadsheets</a></li> <li><a href="/wiki/V_(programming_language)" title="V (programming language)">V (Vlang)</a></li> <li><a href="/wiki/Tcl" title="Tcl">Tcl</a></li> <li><a href="/wiki/Wolfram_Mathematica" title="Wolfram Mathematica">Wolfram Mathematica</a> (<a href="/wiki/Wolfram_language" class="mw-redirect" title="Wolfram language">Wolfram language</a>)</li></ul> </div> <div class="mw-heading mw-heading2"><h2 id="Hardware_description_languages">Hardware description languages</h2><span class="mw-editsection"><span class="mw-editsection-bracket">[</span><a href="/w/index.php?title=List_of_programming_languages_by_type&action=edit&section=28" title="Edit section: Hardware description languages"><span>edit</span></a><span class="mw-editsection-bracket">]</span></span></div> <link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r1236090951"><div role="note" class="hatnote navigation-not-searchable">For a more comprehensive list, see <a href="/wiki/List_of_hardware_description_languages" class="mw-redirect" title="List of hardware description languages">List of hardware description languages</a>.</div> <p>In electronics, a <a href="/wiki/Hardware_description_language" title="Hardware description language">hardware description language</a> (HDL) is a specialized computer language used to describe the structure, design, and operation of electronic circuits, and most commonly, digital logic circuits. The two most widely used and well-supported HDL varieties used in industry are <a href="/wiki/Verilog" title="Verilog">Verilog</a> and <a href="/wiki/VHDL" title="VHDL">VHDL</a>. Hardware description languages include: </p> <div class="mw-heading mw-heading3"><h3 id="HDLs_for_analog_circuit_design">HDLs for analog circuit design</h3><span class="mw-editsection"><span class="mw-editsection-bracket">[</span><a href="/w/index.php?title=List_of_programming_languages_by_type&action=edit&section=29" title="Edit section: HDLs for analog circuit design"><span>edit</span></a><span class="mw-editsection-bracket">]</span></span></div> <ul><li><a href="/wiki/Verilog-AMS" title="Verilog-AMS">Verilog-AMS</a> (Verilog for Analog and Mixed-Signal)</li> <li><a href="/wiki/VHDL-AMS" title="VHDL-AMS">VHDL-AMS</a> (VHDL with Analog/Mixed-Signal extension)</li></ul> <div class="mw-heading mw-heading3"><h3 id="HDLs_for_digital_circuit_design">HDLs for digital circuit design</h3><span class="mw-editsection"><span class="mw-editsection-bracket">[</span><a href="/w/index.php?title=List_of_programming_languages_by_type&action=edit&section=30" title="Edit section: HDLs for digital circuit design"><span>edit</span></a><span class="mw-editsection-bracket">]</span></span></div> <link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r1184024115"><div class="div-col"> <ul><li><a href="/wiki/Advanced_Boolean_Expression_Language" title="Advanced Boolean Expression Language">Advanced Boolean Expression Language</a></li> <li><a href="/wiki/Altera_Hardware_Description_Language" title="Altera Hardware Description Language">Altera Hardware Description Language</a></li> <li><a href="/wiki/Bluespec" title="Bluespec">Bluespec</a></li> <li><a href="/wiki/Confluence" title="Confluence">Confluence</a></li> <li><a href="/wiki/ELLA_(programming_language)" title="ELLA (programming language)">ELLA</a></li> <li><a href="/wiki/Handel-C" title="Handel-C">Handel-C</a></li> <li><a href="/wiki/Impulse_C" title="Impulse C">Impulse C</a></li> <li><a href="/wiki/Lola_(computing)" title="Lola (computing)">Lola</a></li> <li><a href="/wiki/MyHDL" title="MyHDL">MyHDL</a></li> <li><a href="/wiki/PALASM" title="PALASM">PALASM</a></li> <li><a href="/wiki/Ruby_(hardware_description_language)" title="Ruby (hardware description language)">Ruby (hardware description language)</a></li> <li><a href="/wiki/SystemC" title="SystemC">SystemC</a></li> <li><a href="/wiki/SystemVerilog" title="SystemVerilog">SystemVerilog</a></li> <li><a href="/wiki/Verilog" title="Verilog">Verilog</a></li> <li><a href="/wiki/VHDL" title="VHDL">VHDL</a> (VHSIC HDL)</li></ul> </div> <div class="mw-heading mw-heading2"><h2 id="Imperative_languages">Imperative languages</h2><span class="mw-editsection"><span class="mw-editsection-bracket">[</span><a href="/w/index.php?title=List_of_programming_languages_by_type&action=edit&section=31" title="Edit section: Imperative languages"><span>edit</span></a><span class="mw-editsection-bracket">]</span></span></div> <p>Imperative programming languages may be multi-paradigm and appear in other classifications. Here is a list of programming languages that follow the <a href="/wiki/Imperative_paradigm" class="mw-redirect" title="Imperative paradigm">imperative paradigm</a>: </p> <link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r1184024115"><div class="div-col" style="column-width: 10em;"> <ul><li><a href="/wiki/Ada_(programming_language)" title="Ada (programming language)">Ada</a></li> <li><a href="/wiki/ALGOL_58" title="ALGOL 58">ALGOL 58</a> <ul><li><a href="/wiki/JOVIAL" title="JOVIAL">JOVIAL</a></li> <li><a href="/wiki/NELIAC" title="NELIAC">NELIAC</a></li></ul></li> <li><a href="/wiki/ALGOL_60" title="ALGOL 60">ALGOL 60</a> (very influential language design)</li> <li><a href="/wiki/ALGOL_68" title="ALGOL 68">ALGOL 68</a></li> <li><a href="/wiki/BASIC" title="BASIC">BASIC</a></li> <li><a href="/wiki/C_(programming_language)" title="C (programming language)">C</a></li> <li><a href="/wiki/C%2B%2B" title="C++">C++</a></li> <li><a href="/wiki/C_Sharp_(programming_language)" title="C Sharp (programming language)">C#</a></li> <li><a href="/wiki/Ceylon_(programming_language)" title="Ceylon (programming language)">Ceylon</a></li> <li><a href="/wiki/CHILL" title="CHILL">CHILL</a></li> <li><a href="/wiki/COBOL" title="COBOL">COBOL</a></li> <li><a href="/wiki/D_(programming_language)" title="D (programming language)">D</a></li> <li><a href="/wiki/Dart_(programming_language)" title="Dart (programming language)">Dart</a></li> <li><a href="/wiki/ECMAScript" title="ECMAScript">ECMAScript</a> <ul><li><a href="/wiki/ActionScript" title="ActionScript">ActionScript</a></li> <li><a href="/wiki/ECMAScript_for_XML" title="ECMAScript for XML">ECMAScript for XML</a></li> <li><a href="/wiki/JavaScript" title="JavaScript">JavaScript</a></li> <li><a href="/wiki/JScript" title="JScript">JScript</a></li> <li><a href="/wiki/Source_(programming_language)" title="Source (programming language)">Source</a></li></ul></li> <li><a href="/wiki/FORTRAN" class="mw-redirect" title="FORTRAN">FORTRAN</a></li> <li><a href="/wiki/GAUSS_(software)" title="GAUSS (software)">GAUSS</a></li> <li><a href="/wiki/Go_(programming_language)" title="Go (programming language)">Go</a></li> <li><a href="/wiki/Groovy_(programming_language)" class="mw-redirect" title="Groovy (programming language)">Groovy</a></li> <li><a href="/wiki/Icon_(programming_language)" title="Icon (programming language)">Icon</a></li> <li><a href="/wiki/Java_(programming_language)" title="Java (programming language)">Java</a></li> <li><a href="/wiki/Julia_(programming_language)" title="Julia (programming language)">Julia</a></li> <li><a href="/wiki/Lua_(programming_language)" title="Lua (programming language)">Lua</a></li> <li><a href="/wiki/MATLAB" title="MATLAB">MATLAB</a></li> <li><a href="/wiki/Machine_code" title="Machine code">Machine languages</a></li> <li><a href="/wiki/Modula-2" title="Modula-2">Modula-2</a>, <a href="/wiki/Modula-3" title="Modula-3">Modula-3</a></li> <li><a href="/wiki/MUMPS" title="MUMPS">MUMPS</a></li> <li><a href="/wiki/Nim_(programming_language)" title="Nim (programming language)">Nim</a></li> <li><a href="/wiki/OCaml" title="OCaml">OCaml</a></li> <li><a href="/wiki/Oberon_(programming_language)" title="Oberon (programming language)">Oberon</a></li> <li><a href="/wiki/Object_Pascal" title="Object Pascal">Object Pascal</a></li> <li><a href="/wiki/Object_REXX" title="Object REXX">Open Object Rexx</a> (ooRexx)</li> <li><a href="/wiki/Open_Programming_Language" title="Open Programming Language">Open Programming Language</a> (OPL)</li> <li><a href="/wiki/OpenEdge_Advanced_Business_Language" title="OpenEdge Advanced Business Language">OpenEdge Advanced Business Language</a> (ABL)</li> <li><a href="/wiki/Pascal_(programming_language)" title="Pascal (programming language)">Pascal</a></li> <li><a href="/wiki/Perl" title="Perl">Perl</a></li> <li><a href="/wiki/PHP" title="PHP">PHP</a></li> <li><a href="/wiki/PL/I" title="PL/I">PL/I</a></li> <li><a href="/wiki/IBM_PL/S" title="IBM PL/S">PL/S</a></li> <li><a href="/wiki/PowerShell" title="PowerShell">PowerShell</a></li> <li><a href="/wiki/PROSE_modeling_language" title="PROSE modeling language">PROSE</a></li> <li><a href="/wiki/Python_(programming_language)" title="Python (programming language)">Python</a></li> <li><a href="/wiki/Raku_(programming_language)" title="Raku (programming language)">Raku</a></li> <li><a href="/wiki/Rexx" title="Rexx">Rexx</a></li> <li><a href="/wiki/Ring_(programming_language)" title="Ring (programming language)">Ring</a></li> <li><a href="/wiki/Ruby_(programming_language)" title="Ruby (programming language)">Ruby</a></li> <li><a href="/wiki/Rust_(programming_language)" title="Rust (programming language)">Rust</a></li> <li><a href="/wiki/SETL" title="SETL">SETL</a></li> <li><a href="/wiki/Speakeasy_(computational_environment)" title="Speakeasy (computational environment)">Speakeasy</a></li> <li><a href="/wiki/Swift_(programming_language)" title="Swift (programming language)">Swift</a></li> <li><a href="/wiki/Tcl" title="Tcl">Tcl</a></li> <li><a href="/wiki/V_(programming_language)" title="V (programming language)">V (Vlang)</a></li> <li><a href="/wiki/Wolfram_Mathematica" title="Wolfram Mathematica">Wolfram Mathematica</a> (<a href="/wiki/Wolfram_language" class="mw-redirect" title="Wolfram language">Wolfram language</a>)</li></ul> </div> <div class="mw-heading mw-heading2"><h2 id="Interactive_mode_languages">Interactive mode languages</h2><span class="mw-editsection"><span class="mw-editsection-bracket">[</span><a href="/w/index.php?title=List_of_programming_languages_by_type&action=edit&section=32" title="Edit section: Interactive mode languages"><span>edit</span></a><span class="mw-editsection-bracket">]</span></span></div> <p>Known as <a href="/wiki/Read%E2%80%93eval%E2%80%93print_loop" title="Read–eval–print loop">REPL</a> - Interactive mode languages act as a kind of shell: expressions or statements can be entered one at a time, and the result of their evaluation seen immediately. </p> <link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r1184024115"><div class="div-col" style="column-width: 15em;"> <ul><li><a href="/wiki/APL_(programming_language)" title="APL (programming language)">APL</a></li> <li><a href="/wiki/BASIC" title="BASIC">BASIC</a> (some dialects)</li> <li><a href="/wiki/Clojure" title="Clojure">Clojure</a></li> <li><a href="/wiki/Common_Lisp" title="Common Lisp">Common Lisp</a></li> <li><a href="/wiki/Dart_(programming_language)" title="Dart (programming language)">Dart</a> (with Observatory or Dartium's developer tools)</li> <li><a href="/wiki/ECMAScript" title="ECMAScript">ECMAScript</a> <ul><li><a href="/wiki/ActionScript" title="ActionScript">ActionScript</a></li> <li><a href="/wiki/ECMAScript_for_XML" title="ECMAScript for XML">ECMAScript for XML</a></li> <li><a href="/wiki/JavaScript" title="JavaScript">JavaScript</a></li> <li><a href="/wiki/JScript" title="JScript">JScript</a></li> <li><a href="/wiki/Source_(programming_language)" title="Source (programming language)">Source</a></li> <li><a href="/wiki/ArkTS" title="ArkTS">ArkTS</a></li></ul></li> <li><a href="/wiki/Erlang_(programming_language)" title="Erlang (programming language)">Erlang</a></li> <li><a href="/wiki/Elixir_(programming_language)" title="Elixir (programming language)">Elixir</a> (with iex)</li> <li><a href="/wiki/F_Sharp_(programming_language)" title="F Sharp (programming language)">F#</a></li> <li><a href="/wiki/Fril" title="Fril">Fril</a></li> <li><a href="/wiki/GAUSS_(software)" title="GAUSS (software)">GAUSS</a></li> <li><a href="/wiki/Groovy_(programming_language)" class="mw-redirect" title="Groovy (programming language)">Groovy</a></li> <li><a href="/wiki/GNU_Guile" title="GNU Guile">Guile</a></li> <li><a href="/wiki/Haskell" title="Haskell">Haskell</a> (with the GHCi or Hugs interpreter)</li> <li><a href="/wiki/IDL_(programming_language)" title="IDL (programming language)">IDL</a></li> <li><a href="/wiki/J_(programming_language)" title="J (programming language)">J</a></li> <li><a href="/wiki/Java_(programming_language)" title="Java (programming language)">Java</a> (since version 9)</li> <li><a href="/wiki/Julia_(programming_language)" title="Julia (programming language)">Julia</a></li> <li><a href="/wiki/Lua_(programming_language)" title="Lua (programming language)">Lua</a></li> <li><a href="/wiki/MUMPS" title="MUMPS">MUMPS</a> (an ANSI standard general-purpose language)</li> <li><a href="/wiki/Maple_(software)" title="Maple (software)">Maple</a></li> <li><a href="/wiki/MATLAB" title="MATLAB">MATLAB</a></li> <li><a href="/wiki/ML_(programming_language)" title="ML (programming language)">ML</a></li> <li><a href="/wiki/OCaml" title="OCaml">OCaml</a></li> <li><a href="/wiki/Perl" title="Perl">Perl</a></li> <li><a href="/wiki/PHP" title="PHP">PHP</a></li> <li><a href="/wiki/Pike_(programming_language)" title="Pike (programming language)">Pike</a></li> <li><a href="/wiki/PostScript" title="PostScript">PostScript</a></li> <li><a href="/wiki/PowerShell" title="PowerShell">PowerShell</a> (<a href="/wiki/.NET" title=".NET">.NET</a>-based CLI)</li> <li><a href="/wiki/Prolog" title="Prolog">Prolog</a></li> <li><a href="/wiki/Python_(programming_language)" title="Python (programming language)">Python</a></li> <li><a href="/wiki/PROSE_modeling_language" title="PROSE modeling language">PROSE</a></li> <li><a href="/wiki/R_(programming_language)" title="R (programming language)">R</a></li> <li><a href="/wiki/Raku_(programming_language)" title="Raku (programming language)">Raku</a></li> <li><a href="/wiki/Rebol" title="Rebol">Rebol</a></li> <li><a href="/wiki/Red_(programming_language)" title="Red (programming language)">Red</a></li> <li><a href="/wiki/Rexx" title="Rexx">Rexx</a></li> <li><a href="/wiki/Ring_(programming_language)" title="Ring (programming language)">Ring</a></li> <li><a href="/wiki/Ruby_(programming_language)" title="Ruby (programming language)">Ruby</a> (with <a href="/wiki/Interactive_Ruby_Shell" class="mw-redirect" title="Interactive Ruby Shell">IRB</a>)</li> <li><a href="/wiki/Scala_(programming_language)" title="Scala (programming language)">Scala</a></li> <li><a href="/wiki/Scheme_(programming_language)" title="Scheme (programming language)">Scheme</a></li> <li><a href="/wiki/Smalltalk" title="Smalltalk">Smalltalk</a> (anywhere in a Smalltalk environment)</li> <li><a href="/wiki/S-Lang" title="S-Lang">S-Lang</a> (with the S-Lang shell, slsh)</li> <li><a href="/wiki/Speakeasy_(computational_environment)" title="Speakeasy (computational environment)">Speakeasy</a></li> <li><a href="/wiki/Swift_(programming_language)" title="Swift (programming language)">Swift</a></li> <li><a href="/wiki/Tcl" title="Tcl">Tcl</a> (with the Tcl shell, tclsh)</li> <li><a href="/wiki/Unix_shell" title="Unix shell">Unix shell</a></li> <li><a href="/wiki/Visual_FoxPro" title="Visual FoxPro">Visual FoxPro</a></li> <li><a href="/wiki/Wolfram_Mathematica" title="Wolfram Mathematica">Wolfram Mathematica</a> (<a href="/wiki/Wolfram_language" class="mw-redirect" title="Wolfram language">Wolfram language</a>)</li></ul> </div> <div class="mw-heading mw-heading2"><h2 id="Interpreted_languages">Interpreted languages</h2><span class="mw-editsection"><span class="mw-editsection-bracket">[</span><a href="/w/index.php?title=List_of_programming_languages_by_type&action=edit&section=33" title="Edit section: Interpreted languages"><span>edit</span></a><span class="mw-editsection-bracket">]</span></span></div> <p><a href="/wiki/Interpreted_language" class="mw-redirect" title="Interpreted language">Interpreted languages</a> are programming languages in which programs may be executed from source code form, by an interpreter. Theoretically, any language can be compiled or interpreted, so the term <i>interpreted language</i> generally refers to languages that are usually interpreted rather than compiled. </p> <link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r1184024115"><div class="div-col" style="column-width: 15em;"> <ul><li><a href="/wiki/Apache_Ant" title="Apache Ant">Ant</a></li> <li><a href="/wiki/APL_(programming_language)" title="APL (programming language)">APL</a></li> <li><a href="/wiki/AutoHotkey" title="AutoHotkey">AutoHotkey</a> scripting language</li> <li><a href="/wiki/AutoIt" title="AutoIt">AutoIt</a> scripting language</li> <li><a href="/wiki/BASIC" title="BASIC">BASIC</a> (some dialects)</li> <li><a href="/wiki/Programming_Language_for_Business" title="Programming Language for Business">Programming Language for Business</a> (PL/B, formerly DATABUS, later versions added optional compiling)</li> <li><a href="/wiki/Eiffel_(programming_language)" title="Eiffel (programming language)">Eiffel</a> (via <i>Melting Ice Technology</i> in <a href="/wiki/EiffelStudio" title="EiffelStudio">EiffelStudio</a>)</li> <li><a href="/wiki/Emacs_Lisp" title="Emacs Lisp">Emacs Lisp</a></li> <li><a href="/wiki/FOCAL_(programming_language)" title="FOCAL (programming language)">FOCAL</a></li> <li><a href="/wiki/GameMaker_Studio" class="mw-redirect" title="GameMaker Studio">GameMaker Language</a></li> <li><a href="/wiki/Groovy_(programming_language)" class="mw-redirect" title="Groovy (programming language)">Groovy</a></li> <li><a href="/wiki/J_(programming_language)" title="J (programming language)">J</a></li> <li><a href="/wiki/Jq_(programming_language)" title="Jq (programming language)">jq</a></li> <li><a href="/wiki/Julia_(programming_language)" title="Julia (programming language)">Julia</a> (compiled on the fly to <a href="/wiki/Machine_code" title="Machine code">machine code</a>, by default, interpreting also available)</li> <li><a href="/wiki/JavaScript" title="JavaScript">JavaScript</a></li> <li><a href="/wiki/Lisp_(programming_language)" title="Lisp (programming language)">Lisp</a> (early versions, pre-1962, and some experimental ones; production Lisp systems are compilers, but many of them still provide an interpreter if needed)</li> <li><a href="/wiki/LPC_(programming_language)" class="mw-redirect" title="LPC (programming language)">LPC</a></li> <li><a href="/wiki/Lua_(programming_language)" title="Lua (programming language)">Lua</a></li> <li><a href="/wiki/MUMPS" title="MUMPS">MUMPS</a> (an ANSI standard general-purpose language)</li> <li><a href="/wiki/Maple_(software)" title="Maple (software)">Maple</a></li> <li><a href="/wiki/MATLAB" title="MATLAB">MATLAB</a></li> <li><a href="/wiki/OCaml" title="OCaml">OCaml</a></li> <li><a href="/wiki/Pascal_(programming_language)" title="Pascal (programming language)">Pascal</a> (early implementations)</li> <li><a href="/wiki/PCASTL" title="PCASTL">PCASTL</a></li> <li><a href="/wiki/Perl" title="Perl">Perl</a></li> <li><a href="/wiki/PHP" title="PHP">PHP</a></li> <li><a href="/wiki/PostScript" title="PostScript">PostScript</a></li> <li><a href="/wiki/PowerShell" title="PowerShell">PowerShell</a></li> <li><a href="/wiki/PROSE_modeling_language" title="PROSE modeling language">PROSE</a></li> <li><a href="/wiki/Python_(programming_language)" title="Python (programming language)">Python</a></li> <li><a href="/wiki/Rexx" title="Rexx">Rexx</a></li> <li><a href="/wiki/R_(programming_language)" title="R (programming language)">R</a></li> <li><a href="/wiki/Raku_(programming_language)" title="Raku (programming language)">Raku</a></li> <li><a href="/wiki/Rebol" title="Rebol">Rebol</a></li> <li><a href="/wiki/Red_(programming_language)" title="Red (programming language)">Red</a></li> <li><a href="/wiki/Ring_(programming_language)" title="Ring (programming language)">Ring</a></li> <li><a href="/wiki/Ruby_(programming_language)" title="Ruby (programming language)">Ruby</a></li> <li><a href="/wiki/S-Lang" title="S-Lang">S-Lang</a></li> <li><a href="/wiki/Seed7" title="Seed7">Seed7</a></li> <li><a href="/wiki/Speakeasy_(computational_environment)" title="Speakeasy (computational environment)">Speakeasy</a></li> <li><a href="/wiki/Standard_ML" title="Standard ML">Standard ML</a> (SML)</li> <li><a href="/wiki/Parallax_Propeller" title="Parallax Propeller">Spin</a></li> <li><a href="/wiki/Tcl" title="Tcl">Tcl</a></li> <li><a href="/wiki/Tea_(programming_language)" title="Tea (programming language)">Tea</a></li> <li><a href="/wiki/TorqueScript" class="mw-redirect" title="TorqueScript">TorqueScript</a></li> <li><a href="/wiki/VBScript" title="VBScript">VBScript</a></li> <li><a href="/wiki/Windows_PowerShell" class="mw-redirect" title="Windows PowerShell">Windows PowerShell</a> – <a href="/wiki/.NET" title=".NET">.NET</a>-based CLI</li> <li>Some scripting languages – <a href="#Scripting_languages">below</a></li> <li><a href="/wiki/Wolfram_Mathematica" title="Wolfram Mathematica">Wolfram Mathematica</a> (<a href="/wiki/Wolfram_language" class="mw-redirect" title="Wolfram language">Wolfram language</a>)</li></ul> </div> <div class="mw-heading mw-heading2"><h2 id="Iterative_languages">Iterative languages</h2><span class="mw-editsection"><span class="mw-editsection-bracket">[</span><a href="/w/index.php?title=List_of_programming_languages_by_type&action=edit&section=34" title="Edit section: Iterative languages"><span>edit</span></a><span class="mw-editsection-bracket">]</span></span></div> <p>Iterative languages are built around or offering <a href="/wiki/Generator_(computer_science)" class="mw-redirect" title="Generator (computer science)">generators</a>. </p> <link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r1184024115"><div class="div-col" style="column-width: 20em;"> <ul><li><a href="/wiki/Aldor" title="Aldor">Aldor</a></li> <li><a href="/wiki/Alphard_(programming_language)" title="Alphard (programming language)">Alphard</a></li> <li><a href="/wiki/Generator_(computer_programming)#C++" title="Generator (computer programming)">C++</a></li> <li><a href="/wiki/Generator_(computer_science)#C#" class="mw-redirect" title="Generator (computer science)">C#</a></li> <li><a href="/wiki/CLU_(programming_language)" title="CLU (programming language)">CLU</a></li> <li><a href="/wiki/Cobra_(programming_language)" title="Cobra (programming language)">Cobra</a></li> <li><a href="/wiki/ECMAScript" title="ECMAScript">ECMAScript</a> (ES6+)</li> <li><a href="/wiki/Eiffel_(programming_language)" title="Eiffel (programming language)">Eiffel</a>, through "agents"</li> <li><a href="/wiki/Icon_(programming_language)" title="Icon (programming language)">Icon</a></li> <li><a href="/wiki/Information_Processing_Language" title="Information Processing Language">IPL-v</a></li> <li><a href="/wiki/Jq_(programming_language)" title="Jq (programming language)">jq</a></li> <li><a href="/wiki/Julia_(programming_language)" title="Julia (programming language)">Julia</a></li> <li><a href="/wiki/Lua_(programming_language)" title="Lua (programming language)">Lua</a></li> <li><a href="/wiki/Nim_(programming_language)" title="Nim (programming language)">Nim</a></li> <li><a href="/wiki/PHP" title="PHP">PHP</a></li> <li><a href="/wiki/Python_(programming_language)" title="Python (programming language)">Python</a></li> <li><a href="/wiki/Raku_(programming_language)" title="Raku (programming language)">Raku</a><sup id="cite_ref-12" class="reference"><a href="#cite_note-12"><span class="cite-bracket">[</span>12<span class="cite-bracket">]</span></a></sup></li> <li><a href="/wiki/Sather" title="Sather">Sather</a></li></ul> </div> <div class="mw-heading mw-heading2"><h2 id="Languages_by_memory_management_type">Languages by memory management type</h2><span class="mw-editsection"><span class="mw-editsection-bracket">[</span><a href="/w/index.php?title=List_of_programming_languages_by_type&action=edit&section=35" title="Edit section: Languages by memory management type"><span>edit</span></a><span class="mw-editsection-bracket">]</span></span></div> <div class="mw-heading mw-heading3"><h3 id="Garbage_collected_languages">Garbage collected languages</h3><span class="mw-editsection"><span class="mw-editsection-bracket">[</span><a href="/w/index.php?title=List_of_programming_languages_by_type&action=edit&section=36" title="Edit section: Garbage collected languages"><span>edit</span></a><span class="mw-editsection-bracket">]</span></span></div><p> Garbage Collection (GC) is a form of automatic memory management. The garbage collector attempts to reclaim memory that was allocated by the program but is no longer used. <link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r1236090951"></p><div role="note" class="hatnote navigation-not-searchable">Main article: <a href="/wiki/Garbage_collection_(computer_science)" title="Garbage collection (computer science)">Garbage collection (computer science)</a></div> <link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r1184024115"><div class="div-col" style="column-width: 15em;"> <ul><li><a href="/wiki/APL_(programming_language)" title="APL (programming language)">APL</a></li> <li><a href="/wiki/C_Sharp_(programming_language)" title="C Sharp (programming language)">C#</a></li> <li><a href="/wiki/Clean_(programming_language)" title="Clean (programming language)">Clean</a></li> <li><a href="/wiki/Crystal_(programming_language)" title="Crystal (programming language)">Crystal</a></li> <li><a href="/wiki/Dart_(programming_language)" title="Dart (programming language)">Dart</a></li> <li><a href="/wiki/ECMAScript" title="ECMAScript">ECMAScript</a> <ul><li><a href="/wiki/ActionScript" title="ActionScript">ActionScript</a></li> <li><a href="/wiki/ECMAScript_for_XML" title="ECMAScript for XML">ECMAScript for XML</a></li> <li><a href="/wiki/JavaScript" title="JavaScript">JavaScript</a></li> <li><a href="/wiki/JScript" title="JScript">JScript</a></li> <li><a href="/wiki/Source_(programming_language)" title="Source (programming language)">Source</a></li></ul></li> <li><a href="/wiki/Emerald_(programming_language)" title="Emerald (programming language)">Emerald</a></li> <li><a href="/wiki/Erlang_(programming_language)" title="Erlang (programming language)">Erlang</a></li> <li><a href="/wiki/Go_(programming_language)" title="Go (programming language)">Go</a></li> <li><a href="/wiki/Apache_Groovy" title="Apache Groovy">Groovy</a></li> <li><a href="/wiki/Haskell" title="Haskell">Haskell</a></li> <li><a href="/wiki/Java_(programming_language)" title="Java (programming language)">Java</a></li> <li><a href="/wiki/Julia_(programming_language)" title="Julia (programming language)">Julia</a></li> <li><a href="/wiki/Kotlin_(programming_language)" title="Kotlin (programming language)">Kotlin</a></li> <li><a href="/wiki/LabVIEW" title="LabVIEW">LabVIEW</a></li> <li><a href="/wiki/Lisp_(programming_language)" title="Lisp (programming language)">Lisp</a> (originator) <ul><li><a href="/wiki/Arc_(programming_language)" title="Arc (programming language)">Arc</a></li> <li><a href="/wiki/Clojure" title="Clojure">Clojure</a></li> <li><a href="/wiki/Common_Lisp" title="Common Lisp">Common Lisp</a></li> <li><a href="/wiki/Dylan_(programming_language)" title="Dylan (programming language)">Dylan</a></li> <li><a href="/wiki/Emacs_Lisp" title="Emacs Lisp">Emacs Lisp</a></li> <li><a href="/wiki/GNU_Guile" title="GNU Guile">Guile</a></li> <li><a href="/wiki/Racket_(programming_language)" title="Racket (programming language)">Racket</a></li> <li><a href="/wiki/Scheme_(programming_language)" title="Scheme (programming language)">Scheme</a></li> <li><a href="/wiki/Logo_(programming_language)" title="Logo (programming language)">Logo</a></li></ul></li> <li><a href="/wiki/Lua_(programming_language)" title="Lua (programming language)">Lua</a></li> <li><a href="/wiki/ML_(programming_language)" title="ML (programming language)">ML</a> <ul><li><a href="/wiki/Standard_ML" title="Standard ML">Standard ML</a> (SML) <ul><li><a href="/wiki/Alice_(programming_language)" title="Alice (programming language)">Alice</a></li></ul></li> <li><a href="/wiki/OCaml" title="OCaml">OCaml</a></li></ul></li> <li><a href="/wiki/Modula-3" title="Modula-3">Modula-3</a></li> <li><a href="/wiki/Perl" title="Perl">Perl</a></li> <li><a href="/wiki/PHP" title="PHP">PHP</a></li> <li><a href="/wiki/PowerShell" title="PowerShell">PowerShell</a></li> <li><a href="/wiki/Python_(programming_language)" title="Python (programming language)">Python</a></li> <li><a href="/wiki/Ring_(programming_language)" title="Ring (programming language)">Ring</a></li> <li><a href="/wiki/Ruby_(programming_language)" title="Ruby (programming language)">Ruby</a></li> <li><a href="/wiki/Smalltalk" title="Smalltalk">Smalltalk</a></li> <li><a href="/wiki/Speakeasy_(computational_environment)" title="Speakeasy (computational environment)">Speakeasy</a></li></ul> </div> <div class="mw-heading mw-heading3"><h3 id="Languages_with_manual_memory_management">Languages with manual memory management</h3><span class="mw-editsection"><span class="mw-editsection-bracket">[</span><a href="/w/index.php?title=List_of_programming_languages_by_type&action=edit&section=37" title="Edit section: Languages with manual memory management"><span>edit</span></a><span class="mw-editsection-bracket">]</span></span></div> <style data-mw-deduplicate="TemplateStyles:r1251242444">.mw-parser-output .ambox{border:1px solid #a2a9b1;border-left:10px solid #36c;background-color:#fbfbfb;box-sizing:border-box}.mw-parser-output .ambox+link+.ambox,.mw-parser-output .ambox+link+style+.ambox,.mw-parser-output .ambox+link+link+.ambox,.mw-parser-output .ambox+.mw-empty-elt+link+.ambox,.mw-parser-output .ambox+.mw-empty-elt+link+style+.ambox,.mw-parser-output .ambox+.mw-empty-elt+link+link+.ambox{margin-top:-1px}html body.mediawiki .mw-parser-output .ambox.mbox-small-left{margin:4px 1em 4px 0;overflow:hidden;width:238px;border-collapse:collapse;font-size:88%;line-height:1.25em}.mw-parser-output .ambox-speedy{border-left:10px solid #b32424;background-color:#fee7e6}.mw-parser-output .ambox-delete{border-left:10px solid #b32424}.mw-parser-output .ambox-content{border-left:10px solid #f28500}.mw-parser-output .ambox-style{border-left:10px solid #fc3}.mw-parser-output .ambox-move{border-left:10px solid #9932cc}.mw-parser-output .ambox-protection{border-left:10px solid #a2a9b1}.mw-parser-output .ambox .mbox-text{border:none;padding:0.25em 0.5em;width:100%}.mw-parser-output .ambox .mbox-image{border:none;padding:2px 0 2px 0.5em;text-align:center}.mw-parser-output .ambox .mbox-imageright{border:none;padding:2px 0.5em 2px 0;text-align:center}.mw-parser-output .ambox .mbox-empty-cell{border:none;padding:0;width:1px}.mw-parser-output .ambox .mbox-image-div{width:52px}@media(min-width:720px){.mw-parser-output .ambox{margin:0 10%}}@media print{body.ns-0 .mw-parser-output .ambox{display:none!important}}</style><table class="box-Expand_section plainlinks metadata ambox mbox-small-left ambox-content" role="presentation"><tbody><tr><td class="mbox-image"><span typeof="mw:File"><a href="/wiki/File:Wiki_letter_w_cropped.svg" class="mw-file-description"><img alt="[icon]" src="//upload.wikimedia.org/wikipedia/commons/thumb/1/1c/Wiki_letter_w_cropped.svg/20px-Wiki_letter_w_cropped.svg.png" decoding="async" width="20" height="14" class="mw-file-element" srcset="//upload.wikimedia.org/wikipedia/commons/thumb/1/1c/Wiki_letter_w_cropped.svg/30px-Wiki_letter_w_cropped.svg.png 1.5x, //upload.wikimedia.org/wikipedia/commons/thumb/1/1c/Wiki_letter_w_cropped.svg/40px-Wiki_letter_w_cropped.svg.png 2x" data-file-width="44" data-file-height="31" /></a></span></td><td class="mbox-text"><div class="mbox-text-span">This section <b>needs expansion</b>. You can help by <a class="external text" href="https://en.wikipedia.org/w/index.php?title=List_of_programming_languages_by_type&action=edit&section=">adding to it</a>. <span class="date-container"><i>(<span class="date">November 2016</span>)</i></span></div></td></tr></tbody></table> <ul><li><a href="/wiki/ALGOL_68" title="ALGOL 68">ALGOL 68</a></li> <li><a href="/wiki/Assembly_language" title="Assembly language">Assembly</a> (various)</li> <li><a href="/wiki/BLISS" title="BLISS">BLISS</a></li> <li><a href="/wiki/C_(programming_language)" title="C (programming language)">C</a></li> <li><a href="/wiki/C%2B%2B" title="C++">C++</a></li> <li><a href="/wiki/Component_Pascal" title="Component Pascal">Component Pascal</a></li> <li><a href="/wiki/Forth_(programming_language)" title="Forth (programming language)">Forth</a></li> <li><a href="/wiki/Fortran" title="Fortran">Fortran</a></li> <li><a href="/wiki/FreeBASIC" title="FreeBASIC">FreeBASIC</a></li> <li><a href="/wiki/Modula-2" title="Modula-2">Modula-2</a></li> <li><a href="/wiki/Oberon_(programming_language)" title="Oberon (programming language)">Oberon</a></li> <li><a href="/wiki/Pascal_(programming_language)" title="Pascal (programming language)">Pascal</a></li> <li><a href="/wiki/PL/I" title="PL/I">PL/I</a></li> <li><a href="/wiki/Zig_(programming_language)" title="Zig (programming language)">Zig</a></li></ul> <div class="mw-heading mw-heading3"><h3 id="Languages_with_optional_manual_memory_management">Languages with optional manual memory management</h3><span class="mw-editsection"><span class="mw-editsection-bracket">[</span><a href="/w/index.php?title=List_of_programming_languages_by_type&action=edit&section=38" title="Edit section: Languages with optional manual memory management"><span>edit</span></a><span class="mw-editsection-bracket">]</span></span></div> <ul><li><a href="/wiki/Ada_(programming_language)" title="Ada (programming language)">Ada</a> implementations are not required to offer garbage collection, but the language semantics support it, and many implementations include it.</li> <li><a href="/wiki/Blitz_BASIC" title="Blitz BASIC">Blitz BASIC</a> (also known as BlitzMax) is usually reference-counted,<sup id="cite_ref-13" class="reference"><a href="#cite_note-13"><span class="cite-bracket">[</span>13<span class="cite-bracket">]</span></a></sup> and also supports a garbage collector. However, it also ships with optional utilities for using pointers<sup id="cite_ref-14" class="reference"><a href="#cite_note-14"><span class="cite-bracket">[</span>14<span class="cite-bracket">]</span></a></sup> and for directly allocating and freeing memory.<sup id="cite_ref-15" class="reference"><a href="#cite_note-15"><span class="cite-bracket">[</span>15<span class="cite-bracket">]</span></a></sup></li> <li><a href="/wiki/COBOL" title="COBOL">COBOL</a> supports pointers<sup id="cite_ref-16" class="reference"><a href="#cite_note-16"><span class="cite-bracket">[</span>16<span class="cite-bracket">]</span></a></sup> and heap allocation<sup id="cite_ref-17" class="reference"><a href="#cite_note-17"><span class="cite-bracket">[</span>17<span class="cite-bracket">]</span></a></sup> as of COBOL 2002, along with a garbage collector.<sup id="cite_ref-18" class="reference"><a href="#cite_note-18"><span class="cite-bracket">[</span>18<span class="cite-bracket">]</span></a></sup></li> <li><a href="/wiki/Cython" title="Cython">Cython</a> provides optional manual memory management by letting the user import <code>malloc</code>, <code>realloc</code>, and <code>free</code> from C, which they can then use in Python code.<sup id="cite_ref-19" class="reference"><a href="#cite_note-19"><span class="cite-bracket">[</span>19<span class="cite-bracket">]</span></a></sup></li> <li><a href="/wiki/D_(programming_language)" title="D (programming language)">D</a> provides programmers with full control over its own garbage collector, including the ability to disable it outright.<sup id="cite_ref-20" class="reference"><a href="#cite_note-20"><span class="cite-bracket">[</span>20<span class="cite-bracket">]</span></a></sup></li> <li><a href="/wiki/Nim_(programming_language)" title="Nim (programming language)">Nim</a> is usually garbage-collected or reference-counted by default, depending on its configuration, but the programmer may use the switch <code>--mm:none</code> to deallocate memory manually.<sup id="cite_ref-21" class="reference"><a href="#cite_note-21"><span class="cite-bracket">[</span>21<span class="cite-bracket">]</span></a></sup></li> <li><a href="/wiki/Objective-C" title="Objective-C">Objective-C</a> and <a href="/wiki/Objective-C#Objective-C++" title="Objective-C">Objective-C++</a> support optional reference counting and garbage collection as alternatives to manual memory management (Apple deprecated the garbage collector).</li> <li><a href="/wiki/PostScript" title="PostScript">PostScript</a> originally required developers to manually reclaim memory using the <code>save</code> and <code>restore</code> operators. PostScript Level 2 introduced a garbage collector, but its usage is optional.<sup id="cite_ref-22" class="reference"><a href="#cite_note-22"><span class="cite-bracket">[</span>22<span class="cite-bracket">]</span></a></sup></li> <li><a href="/wiki/Rust_(programming_language)" title="Rust (programming language)">Rust</a> supports optional reference counting, but manual memory management is preferred.</li> <li><a href="/wiki/Scala_(programming_language)" title="Scala (programming language)">Scala</a> normally manages the memory automatically in its JVM and JavaScript targets. However, the LLVM-based Scala Native compiler supports the use of pointers, as well as C-style heap allocation (e.g. <code>malloc</code>, <code>realloc</code>, <code>free</code>) and stack allocation (<code>stackalloc</code>).<sup id="cite_ref-23" class="reference"><a href="#cite_note-23"><span class="cite-bracket">[</span>23<span class="cite-bracket">]</span></a></sup></li> <li><a href="/wiki/Swift_(programming_language)" title="Swift (programming language)">Swift</a> normally uses reference counting, but also allows the user to manually manage the memory using <code>malloc</code> and <code>free</code>. On Apple platforms, these functions are imported from the C standard library (which is imported from <code>Foundation</code>, <code>AppKit</code> or <code>UIKit</code>); on Linux, the developer needs to import <code>Glibc</code>, and <code>ucrt</code> on Windows.</li> <li><a href="/wiki/V_(programming_language)" title="V (programming language)">V (Vlang)</a> uses GC by default, for user convenience, which can be turned off (-gc none). Users are free to manage memory manually. Can also use autofree (-autofree) or arena allocation (-prealloc).</li> <li><a href="/wiki/Vala_(programming_language)" title="Vala (programming language)">Vala</a> uses reference counting by default, but the user is free to manage the memory manually if they wish.<sup id="cite_ref-24" class="reference"><a href="#cite_note-24"><span class="cite-bracket">[</span>24<span class="cite-bracket">]</span></a></sup></li></ul> <div class="mw-heading mw-heading3"><h3 id="Languages_with_deterministic_memory_management">Languages with deterministic memory management</h3><span class="mw-editsection"><span class="mw-editsection-bracket">[</span><a href="/w/index.php?title=List_of_programming_languages_by_type&action=edit&section=39" title="Edit section: Languages with deterministic memory management"><span>edit</span></a><span class="mw-editsection-bracket">]</span></span></div> <link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r1251242444"><table class="box-Expand_section plainlinks metadata ambox mbox-small-left ambox-content" role="presentation"><tbody><tr><td class="mbox-image"><span typeof="mw:File"><a href="/wiki/File:Wiki_letter_w_cropped.svg" class="mw-file-description"><img alt="[icon]" src="//upload.wikimedia.org/wikipedia/commons/thumb/1/1c/Wiki_letter_w_cropped.svg/20px-Wiki_letter_w_cropped.svg.png" decoding="async" width="20" height="14" class="mw-file-element" srcset="//upload.wikimedia.org/wikipedia/commons/thumb/1/1c/Wiki_letter_w_cropped.svg/30px-Wiki_letter_w_cropped.svg.png 1.5x, //upload.wikimedia.org/wikipedia/commons/thumb/1/1c/Wiki_letter_w_cropped.svg/40px-Wiki_letter_w_cropped.svg.png 2x" data-file-width="44" data-file-height="31" /></a></span></td><td class="mbox-text"><div class="mbox-text-span">This section <b>needs expansion</b>. You can help by <a class="external text" href="https://en.wikipedia.org/w/index.php?title=List_of_programming_languages_by_type&action=edit&section=">adding to it</a>. <span class="date-container"><i>(<span class="date">April 2018</span>)</i></span></div></td></tr></tbody></table> <ul><li><a href="/wiki/Ada_(programming_language)" title="Ada (programming language)">Ada</a></li> <li><a href="/wiki/C_(programming_language)" title="C (programming language)">C</a></li> <li><a href="/wiki/C%2B%2B" title="C++">C++</a></li> <li><a href="/wiki/Fortran" title="Fortran">Fortran</a></li> <li><a href="/wiki/Nim_(programming_language)" title="Nim (programming language)">Nim</a></li> <li><a href="/wiki/Pascal_(programming_language)" title="Pascal (programming language)">Pascal</a></li> <li><a href="/wiki/Rust_(programming_language)" title="Rust (programming language)">Rust</a><sup id="cite_ref-25" class="reference"><a href="#cite_note-25"><span class="cite-bracket">[</span>25<span class="cite-bracket">]</span></a></sup><sup id="cite_ref-26" class="reference"><a href="#cite_note-26"><span class="cite-bracket">[</span>26<span class="cite-bracket">]</span></a></sup></li> <li><a href="/wiki/Objective-C" title="Objective-C">Objective-C</a></li> <li><a href="/wiki/Zig_(programming_language)" title="Zig (programming language)">Zig</a></li> <li><a href="/wiki/Modula-3" title="Modula-3">Modula-3</a></li></ul> <div class="mw-heading mw-heading3"><h3 id="Languages_with_automatic_reference_counting_(ARC)"><span id="Languages_with_automatic_reference_counting_.28ARC.29"></span>Languages with automatic reference counting (ARC)</h3><span class="mw-editsection"><span class="mw-editsection-bracket">[</span><a href="/w/index.php?title=List_of_programming_languages_by_type&action=edit&section=40" title="Edit section: Languages with automatic reference counting (ARC)"><span>edit</span></a><span class="mw-editsection-bracket">]</span></span></div> <link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r1251242444"><table class="box-Expand_section plainlinks metadata ambox mbox-small-left ambox-content" role="presentation"><tbody><tr><td class="mbox-image"><span typeof="mw:File"><a href="/wiki/File:Wiki_letter_w_cropped.svg" class="mw-file-description"><img alt="[icon]" src="//upload.wikimedia.org/wikipedia/commons/thumb/1/1c/Wiki_letter_w_cropped.svg/20px-Wiki_letter_w_cropped.svg.png" decoding="async" width="20" height="14" class="mw-file-element" srcset="//upload.wikimedia.org/wikipedia/commons/thumb/1/1c/Wiki_letter_w_cropped.svg/30px-Wiki_letter_w_cropped.svg.png 1.5x, //upload.wikimedia.org/wikipedia/commons/thumb/1/1c/Wiki_letter_w_cropped.svg/40px-Wiki_letter_w_cropped.svg.png 2x" data-file-width="44" data-file-height="31" /></a></span></td><td class="mbox-text"><div class="mbox-text-span">This section <b>needs expansion</b>. You can help by <a class="external text" href="https://en.wikipedia.org/w/index.php?title=List_of_programming_languages_by_type&action=edit&section=">adding to it</a>. <span class="date-container"><i>(<span class="date">September 2018</span>)</i></span></div></td></tr></tbody></table> <ul><li><a href="/wiki/Nim_(programming_language)" title="Nim (programming language)">Nim</a></li> <li><a href="/wiki/Objective-C" title="Objective-C">Objective-C</a></li> <li><a href="/wiki/Perl" title="Perl">Perl</a></li> <li><a href="/wiki/Swift_(programming_language)" title="Swift (programming language)">Swift</a></li> <li><a href="/wiki/Visual_Basic" title="Visual Basic">Visual Basic</a></li> <li><a href="/wiki/Xojo" title="Xojo">Xojo</a></li></ul> <div class="mw-heading mw-heading2"><h2 id="List-based_languages_–_LISPs"><span id="List-based_languages_.E2.80.93_LISPs"></span>List-based languages – LISPs</h2><span class="mw-editsection"><span class="mw-editsection-bracket">[</span><a href="/w/index.php?title=List_of_programming_languages_by_type&action=edit&section=41" title="Edit section: List-based languages – LISPs"><span>edit</span></a><span class="mw-editsection-bracket">]</span></span></div> <p>List-based languages are a type of <a href="/w/index.php?title=Data-structured_language&action=edit&redlink=1" class="new" title="Data-structured language (page does not exist)">data-structured language</a> that are based on the <a href="/wiki/List_(abstract_data_type)" title="List (abstract data type)">list</a> data structure. </p> <style data-mw-deduplicate="TemplateStyles:r1215345927">@media all and (max-width:720px){.mw-parser-output .multicol-float{width:auto!important}}.mw-parser-output .multicol-float{clear:none;float:left}.mw-parser-output .multicol-float-clear{clear:both}</style><div class="multicol-float" style=""> <ul><li><a href="/wiki/Lisp_(programming_language)" title="Lisp (programming language)">Lisp</a> <ul><li><a href="/wiki/Arc_(programming_language)" title="Arc (programming language)">Arc</a></li> <li><a href="/wiki/Clojure" title="Clojure">Clojure</a></li> <li><a href="/wiki/Common_Lisp" title="Common Lisp">Common Lisp</a></li> <li><a href="/wiki/Dylan_(programming_language)" title="Dylan (programming language)">Dylan</a></li> <li><a href="/wiki/Emacs_Lisp" title="Emacs Lisp">Emacs Lisp</a></li> <li><a href="/wiki/GNU_Guile" title="GNU Guile">Guile</a></li> <li><a href="/wiki/Racket_(programming_language)" title="Racket (programming language)">Racket</a></li> <li><a href="/wiki/Scheme_(programming_language)" title="Scheme (programming language)">Scheme</a></li> <li><a href="/wiki/Logo_(programming_language)" title="Logo (programming language)">Logo</a></li></ul></li></ul> </div><link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r1215345927"><div class="multicol-float" style=""> <ul><li><a href="/wiki/Joy_(programming_language)" title="Joy (programming language)">Joy</a></li> <li><a href="/wiki/R_(programming_language)" title="R (programming language)">R</a></li> <li><a href="/wiki/Source_(programming_language)" title="Source (programming language)">Source</a></li> <li><a href="/wiki/Tcl" title="Tcl">Tcl</a> <ul><li><a href="/wiki/Tea_(programming_language)" title="Tea (programming language)">Tea</a></li></ul></li> <li><a href="/wiki/TRAC_(programming_language)" title="TRAC (programming language)">TRAC</a></li></ul> </div><div class="multicol-float-clear" style=""></div> <div class="mw-heading mw-heading2"><h2 id="Little_languages">Little languages</h2><span class="mw-editsection"><span class="mw-editsection-bracket">[</span><a href="/w/index.php?title=List_of_programming_languages_by_type&action=edit&section=42" title="Edit section: Little languages"><span>edit</span></a><span class="mw-editsection-bracket">]</span></span></div> <p><a href="/wiki/Domain-specific_language" title="Domain-specific language">Little languages</a><sup id="cite_ref-27" class="reference"><a href="#cite_note-27"><span class="cite-bracket">[</span>27<span class="cite-bracket">]</span></a></sup> serve a specialized problem domain. </p> <ul><li><a href="/wiki/AWK" title="AWK">awk</a> – used for text file manipulation.</li> <li><a href="/wiki/Sed" title="Sed">sed</a> – parses and transforms text</li> <li><a href="/wiki/SQL" title="SQL">SQL</a> – has only a few keywords and not all the constructs needed for a full programming language<sup id="cite_ref-28" class="reference"><a href="#cite_note-28"><span class="cite-bracket">[</span>a<span class="cite-bracket">]</span></a></sup> – many database management systems extend SQL with additional constructs as a <a href="/wiki/Stored_procedure" title="Stored procedure">stored procedure</a> language</li></ul> <div class="mw-heading mw-heading2"><h2 id="Logic-based_languages">Logic-based languages</h2><span class="mw-editsection"><span class="mw-editsection-bracket">[</span><a href="/w/index.php?title=List_of_programming_languages_by_type&action=edit&section=43" title="Edit section: Logic-based languages"><span>edit</span></a><span class="mw-editsection-bracket">]</span></span></div> <link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r1236090951"><div role="note" class="hatnote navigation-not-searchable">Main category: <a href="/wiki/Category:Logic_programming_languages" title="Category:Logic programming languages">Logic programming languages</a></div> <p><a href="/wiki/Logic_programming" title="Logic programming">Logic-based</a> languages specify a set of attributes that a solution must-have, rather than a set of steps to obtain a solution. </p><p>Notable languages following this <a href="/wiki/Programming_paradigm" title="Programming paradigm">programming paradigm</a> include: </p> <ul><li><a href="/wiki/Algebraic_Logic_Functional_(programming_language)" class="mw-redirect" title="Algebraic Logic Functional (programming language)">ALF</a></li> <li><a href="/wiki/Alma-0" title="Alma-0">Alma-0</a></li> <li><a href="/wiki/Curry_(programming_language)" title="Curry (programming language)">Curry</a></li> <li><a href="/wiki/Datalog" title="Datalog">Datalog</a></li> <li><a href="/wiki/Fril" title="Fril">Fril</a></li> <li><a href="/wiki/Flix_(programming_language)" title="Flix (programming language)">Flix</a> (a functional programming language with first-class Datalog constraints)</li> <li><a href="/wiki/Janus_(concurrent_constraint_programming_language)" title="Janus (concurrent constraint programming language)">Janus</a></li> <li><a href="/wiki/%CE%9BProlog" title="ΛProlog">λProlog</a> (a logic programming language featuring polymorphic typing, modular programming, and higher-order programming)</li> <li><a href="/wiki/Oz_(programming_language)" title="Oz (programming language)">Oz</a>, and Mozart Programming System <a href="/wiki/Cross-platform" class="mw-redirect" title="Cross-platform">cross-platform</a> Oz</li> <li><a href="/wiki/Prolog" title="Prolog">Prolog</a> (formulates data and the program evaluation mechanism as a special form of mathematical logic called <a href="/wiki/Horn_clause" title="Horn clause">Horn logic</a> and a general proving mechanism called <a href="/wiki/Resolution_(logic)" title="Resolution (logic)">logical resolution</a>) <ul><li><a href="/wiki/Mercury_(programming_language)" title="Mercury (programming language)">Mercury</a> (based on Prolog)</li> <li><a href="/wiki/Visual_Prolog" title="Visual Prolog">Visual Prolog</a> (object-oriented Prolog extension)</li></ul></li> <li><a href="/wiki/ROOP_(programming_language)" title="ROOP (programming language)">ROOP</a></li> <li><a href="/wiki/Souffl%C3%A9_(programming_language)" title="Soufflé (programming language)">Soufflé</a></li></ul> <div class="mw-heading mw-heading2"><h2 id="Machine_languages">Machine languages</h2><span class="mw-editsection"><span class="mw-editsection-bracket">[</span><a href="/w/index.php?title=List_of_programming_languages_by_type&action=edit&section=44" title="Edit section: Machine languages"><span>edit</span></a><span class="mw-editsection-bracket">]</span></span></div> <p><a href="/wiki/Machine_code" title="Machine code">Machine languages</a> are directly executable by a computer's CPU. They are typically formulated as bit patterns, usually represented in <a href="/wiki/Octal" title="Octal">octal</a> or <a href="/wiki/Hexadecimal" title="Hexadecimal">hexadecimal</a>. Each bit pattern causes the circuits in the CPU to execute one of the fundamental operations of the hardware. The activation of specific electrical inputs (e.g., CPU package pins for microprocessors), and logical settings for CPU state values, control the processor's computation. Individual machine languages are specific to a family of processors; machine-language code for one family of processors cannot run directly on processors in another family unless the processors in question have additional hardware to support it (for example, DEC VAX processors included a PDP-11 compatibility mode). They are (essentially) always defined by the CPU developer, not by 3rd parties.<sup id="cite_ref-29" class="reference"><a href="#cite_note-29"><span class="cite-bracket">[</span>b<span class="cite-bracket">]</span></a></sup> The symbolic version, the processor's <a href="/wiki/Assembly_language" title="Assembly language">assembly language</a>, is also defined by the developer, in most cases. Some commonly used machine code <a href="/wiki/Instruction_set_architecture" title="Instruction set architecture">instruction sets</a> are: </p> <link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r1184024115"><div class="div-col"> <ul><li><a href="/wiki/RISC-V" title="RISC-V">RISC-V</a></li> <li><a href="/wiki/ARM_architecture_family" title="ARM architecture family">ARM</a> <ul><li>Original <a href="/wiki/32-bit_computing" title="32-bit computing">32-bit</a></li> <li>16-bit Thumb instructions (subset of registers used)</li> <li><a href="/wiki/64-bit_computing" title="64-bit computing">64-bit</a> (major architecture change)</li></ul></li> <li><a href="/wiki/Digital_Equipment_Corporation" title="Digital Equipment Corporation">DEC</a>: <ul><li><a href="/wiki/18-bit_computing" title="18-bit computing">18-bit</a>: <a href="/wiki/PDP-1" title="PDP-1">PDP-1</a>, <a href="/wiki/PDP-4" title="PDP-4">PDP-4</a>, <a href="/wiki/PDP-7" title="PDP-7">PDP-7</a>, <a href="/wiki/PDP-9" title="PDP-9">PDP-9</a>, <a href="/wiki/PDP-15" title="PDP-15">PDP-15</a></li> <li><a href="/wiki/12-bit_computing" title="12-bit computing">12-bit</a>: <a href="/wiki/PDP-5" title="PDP-5">PDP-5</a>, <a href="/wiki/PDP-8" title="PDP-8">PDP-8</a>, <a href="/wiki/LINC-8" title="LINC-8">LINC-8</a>, <a href="/wiki/PDP-12" title="PDP-12">PDP-12</a></li> <li><a href="/wiki/36-bit_computing" title="36-bit computing">36-bit</a>: <a href="/wiki/PDP-6" title="PDP-6">PDP-6</a>, <a href="/wiki/PDP-10" title="PDP-10">PDP-10</a>, <a href="/wiki/DECSYSTEM-20" title="DECSYSTEM-20">DECSYSTEM-20</a></li> <li><a href="/wiki/16-bit_computing" title="16-bit computing">16-bit:</a> <a href="/wiki/PDP-11" title="PDP-11">PDP-11</a> (influenced VAX and M68000)</li> <li>32-bit: <a href="/wiki/VAX" title="VAX">VAX</a></li> <li>64-bit: <a href="/wiki/DEC_Alpha" title="DEC Alpha">Alpha</a></li></ul></li> <li><a href="/wiki/Intel_8008" title="Intel 8008">Intel 8008</a>, <a href="/wiki/Intel_8080" title="Intel 8080">8080</a> and <a href="/wiki/Intel_8085" title="Intel 8085">8085</a> <ul><li><a href="/wiki/Zilog_Z80" title="Zilog Z80">Zilog Z80</a></li></ul></li> <li><a href="/wiki/X86" title="X86">x86</a>: <ul><li><a href="/wiki/X86#16-bit" title="X86">16-bit x86</a>, first used in the Intel 8086 <ul><li><a href="/wiki/Intel_8086" title="Intel 8086">Intel 8086</a> and <a href="/wiki/Intel_8088" title="Intel 8088">8088</a> (the latter was used in the first and early <a href="/wiki/IBM_Personal_Computer" title="IBM Personal Computer">IBM PC</a>)</li> <li><a href="/wiki/Intel_80186" title="Intel 80186">Intel 80186</a></li> <li><a href="/wiki/Intel_80286" title="Intel 80286">Intel 80286</a> (the first x86 processor with <a href="/wiki/Protected_mode" title="Protected mode">protected mode</a>, used in the <a href="/wiki/IBM_Personal_Computer_AT" title="IBM Personal Computer AT">IBM PC AT</a>)</li></ul></li> <li><a href="/wiki/IA-32" title="IA-32">IA-32</a>, introduced in the <a href="/wiki/I386" title="I386">80386</a></li> <li><a href="/wiki/X86-64" title="X86-64">x86-64</a> – The original specification was created by <a href="/wiki/AMD" title="AMD">AMD</a>. There are vendor variants, but they're essentially the same: <ul><li><a href="/wiki/AMD" title="AMD">AMD</a>'s <a href="/wiki/X86-64#AMD64" title="X86-64">AMD64</a></li> <li><a href="/wiki/Intel" title="Intel">Intel</a>'s <a href="/wiki/Intel_64" class="mw-redirect" title="Intel 64">Intel 64</a></li></ul></li></ul></li> <li><a href="/wiki/IBM" title="IBM">IBM</a><sup id="cite_ref-submodels_30-0" class="reference"><a href="#cite_note-submodels-30"><span class="cite-bracket">[</span>c<span class="cite-bracket">]</span></a></sup> <ul><li><a href="/wiki/IBM_305_RAMAC" title="IBM 305 RAMAC">305</a></li> <li><a href="/wiki/IBM_650" title="IBM 650">650</a></li> <li><a href="/wiki/IBM_701" title="IBM 701">701</a></li> <li><a href="/wiki/IBM_702" title="IBM 702">702</a>, <a href="/wiki/IBM_705" class="mw-redirect" title="IBM 705">705</a> and <a href="/wiki/IBM_7080" title="IBM 7080">7080</a></li> <li><a href="/wiki/IBM_704" title="IBM 704">704</a>, <a href="/wiki/IBM_709" title="IBM 709">709</a>, <a href="/wiki/IBM_7040" title="IBM 7040">7040</a>, 7044, <a href="/wiki/IBM_7090" title="IBM 7090">7090</a>, <a href="/wiki/IBM_7094" class="mw-redirect" title="IBM 7094">7094</a></li> <li><a href="/wiki/IBM_1400_series" title="IBM 1400 series">1400 series</a>, 7010</li> <li><a href="/wiki/IBM_7030_Stretch" title="IBM 7030 Stretch">7030</a></li> <li><a href="/wiki/IBM_7070" title="IBM 7070">7070</a>, 7072, 7074</li> <li><a href="/wiki/IBM_System/360" title="IBM System/360">System/360</a> and successors, including <a href="/wiki/Z/Architecture" title="Z/Architecture">z/Architecture</a></li></ul></li> <li><a href="/wiki/MIPS_architecture" title="MIPS architecture">MIPS</a></li> <li><a href="/wiki/Motorola_6800" title="Motorola 6800">Motorola 6800</a> (<a href="/wiki/8-bit_computing" title="8-bit computing">8-bit</a>)</li> <li><a href="/wiki/Motorola_68000_series" title="Motorola 68000 series">Motorola 68000 series</a> (CPUs used in early <a href="/wiki/Mac_(computer)" title="Mac (computer)">Macintosh</a> and early <a href="/wiki/Sun_Microsystems" title="Sun Microsystems">Sun</a> computers)</li> <li><a href="/wiki/MOS_Technology_65xx" class="mw-redirect" title="MOS Technology 65xx">MOS Technology 65xx</a> (<a href="/wiki/8-bit_computing" title="8-bit computing">8-bit</a>) <ul><li><a href="/wiki/MOS_Technology_6502" title="MOS Technology 6502">6502</a> (CPU for <a href="/wiki/NES" class="mw-redirect" title="NES">NES</a>, <a href="/wiki/VIC-20" title="VIC-20">VIC-20</a>, <a href="/wiki/BBC_Micro" title="BBC Micro">BBC Micro</a>, <a href="/wiki/Apple_II" title="Apple II">Apple II</a>, and <a href="/wiki/Atari_8-bit_computers" title="Atari 8-bit computers">Atari 8-bit computers</a>)</li> <li><a href="/wiki/MOS_Technology_6510" title="MOS Technology 6510">6510</a> (CPU for <a href="/wiki/Commodore_64" title="Commodore 64">Commodore 64</a>)</li> <li><a href="/wiki/Western_Design_Center" title="Western Design Center">Western Design Center</a> <a href="/wiki/WDC_65C816" title="WDC 65C816">65816/65802</a> (CPU for <a href="/wiki/Apple_IIGS" title="Apple IIGS">Apple IIGS</a> and (variant) <a href="/wiki/Super_Nintendo_Entertainment_System" title="Super Nintendo Entertainment System">Super Nintendo Entertainment System</a>)</li></ul></li> <li><a href="/wiki/National_Semiconductor" title="National Semiconductor">National Semiconductor</a> <a href="/wiki/NS32000" title="NS32000">NS320xx</a></li> <li><a href="/wiki/IBM_POWER_architecture" title="IBM POWER architecture">POWER</a>, first used in the <a href="/wiki/IBM_RS/6000" title="IBM RS/6000">IBM RS/6000</a> <ul><li><a href="/wiki/PowerPC" title="PowerPC">PowerPC</a> – used in <a href="/wiki/Power_Macintosh" title="Power Macintosh">Power Macintosh</a> and in many <a href="/wiki/PowerPC#Gaming_consoles" title="PowerPC">game consoles</a>, particularly of the <a href="/wiki/Seventh_generation_of_video_game_consoles" title="Seventh generation of video game consoles">seventh generation</a>.</li> <li><a href="/wiki/Power_ISA" title="Power ISA">Power ISA</a> – an evolution of <a href="/wiki/PowerPC" title="PowerPC">PowerPC</a>.</li></ul></li> <li><a href="/wiki/Sun_Microsystems" title="Sun Microsystems">Sun Microsystems</a> (now <a href="/wiki/Oracle_Corporation" title="Oracle Corporation">Oracle</a>) <a href="/wiki/SPARC" title="SPARC">SPARC</a></li> <li><a href="/wiki/UNIVAC" title="UNIVAC">UNIVAC</a><sup id="cite_ref-submodels_30-1" class="reference"><a href="#cite_note-submodels-30"><span class="cite-bracket">[</span>c<span class="cite-bracket">]</span></a></sup> <ul><li>30-bit computers: <a href="/wiki/UNIVAC_490" title="UNIVAC 490">490</a>, 492, 494, <a href="/wiki/AN/USQ-20" title="AN/USQ-20">1230</a></li> <li><a href="/wiki/36-bit_computing" title="36-bit computing">36-bit</a> computers <ul><li><a href="/wiki/UNIVAC_1101" title="UNIVAC 1101">1101</a>, <a href="/wiki/UNIVAC_1103" title="UNIVAC 1103">1103</a>, <a href="/wiki/UNIVAC_1105" title="UNIVAC 1105">1105</a></li> <li><a href="/wiki/UNIVAC_1100/2200_series" title="UNIVAC 1100/2200 series">1100/2200 series</a></li></ul></li></ul></li> <li><a href="/wiki/MCST" title="MCST">MCST</a> <a href="/wiki/Elbrus_2000" title="Elbrus 2000">Elbrus 2000</a></li></ul> </div> <div class="mw-heading mw-heading2"><h2 id="Macro_languages">Macro languages</h2><span class="mw-editsection"><span class="mw-editsection-bracket">[</span><a href="/w/index.php?title=List_of_programming_languages_by_type&action=edit&section=45" title="Edit section: Macro languages"><span>edit</span></a><span class="mw-editsection-bracket">]</span></span></div> <link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r1236090951"><div role="note" class="hatnote navigation-not-searchable">Main category: <a href="/wiki/Category:Macro_programming_languages" title="Category:Macro programming languages">Macro programming languages</a></div> <div class="mw-heading mw-heading3"><h3 id="Textual_substitution_macro_languages">Textual substitution macro languages</h3><span class="mw-editsection"><span class="mw-editsection-bracket">[</span><a href="/w/index.php?title=List_of_programming_languages_by_type&action=edit&section=46" title="Edit section: Textual substitution macro languages"><span>edit</span></a><span class="mw-editsection-bracket">]</span></span></div> <p><a href="/wiki/Macro_(computer_science)" title="Macro (computer science)">Macro</a> languages transform one source code file into another. A "macro" is essentially a short piece of text that expands into a longer one (not to be confused with <a href="/wiki/Hygienic_macro" title="Hygienic macro">hygienic macros</a>), possibly with parameter substitution. They are often used to <a href="/wiki/Preprocess" class="mw-redirect" title="Preprocess">preprocess</a> source code. Preprocessors can also supply facilities like <a href="/wiki/Include_directive" title="Include directive">file inclusion</a>. </p><p>Macro languages may be restricted to acting on specially labeled code regions (pre-fixed with a <code>#</code> in the case of the C preprocessor). Alternatively, they may not, but in this case it is still often undesirable to (for instance) expand a macro embedded in a <a href="/wiki/String_literal" title="String literal">string literal</a>, so they still need a rudimentary awareness of syntax. That being the case, they are often still applicable to more than one language. Contrast with source-embeddable languages like <a href="/wiki/PHP" title="PHP">PHP</a>, which are fully featured. </p> <ul><li><a href="/wiki/C_preprocessor" title="C preprocessor">cpp</a> (the C preprocessor)</li> <li><a href="/wiki/M4_(computer_language)" title="M4 (computer language)">m4</a> (originally from AT&T, bundled with Unix)</li> <li><a href="/wiki/ML/I" title="ML/I">ML/I</a> (general-purpose macro processor)</li> <li><a href="/wiki/TTM_(programming_language)" title="TTM (programming language)">TTM</a> (developed at the California Institute of Technology)</li></ul> <div class="mw-heading mw-heading3"><h3 id="Application_macro_languages">Application macro languages</h3><span class="mw-editsection"><span class="mw-editsection-bracket">[</span><a href="/w/index.php?title=List_of_programming_languages_by_type&action=edit&section=47" title="Edit section: Application macro languages"><span>edit</span></a><span class="mw-editsection-bracket">]</span></span></div> <p><a href="/wiki/Scripting_language" title="Scripting language">Scripting languages</a> such as <a href="/wiki/Tcl" title="Tcl">Tcl</a> and <a href="/wiki/ECMAScript" title="ECMAScript">ECMAScript</a> (<a href="/wiki/ActionScript" title="ActionScript">ActionScript</a>, <a href="/wiki/ECMAScript_for_XML" title="ECMAScript for XML">ECMAScript for XML</a>, <a href="/wiki/JavaScript" title="JavaScript">JavaScript</a>, <a href="/wiki/JScript" title="JScript">JScript</a>) have been embedded into applications. These are sometimes called "macro languages", although in a somewhat different sense to textual-substitution macros like <a href="/wiki/M4_(computer_language)" title="M4 (computer language)">m4</a>. </p> <div class="mw-heading mw-heading2"><h2 id="Metaprogramming_languages">Metaprogramming languages</h2><span class="mw-editsection"><span class="mw-editsection-bracket">[</span><a href="/w/index.php?title=List_of_programming_languages_by_type&action=edit&section=48" title="Edit section: Metaprogramming languages"><span>edit</span></a><span class="mw-editsection-bracket">]</span></span></div> <p><a href="/wiki/Metaprogramming" title="Metaprogramming">Metaprogramming</a> is the writing of programs that write or manipulate other programs, including themselves, as their data or that do part of the work that is otherwise done at <a href="/wiki/Run_time_(program_lifecycle_phase)" class="mw-redirect" title="Run time (program lifecycle phase)">run time</a> during <a href="/wiki/Compile_time" title="Compile time">compile time</a>. In many cases, this allows programmers to get more done in the same amount of time as they would take to write all the code manually. </p> <link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r1184024115"><div class="div-col" style="column-width: 15em;"> <ul><li><a href="/wiki/C%2B%2B" title="C++">C++</a></li> <li><a href="/wiki/Compiler-compiler#CWIC" title="Compiler-compiler">CWIC</a></li> <li><a href="/wiki/Curl_(programming_language)" title="Curl (programming language)">Curl</a></li> <li><a href="/wiki/D_(programming_language)" title="D (programming language)">D</a></li> <li><a href="/wiki/Emacs_Lisp" title="Emacs Lisp">Emacs Lisp</a></li> <li><a href="/wiki/Elixir_(programming_language)" title="Elixir (programming language)">Elixir</a></li> <li><a href="/wiki/F_Sharp_(programming_language)" title="F Sharp (programming language)">F#</a></li> <li><a href="/wiki/Groovy_(programming_language)" class="mw-redirect" title="Groovy (programming language)">Groovy</a></li> <li><a href="/wiki/Haskell" title="Haskell">Haskell</a></li> <li><a href="/wiki/Julia_(programming_language)" title="Julia (programming language)">Julia</a></li> <li><a href="/wiki/Lisp_(programming_language)" title="Lisp (programming language)">Lisp</a></li> <li><a href="/wiki/Lua_(programming_language)" title="Lua (programming language)">Lua</a></li> <li><a href="/wiki/Maude_system" title="Maude system">Maude system</a></li> <li><a href="/wiki/META_II" title="META II">META II</a> (and META I, a subset)</li> <li>Meta<a href="/wiki/OCaml" title="OCaml">OCaml</a></li> <li><a href="/wiki/Nemerle" title="Nemerle">Nemerle</a></li> <li><a href="/wiki/Nim_(programming_language)" title="Nim (programming language)">Nim</a></li> <li><a href="/wiki/Perl" title="Perl">Perl</a></li> <li><a href="/wiki/Python_(programming_language)" title="Python (programming language)">Python</a></li> <li><a href="/wiki/Raku_(programming_language)" title="Raku (programming language)">Raku</a><sup id="cite_ref-31" class="reference"><a href="#cite_note-31"><span class="cite-bracket">[</span>28<span class="cite-bracket">]</span></a></sup></li> <li><a href="/wiki/Red_(programming_language)" title="Red (programming language)">Red</a></li> <li><a href="/wiki/Ring_(programming_language)" title="Ring (programming language)">Ring</a></li> <li><a href="/wiki/Ruby_(programming_language)" title="Ruby (programming language)">Ruby</a></li> <li><a href="/wiki/Rust_(programming_language)" title="Rust (programming language)">Rust</a><sup id="cite_ref-32" class="reference"><a href="#cite_note-32"><span class="cite-bracket">[</span>29<span class="cite-bracket">]</span></a></sup></li> <li><a href="/wiki/Scheme_(programming_language)" title="Scheme (programming language)">Scheme</a></li> <li><a href="/wiki/SequenceL" title="SequenceL">SequenceL</a></li> <li><a href="/wiki/Smalltalk" title="Smalltalk">Smalltalk</a></li> <li><a href="/wiki/Source_(programming_language)" title="Source (programming language)">Source</a></li> <li><a href="/wiki/TREE-META" title="TREE-META">TREE-META</a></li> <li><a href="/wiki/Wolfram_Mathematica" title="Wolfram Mathematica">Wolfram Mathematica</a> (<a href="/wiki/Wolfram_language" class="mw-redirect" title="Wolfram language">Wolfram language</a>)</li></ul> </div> <div class="mw-heading mw-heading2"><h2 id="Multiparadigm_languages">Multiparadigm languages</h2><span class="mw-editsection"><span class="mw-editsection-bracket">[</span><a href="/w/index.php?title=List_of_programming_languages_by_type&action=edit&section=49" title="Edit section: Multiparadigm languages"><span>edit</span></a><span class="mw-editsection-bracket">]</span></span></div> <link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r1236090951"><div role="note" class="hatnote navigation-not-searchable">Main article: <a href="/wiki/Comparison_of_multi-paradigm_programming_languages" title="Comparison of multi-paradigm programming languages">Comparison of multi-paradigm programming languages</a></div> <p><a href="/wiki/Multi-paradigm_programming_language" class="mw-redirect" title="Multi-paradigm programming language">Multiparadigm languages</a> support more than one <a href="/wiki/Programming_paradigm" title="Programming paradigm">programming paradigm</a>. They allow a <a href="/wiki/Computer_program" title="Computer program">program</a> to use more than one <a href="/wiki/Computer_program" title="Computer program">programming</a> style. The goal is to allow programmers to use the best tool for a job, admitting that no one paradigm solves all problems in the easiest or most efficient way. </p> <link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r1184024115"><div class="div-col" style="column-width: 20em;"> <ul><li><a href="/wiki/1C:Enterprise_programming_language" class="mw-redirect" title="1C:Enterprise programming language">1C:Enterprise programming language</a> (generic, imperative, object-oriented, prototype-based, functional)</li> <li><a href="/wiki/Ada_(programming_language)" title="Ada (programming language)">Ada</a> (<a href="/wiki/Concurrent_computing" title="Concurrent computing">concurrent</a>, <a href="/wiki/Distributed_computing" title="Distributed computing">distributed</a>, <a href="/wiki/Generic_programming" title="Generic programming">generic</a> (<a href="/wiki/Template_metaprogramming" title="Template metaprogramming">template metaprogramming</a>), <a href="/wiki/Imperative_programming" title="Imperative programming">imperative</a>, <a href="/wiki/Object-oriented_programming" title="Object-oriented programming">object-oriented</a> (<a href="/wiki/Class_(computer_science)" class="mw-redirect" title="Class (computer science)">class-based</a>))</li> <li><a href="/wiki/Algebraic_Logic_Functional_(programming_language)" class="mw-redirect" title="Algebraic Logic Functional (programming language)">ALF</a> (<a href="/wiki/Functional_programming" title="Functional programming">functional</a>, <a href="/wiki/Logic_programming" title="Logic programming">logic</a>)</li> <li><a href="/wiki/Alma-0" title="Alma-0">Alma-0</a> (constraint, imperative, logic)</li> <li><a href="/wiki/APL_(programming_language)" title="APL (programming language)">APL</a> (functional, imperative, object-oriented (class-based))</li> <li><a href="/wiki/BETA_(programming_language)" title="BETA (programming language)">BETA</a> (functional, imperative, object-oriented (class-based))</li> <li><a href="/wiki/C%2B%2B" title="C++">C++</a> (generic, imperative, object-oriented (class-based), functional, metaprogramming)</li> <li><a href="/wiki/C_Sharp_(programming_language)" title="C Sharp (programming language)">C#</a> (generic, imperative, object-oriented (class-based), functional, declarative)</li> <li><a href="/wiki/Ceylon_(programming_language)" title="Ceylon (programming language)">Ceylon</a> (generic, imperative, object-oriented (class-based), functional, declarative)</li> <li><a href="/wiki/ChucK" title="ChucK">ChucK</a> (imperative, object-oriented, time-based, concurrent, on-the-fly)</li> <li><a href="/wiki/Cobra_(programming_language)" title="Cobra (programming language)">Cobra</a> (generic, imperative, object-oriented (class-based), functional, contractual)</li> <li><a href="/wiki/Common_Lisp" title="Common Lisp">Common Lisp</a> (functional, imperative, object-oriented (class-based), <a href="/wiki/Aspect-oriented_programming" title="Aspect-oriented programming">aspect-oriented</a> (user may add further paradigms, e.g., logic))</li> <li><a href="/wiki/Curl_(programming_language)" title="Curl (programming language)">Curl</a> (functional, imperative, object-oriented (class-based), metaprogramming)</li> <li><a href="/wiki/Curry_(programming_language)" title="Curry (programming language)">Curry</a> (concurrent, functional, logic)</li> <li><a href="/wiki/D_(programming_language)" title="D (programming language)">D</a> (generic, imperative, functional, object-oriented (class-based), metaprogramming)</li> <li><a href="/wiki/Dart_(programming_language)" title="Dart (programming language)">Dart</a> (generic, imperative, functional, object-oriented (class-based))</li> <li><a href="/wiki/Delphi_(software)" title="Delphi (software)">Delphi</a> <a href="/wiki/Object_Pascal" title="Object Pascal">Object Pascal</a> (generic, imperative, object-oriented (class-based), metaprogramming)</li> <li><a href="/wiki/Dylan_(programming_language)" title="Dylan (programming language)">Dylan</a> (functional, object-oriented (class-based))</li> <li><a href="/wiki/ECMAScript" title="ECMAScript">ECMAScript</a> (functional, imperative, object-oriented (prototype-based)) <ul><li><a href="/wiki/ActionScript" title="ActionScript">ActionScript</a></li> <li><a href="/wiki/ECMAScript_for_XML" title="ECMAScript for XML">ECMAScript for XML</a></li> <li><a href="/wiki/JavaScript" title="JavaScript">JavaScript</a></li> <li><a href="/wiki/JScript" title="JScript">JScript</a></li></ul></li> <li><a href="/wiki/Eiffel_(programming_language)" title="Eiffel (programming language)">Eiffel</a> (imperative, object-oriented (class-based), generic, functional (agents), concurrent (SCOOP))</li> <li><a href="/wiki/F_Sharp_(programming_language)" title="F Sharp (programming language)">F#</a> (functional, generic, object-oriented (class-based), language-oriented)</li> <li><a href="/wiki/Fantom_(programming_language)" title="Fantom (programming language)">Fantom</a> (functional, object-oriented (class-based))</li> <li><a href="/wiki/Go_(programming_language)" title="Go (programming language)">Go</a>, Golang (imperative, procedural),</li> <li><a href="/wiki/Groovy_(programming_language)" class="mw-redirect" title="Groovy (programming language)">Groovy</a> (functional, object-oriented (class-based), imperative, procedural)</li> <li><a href="/wiki/Harbour_(software)" class="mw-redirect" title="Harbour (software)">Harbour</a></li> <li><a href="/wiki/Hop_(software)" title="Hop (software)">Hop</a></li> <li><a href="/wiki/J_(programming_language)" title="J (programming language)">J</a> (functional, imperative, object-oriented (class-based))</li> <li><a href="/wiki/Julia_(programming_language)" title="Julia (programming language)">Julia</a> (imperative, <a href="/wiki/Multiple_dispatch" title="Multiple dispatch">multiple dispatch</a> ("object-oriented"), functional, metaprogramming)</li> <li><a href="/wiki/LabVIEW" title="LabVIEW">LabVIEW</a> (<a href="/wiki/Visual_programming_language" title="Visual programming language">visual</a>, <a href="/wiki/Dataflow_programming" title="Dataflow programming">dataflow</a>, concurrent, modular, functional, object-oriented, scripting)</li> <li><a href="/wiki/Lua_(programming_language)" title="Lua (programming language)">Lua</a> (functional, imperative, object-oriented (<a href="/wiki/Prototype-based_programming" title="Prototype-based programming">prototype-based</a>))</li> <li><a href="/wiki/Mercury_(programming_language)" title="Mercury (programming language)">Mercury</a> (functional, logical, object-oriented)</li> <li><a href="/wiki/Metaobject" title="Metaobject">Metaobject protocols</a> (object-oriented (class-based, prototype-based))</li> <li><a href="/wiki/Nemerle" title="Nemerle">Nemerle</a> (functional, object-oriented (class-based), imperative, metaprogramming)</li> <li><a href="/wiki/Objective-C" title="Objective-C">Objective-C</a> (imperative, object-oriented (class-based), reflective)</li> <li><a href="/wiki/OCaml" title="OCaml">OCaml</a> (functional, imperative, object-oriented (class-based), modular)</li> <li><a href="/wiki/Oz_(programming_language)" title="Oz (programming language)">Oz</a> (functional (evaluation: <a href="/wiki/Eager_evaluation" class="mw-redirect" title="Eager evaluation">eager</a>, <a href="/wiki/Lazy_evaluation" title="Lazy evaluation">lazy</a>), logic, <a href="/wiki/Constraint_programming" title="Constraint programming">constraint</a>, imperative, object-oriented (class-based), concurrent, distributed), and Mozart Programming System <a href="/wiki/Cross-platform" class="mw-redirect" title="Cross-platform">cross-platform</a> Oz</li> <li><a href="/wiki/Object_Pascal" title="Object Pascal">Object Pascal</a> (imperative, object-oriented (class-based))</li> <li><a href="/wiki/Perl" title="Perl">Perl</a> (imperative, functional (can't be purely functional), object-oriented, class-oriented, aspect-oriented (through modules))</li> <li><a href="/wiki/PHP" title="PHP">PHP</a> (imperative, object-oriented, functional (can't be purely functional))</li> <li><a href="/wiki/Pike_(programming_language)" title="Pike (programming language)">Pike</a> (interpreted, general-purpose, high-level, cross-platform, dynamic programming language )</li> <li><a href="/wiki/Prograph" title="Prograph">Prograph</a> (dataflow, object-oriented (class-based), visual)</li> <li><a href="/wiki/Python_(programming_language)" title="Python (programming language)">Python</a> (functional, compiled, interpreted, object-oriented (class-based), imperative, metaprogramming, extension, impure, interactive mode, iterative, reflective, scripting)</li> <li><a href="/wiki/R_(programming_language)" title="R (programming language)">R</a> (array, interpreted, impure, interactive mode, list-based, object-oriented prototype-based, scripting)</li> <li><a href="/wiki/Racket_(programming_language)" title="Racket (programming language)">Racket</a> (functional, imperative, object-oriented (class-based) and can be extended by the user)</li> <li><a href="/wiki/Raku_(programming_language)" title="Raku (programming language)">Raku</a> (concurrent, concatenative, functional, metaprogramming generic, imperative, reflection object-oriented, pipelines, reactive, and via libraries constraints, distributed)</li> <li><a href="/wiki/Rebol" title="Rebol">Rebol</a> (functional, imperative, object-oriented (prototype-based), metaprogramming (dialected))</li> <li><a href="/wiki/Red_(programming_language)" title="Red (programming language)">Red</a> (functional, imperative, object-oriented (prototype-based), metaprogramming (dialected))</li> <li><a href="/wiki/ROOP_(programming_language)" title="ROOP (programming language)">ROOP</a> (imperative, logic, object-oriented (class-based), rule-based)</li> <li><a href="/wiki/Ring_(programming_language)" title="Ring (programming language)">Ring</a> (imperative, functional, object-oriented (class-based), metaprogramming, declarative, natural)</li> <li><a href="/wiki/Ruby_(programming_language)" title="Ruby (programming language)">Ruby</a> (imperative, functional, object-oriented (class-based), metaprogramming)</li> <li><a href="/wiki/Rust_(programming_language)" title="Rust (programming language)">Rust</a> (concurrent, functional, imperative, object-oriented, generic, metaprogramming, compiled)</li> <li><a href="/wiki/Scala_(programming_language)" title="Scala (programming language)">Scala</a> (functional, object-oriented)</li> <li><a href="/wiki/Seed7" title="Seed7">Seed7</a> (imperative, object-oriented, generic)</li> <li><a href="/wiki/SISAL" title="SISAL">SISAL</a> (concurrent, dataflow, functional)</li> <li><a href="/wiki/Spreadsheet" title="Spreadsheet">Spreadsheets</a> (functional, visual)</li> <li><a href="/wiki/Swift_(programming_language)" title="Swift (programming language)">Swift</a> (protocol-oriented, object-oriented, functional, imperative, block-structured)</li> <li><a href="/wiki/Tcl" title="Tcl">Tcl</a> (functional, imperative, object-oriented (class-based)) <ul><li><a href="/wiki/Tea_(programming_language)" title="Tea (programming language)">Tea</a> (functional, imperative, object-oriented (class-based))</li></ul></li> <li><a href="/wiki/V_(programming_language)" title="V (programming language)">V (Vlang)</a> (functional, imperative, procedural, structured, concurrent)</li> <li><a href="/wiki/Windows_PowerShell" class="mw-redirect" title="Windows PowerShell">Windows PowerShell</a> (functional, imperative, pipeline, object-oriented (class-based))</li> <li><a href="/wiki/Wolfram_Mathematica" title="Wolfram Mathematica">Wolfram Mathematica</a> (<a href="/wiki/Wolfram_language" class="mw-redirect" title="Wolfram language">Wolfram language</a>)</li></ul> </div> <div class="mw-heading mw-heading2"><h2 id="Numerical_analysis">Numerical analysis</h2><span class="mw-editsection"><span class="mw-editsection-bracket">[</span><a href="/w/index.php?title=List_of_programming_languages_by_type&action=edit&section=50" title="Edit section: Numerical analysis"><span>edit</span></a><span class="mw-editsection-bracket">]</span></span></div> <p>Several general-purpose programming languages, such as <a href="/wiki/C_(programming_language)" title="C (programming language)">C</a> and <a href="/wiki/Python_(programming_language)" title="Python (programming language)">Python</a>, are also used for technical computing, this list focuses on languages almost exclusively used for technical computing. </p> <link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r1184024115"><div class="div-col"> <ul><li><a href="/wiki/AIMMS" title="AIMMS">AIMMS</a></li> <li><a href="/wiki/AMPL_(programming_language)" class="mw-redirect" title="AMPL (programming language)">AMPL</a></li> <li><a href="/wiki/Analytica_(software)" title="Analytica (software)">Analytica</a></li> <li><a href="/wiki/Fortran" title="Fortran">Fortran</a></li> <li><a href="/wiki/FreeMat" title="FreeMat">FreeMat</a></li> <li><a href="/wiki/GAUSS_(software)" title="GAUSS (software)">GAUSS</a></li> <li><a href="/wiki/General_Algebraic_Modeling_System" class="mw-redirect" title="General Algebraic Modeling System">GAMS</a></li> <li><a href="/wiki/GNU_Octave" title="GNU Octave">GNU Octave</a></li> <li><a href="/wiki/Julia_(programming_language)" title="Julia (programming language)">Julia</a></li> <li><a href="/wiki/Klerer-May_System" class="mw-redirect" title="Klerer-May System">Klerer-May System</a></li> <li><a href="/wiki/MATLAB" title="MATLAB">MATLAB</a></li> <li><a href="/wiki/PROSE_modeling_language" title="PROSE modeling language">PROSE</a></li> <li><a href="/wiki/R_(programming_language)" title="R (programming language)">R</a></li> <li><a href="/wiki/Oberon_(programming_language)" title="Oberon (programming language)">Seneca</a> – an <a href="/wiki/Oberon_(programming_language)" title="Oberon (programming language)">Oberon</a> variant</li> <li><a href="/wiki/Scilab" title="Scilab">Scilab</a></li> <li><a href="/wiki/Speakeasy_(computational_environment)" title="Speakeasy (computational environment)">Speakeasy</a></li> <li><a href="/wiki/Wolfram_Mathematica" title="Wolfram Mathematica">Wolfram Mathematica</a> (<a href="/wiki/Wolfram_language" class="mw-redirect" title="Wolfram language">Wolfram language</a>)</li></ul> </div> <div class="mw-heading mw-heading2"><h2 id="Non-English-based_languages">Non-English-based languages</h2><span class="mw-editsection"><span class="mw-editsection-bracket">[</span><a href="/w/index.php?title=List_of_programming_languages_by_type&action=edit&section=51" title="Edit section: Non-English-based languages"><span>edit</span></a><span class="mw-editsection-bracket">]</span></span></div> <link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r1236090951"><div role="note" class="hatnote navigation-not-searchable">Main article: <a href="/wiki/Non-English-based_programming_languages" title="Non-English-based programming languages">Non-English-based programming languages</a></div> <ul><li><a href="/wiki/Chinese_BASIC" title="Chinese BASIC">Chinese BASIC</a> (Chinese)</li> <li><a href="/wiki/Fj%C3%B6lnir_(programming_language)" title="Fjölnir (programming language)">Fjölnir</a> (Icelandic)</li> <li><a href="/wiki/LSE_(programming_language)" title="LSE (programming language)">Language Symbolique d'Enseignement</a> (French)</li> <li><a href="/wiki/Rapira" title="Rapira">Rapira</a> (Russian)</li> <li><a href="/wiki/Ezhil_(programming_language)" title="Ezhil (programming language)">ezhil</a> (Tamil)</li></ul> <div class="mw-heading mw-heading2"><h2 id="Object-oriented_class-based_languages">Object-oriented class-based languages</h2><span class="mw-editsection"><span class="mw-editsection-bracket">[</span><a href="/w/index.php?title=List_of_programming_languages_by_type&action=edit&section=52" title="Edit section: Object-oriented class-based languages"><span>edit</span></a><span class="mw-editsection-bracket">]</span></span></div> <p><a href="/wiki/Class_(computer_programming)" title="Class (computer programming)">Class</a>-based <a href="/wiki/Object-oriented_programming" title="Object-oriented programming">object-oriented programming</a> languages support <a href="/wiki/Object_(computer_science)" title="Object (computer science)">objects</a> defined by their class. Class definitions include member data. <a href="/wiki/Message_passing" title="Message passing">Message passing</a> is a key concept, if not the main concept, in object-oriented languages. </p><p>Polymorphic functions parameterized by the class of some of their arguments are typically called <a href="/wiki/Method_(computer_programming)" title="Method (computer programming)">methods</a>. In languages with <a href="/wiki/Single_dispatch" class="mw-redirect" title="Single dispatch">single dispatch</a>, classes typically also include method definitions. In languages with <a href="/wiki/Multiple_dispatch" title="Multiple dispatch">multiple dispatch</a>, methods are defined by <a href="/wiki/Generic_function" title="Generic function">generic functions</a>. There are exceptions where <a href="/wiki/Single_dispatch" class="mw-redirect" title="Single dispatch">single dispatch</a> methods are <a href="/wiki/Generic_function" title="Generic function">generic functions</a> (e.g. <a href="/wiki/Bigloo" title="Bigloo">Bigloo</a>'s object system). </p> <div class="mw-heading mw-heading3"><h3 id="Multiple_dispatch"><a href="/wiki/Multiple_dispatch" title="Multiple dispatch">Multiple dispatch</a></h3><span class="mw-editsection"><span class="mw-editsection-bracket">[</span><a href="/w/index.php?title=List_of_programming_languages_by_type&action=edit&section=53" title="Edit section: Multiple dispatch"><span>edit</span></a><span class="mw-editsection-bracket">]</span></span></div> <link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r1184024115"><div class="div-col" style="column-width: 10em;"> <ul><li><a href="/wiki/Common_Lisp" title="Common Lisp">Common Lisp</a></li> <li><a href="/wiki/Cecil_(programming_language)" title="Cecil (programming language)">Cecil</a></li> <li><a href="/wiki/Dylan_(programming_language)" title="Dylan (programming language)">Dylan</a></li> <li><a href="/wiki/Julia_(programming_language)" title="Julia (programming language)">Julia</a><sup id="cite_ref-33" class="reference"><a href="#cite_note-33"><span class="cite-bracket">[</span>d<span class="cite-bracket">]</span></a></sup></li> <li><a href="/wiki/Raku_(programming_language)" title="Raku (programming language)">Raku</a><sup id="cite_ref-34" class="reference"><a href="#cite_note-34"><span class="cite-bracket">[</span>30<span class="cite-bracket">]</span></a></sup></li></ul> </div> <div class="mw-heading mw-heading3"><h3 id="Single_dispatch">Single dispatch</h3><span class="mw-editsection"><span class="mw-editsection-bracket">[</span><a href="/w/index.php?title=List_of_programming_languages_by_type&action=edit&section=54" title="Edit section: Single dispatch"><span>edit</span></a><span class="mw-editsection-bracket">]</span></span></div> <link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r1184024115"><div class="div-col" style="column-width: 20em;"> <ul><li><a href="/wiki/ActionScript" title="ActionScript">ActionScript 3.0</a></li> <li><a href="/wiki/Actor_(programming_language)" title="Actor (programming language)">Actor</a></li> <li><a href="/wiki/Ada_(programming_language)" title="Ada (programming language)">Ada 95</a> and <a href="/wiki/Ada_(programming_language)" title="Ada (programming language)">Ada 2005</a> (multi-purpose language)</li> <li><a href="/wiki/APL_(programming_language)" title="APL (programming language)">APL</a></li> <li><a href="/wiki/BETA_(programming_language)" title="BETA (programming language)">BETA</a></li> <li><a href="/wiki/C%2B%2B" title="C++">C++</a></li> <li><a href="/wiki/C_Sharp_(programming_language)" title="C Sharp (programming language)">C#</a></li> <li><a href="/wiki/Ceylon_(programming_language)" title="Ceylon (programming language)">Ceylon</a></li> <li><a href="/wiki/Dart_(programming_language)" title="Dart (programming language)">Dart</a></li> <li><a href="/wiki/Oxygene_(programming_language)" title="Oxygene (programming language)">Oxygene</a> (formerly named Chrome)</li> <li><a href="/wiki/ChucK" title="ChucK">ChucK</a></li> <li><a href="/wiki/Cobra_(programming_language)" title="Cobra (programming language)">Cobra</a></li> <li><a href="/wiki/ColdFusion" class="mw-redirect" title="ColdFusion">ColdFusion</a></li> <li><a href="/wiki/Curl_(programming_language)" title="Curl (programming language)">Curl</a></li> <li><a href="/wiki/D_(programming_language)" title="D (programming language)">D</a></li> <li>Distributed Application Specification Language (DASL)</li> <li><a href="/wiki/Delphi_(software)" title="Delphi (software)">Delphi</a> <a href="/wiki/Object_Pascal" title="Object Pascal">Object Pascal</a></li> <li><a href="/wiki/E_(programming_language)" title="E (programming language)">E</a></li> <li><a href="/wiki/GNU_E" title="GNU E">GNU E</a></li> <li><a href="/wiki/Eiffel_(programming_language)" title="Eiffel (programming language)">Eiffel</a> <ul><li><a href="/wiki/Sather" title="Sather">Sather</a></li> <li><a href="/wiki/Ubercode" title="Ubercode">Ubercode</a></li></ul></li> <li><a href="/wiki/Fortran_2003" class="mw-redirect" title="Fortran 2003">Fortran 2003</a></li> <li><a href="/wiki/Fortress_(programming_language)" title="Fortress (programming language)">Fortress</a></li> <li><a href="/wiki/Gambas" title="Gambas">Gambas</a></li> <li><a href="/wiki/GameMaker:_Studio" class="mw-redirect" title="GameMaker: Studio">Game Maker Language</a></li> <li><a href="/wiki/Harbour_(software)" class="mw-redirect" title="Harbour (software)">Harbour</a></li> <li><a href="/wiki/J_(programming_language)" title="J (programming language)">J</a></li> <li><a href="/wiki/Java_(programming_language)" title="Java (programming language)">Java</a> <ul><li><a href="/wiki/Processing_(programming_language)" class="mw-redirect" title="Processing (programming language)">Processing</a></li> <li><a href="/wiki/Groovy_(programming_language)" class="mw-redirect" title="Groovy (programming language)">Groovy</a></li> <li><a href="/wiki/Join_Java" class="mw-redirect" title="Join Java">Join Java</a></li> <li><a href="/wiki/Tea_(programming_language)" title="Tea (programming language)">Tea</a></li> <li><a href="/wiki/X10_(programming_language)" title="X10 (programming language)">X10</a></li></ul></li> <li><a href="/wiki/LabVIEW" title="LabVIEW">LabVIEW</a></li> <li><a href="/wiki/Lua_(programming_language)" title="Lua (programming language)">Lua</a></li> <li><a href="/wiki/Modula-2" title="Modula-2">Modula-2</a> (data abstraction, information hiding, strong typing, full modularity) <ul><li><a href="/wiki/Modula-3" title="Modula-3">Modula-3</a> (added more object-oriented features to Modula-2)</li></ul></li> <li><a href="/wiki/Nemerle" title="Nemerle">Nemerle</a></li> <li><a href="/wiki/NetRexx" title="NetRexx">NetRexx</a></li> <li><a href="/wiki/Oberon-2" title="Oberon-2">Oberon-2</a> (full object-orientation equivalence in an original, strongly typed, Wirthian manner)</li> <li><a href="/wiki/Object_Pascal" title="Object Pascal">Object Pascal</a></li> <li><a href="/wiki/Object_REXX" title="Object REXX">Object REXX</a></li> <li><a href="/wiki/Objective-C" title="Objective-C">Objective-C</a> (a superset of C adding a <a href="/wiki/Smalltalk" title="Smalltalk">Smalltalk</a> derived object model and message passing syntax)</li> <li><a href="/wiki/OCaml" title="OCaml">OCaml</a></li> <li><a href="/wiki/OpenEdge_Advanced_Business_Language" title="OpenEdge Advanced Business Language">OpenEdge Advanced Business Language</a> (ABL)</li> <li><a href="/wiki/Oz_(programming_language)" title="Oz (programming language)">Oz, Mozart Programming System</a></li> <li><a href="/wiki/Perl" title="Perl">Perl</a> 5</li> <li><a href="/wiki/PHP" title="PHP">PHP</a></li> <li><a href="/wiki/Pike_(programming_language)" title="Pike (programming language)">Pike</a></li> <li><a href="/wiki/Prograph" title="Prograph">Prograph</a></li> <li><a href="/wiki/Python_(programming_language)" title="Python (programming language)">Python</a> (interpretive language, optionally object-oriented)</li> <li><a href="/wiki/Revolution_(programming_language)" class="mw-redirect" title="Revolution (programming language)">Revolution</a> (programmer does not get to pick the objects)</li> <li><a href="/wiki/Ring_(programming_language)" title="Ring (programming language)">Ring</a></li> <li><a href="/wiki/Ruby_(programming_language)" title="Ruby (programming language)">Ruby</a></li> <li><a href="/wiki/Scala_(programming_language)" title="Scala (programming language)">Scala</a></li> <li><a href="/wiki/Speakeasy_(computational_environment)" title="Speakeasy (computational environment)">Speakeasy</a></li> <li><a href="/wiki/Simula" title="Simula">Simula</a> (first object-oriented language, developed by <a href="/wiki/Ole-Johan_Dahl" title="Ole-Johan Dahl">Ole-Johan Dahl</a> and <a href="/wiki/Kristen_Nygaard" title="Kristen Nygaard">Kristen Nygaard</a>)</li> <li><a href="/wiki/Smalltalk" title="Smalltalk">Smalltalk</a> (pure object-orientation, developed at <a href="/wiki/PARC_(company)" title="PARC (company)">Xerox PARC</a>) <ul><li><a href="/wiki/Little_Smalltalk" class="mw-redirect" title="Little Smalltalk">Little Smalltalk</a></li> <li><a href="/wiki/Pharo" title="Pharo">Pharo</a></li> <li><a href="/wiki/Squeak" title="Squeak">Squeak</a> <ul><li><a href="/wiki/Scratch_(programming_language)" title="Scratch (programming language)">Scratch</a></li></ul></li> <li><a href="/wiki/IBM_VisualAge" class="mw-redirect" title="IBM VisualAge">IBM VisualAge</a></li> <li><a href="/wiki/VisualWorks" title="VisualWorks">VisualWorks</a></li></ul></li> <li><a href="/wiki/Parallax_Propeller" title="Parallax Propeller">SPIN</a></li> <li><a href="/wiki/SuperCollider" title="SuperCollider">SuperCollider</a></li> <li><a href="/wiki/VBScript" title="VBScript">VBScript</a> (Microsoft Office 'macro scripting' language)</li> <li><a href="/wiki/Visual_DataFlex" class="mw-redirect" title="Visual DataFlex">Visual DataFlex</a></li> <li><a href="/wiki/Visual_FoxPro" title="Visual FoxPro">Visual FoxPro</a></li> <li><a href="/wiki/Visual_Prolog" title="Visual Prolog">Visual Prolog</a></li> <li><a href="/wiki/Microsoft_Dynamics_AX" class="mw-redirect" title="Microsoft Dynamics AX">X++</a></li> <li><a href="/wiki/Xojo" title="Xojo">Xojo</a></li> <li><a href="/wiki/XOTcl" title="XOTcl">XOTcl</a></li></ul> </div> <div class="mw-heading mw-heading2"><h2 id="Object-oriented_prototype-based_languages">Object-oriented prototype-based languages</h2><span class="mw-editsection"><span class="mw-editsection-bracket">[</span><a href="/w/index.php?title=List_of_programming_languages_by_type&action=edit&section=55" title="Edit section: Object-oriented prototype-based languages"><span>edit</span></a><span class="mw-editsection-bracket">]</span></span></div> <p><a href="/wiki/Prototype-based_programming" title="Prototype-based programming">Prototype-based languages</a> are object-oriented languages where the distinction between classes and instances has been removed: </p> <link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r1184024115"><div class="div-col" style="column-width: 20em;"> <ul><li><a href="/wiki/1C:Enterprise_programming_language" class="mw-redirect" title="1C:Enterprise programming language">1C:Enterprise programming language</a></li> <li><a href="/wiki/Actor-Based_Concurrent_Language" title="Actor-Based Concurrent Language">Actor-Based Concurrent Language</a> (ABCL, ABCL/1, ABCL/R, ABCL/R2, ABCL/c+)</li> <li><a href="/wiki/Agora_(programming_language)" title="Agora (programming language)">Agora</a></li> <li><a href="/wiki/Cecil_(programming_language)" title="Cecil (programming language)">Cecil</a></li> <li><a href="/wiki/ECMAScript" title="ECMAScript">ECMAScript</a> <ul><li><a href="/wiki/ActionScript" title="ActionScript">ActionScript</a></li> <li><a href="/wiki/ECMAScript_for_XML" title="ECMAScript for XML">ECMAScript for XML</a></li> <li><a href="/wiki/JavaScript" title="JavaScript">JavaScript</a> (first named Mocha, then LiveScript)</li> <li><a href="/wiki/JScript" title="JScript">JScript</a></li></ul></li> <li><a href="/wiki/Etoys_(programming_language)" title="Etoys (programming language)">Etoys</a> in <a href="/wiki/Squeak" title="Squeak">Squeak</a></li> <li><a href="/wiki/Io_(programming_language)" title="Io (programming language)">Io</a></li> <li><a href="/wiki/Lua_(programming_language)" title="Lua (programming language)">Lua</a></li> <li><a href="/wiki/MOO_(programming_language)" class="mw-redirect" title="MOO (programming language)">MOO</a></li> <li><a href="/wiki/NewtonScript" title="NewtonScript">NewtonScript</a></li> <li><a href="/wiki/Obliq" title="Obliq">Obliq</a></li> <li><a href="/wiki/R_(programming_language)" title="R (programming language)">R</a></li> <li><a href="/wiki/Rebol" title="Rebol">Rebol</a></li> <li><a href="/wiki/Red_(programming_language)" title="Red (programming language)">Red</a></li> <li><a href="/wiki/Self_(programming_language)" title="Self (programming language)">Self</a> (first prototype-based language, derived from <a href="/wiki/Smalltalk" title="Smalltalk">Smalltalk</a>)</li> <li><a href="/wiki/TADS" class="mw-redirect" title="TADS">TADS</a></li></ul> </div> <div class="mw-heading mw-heading2"><h2 id="Off-side_rule_languages">Off-side rule languages</h2><span class="mw-editsection"><span class="mw-editsection-bracket">[</span><a href="/w/index.php?title=List_of_programming_languages_by_type&action=edit&section=56" title="Edit section: Off-side rule languages"><span>edit</span></a><span class="mw-editsection-bracket">]</span></span></div> <link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r1236090951"><div role="note" class="hatnote navigation-not-searchable">Main article: <a href="/wiki/Off-side_rule#Off-side_rule_languages" title="Off-side rule">Off-side rule § Off-side rule languages</a></div> <p><a href="/wiki/Off-side_rule" title="Off-side rule">Off-side rule</a> languages denote blocks of code by their <a href="/wiki/Indentation_style" title="Indentation style">indentation</a>. </p> <link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r1184024115"><div class="div-col" style="column-width: 20em;"> <ul><li><a href="/wiki/ISWIM" title="ISWIM">ISWIM</a>, the abstract language that introduced the rule</li> <li><a href="/wiki/ABC_(programming_language)" title="ABC (programming language)">ABC</a>, Python's parent <ul><li><a href="/wiki/Python_(programming_language)" title="Python (programming language)">Python</a> <ul><li><a href="/wiki/Cobra_(programming_language)" title="Cobra (programming language)">Cobra</a></li> <li><a href="/wiki/Boo_(programming_language)" title="Boo (programming language)">Boo</a></li></ul></li></ul></li> <li><a href="/wiki/Miranda_(programming_language)" title="Miranda (programming language)">Miranda</a>, Haskell's parent <ul><li><a href="/wiki/Orwell_(programming_language)" title="Orwell (programming language)">Orwell</a></li> <li><a href="/wiki/Haskell" title="Haskell">Haskell</a> <ul><li><a href="/wiki/Curry_(programming_language)" title="Curry (programming language)">Curry</a></li></ul></li></ul></li> <li><a href="/wiki/Elixir_(programming_language)" title="Elixir (programming language)">Elixir</a> (, do: blocks)</li> <li><a href="/wiki/F_Sharp_(programming_language)" title="F Sharp (programming language)">F#</a></li> <li><a href="/wiki/Nemerle" title="Nemerle">Nemerle</a> (off-side optional)<sup id="cite_ref-nemerle-offside_9-1" class="reference"><a href="#cite_note-nemerle-offside-9"><span class="cite-bracket">[</span>9<span class="cite-bracket">]</span></a></sup></li> <li><a href="/wiki/Nim_(programming_language)" title="Nim (programming language)">Nim</a></li> <li><a href="/wiki/Occam_(programming_language)" title="Occam (programming language)">Occam</a></li> <li><a href="/wiki/Parallax_Propeller" title="Parallax Propeller">SPIN</a></li> <li><a href="/wiki/Scala_(programming_language)" title="Scala (programming language)">Scala</a> (off-side optional)</li></ul> </div> <div class="mw-heading mw-heading2"><h2 id="Procedural_languages">Procedural languages</h2><span class="mw-editsection"><span class="mw-editsection-bracket">[</span><a href="/w/index.php?title=List_of_programming_languages_by_type&action=edit&section=57" title="Edit section: Procedural languages"><span>edit</span></a><span class="mw-editsection-bracket">]</span></span></div> <p><a href="/wiki/Procedural_programming" title="Procedural programming">Procedural programming</a> languages are based on the concept of the unit and scope (the data viewing range) of an executable code statement. A procedural program is composed of one or more units or modules, either user coded or provided in a code library; each module is composed of one or more procedures, also called a function, routine, subroutine, or method, depending on the language. Examples of procedural languages include: </p> <link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r1184024115"><div class="div-col" style="column-width: 15em;"> <ul><li><a href="/wiki/Ada_(programming_language)" title="Ada (programming language)">Ada</a> (multi-purpose language)</li> <li><a href="/wiki/ALGOL_58" title="ALGOL 58">ALGOL 58</a> <ul><li><a href="/wiki/JOVIAL" title="JOVIAL">JOVIAL</a></li> <li><a href="/wiki/NELIAC" title="NELIAC">NELIAC</a></li></ul></li> <li><a href="/wiki/ALGOL_60" title="ALGOL 60">ALGOL 60</a> (very influential language design) <ul><li><a href="/wiki/SMALL" title="SMALL">SMALL</a> Machine ALGOL Like Language</li></ul></li> <li><a href="/wiki/ALGOL_68" title="ALGOL 68">ALGOL 68</a></li> <li><a href="/wiki/Alma-0" title="Alma-0">Alma-0</a></li> <li><a href="/wiki/BASIC" title="BASIC">BASIC</a> (these lack most modularity in (especially) versions before about 1990)</li> <li><a href="/wiki/BCPL" title="BCPL">BCPL</a></li> <li><a href="/wiki/BLISS" title="BLISS">BLISS</a></li> <li><a href="/wiki/C_(programming_language)" title="C (programming language)">C</a></li> <li><a href="/wiki/C%2B%2B" title="C++">C++</a></li> <li><a href="/wiki/C_Sharp_(programming_language)" title="C Sharp (programming language)">C#</a> (similar to Java/C++)</li> <li><a href="/wiki/Ceylon_(programming_language)" title="Ceylon (programming language)">Ceylon</a></li> <li><a href="/wiki/CHILL" title="CHILL">CHILL</a></li> <li><a href="/wiki/ChucK" title="ChucK">ChucK</a> (C/Java-like syntax, with new syntax elements for time and parallelism)</li> <li><a href="/wiki/COBOL" title="COBOL">COBOL</a></li> <li><a href="/wiki/Cobra_(programming_language)" title="Cobra (programming language)">Cobra</a></li> <li><a href="/wiki/ColdFusion" class="mw-redirect" title="ColdFusion">ColdFusion</a></li> <li><a href="/wiki/CPL_(programming_language)" title="CPL (programming language)">CPL</a> (Combined Programming Language)</li> <li><a href="/wiki/Curl_(programming_language)" title="Curl (programming language)">Curl</a></li> <li><a href="/wiki/D_(programming_language)" title="D (programming language)">D</a></li> <li>Distributed Application Specification Language (DASL) (combine <a href="/wiki/Declarative_programming" title="Declarative programming">declarative programming</a> and <a href="/wiki/Imperative_programming" title="Imperative programming">imperative programming</a>)</li> <li><a href="/wiki/ECMAScript" title="ECMAScript">ECMAScript</a> <ul><li><a href="/wiki/ActionScript" title="ActionScript">ActionScript</a></li> <li><a href="/wiki/ECMAScript_for_XML" title="ECMAScript for XML">ECMAScript for XML</a></li> <li><a href="/wiki/JavaScript" title="JavaScript">JavaScript</a> (first named Mocha, then LiveScript)</li> <li><a href="/wiki/JScript" title="JScript">JScript</a></li> <li><a href="/wiki/Source_(programming_language)" title="Source (programming language)">Source</a></li></ul></li> <li><a href="/wiki/Eiffel_(programming_language)" title="Eiffel (programming language)">Eiffel</a></li> <li><a href="/wiki/Forth_(programming_language)" title="Forth (programming language)">Forth</a></li> <li><a href="/wiki/Fortran" title="Fortran">Fortran</a> (better modularity in later Standards) <ul><li><a href="/wiki/F_(programming_language)" title="F (programming language)">F</a></li></ul></li> <li><a href="/wiki/GAUSS_(software)" title="GAUSS (software)">GAUSS</a></li> <li><a href="/wiki/Go_(programming_language)" title="Go (programming language)">Go</a></li> <li><a href="/wiki/Harbour_(software)" class="mw-redirect" title="Harbour (software)">Harbour</a></li> <li><a href="/wiki/HyperTalk" title="HyperTalk">HyperTalk</a></li> <li><a href="/wiki/Java_(programming_language)" title="Java (programming language)">Java</a> <ul><li><a href="/wiki/Groovy_(programming_language)" class="mw-redirect" title="Groovy (programming language)">Groovy</a></li> <li><a href="/wiki/Join_Java" class="mw-redirect" title="Join Java">Join Java</a></li> <li><a href="/wiki/Tea_(programming_language)" title="Tea (programming language)">Tea</a></li></ul></li> <li><a href="/wiki/JOVIAL" title="JOVIAL">JOVIAL</a></li> <li><a href="/wiki/Julia_(programming_language)" title="Julia (programming language)">Julia</a></li> <li><a href="/wiki/Language_H" title="Language H">Language H</a></li> <li><a href="/wiki/Lasso_(programming_language)" title="Lasso (programming language)">Lasso</a></li> <li><a href="/wiki/Modula-2" title="Modula-2">Modula-2</a> (fundamentally based on modules)</li> <li><a href="/wiki/MATLAB" title="MATLAB">MATLAB</a></li> <li><a href="/wiki/Mesa" title="Mesa">Mesa</a></li> <li><a href="/wiki/MUMPS" title="MUMPS">MUMPS</a> (first release was more modular than other languages of the time; the standard has become even more modular since then)</li> <li><a href="/wiki/Nemerle" title="Nemerle">Nemerle</a></li> <li><a href="/wiki/Nim_(programming_language)" title="Nim (programming language)">Nim</a></li> <li><a href="/wiki/Oberon_(programming_language)" title="Oberon (programming language)">Oberon</a>, <a href="/wiki/Oberon-2" title="Oberon-2">Oberon-2</a> (improved, smaller, faster, safer follow-ons for Modula-2) <ul><li><a href="/wiki/Component_Pascal" title="Component Pascal">Component Pascal</a></li> <li><a href="/wiki/Oberon_(programming_language)" title="Oberon (programming language)">Seneca</a></li></ul></li> <li><a href="/wiki/OCaml" title="OCaml">OCaml</a></li> <li><a href="/wiki/Occam_(programming_language)" title="Occam (programming language)">Occam</a></li> <li><a href="/wiki/Oriel_(scripting_language)" title="Oriel (scripting language)">Oriel</a></li> <li><a href="/wiki/Pascal_(programming_language)" title="Pascal (programming language)">Pascal</a> (successor to ALGOL 60, predecessor of Modula-2) <ul><li><a href="/wiki/Free_Pascal" title="Free Pascal">Free Pascal</a> (FPC)</li> <li><a href="/wiki/Object_Pascal" title="Object Pascal">Object Pascal</a>, <a href="/wiki/Delphi_(software)" title="Delphi (software)">Delphi</a></li></ul></li> <li><a href="/wiki/PCASTL" title="PCASTL">PCASTL</a></li> <li><a href="/wiki/Perl" title="Perl">Perl</a></li> <li><a href="/wiki/Pike_(programming_language)" title="Pike (programming language)">Pike</a></li> <li><a href="/wiki/PL/C" title="PL/C">PL/C</a></li> <li><a href="/wiki/PL/I" title="PL/I">PL/I</a> (large general-purpose language, originally for IBM mainframes)</li> <li><a href="/wiki/Plus_(programming_language)" title="Plus (programming language)">Plus</a></li> <li><a href="/wiki/PowerShell" title="PowerShell">PowerShell</a></li> <li><a href="/wiki/PROSE_modeling_language" title="PROSE modeling language">PROSE</a></li> <li><a href="/wiki/Python_(programming_language)" title="Python (programming language)">Python</a></li> <li><a href="/wiki/R_(programming_language)" title="R (programming language)">R</a></li> <li><a href="/wiki/Raku_(programming_language)" title="Raku (programming language)">Raku</a></li> <li><a href="/wiki/Rapira" title="Rapira">Rapira</a></li> <li><a href="/wiki/IBM_RPG" title="IBM RPG">RPG</a></li> <li><a href="/wiki/Rust_(programming_language)" title="Rust (programming language)">Rust</a></li> <li><a href="/wiki/S-Lang" title="S-Lang">S-Lang</a></li> <li><a href="/wiki/VBScript" title="VBScript">VBScript</a></li> <li><a href="/wiki/Visual_Basic" title="Visual Basic">Visual Basic</a></li> <li><a href="/wiki/Visual_FoxPro" title="Visual FoxPro">Visual FoxPro</a></li> <li><a href="/wiki/Wolfram_Mathematica" title="Wolfram Mathematica">Wolfram Mathematica</a> (<a href="/wiki/Wolfram_language" class="mw-redirect" title="Wolfram language">Wolfram language</a>)</li> <li><a href="/wiki/Microsoft_Dynamics_AX" class="mw-redirect" title="Microsoft Dynamics AX">Microsoft Dynamics AX</a> (X++)</li></ul> </div> <div class="mw-heading mw-heading2"><h2 id="Query_languages">Query languages</h2><span class="mw-editsection"><span class="mw-editsection-bracket">[</span><a href="/w/index.php?title=List_of_programming_languages_by_type&action=edit&section=58" title="Edit section: Query languages"><span>edit</span></a><span class="mw-editsection-bracket">]</span></span></div> <link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r1236090951"><div role="note" class="hatnote navigation-not-searchable">Main article: <a href="/wiki/Query_language" title="Query language">Query language</a></div> <div class="mw-heading mw-heading2"><h2 id="Reflective_languages">Reflective languages</h2><span class="mw-editsection"><span class="mw-editsection-bracket">[</span><a href="/w/index.php?title=List_of_programming_languages_by_type&action=edit&section=59" title="Edit section: Reflective languages"><span>edit</span></a><span class="mw-editsection-bracket">]</span></span></div> <p><a href="/wiki/Reflective_programming" title="Reflective programming">Reflective programming</a> languages let programs examine and possibly modify their high-level structure at runtime or compile-time. This is most common in high-level virtual machine programming languages like <a href="/wiki/Smalltalk" title="Smalltalk">Smalltalk</a>, and less common in lower-level programming languages like <a href="/wiki/C_(programming_language)" title="C (programming language)">C</a>. Languages and platforms supporting reflection: </p> <link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r1236090951"><div role="note" class="hatnote navigation-not-searchable">See also: <a href="/wiki/Aspect-oriented_programming" title="Aspect-oriented programming">Aspect-oriented programming</a></div> <link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r1184024115"><div class="div-col" style="column-width: 20em;"> <ul><li><a href="/wiki/Befunge" title="Befunge">Befunge</a></li> <li><a href="/wiki/Ceylon_(programming_language)" title="Ceylon (programming language)">Ceylon</a></li> <li><a href="/wiki/Charm_(language)" class="mw-redirect" title="Charm (language)">Charm</a></li> <li><a href="/wiki/ChucK" title="ChucK">ChucK</a></li> <li><a href="/wiki/List_of_CLI_languages" title="List of CLI languages">CLI</a> <ul><li><a href="/wiki/C_Sharp_(programming_language)" title="C Sharp (programming language)">C#</a></li></ul></li> <li><a href="/wiki/Cobra_(programming_language)" title="Cobra (programming language)">Cobra</a></li> <li><a href="/wiki/Component_Pascal" title="Component Pascal">Component Pascal</a> <a href="/wiki/BlackBox_Component_Builder" title="BlackBox Component Builder">BlackBox Component Builder</a></li> <li><a href="/wiki/Curl_(programming_language)" title="Curl (programming language)">Curl</a></li> <li><a href="/wiki/Cypher_(query_language)" title="Cypher (query language)">Cypher</a></li> <li><a href="/wiki/Delphi_(software)" title="Delphi (software)">Delphi</a> <a href="/wiki/Object_Pascal" title="Object Pascal">Object Pascal</a></li> <li><a href="/wiki/ECMAScript" title="ECMAScript">ECMAScript</a> <ul><li><a href="/wiki/ActionScript" title="ActionScript">ActionScript</a></li> <li><a href="/wiki/ECMAScript_for_XML" title="ECMAScript for XML">ECMAScript for XML</a></li> <li><a href="/wiki/JavaScript" title="JavaScript">JavaScript</a></li> <li><a href="/wiki/JScript" title="JScript">JScript</a></li></ul></li> <li><a href="/wiki/Emacs_Lisp" title="Emacs Lisp">Emacs Lisp</a></li> <li><a href="/wiki/Eiffel_(programming_language)" title="Eiffel (programming language)">Eiffel</a></li> <li><a href="/wiki/Harbour_(software)" class="mw-redirect" title="Harbour (software)">Harbour</a></li> <li><a href="/wiki/Julia_(programming_language)" title="Julia (programming language)">Julia</a></li> <li><a href="/wiki/List_of_JVM_languages" title="List of JVM languages">JVM</a> <ul><li><a href="/wiki/Java_(programming_language)" title="Java (programming language)">Java</a></li> <li><a href="/wiki/Groovy_(programming_language)" class="mw-redirect" title="Groovy (programming language)">Groovy</a></li> <li><a href="/wiki/Join_Java" class="mw-redirect" title="Join Java">Join Java</a></li> <li><a href="/wiki/X10_(programming_language)" title="X10 (programming language)">X10</a></li></ul></li> <li><a href="/wiki/Lisp_(programming_language)" title="Lisp (programming language)">Lisp</a> <ul><li><a href="/wiki/Clojure" title="Clojure">Clojure</a></li> <li><a href="/wiki/Common_Lisp" title="Common Lisp">Common Lisp</a></li> <li><a href="/wiki/Dylan_(programming_language)" title="Dylan (programming language)">Dylan</a></li> <li><a href="/wiki/Logo_(programming_language)" title="Logo (programming language)">Logo</a></li> <li><a href="/wiki/Scheme_(programming_language)" title="Scheme (programming language)">Scheme</a></li></ul></li> <li><a href="/wiki/Lua_(programming_language)" title="Lua (programming language)">Lua</a></li> <li><a href="/wiki/Maude_system" title="Maude system">Maude system</a></li> <li><a href="/wiki/Oberon-2" title="Oberon-2">Oberon-2</a> – ETH Oberon System</li> <li><a href="/wiki/Objective-C" title="Objective-C">Objective-C</a></li> <li><a href="/wiki/PCASTL" title="PCASTL">PCASTL</a></li> <li><a href="/wiki/Perl" title="Perl">Perl</a></li> <li><a href="/wiki/PHP" title="PHP">PHP</a></li> <li><a href="/wiki/Pico_(programming_language)" title="Pico (programming language)">Pico</a></li> <li><a href="/wiki/Poplog" title="Poplog">Poplog</a> <ul><li><a href="/wiki/POP-11" title="POP-11">POP-11</a></li></ul></li> <li><a href="/wiki/PowerShell" title="PowerShell">PowerShell</a></li> <li><a href="/wiki/Prolog" title="Prolog">Prolog</a></li> <li><a href="/wiki/Python_(programming_language)" title="Python (programming language)">Python</a></li> <li><a href="/wiki/Raku_(programming_language)" title="Raku (programming language)">Raku</a><sup id="cite_ref-35" class="reference"><a href="#cite_note-35"><span class="cite-bracket">[</span>31<span class="cite-bracket">]</span></a></sup></li> <li><a href="/wiki/Rebol" title="Rebol">Rebol</a></li> <li><a href="/wiki/Red_(programming_language)" title="Red (programming language)">Red</a></li> <li><a href="/wiki/Ring_(programming_language)" title="Ring (programming language)">Ring</a></li> <li><a href="/wiki/Ruby_(programming_language)" title="Ruby (programming language)">Ruby</a></li> <li><a href="/wiki/Smalltalk" title="Smalltalk">Smalltalk</a> (pure object-orientation, originally from <a href="/wiki/PARC_(company)" title="PARC (company)">Xerox PARC</a>) <ul><li><a href="/wiki/Little_Smalltalk" class="mw-redirect" title="Little Smalltalk">Little Smalltalk</a></li> <li><a href="/wiki/Self_(programming_language)" title="Self (programming language)">Self</a></li> <li><a href="/wiki/Squeak" title="Squeak">Squeak</a></li> <li><a href="/wiki/IBM_VisualAge" class="mw-redirect" title="IBM VisualAge">IBM VisualAge</a></li> <li><a href="/wiki/VisualWorks" title="VisualWorks">VisualWorks</a></li></ul></li> <li><a href="/wiki/SNOBOL" title="SNOBOL">SNOBOL</a></li> <li><a href="/wiki/Tcl" title="Tcl">Tcl</a></li> <li><a href="/wiki/Wolfram_Mathematica" title="Wolfram Mathematica">Wolfram Mathematica</a> (<a href="/wiki/Wolfram_language" class="mw-redirect" title="Wolfram language">Wolfram language</a>)</li> <li><a href="/wiki/XOTcl" title="XOTcl">XOTcl</a></li> <li><a href="/wiki/Microsoft_Dynamics_AX" class="mw-redirect" title="Microsoft Dynamics AX">X++</a></li> <li><a href="/wiki/Xojo" title="Xojo">Xojo</a></li></ul> </div> <div class="mw-heading mw-heading2"><h2 id="Rule-based_languages">Rule-based languages</h2><span class="mw-editsection"><span class="mw-editsection-bracket">[</span><a href="/w/index.php?title=List_of_programming_languages_by_type&action=edit&section=60" title="Edit section: Rule-based languages"><span>edit</span></a><span class="mw-editsection-bracket">]</span></span></div> <p>Rule-based languages instantiate rules when activated by conditions in a set of data. Of all possible activations, some set is selected and the statements belonging to those rules execute. Rule-based languages include:<sup class="noprint Inline-Template Template-Fact" style="white-space:nowrap;">[<i><a href="/wiki/Wikipedia:Citation_needed" title="Wikipedia:Citation needed"><span title="This claim needs references to reliable sources. (March 2015)">citation needed</span></a></i>]</sup> </p> <link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r1184024115"><div class="div-col" style="column-width: 20em;"> <ul><li><a href="/wiki/Awk" class="mw-redirect" title="Awk">awk</a></li> <li><a href="/wiki/CLIPS" title="CLIPS">CLIPS</a></li> <li><a href="/wiki/Claire_(programming_language)" title="Claire (programming language)">Claire</a></li> <li><a href="/wiki/Constraint_Handling_Rules" title="Constraint Handling Rules">Constraint Handling Rules</a></li> <li><a href="/wiki/Drools" title="Drools">Drools</a></li> <li><a href="/wiki/GOAL_agent_programming_language" title="GOAL agent programming language">GOAL agent programming language</a></li> <li><a href="/wiki/Jess_(programming_language)" title="Jess (programming language)">Jess</a></li> <li><a href="/wiki/OPS5" title="OPS5">OPS5</a></li> <li><a href="/wiki/Prolog" title="Prolog">Prolog</a></li> <li><a href="/wiki/ToonTalk" title="ToonTalk">ToonTalk</a> – robots are rules</li> <li><a href="/wiki/Wolfram_Mathematica" title="Wolfram Mathematica">Wolfram Mathematica</a> (<a href="/wiki/Wolfram_language" class="mw-redirect" title="Wolfram language">Wolfram language</a>)</li> <li><span class="citation-needed-content" style="padding-left:0.1em; padding-right:0.1em; color:var(--color-subtle, #54595d); border:1px solid var(--border-color-subtle, #c8ccd1);"><a href="/wiki/XSLT" title="XSLT">XSLT</a></span><sup class="noprint Inline-Template Template-Fact" style="margin-left:0.1em; white-space:nowrap;">[<i><a href="/wiki/Wikipedia:Citation_needed" title="Wikipedia:Citation needed"><span title="This claim needs references to reliable sources. (August 2015)">citation needed</span></a></i>]</sup></li></ul> </div> <div class="mw-heading mw-heading2"><h2 id="Scripting_languages">Scripting languages</h2><span class="mw-editsection"><span class="mw-editsection-bracket">[</span><a href="/w/index.php?title=List_of_programming_languages_by_type&action=edit&section=61" title="Edit section: Scripting languages"><span>edit</span></a><span class="mw-editsection-bracket">]</span></span></div> <link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r1236090951"><div role="note" class="hatnote navigation-not-searchable">Main article: <a href="/wiki/Scripting_language" title="Scripting language">Scripting language</a></div> <link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r1184024115"><div class="div-col" style="column-width: 20em;"> <ul><li><a href="/wiki/AngelScript" title="AngelScript">AngelScript</a></li> <li><a href="/wiki/AppleScript" title="AppleScript">AppleScript</a></li> <li><a href="/wiki/AutoHotKey" class="mw-redirect" title="AutoHotKey">AutoHotKey</a></li> <li><a href="/wiki/AutoIt" title="AutoIt">AutoIt</a></li> <li><a href="/wiki/AWK" title="AWK">AWK</a></li> <li><a href="/wiki/Bc_(programming_language)" title="Bc (programming language)">bc</a></li> <li><a href="/wiki/BeanShell" title="BeanShell">BeanShell</a></li> <li><a href="/wiki/Bash_(Unix_shell)" title="Bash (Unix shell)">Bash</a></li> <li><a href="/wiki/Ch_(computer_programming)" title="Ch (computer programming)">Ch</a> (Embeddable C/C++ interpreter)</li> <li><a href="/wiki/List_of_CLI_languages" title="List of CLI languages">CLI</a> <ul><li><a href="/wiki/C_Sharp_(programming_language)" title="C Sharp (programming language)">C#</a> (compiled to bytecode, and running <a href="/wiki/Just-in-time_compilation" title="Just-in-time compilation">JIT</a> inside VM)</li></ul></li> <li><a href="/wiki/CLIST" title="CLIST">CLIST</a></li> <li><a href="/wiki/ColdFusion" class="mw-redirect" title="ColdFusion">ColdFusion</a></li> <li><a href="/wiki/ECMAScript" title="ECMAScript">ECMAScript</a> <ul><li><a href="/wiki/ActionScript" title="ActionScript">ActionScript</a></li> <li><a href="/wiki/ECMAScript_for_XML" title="ECMAScript for XML">ECMAScript for XML</a></li> <li><a href="/wiki/JavaScript" title="JavaScript">JavaScript</a> (first named Mocha, then LiveScript)</li> <li><a href="/wiki/JScript" title="JScript">JScript</a></li> <li><a href="/wiki/Source_(programming_language)" title="Source (programming language)">Source</a></li></ul></li> <li><a href="/wiki/Emacs_Lisp" title="Emacs Lisp">Emacs Lisp</a></li> <li><a href="/wiki/CMS_EXEC" title="CMS EXEC">CMS EXEC</a></li> <li><a href="/wiki/EXEC_2" title="EXEC 2">EXEC 2</a></li> <li><a href="/wiki/GameMaker:_Studio" class="mw-redirect" title="GameMaker: Studio">Game Maker Language</a> (GML)</li> <li><a href="/wiki/Godot_(game_engine)#GDScript" title="Godot (game engine)">GDScript</a></li> <li><a href="/wiki/Io_(programming_language)" title="Io (programming language)">Io</a></li> <li><a href="/wiki/JASS_(scripting_language)" class="mw-redirect" title="JASS (scripting language)">JASS</a></li> <li><a href="/wiki/Julia_(programming_language)" title="Julia (programming language)">Julia</a> (compiled on the fly to <a href="/wiki/Machine_code" title="Machine code">machine code</a>, by default, interpreting also available)</li> <li><a href="/wiki/List_of_JVM_languages" title="List of JVM languages">JVM</a> <ul><li><a href="/wiki/Groovy_(programming_language)" class="mw-redirect" title="Groovy (programming language)">Groovy</a></li> <li><a href="/wiki/Join_Java" class="mw-redirect" title="Join Java">Join Java</a></li></ul></li> <li><a href="/wiki/KornShell" title="KornShell">Ksh</a></li> <li><a href="/wiki/Lasso_(programming_language)" title="Lasso (programming language)">Lasso</a></li> <li><a href="/wiki/Lua_(programming_language)" title="Lua (programming language)">Lua</a></li> <li><a href="/wiki/MAXScript" class="mw-redirect" title="MAXScript">MAXScript</a></li> <li><a href="/wiki/Maya_Embedded_Language" title="Maya Embedded Language">MEL</a></li> <li><a href="/wiki/Object_REXX" title="Object REXX">Object REXX</a> (OREXX, OOREXX)</li> <li><a href="/wiki/Oriel_(scripting_language)" title="Oriel (scripting language)">Oriel</a></li> <li><a href="/wiki/Pascal_Script" title="Pascal Script">Pascal Script</a></li> <li><a href="/wiki/Perl" title="Perl">Perl</a></li> <li><a href="/wiki/PHP" title="PHP">PHP</a> (intended for Web servers)</li> <li><a href="/wiki/PowerShell" title="PowerShell">PowerShell</a></li> <li><a href="/wiki/Python_(programming_language)" title="Python (programming language)">Python</a></li> <li><a href="/wiki/R_(programming_language)" title="R (programming language)">R</a></li> <li><a href="/wiki/Raku_(programming_language)" title="Raku (programming language)">Raku</a></li> <li><a href="/wiki/Rebol" title="Rebol">Rebol</a></li> <li><a href="/wiki/Red_(programming_language)" title="Red (programming language)">Red</a></li> <li><a href="/wiki/Rexx" title="Rexx">Rexx</a></li> <li><a href="/wiki/Revolution_(programming_language)" class="mw-redirect" title="Revolution (programming language)">Revolution</a></li> <li><a href="/wiki/Ring_(programming_language)" title="Ring (programming language)">Ring</a></li> <li><a href="/wiki/Ruby_(programming_language)" title="Ruby (programming language)">Ruby</a></li> <li><a href="/wiki/S-Lang" title="S-Lang">S-Lang</a></li> <li><a href="/wiki/Sed" title="Sed">sed</a></li> <li><a href="/wiki/Bourne_shell" title="Bourne shell">Sh</a></li> <li><a href="/wiki/Smalltalk" title="Smalltalk">Smalltalk</a></li> <li><a href="/wiki/Squirrel_(programming_language)" title="Squirrel (programming language)">Squirrel</a></li> <li><a href="/wiki/Tea_(programming_language)" title="Tea (programming language)">Tea</a></li> <li><a href="/wiki/Tcl" title="Tcl">Tcl</a></li> <li><a href="/wiki/TorqueScript_(programming_language)" class="mw-redirect" title="TorqueScript (programming language)">TorqueScript</a></li> <li><a href="/wiki/VBScript" title="VBScript">VBScript</a></li> <li><a href="/wiki/WebDNA" title="WebDNA">WebDNA</a>, dedicated to database-driven websites</li> <li><a href="/wiki/Windows_PowerShell" class="mw-redirect" title="Windows PowerShell">Windows PowerShell</a> (<a href="/wiki/.NET_Framework" title=".NET Framework">.NET</a>-based CLI)</li> <li>Many shell command languages such as <a href="/wiki/Unix_shell" title="Unix shell">Unix shell</a> or <a href="/wiki/DIGITAL_Command_Language" title="DIGITAL Command Language">DIGITAL Command Language</a> (DCL) on VMS have powerful scripting abilities.</li></ul> </div> <div class="mw-heading mw-heading2"><h2 id="Stack-based_languages">Stack-based languages</h2><span class="mw-editsection"><span class="mw-editsection-bracket">[</span><a href="/w/index.php?title=List_of_programming_languages_by_type&action=edit&section=62" title="Edit section: Stack-based languages"><span>edit</span></a><span class="mw-editsection-bracket">]</span></span></div> <link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r1236090951"><div role="note" class="hatnote navigation-not-searchable">Main category: <a href="/wiki/Category:Stack-oriented_programming_languages" title="Category:Stack-oriented programming languages">Stack-oriented programming languages</a></div> <p>Stack-based languages are a type of <a href="/w/index.php?title=Data-structured_language&action=edit&redlink=1" class="new" title="Data-structured language (page does not exist)">data-structured language</a> that are based on the <a href="/wiki/Stack_(abstract_data_type)" title="Stack (abstract data type)">stack</a> data structure. </p> <link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r1184024115"><div class="div-col" style="column-width: 20em;"> <ul><li><a href="/wiki/Beatnik_(programming_language)" title="Beatnik (programming language)">Beatnik</a></li> <li><a href="/wiki/Befunge" title="Befunge">Befunge</a></li> <li><a href="/wiki/Factor_(programming_language)" title="Factor (programming language)">Factor</a></li> <li><a href="/wiki/Forth_(programming_language)" title="Forth (programming language)">Forth</a></li> <li><a href="/wiki/Joy_(programming_language)" title="Joy (programming language)">Joy</a> (all functions work on parameter stacks instead of named parameters)</li> <li><a href="/wiki/Piet_(programming_language)" class="mw-redirect" title="Piet (programming language)">Piet</a></li> <li><a href="/wiki/Poplog" title="Poplog">Poplog</a> via its implementation language <a href="/wiki/POP-11" title="POP-11">POP-11</a></li> <li><a href="/wiki/PostScript" title="PostScript">PostScript</a></li> <li><a href="/wiki/RPL_(programming_language)" title="RPL (programming language)">RPL</a></li> <li><a href="/wiki/S-Lang" title="S-Lang">S-Lang</a></li></ul> </div> <div class="mw-heading mw-heading2"><h2 id="Synchronous_languages">Synchronous languages</h2><span class="mw-editsection"><span class="mw-editsection-bracket">[</span><a href="/w/index.php?title=List_of_programming_languages_by_type&action=edit&section=63" title="Edit section: Synchronous languages"><span>edit</span></a><span class="mw-editsection-bracket">]</span></span></div> <link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r1236090951"><div role="note" class="hatnote navigation-not-searchable">Main category: <a href="/wiki/Category:Synchronous_programming_languages" title="Category:Synchronous programming languages">Synchronous programming languages</a></div> <p><a href="/wiki/Synchronous_programming_language" title="Synchronous programming language">Synchronous programming languages</a> are optimized for programming reactive systems, systems that are often interrupted and must respond quickly. Many such systems are also called <a href="/wiki/Real-time_computing" title="Real-time computing">realtime systems</a>, and are used often in <a href="/wiki/Embedded_system" title="Embedded system">embedded systems</a>. </p><p>Examples: </p> <ul><li><a href="/wiki/Argus_(programming_language)" title="Argus (programming language)">Argus</a></li> <li><a href="/wiki/Averest" title="Averest">Averest</a></li> <li><a href="/wiki/Esterel" title="Esterel">Esterel</a></li> <li><a href="/wiki/Lustre_(programming_language)" title="Lustre (programming language)">Lustre</a></li> <li><a href="/wiki/SIGNAL_(programming_language)" title="SIGNAL (programming language)">Signal</a></li> <li><a href="/wiki/C%C3%A9u_(programming_language)" title="Céu (programming language)">Céu (programming language)</a></li></ul> <div class="mw-heading mw-heading2"><h2 id="Shading_languages">Shading languages</h2><span class="mw-editsection"><span class="mw-editsection-bracket">[</span><a href="/w/index.php?title=List_of_programming_languages_by_type&action=edit&section=64" title="Edit section: Shading languages"><span>edit</span></a><span class="mw-editsection-bracket">]</span></span></div> <link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r1236090951"><div role="note" class="hatnote navigation-not-searchable selfref">See also: <a href="/wiki/Category:Shading_languages" title="Category:Shading languages">Category:Shading languages</a></div> <p>A <a href="/wiki/Shading_language" title="Shading language">shading language</a> is a graphics programming language adapted to programming shader effects. Such language forms usually consist of special data types, like "color" and "normal". Due to the variety of target markets for 3D computer graphics. </p> <div class="mw-heading mw-heading3"><h3 id="Real-time_rendering">Real-time rendering</h3><span class="mw-editsection"><span class="mw-editsection-bracket">[</span><a href="/w/index.php?title=List_of_programming_languages_by_type&action=edit&section=65" title="Edit section: Real-time rendering"><span>edit</span></a><span class="mw-editsection-bracket">]</span></span></div> <p>They provide both higher hardware abstraction and a more flexible programming model than previous paradigms which hardcoded transformation and shading equations. This gives the programmer greater control over the rendering process and delivers richer content at lower overhead. </p> <link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r1184024115"><div class="div-col"> <ul><li><a href="/wiki/Adobe_Graphics_Assembly_Language" class="mw-redirect" title="Adobe Graphics Assembly Language">Adobe Graphics Assembly Language</a> (AGAL)<sup id="cite_ref-36" class="reference"><a href="#cite_note-36"><span class="cite-bracket">[</span>32<span class="cite-bracket">]</span></a></sup></li> <li><a href="/wiki/ARB_assembly_language" title="ARB assembly language">ARB assembly language</a> (ARB assembly)</li> <li><a href="/wiki/OpenGL_Shading_Language" title="OpenGL Shading Language">OpenGL Shading Language</a> (GLSL or glslang)</li> <li><a href="/wiki/High-Level_Shading_Language" class="mw-redirect" title="High-Level Shading Language">High-Level Shading Language</a> (HLSL) or DirectX Shader Assembly Language</li> <li><a href="/wiki/PlayStation_Shader_Language" class="mw-redirect" title="PlayStation Shader Language">PlayStation Shader Language</a> (PSSL)</li> <li><a href="/wiki/Metal_(API)" title="Metal (API)">Metal Shading Language</a> (MSL)</li> <li><a href="/wiki/Cg_(programming_language)" title="Cg (programming language)">Cg</a></li></ul> </div> <div class="mw-heading mw-heading3"><h3 id="Offline_rendering">Offline rendering</h3><span class="mw-editsection"><span class="mw-editsection-bracket">[</span><a href="/w/index.php?title=List_of_programming_languages_by_type&action=edit&section=66" title="Edit section: Offline rendering"><span>edit</span></a><span class="mw-editsection-bracket">]</span></span></div> <p>Shading languages used in offline rendering produce maximum image quality. Processing such shaders is time-consuming. The computational power required can be expensive because of their ability to produce photorealistic results. </p> <link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r1184024115"><div class="div-col"> <ul><li><a href="/wiki/RenderMan_Shading_Language" title="RenderMan Shading Language">RenderMan Shading Language</a> (RSL)</li> <li><a href="/wiki/Open_Shading_Language" title="Open Shading Language">Open Shading Language</a> (OSL)</li></ul> </div> <div class="mw-heading mw-heading2"><h2 id="Syntax-handling_languages">Syntax-handling languages</h2><span class="mw-editsection"><span class="mw-editsection-bracket">[</span><a href="/w/index.php?title=List_of_programming_languages_by_type&action=edit&section=67" title="Edit section: Syntax-handling languages"><span>edit</span></a><span class="mw-editsection-bracket">]</span></span></div> <p>These languages assist with generating <a href="/wiki/Lexical_analysis" title="Lexical analysis">lexical analyzers</a> and <a href="/wiki/Parsing" title="Parsing">parsers</a> for <a href="/wiki/Context-free_grammar" title="Context-free grammar">context-free grammars</a>. </p> <ul><li><a href="/wiki/ANTLR" title="ANTLR">ANTLR</a></li> <li><a href="/wiki/Coco/R" title="Coco/R">Coco/R</a> (EBNF with semantics)</li> <li><a href="/wiki/GNU_bison" class="mw-redirect" title="GNU bison">GNU bison</a> (FSF's version of Yacc)</li> <li>GNU <a href="/wiki/Flex_(lexical_analyser_generator)" title="Flex (lexical analyser generator)">Flex</a> (FSF version of Lex)</li> <li><a href="/wiki/Lex_(software)" title="Lex (software)">lex</a> (Lexical Analysis, from Bell Labs)</li> <li><a href="/wiki/M4_(computer_language)" title="M4 (computer language)">M4</a></li> <li><a href="/wiki/Parsing_expression_grammar" title="Parsing expression grammar">Parsing expression grammar</a> (PEG)</li> <li><a href="/wiki/Prolog" title="Prolog">Prolog</a></li> <li><a href="/wiki/Emacs_Lisp" title="Emacs Lisp">Emacs Lisp</a></li> <li><a href="/wiki/Lisp_(programming_language)" title="Lisp (programming language)">Lisp</a></li> <li><a href="/wiki/Raku_(programming_language)" title="Raku (programming language)">Raku</a><sup id="cite_ref-37" class="reference"><a href="#cite_note-37"><span class="cite-bracket">[</span>33<span class="cite-bracket">]</span></a></sup></li> <li><a href="/wiki/SableCC" title="SableCC">SableCC</a></li> <li><a href="/wiki/Scheme_(programming_language)" title="Scheme (programming language)">Scheme</a></li> <li><a href="/wiki/Yacc" title="Yacc">yacc</a> (yet another compiler-compiler, from Bell Labs)</li> <li><a href="/wiki/JavaCC" title="JavaCC">JavaCC</a></li></ul> <div class="mw-heading mw-heading2"><h2 id="System_languages">System languages</h2><span class="mw-editsection"><span class="mw-editsection-bracket">[</span><a href="/w/index.php?title=List_of_programming_languages_by_type&action=edit&section=68" title="Edit section: System languages"><span>edit</span></a><span class="mw-editsection-bracket">]</span></span></div> <p>The <b>system programming languages</b> are for low-level tasks like memory management or task management. A system programming language usually refers to a programming language used for system programming; such languages are designed for writing system software, which usually requires different development approaches when compared with application software. </p><p>System software is computer software designed to operate and control the computer hardware, and to provide a platform for running application software. System software includes software categories such as operating systems, utility software, device drivers, compilers, and linkers. Examples of system languages include: </p> <table class="wikitable sortable collapsible"> <tbody><tr> <th>Language</th> <th>Originator</th> <th>First appeared</th> <th>Influenced by</th> <th>Used for </th></tr> <tr> <td><a href="/wiki/Executive_Systems_Problem_Oriented_Language" title="Executive Systems Problem Oriented Language">ESPOL</a></td> <td><a href="/wiki/Burroughs_Corporation" title="Burroughs Corporation">Burroughs Corporation</a></td> <td>1961</td> <td><a href="/wiki/ALGOL_60" title="ALGOL 60">ALGOL 60</a></td> <td><a href="/wiki/Burroughs_MCP" title="Burroughs MCP">MCP</a> </td></tr> <tr> <td><a href="/wiki/PL/I" title="PL/I">PL/I</a></td> <td><a href="/wiki/IBM" title="IBM">IBM</a>, <a href="/wiki/SHARE_(computing)" title="SHARE (computing)">SHARE</a></td> <td>1964</td> <td>ALGOL 60, FORTRAN, some COBOL</td> <td><a href="/wiki/Multics" title="Multics">Multics</a> </td></tr> <tr> <td><a href="/wiki/PL360" title="PL360">PL360</a></td> <td><a href="/wiki/Niklaus_Wirth" title="Niklaus Wirth">Niklaus Wirth</a></td> <td>1968</td> <td>ALGOL 60</td> <td><a href="/wiki/ALGOL_W" title="ALGOL W">ALGOL W</a> </td></tr> <tr> <td><a href="/wiki/C_(programming_language)" title="C (programming language)">C</a></td> <td><a href="/wiki/Dennis_Ritchie" title="Dennis Ritchie">Dennis Ritchie</a></td> <td>1969</td> <td><a href="/wiki/BCPL" title="BCPL">BCPL</a></td> <td>Most <a href="/wiki/Kernel_(operating_system)" title="Kernel (operating system)">operating system kernels</a>, including <a href="/wiki/Windows_NT" title="Windows NT">Windows NT</a> and most <a href="/wiki/Unix-like" title="Unix-like">Unix-like</a> systems </td></tr> <tr> <td><a href="/wiki/PL/S" class="mw-redirect" title="PL/S">PL/S</a></td> <td><a href="/wiki/IBM" title="IBM">IBM</a></td> <td>196x</td> <td><a href="/wiki/PL/I" title="PL/I">PL/I</a></td> <td><a href="/wiki/OS/360" class="mw-redirect" title="OS/360">OS/360</a> </td></tr> <tr> <td><a href="/wiki/BLISS" title="BLISS">BLISS</a></td> <td><a href="/wiki/Carnegie_Mellon_University" title="Carnegie Mellon University">Carnegie Mellon University</a></td> <td>1970</td> <td>ALGOL-PL/I<sup id="cite_ref-38" class="reference"><a href="#cite_note-38"><span class="cite-bracket">[</span>34<span class="cite-bracket">]</span></a></sup></td> <td><a href="/wiki/OpenVMS" title="OpenVMS">VMS</a> (portions) </td></tr> <tr> <td><a href="/wiki/PL/I#PL/I_dialects" title="PL/I">PL/8</a></td> <td><a href="/wiki/IBM" title="IBM">IBM</a></td> <td>197x</td> <td><a href="/wiki/PL/I" title="PL/I">PL/I</a></td> <td><a href="/wiki/IBM_AIX" title="IBM AIX">AIX</a> </td></tr> <tr> <td><a href="/wiki/PL/I#PL/I_dialects" title="PL/I">PL/MP and PL/MI</a></td> <td><a href="/wiki/IBM" title="IBM">IBM</a></td> <td>197x</td> <td><a href="/wiki/PL/I" title="PL/I">PL/I</a></td> <td><a href="/wiki/Control_Program_Facility" title="Control Program Facility">CPF</a>, <a href="/wiki/OS/400" class="mw-redirect" title="OS/400">OS/400</a> </td></tr> <tr> <td><a href="/wiki/PL-6" title="PL-6">PL-6</a></td> <td><a href="/wiki/Honeywell,_Inc." class="mw-redirect" title="Honeywell, Inc.">Honeywell, Inc.</a></td> <td>197x</td> <td><a href="/wiki/PL/I" title="PL/I">PL/I</a></td> <td><a href="/wiki/Honeywell_CP-6" title="Honeywell CP-6">CP-6</a> </td></tr> <tr> <td><a href="/wiki/SYMPL" title="SYMPL">SYMPL</a></td> <td><a href="/wiki/Control_Data_Corporation" title="Control Data Corporation">CDC</a></td> <td>197x</td> <td><a href="/wiki/JOVIAL" title="JOVIAL">JOVIAL</a></td> <td><a href="/wiki/NOS_(operating_system)" title="NOS (operating system)">NOS</a> subsystems, most compilers, FSE editor </td></tr> <tr> <td><a href="/wiki/C%2B%2B" title="C++">C++</a></td> <td><a href="/wiki/Bjarne_Stroustrup" title="Bjarne Stroustrup">Bjarne Stroustrup</a></td> <td>1979</td> <td><a href="/wiki/C_(programming_language)" title="C (programming language)">C</a>, <a href="/wiki/Simula" title="Simula">Simula</a></td> <td>See C++ Applications<sup id="cite_ref-39" class="reference"><a href="#cite_note-39"><span class="cite-bracket">[</span>35<span class="cite-bracket">]</span></a></sup> </td></tr> <tr> <td><a href="/wiki/Ada_(programming_language)" title="Ada (programming language)">Ada</a></td> <td><a href="/wiki/Jean_Ichbiah" title="Jean Ichbiah">Jean Ichbiah</a>, <a href="/w/index.php?title=S._Tucker_Taft&action=edit&redlink=1" class="new" title="S. Tucker Taft (page does not exist)">S. Tucker Taft</a></td> <td>1983</td> <td><a href="/wiki/ALGOL_68" title="ALGOL 68">ALGOL 68</a>, <a href="/wiki/Pascal_(programming_language)" title="Pascal (programming language)">Pascal</a>, <a href="/wiki/C%2B%2B" title="C++">C++</a>, <a href="/wiki/Java_(programming_language)" title="Java (programming language)">Java</a>, <a href="/wiki/Eiffel_(programming_language)" title="Eiffel (programming language)">Eiffel</a></td> <td>Embedded systems, OS kernels, compilers, games, simulations, <a href="/wiki/CubeSat" title="CubeSat">CubeSat</a>, air traffic control, and avionics </td></tr> <tr> <td><a href="/wiki/D_(programming_language)" title="D (programming language)">D</a></td> <td><a href="/wiki/Digital_Mars" title="Digital Mars">Digital Mars</a></td> <td>2001</td> <td><a href="/wiki/C%2B%2B" title="C++">C++</a></td> <td>Multiple domains<sup id="cite_ref-40" class="reference"><a href="#cite_note-40"><span class="cite-bracket">[</span>36<span class="cite-bracket">]</span></a></sup> </td></tr> <tr> <td><a href="/wiki/Nim_(programming_language)" title="Nim (programming language)">Nim</a></td> <td>Andreas Rumpf</td> <td>2008</td> <td><a href="/wiki/Ada_(programming_language)" title="Ada (programming language)">Ada</a>, <a href="/wiki/Modula-3" title="Modula-3">Modula-3</a>, <a href="/wiki/Lisp_(programming_language)" title="Lisp (programming language)">Lisp</a>, <a href="/wiki/C%2B%2B" title="C++">C++</a>, <a href="/wiki/Object_Pascal" title="Object Pascal">Object Pascal</a>, <a href="/wiki/Python_(programming_language)" title="Python (programming language)">Python</a>, <a href="/wiki/Oberon_(programming_language)" title="Oberon (programming language)">Oberon</a></td> <td>OS kernels, compilers, games </td></tr> <tr> <td><a href="/wiki/Rust_(programming_language)" title="Rust (programming language)">Rust</a></td> <td><a href="/wiki/Mozilla_Research" class="mw-redirect" title="Mozilla Research">Mozilla Research</a><sup id="cite_ref-41" class="reference"><a href="#cite_note-41"><span class="cite-bracket">[</span>37<span class="cite-bracket">]</span></a></sup></td> <td>2010</td> <td><a href="/wiki/C%2B%2B" title="C++">C++</a>, <a href="/wiki/Haskell" title="Haskell">Haskell</a>, <a href="/wiki/Erlang_(programming_language)" title="Erlang (programming language)">Erlang</a>, <a href="/wiki/Ruby_(programming_language)" title="Ruby (programming language)">Ruby</a></td> <td><a href="/wiki/Servo_layout_engine" class="mw-redirect" title="Servo layout engine">Servo layout engine</a>, <a href="/wiki/Redox_OS" class="mw-redirect" title="Redox OS">Redox OS</a> </td></tr> <tr> <td><a href="/wiki/Swift_(programming_language)" title="Swift (programming language)">Swift</a></td> <td><a href="/wiki/Apple_Inc." title="Apple Inc.">Apple Inc.</a></td> <td>2014</td> <td><a href="/wiki/C_(programming_language)" title="C (programming language)">C</a>, <a href="/wiki/Objective-C" title="Objective-C">Objective-C</a>, <a href="/wiki/Rust_(programming_language)" title="Rust (programming language)">Rust</a></td> <td><a href="/wiki/MacOS" title="MacOS">macOS</a>, <a href="/wiki/IOS" title="IOS">iOS</a> app development<sup id="cite_ref-42" class="reference"><a href="#cite_note-42"><span class="cite-bracket">[</span>e<span class="cite-bracket">]</span></a></sup> </td></tr> <tr> <td><a href="/wiki/Zig_(programming_language)" title="Zig (programming language)">Zig</a> </td> <td>Andrew Kelley </td> <td>2016 </td> <td><a href="/wiki/C_(programming_language)" title="C (programming language)">C</a>, <a href="/wiki/C%2B%2B" title="C++">C++</a>, <a href="/wiki/LLVM_IR" class="mw-redirect" title="LLVM IR">LLVM IR</a>, <a href="/wiki/Go_(programming_language)" title="Go (programming language)">Go</a>, <a href="/wiki/Rust_(programming_language)" title="Rust (programming language)">Rust</a>, <a href="/wiki/JavaScript" title="JavaScript">JavaScript</a> </td> <td>As a replacement for C </td></tr> <tr> <td><a href="/wiki/V_(programming_language)" title="V (programming language)">V (Vlang)</a> </td> <td>Alexander Medvednikov </td> <td>2019 </td> <td><a href="/wiki/C_(programming_language)" title="C (programming language)">C</a>, <a href="/wiki/Go_(programming_language)" title="Go (programming language)">Go</a>, <a href="/wiki/Oberon-2" title="Oberon-2">Oberon-2</a>, <a href="/wiki/Rust_(programming_language)" title="Rust (programming language)">Rust</a>, <a href="/wiki/Swift_(programming_language)" title="Swift (programming language)">Swift</a>, <a href="/wiki/Kotlin_(programming_language)" title="Kotlin (programming language)">Kotlin</a> </td> <td>Vinix OS, OS kernels, compilers, games </td></tr></tbody></table> <div class="mw-heading mw-heading2"><h2 id="Transformation_languages">Transformation languages</h2><span class="mw-editsection"><span class="mw-editsection-bracket">[</span><a href="/w/index.php?title=List_of_programming_languages_by_type&action=edit&section=69" title="Edit section: Transformation languages"><span>edit</span></a><span class="mw-editsection-bracket">]</span></span></div> <link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r1236090951"><div role="note" class="hatnote navigation-not-searchable">Main article: <a href="/wiki/Transformation_language" title="Transformation language">Transformation language</a></div> <p><a href="/wiki/Transformation_language" title="Transformation language">Transformation languages</a> serve the purpose of transforming (translating) source code specified in a certain formal language into a defined destination format code. It is most commonly used in intermediate components of more complex super-systems in order to adopt internal results for input into a succeeding processing routine. </p> <link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r1184024115"><div class="div-col"> <ul><li><a href="/wiki/ATLAS_Transformation_Language" title="ATLAS Transformation Language">ATL</a></li> <li><a href="/wiki/AWK" title="AWK">AWK</a></li> <li><a href="/wiki/MOFM2T" class="mw-redirect" title="MOFM2T">MOFM2T</a></li> <li><a href="/wiki/QVT" title="QVT">QVT</a></li> <li><a href="/wiki/Raku_(programming_language)" title="Raku (programming language)">Raku</a></li> <li><a href="/wiki/XSLT" title="XSLT">XSLT</a> is the best known <a href="/wiki/XML_transformation_language" title="XML transformation language">XML transformation language</a></li></ul> </div> <div class="mw-heading mw-heading2"><h2 id="Visual_languages">Visual languages</h2><span class="mw-editsection"><span class="mw-editsection-bracket">[</span><a href="/w/index.php?title=List_of_programming_languages_by_type&action=edit&section=70" title="Edit section: Visual languages"><span>edit</span></a><span class="mw-editsection-bracket">]</span></span></div> <link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r1236090951"><div role="note" class="hatnote navigation-not-searchable">Main category: <a href="/wiki/Category:Visual_programming_languages" title="Category:Visual programming languages">Visual programming languages</a></div> <p><a href="/wiki/Visual_programming_language" title="Visual programming language">Visual programming languages</a> let users specify programs in a two-(or more)-dimensional way, instead of as one-dimensional text strings, via graphic layouts of various types. Some <a href="/wiki/Dataflow_programming" title="Dataflow programming">dataflow programming</a> languages are also visual languages. </p> <link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r1184024115"><div class="div-col"> <ul><li><a href="/wiki/Analytica_(software)" title="Analytica (software)">Analytica</a></li> <li><a href="/wiki/Blockly" title="Blockly">Blockly</a></li> <li><a href="/wiki/Clickteam" title="Clickteam">Clickteam Fusion</a></li> <li><a href="/wiki/DRAKON" title="DRAKON">DRAKON</a></li> <li><a href="/wiki/Fabrik_(software)" title="Fabrik (software)">Fabrik</a></li> <li><a href="/wiki/Grasshopper_3D" title="Grasshopper 3D">Grasshopper</a></li> <li><a href="/wiki/Max_(software)" title="Max (software)">Max</a></li> <li><a href="/wiki/NXT-G" class="mw-redirect" title="NXT-G">NXT-G</a></li> <li><a href="/wiki/Pict_(programming_language)" title="Pict (programming language)">Pict</a></li> <li><a href="/wiki/Prograph" title="Prograph">Prograph</a></li> <li><a href="/wiki/Pure_Data" title="Pure Data">Pure Data</a></li> <li><a href="/wiki/Quartz_Composer" title="Quartz Composer">Quartz Composer</a></li> <li><a href="/wiki/Scratch_(programming_language)" title="Scratch (programming language)">Scratch</a> (written in and based on <a href="/wiki/Squeak" title="Squeak">Squeak</a>, a version of <a href="/wiki/Smalltalk" title="Smalltalk">Smalltalk</a>)</li> <li><a href="/wiki/Snap!_(programming_language)" title="Snap! (programming language)">Snap!</a></li> <li><a href="/wiki/Simulink" title="Simulink">Simulink</a></li> <li><a href="/wiki/Spreadsheet" title="Spreadsheet">Spreadsheets</a></li> <li><a href="/wiki/Stateflow" title="Stateflow">Stateflow</a></li> <li><a href="/wiki/Subtext_(programming_language)" title="Subtext (programming language)">Subtext</a></li> <li><a href="/wiki/ToonTalk" title="ToonTalk">ToonTalk</a></li> <li><a href="/wiki/Agilent_VEE" class="mw-redirect" title="Agilent VEE">VEE</a></li> <li><a href="/wiki/VisSim" title="VisSim">VisSim</a></li> <li><a href="/wiki/Vvvv" title="Vvvv">Vvvv</a></li> <li><a href="/wiki/XOD_(programming_language)" title="XOD (programming language)">XOD</a></li></ul> </div> <div class="mw-heading mw-heading2"><h2 id="Wirth_languages">Wirth languages</h2><span class="mw-editsection"><span class="mw-editsection-bracket">[</span><a href="/w/index.php?title=List_of_programming_languages_by_type&action=edit&section=71" title="Edit section: Wirth languages"><span>edit</span></a><span class="mw-editsection-bracket">]</span></span></div> <p>Computer scientist <a href="/wiki/Niklaus_Wirth" title="Niklaus Wirth">Niklaus Wirth</a> designed and implemented several influential languages. </p> <link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r1184024115"><div class="div-col"> <ul><li><a href="/wiki/ALGOL_W" title="ALGOL W">ALGOL W</a></li> <li><a href="/wiki/Euler_(programming_language)" title="Euler (programming language)">Euler</a></li> <li><a href="/wiki/Modula" title="Modula">Modula</a> <ul><li><a href="/wiki/Modula-2" title="Modula-2">Modula-2</a>, <a href="/wiki/Modula-3" title="Modula-3">Modula-3</a>, variants <ul><li><a href="/wiki/Obliq" title="Obliq">Obliq</a> Modula 3 variant</li></ul></li></ul></li> <li><a href="/wiki/Oberon_(programming_language)" title="Oberon (programming language)">Oberon</a> (Oberon, Oberon-07, Oberon-2) <ul><li><a href="/wiki/Component_Pascal" title="Component Pascal">Component Pascal</a></li> <li><a href="/wiki/Oberon-2" title="Oberon-2">Oberon-2</a></li></ul></li> <li><a href="/wiki/Pascal_(programming_language)" title="Pascal (programming language)">Pascal</a> <ul><li><a href="/wiki/Object_Pascal" title="Object Pascal">Object Pascal</a> (umbrella name for <a href="/wiki/Delphi_(software)" title="Delphi (software)">Delphi</a>, <a href="/wiki/Free_Pascal" title="Free Pascal">Free Pascal</a>, <a href="/wiki/Oxygene_(programming_language)" title="Oxygene (programming language)">Oxygene</a>, others)</li></ul></li></ul> </div> <div class="mw-heading mw-heading2"><h2 id="XML-based_languages">XML-based languages</h2><span class="mw-editsection"><span class="mw-editsection-bracket">[</span><a href="/w/index.php?title=List_of_programming_languages_by_type&action=edit&section=72" title="Edit section: XML-based languages"><span>edit</span></a><span class="mw-editsection-bracket">]</span></span></div> <p>These are languages based on or that operate on <a href="/wiki/XML" title="XML">XML</a>. </p> <link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r1184024115"><div class="div-col"> <ul><li><a href="/wiki/Apache_Ant" title="Apache Ant">Ant</a></li> <li><a href="/wiki/C%CF%89" class="mw-redirect" title="Cω">Cω</a></li> <li><a href="/wiki/ECMAScript_for_XML" title="ECMAScript for XML">ECMAScript for XML</a></li> <li><a href="/wiki/MXML" title="MXML">MXML</a></li> <li><a href="/wiki/OpenLaszlo" title="OpenLaszlo">LZX</a></li> <li><a href="/wiki/XAML" class="mw-redirect" title="XAML">XAML</a></li> <li><a href="/wiki/XPath" title="XPath">XPath</a></li> <li><a href="/wiki/XQuery" title="XQuery">XQuery</a></li> <li><a href="/wiki/XProc" title="XProc">XProc</a></li> <li>eXtensible Stylesheet Language Transformations (<a href="/wiki/XSLT" title="XSLT">XSLT</a>)</li></ul> </div> <div class="mw-heading mw-heading2"><h2 id="See_also">See also</h2><span class="mw-editsection"><span class="mw-editsection-bracket">[</span><a href="/w/index.php?title=List_of_programming_languages_by_type&action=edit&section=73" title="Edit section: See also"><span>edit</span></a><span class="mw-editsection-bracket">]</span></span></div> <ul><li><a href="/wiki/Programming_paradigm" title="Programming paradigm">Programming paradigm</a></li> <li><a href="/wiki/IEC_61131-3" title="IEC 61131-3">IEC 61131-3</a> – a standard for <a href="/wiki/Programmable_logic_controller" title="Programmable logic controller">programmable logic controller</a> (PLC) languages</li> <li><a href="/wiki/List_of_educational_programming_languages" title="List of educational programming languages">List of educational programming languages</a></li> <li><a href="/wiki/List_of_markup_languages" title="List of markup languages">List of markup languages</a></li> <li><a href="/wiki/Esoteric_programming_language" title="Esoteric programming language">Esoteric programming language</a></li></ul> <div class="mw-heading mw-heading2"><h2 id="Notes">Notes</h2><span class="mw-editsection"><span class="mw-editsection-bracket">[</span><a href="/w/index.php?title=List_of_programming_languages_by_type&action=edit&section=74" title="Edit section: Notes"><span>edit</span></a><span class="mw-editsection-bracket">]</span></span></div> <style data-mw-deduplicate="TemplateStyles:r1239543626">.mw-parser-output .reflist{margin-bottom:0.5em;list-style-type:decimal}@media screen{.mw-parser-output .reflist{font-size:90%}}.mw-parser-output .reflist .references{font-size:100%;margin-bottom:0;list-style-type:inherit}.mw-parser-output .reflist-columns-2{column-width:30em}.mw-parser-output .reflist-columns-3{column-width:25em}.mw-parser-output .reflist-columns{margin-top:0.3em}.mw-parser-output .reflist-columns ol{margin-top:0}.mw-parser-output .reflist-columns li{page-break-inside:avoid;break-inside:avoid-column}.mw-parser-output .reflist-upper-alpha{list-style-type:upper-alpha}.mw-parser-output .reflist-upper-roman{list-style-type:upper-roman}.mw-parser-output .reflist-lower-alpha{list-style-type:lower-alpha}.mw-parser-output .reflist-lower-greek{list-style-type:lower-greek}.mw-parser-output .reflist-lower-roman{list-style-type:lower-roman}</style><div class="reflist reflist-lower-alpha"> <div class="mw-references-wrap"><ol class="references"> <li id="cite_note-28"><span class="mw-cite-backlink"><b><a href="#cite_ref-28">^</a></b></span> <span class="reference-text">The objects of SQL are collections of <a href="/wiki/Database_record" class="mw-redirect" title="Database record">database records</a>, called tables. A full <a href="/wiki/Programming_language" title="Programming language">programming language</a> can specify <a href="/wiki/Algorithm" title="Algorithm">algorithms</a>, irrespective of <a href="/wiki/Software_execution" class="mw-redirect" title="Software execution">runtime</a>. Thus an algorithm can be considered to generate usable results. In contrast, SQL can only select records that are limited to the current collection, the data at hand in the system, rather than produce a statement of the correctness of the result.</span> </li> <li id="cite_note-29"><span class="mw-cite-backlink"><b><a href="#cite_ref-29">^</a></b></span> <span class="reference-text">A notable exception would be the Soviet/Russian <a href="/wiki/1801_series_CPU" title="1801 series CPU">1801 series CPU</a>, which originally used their own domestic ISA, but were later redesigned to be <a href="/wiki/PDP-11" title="PDP-11">PDP-11</a> compatible as a policy decision.</span> </li> <li id="cite_note-submodels-30"><span class="mw-cite-backlink">^ <a href="#cite_ref-submodels_30-0"><sup><i><b>a</b></i></sup></a> <a href="#cite_ref-submodels_30-1"><sup><i><b>b</b></i></sup></a></span> <span class="reference-text">Submodels are not listed, only base models.</span> </li> <li id="cite_note-33"><span class="mw-cite-backlink"><b><a href="#cite_ref-33">^</a></b></span> <span class="reference-text">The concept of <i>object</i> with the traditional single-dispatch OO semantics is not present in Julia, instead with the more general multiple dispatch on different types at runtime.</span> </li> <li id="cite_note-42"><span class="mw-cite-backlink"><b><a href="#cite_ref-42">^</a></b></span> <span class="reference-text">Swift uses <a href="/wiki/Automatic_Reference_Counting" title="Automatic Reference Counting">automatic reference counting</a>.</span> </li> </ol></div></div> <div class="mw-heading mw-heading2"><h2 id="References">References</h2><span class="mw-editsection"><span class="mw-editsection-bracket">[</span><a href="/w/index.php?title=List_of_programming_languages_by_type&action=edit&section=75" title="Edit section: References"><span>edit</span></a><span class="mw-editsection-bracket">]</span></span></div> <link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r1239543626"><div class="reflist"> <div class="mw-references-wrap mw-references-columns"><ol class="references"> <li id="cite_note-1"><span class="mw-cite-backlink"><b><a href="#cite_ref-1">^</a></b></span> <span class="reference-text"><style data-mw-deduplicate="TemplateStyles:r1238218222">.mw-parser-output cite.citation{font-style:inherit;word-wrap:break-word}.mw-parser-output .citation q{quotes:"\"""\"""'""'"}.mw-parser-output .citation:target{background-color:rgba(0,127,255,0.133)}.mw-parser-output .id-lock-free.id-lock-free a{background:url("//upload.wikimedia.org/wikipedia/commons/6/65/Lock-green.svg")right 0.1em center/9px no-repeat}.mw-parser-output .id-lock-limited.id-lock-limited a,.mw-parser-output .id-lock-registration.id-lock-registration a{background:url("//upload.wikimedia.org/wikipedia/commons/d/d6/Lock-gray-alt-2.svg")right 0.1em center/9px no-repeat}.mw-parser-output .id-lock-subscription.id-lock-subscription a{background:url("//upload.wikimedia.org/wikipedia/commons/a/aa/Lock-red-alt-2.svg")right 0.1em center/9px no-repeat}.mw-parser-output .cs1-ws-icon a{background:url("//upload.wikimedia.org/wikipedia/commons/4/4c/Wikisource-logo.svg")right 0.1em center/12px no-repeat}body:not(.skin-timeless):not(.skin-minerva) .mw-parser-output .id-lock-free a,body:not(.skin-timeless):not(.skin-minerva) .mw-parser-output .id-lock-limited a,body:not(.skin-timeless):not(.skin-minerva) .mw-parser-output .id-lock-registration a,body:not(.skin-timeless):not(.skin-minerva) .mw-parser-output .id-lock-subscription a,body:not(.skin-timeless):not(.skin-minerva) .mw-parser-output .cs1-ws-icon a{background-size:contain;padding:0 1em 0 0}.mw-parser-output .cs1-code{color:inherit;background:inherit;border:none;padding:inherit}.mw-parser-output .cs1-hidden-error{display:none;color:var(--color-error,#d33)}.mw-parser-output .cs1-visible-error{color:var(--color-error,#d33)}.mw-parser-output .cs1-maint{display:none;color:#085;margin-left:0.3em}.mw-parser-output .cs1-kern-left{padding-left:0.2em}.mw-parser-output .cs1-kern-right{padding-right:0.2em}.mw-parser-output .citation .mw-selflink{font-weight:inherit}@media screen{.mw-parser-output .cs1-format{font-size:95%}html.skin-theme-clientpref-night .mw-parser-output .cs1-maint{color:#18911f}}@media screen and (prefers-color-scheme:dark){html.skin-theme-clientpref-os .mw-parser-output .cs1-maint{color:#18911f}}</style><cite class="citation web cs1"><a rel="nofollow" class="external text" href="https://docs.raku.org/language/operators#Operators">"Operators"</a><span class="reference-accessdate">. Retrieved <span class="nowrap">2024-05-13</span></span>.</cite><span title="ctx_ver=Z39.88-2004&rft_val_fmt=info%3Aofi%2Ffmt%3Akev%3Amtx%3Abook&rft.genre=unknown&rft.btitle=Operators&rft_id=https%3A%2F%2Fdocs.raku.org%2Flanguage%2Foperators%23Operators&rfr_id=info%3Asid%2Fen.wikipedia.org%3AList+of+programming+languages+by+type" class="Z3988"></span></span> </li> <li id="cite_note-2"><span class="mw-cite-backlink"><b><a href="#cite_ref-2">^</a></b></span> <span class="reference-text"><link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r1238218222"><cite class="citation web cs1"><a rel="nofollow" class="external text" href="https://docs.raku.org/routine/wrap">"wrap"</a>.</cite><span title="ctx_ver=Z39.88-2004&rft_val_fmt=info%3Aofi%2Ffmt%3Akev%3Amtx%3Abook&rft.genre=unknown&rft.btitle=wrap&rft_id=https%3A%2F%2Fdocs.raku.org%2Froutine%2Fwrap&rfr_id=info%3Asid%2Fen.wikipedia.org%3AList+of+programming+languages+by+type" class="Z3988"></span></span> </li> <li id="cite_note-3"><span class="mw-cite-backlink"><b><a href="#cite_ref-3">^</a></b></span> <span class="reference-text"><link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r1238218222"><cite class="citation web cs1"><a rel="nofollow" class="external text" href="https://conf.raku.org/talk/142">"<span class="cs1-kern-left"></span>"Aspects in Raku"<span class="cs1-kern-right"></span>"</a>.</cite><span title="ctx_ver=Z39.88-2004&rft_val_fmt=info%3Aofi%2Ffmt%3Akev%3Amtx%3Abook&rft.genre=unknown&rft.btitle=%22Aspects+in+Raku%22&rft_id=https%3A%2F%2Fconf.raku.org%2Ftalk%2F142&rfr_id=info%3Asid%2Fen.wikipedia.org%3AList+of+programming+languages+by+type" class="Z3988"></span></span> </li> <li id="cite_note-dobbscodetalk-4"><span class="mw-cite-backlink"><b><a href="#cite_ref-dobbscodetalk_4-0">^</a></b></span> <span class="reference-text"><link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r1238218222"><cite class="citation web cs1"><a rel="nofollow" class="external text" href="http://drdobbs.com/blogs/architecture-and-design/228701299">"Christopher Diggins: What is a concatenative language"</a>. Drdobbs.com. 2008-12-31<span class="reference-accessdate">. Retrieved <span class="nowrap">2013-07-01</span></span>.</cite><span title="ctx_ver=Z39.88-2004&rft_val_fmt=info%3Aofi%2Ffmt%3Akev%3Amtx%3Abook&rft.genre=unknown&rft.btitle=Christopher+Diggins%3A+What+is+a+concatenative+language&rft.pub=Drdobbs.com&rft.date=2008-12-31&rft_id=http%3A%2F%2Fdrdobbs.com%2Fblogs%2Farchitecture-and-design%2F228701299&rfr_id=info%3Asid%2Fen.wikipedia.org%3AList+of+programming+languages+by+type" class="Z3988"></span></span> </li> <li id="cite_note-5"><span class="mw-cite-backlink"><b><a href="#cite_ref-5">^</a></b></span> <span class="reference-text"><link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r1238218222"><cite class="citation web cs1"><a rel="nofollow" class="external text" href="https://docs.perl6.org/routine/==%3E">"Feed operator"</a>.</cite><span title="ctx_ver=Z39.88-2004&rft_val_fmt=info%3Aofi%2Ffmt%3Akev%3Amtx%3Abook&rft.genre=unknown&rft.btitle=Feed+operator&rft_id=https%3A%2F%2Fdocs.perl6.org%2Froutine%2F%3D%3D%253E&rfr_id=info%3Asid%2Fen.wikipedia.org%3AList+of+programming+languages+by+type" class="Z3988"></span></span> </li> <li id="cite_note-6"><span class="mw-cite-backlink"><b><a href="#cite_ref-6">^</a></b></span> <span class="reference-text"><a rel="nofollow" class="external text" href="https://docs.python.org/3/library/concurrency.html">Documentation » The Python Standard Library » Concurrent Execution</a></span> </li> <li id="cite_note-7"><span class="mw-cite-backlink"><b><a href="#cite_ref-7">^</a></b></span> <span class="reference-text"><link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r1238218222"><cite class="citation web cs1"><a rel="nofollow" class="external text" href="https://docs.perl6.org/language/concurrency">"Channels and other mechanisms"</a>.</cite><span title="ctx_ver=Z39.88-2004&rft_val_fmt=info%3Aofi%2Ffmt%3Akev%3Amtx%3Abook&rft.genre=unknown&rft.btitle=Channels+and+other+mechanisms&rft_id=https%3A%2F%2Fdocs.perl6.org%2Flanguage%2Fconcurrency&rfr_id=info%3Asid%2Fen.wikipedia.org%3AList+of+programming+languages+by+type" class="Z3988"></span></span> </li> <li id="cite_note-8"><span class="mw-cite-backlink"><b><a href="#cite_ref-8">^</a></b></span> <span class="reference-text"><link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r1238218222"><cite class="citation web cs1"><a rel="nofollow" class="external text" href="https://raku.land/github:FCO/ProblemSolver">"ProblemSolver"</a>.</cite><span title="ctx_ver=Z39.88-2004&rft_val_fmt=info%3Aofi%2Ffmt%3Akev%3Amtx%3Abook&rft.genre=unknown&rft.btitle=ProblemSolver&rft_id=https%3A%2F%2Fraku.land%2Fgithub%3AFCO%2FProblemSolver&rfr_id=info%3Asid%2Fen.wikipedia.org%3AList+of+programming+languages+by+type" class="Z3988"></span></span> </li> <li id="cite_note-nemerle-offside-9"><span class="mw-cite-backlink">^ <a href="#cite_ref-nemerle-offside_9-0"><sup><i><b>a</b></i></sup></a> <a href="#cite_ref-nemerle-offside_9-1"><sup><i><b>b</b></i></sup></a></span> <span class="reference-text"><link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r1238218222"><cite class="citation web cs1"><a rel="nofollow" class="external text" href="https://github.com/rsdn/nemerle/wiki/Indentation-based-syntax">"Indentation based syntax · rsdn/nemerle Wiki"</a>. <i>GitHub</i><span class="reference-accessdate">. Retrieved <span class="nowrap">2022-03-18</span></span>.</cite><span title="ctx_ver=Z39.88-2004&rft_val_fmt=info%3Aofi%2Ffmt%3Akev%3Amtx%3Ajournal&rft.genre=unknown&rft.jtitle=GitHub&rft.atitle=Indentation+based+syntax+%C2%B7+rsdn%2Fnemerle+Wiki&rft_id=https%3A%2F%2Fgithub.com%2Frsdn%2Fnemerle%2Fwiki%2FIndentation-based-syntax&rfr_id=info%3Asid%2Fen.wikipedia.org%3AList+of+programming+languages+by+type" class="Z3988"></span></span> </li> <li id="cite_note-10"><span class="mw-cite-backlink"><b><a href="#cite_ref-10">^</a></b></span> <span class="reference-text"><link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r1238218222"><cite class="citation web cs1"><a rel="nofollow" class="external text" href="https://docs.soliditylang.org/en/v0.8.11/">"Solidity: Solidity 0.8.11 documentation"</a>.</cite><span title="ctx_ver=Z39.88-2004&rft_val_fmt=info%3Aofi%2Ffmt%3Akev%3Amtx%3Abook&rft.genre=unknown&rft.btitle=Solidity%3A+Solidity+0.8.11+documentation&rft_id=https%3A%2F%2Fdocs.soliditylang.org%2Fen%2Fv0.8.11%2F&rfr_id=info%3Asid%2Fen.wikipedia.org%3AList+of+programming+languages+by+type" class="Z3988"></span></span> </li> <li id="cite_note-11"><span class="mw-cite-backlink"><b><a href="#cite_ref-11">^</a></b></span> <span class="reference-text"><a rel="nofollow" class="external free" href="https://github.com/krishnagopaljha/powercode">https://github.com/krishnagopaljha/powercode</a></span> </li> <li id="cite_note-12"><span class="mw-cite-backlink"><b><a href="#cite_ref-12">^</a></b></span> <span class="reference-text"><link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r1238218222"><cite class="citation web cs1"><a rel="nofollow" class="external text" href="https://docs.raku.org/type/Iterator">"Iterator"</a>.</cite><span title="ctx_ver=Z39.88-2004&rft_val_fmt=info%3Aofi%2Ffmt%3Akev%3Amtx%3Abook&rft.genre=unknown&rft.btitle=Iterator&rft_id=https%3A%2F%2Fdocs.raku.org%2Ftype%2FIterator&rfr_id=info%3Asid%2Fen.wikipedia.org%3AList+of+programming+languages+by+type" class="Z3988"></span></span> </li> <li id="cite_note-13"><span class="mw-cite-backlink"><b><a href="#cite_ref-13">^</a></b></span> <span class="reference-text"><link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r1238218222"><cite class="citation web cs1"><a rel="nofollow" class="external text" href="https://blitzmax.org/docs/en/language/memory_management/">"Memory Management · BlitzMax"</a><span class="reference-accessdate">. Retrieved <span class="nowrap">2023-07-14</span></span>.</cite><span title="ctx_ver=Z39.88-2004&rft_val_fmt=info%3Aofi%2Ffmt%3Akev%3Amtx%3Abook&rft.genre=unknown&rft.btitle=Memory+Management+%C2%B7+BlitzMax&rft_id=https%3A%2F%2Fblitzmax.org%2Fdocs%2Fen%2Flanguage%2Fmemory_management%2F&rfr_id=info%3Asid%2Fen.wikipedia.org%3AList+of+programming+languages+by+type" class="Z3988"></span></span> </li> <li id="cite_note-14"><span class="mw-cite-backlink"><b><a href="#cite_ref-14">^</a></b></span> <span class="reference-text"><link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r1238218222"><cite class="citation web cs1"><a rel="nofollow" class="external text" href="https://blitzmax.org/docs/en/language/pointers/">"Pointers · BlitzMax"</a><span class="reference-accessdate">. Retrieved <span class="nowrap">2023-07-14</span></span>.</cite><span title="ctx_ver=Z39.88-2004&rft_val_fmt=info%3Aofi%2Ffmt%3Akev%3Amtx%3Abook&rft.genre=unknown&rft.btitle=Pointers+%C2%B7+BlitzMax&rft_id=https%3A%2F%2Fblitzmax.org%2Fdocs%2Fen%2Flanguage%2Fpointers%2F&rfr_id=info%3Asid%2Fen.wikipedia.org%3AList+of+programming+languages+by+type" class="Z3988"></span></span> </li> <li id="cite_note-15"><span class="mw-cite-backlink"><b><a href="#cite_ref-15">^</a></b></span> <span class="reference-text"><link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r1238218222"><cite class="citation web cs1"><a rel="nofollow" class="external text" href="https://blitzmax.org/docs/en/api/brl/brl.blitz/">"BRL.Blitz · BlitzMax"</a><span class="reference-accessdate">. Retrieved <span class="nowrap">2023-07-14</span></span>.</cite><span title="ctx_ver=Z39.88-2004&rft_val_fmt=info%3Aofi%2Ffmt%3Akev%3Amtx%3Abook&rft.genre=unknown&rft.btitle=BRL.Blitz+%C2%B7+BlitzMax&rft_id=https%3A%2F%2Fblitzmax.org%2Fdocs%2Fen%2Fapi%2Fbrl%2Fbrl.blitz%2F&rfr_id=info%3Asid%2Fen.wikipedia.org%3AList+of+programming+languages+by+type" class="Z3988"></span></span> </li> <li id="cite_note-16"><span class="mw-cite-backlink"><b><a href="#cite_ref-16">^</a></b></span> <span class="reference-text"><link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r1238218222"><cite class="citation web cs1"><a rel="nofollow" class="external text" href="https://www.ibm.com/docs/en/i/7.3?topic=considerations-using-pointers-in-ile-cobol-program">"Using Pointers in an ILE COBOL Program - IBM Documentation"</a>. <i><a href="/wiki/IBM" title="IBM">IBM</a></i><span class="reference-accessdate">. Retrieved <span class="nowrap">2023-07-14</span></span>.</cite><span title="ctx_ver=Z39.88-2004&rft_val_fmt=info%3Aofi%2Ffmt%3Akev%3Amtx%3Ajournal&rft.genre=unknown&rft.jtitle=IBM&rft.atitle=Using+Pointers+in+an+ILE+COBOL+Program+-+IBM+Documentation&rft_id=https%3A%2F%2Fwww.ibm.com%2Fdocs%2Fen%2Fi%2F7.3%3Ftopic%3Dconsiderations-using-pointers-in-ile-cobol-program&rfr_id=info%3Asid%2Fen.wikipedia.org%3AList+of+programming+languages+by+type" class="Z3988"></span></span> </li> <li id="cite_note-17"><span class="mw-cite-backlink"><b><a href="#cite_ref-17">^</a></b></span> <span class="reference-text"><link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r1238218222"><cite class="citation web cs1"><a rel="nofollow" class="external text" href="https://www.ibm.com/docs/en/zos/2.3.0?topic=options-heap">"HEAP - IBM Documentation"</a>. <i><a href="/wiki/IBM" title="IBM">IBM</a></i><span class="reference-accessdate">. Retrieved <span class="nowrap">2023-07-14</span></span>.</cite><span title="ctx_ver=Z39.88-2004&rft_val_fmt=info%3Aofi%2Ffmt%3Akev%3Amtx%3Ajournal&rft.genre=unknown&rft.jtitle=IBM&rft.atitle=HEAP+-+IBM+Documentation&rft_id=https%3A%2F%2Fwww.ibm.com%2Fdocs%2Fen%2Fzos%2F2.3.0%3Ftopic%3Doptions-heap&rfr_id=info%3Asid%2Fen.wikipedia.org%3AList+of+programming+languages+by+type" class="Z3988"></span></span> </li> <li id="cite_note-18"><span class="mw-cite-backlink"><b><a href="#cite_ref-18">^</a></b></span> <span class="reference-text"><link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r1238218222"><cite class="citation web cs1"><a rel="nofollow" class="external text" href="https://www.ibm.com/docs/en/cobol-zos/6.1?topic=usbooocp-som-based-oo-cobol-language-elements-that-are-changed">"SOM-based OO COBOL language elements that are changed - IBM Documentation"</a>. <i><a href="/wiki/IBM" title="IBM">IBM</a></i><span class="reference-accessdate">. Retrieved <span class="nowrap">2023-07-14</span></span>.</cite><span title="ctx_ver=Z39.88-2004&rft_val_fmt=info%3Aofi%2Ffmt%3Akev%3Amtx%3Ajournal&rft.genre=unknown&rft.jtitle=IBM&rft.atitle=SOM-based+OO+COBOL+language+elements+that+are+changed+-+IBM+Documentation&rft_id=https%3A%2F%2Fwww.ibm.com%2Fdocs%2Fen%2Fcobol-zos%2F6.1%3Ftopic%3Dusbooocp-som-based-oo-cobol-language-elements-that-are-changed&rfr_id=info%3Asid%2Fen.wikipedia.org%3AList+of+programming+languages+by+type" class="Z3988"></span></span> </li> <li id="cite_note-19"><span class="mw-cite-backlink"><b><a href="#cite_ref-19">^</a></b></span> <span class="reference-text"><link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r1238218222"><cite class="citation web cs1"><a rel="nofollow" class="external text" href="https://cython.readthedocs.io/en/latest/src/tutorial/memory_allocation.html">"Memory Allocation — Cython 3.0.0.dev0 documentation"</a><span class="reference-accessdate">. Retrieved <span class="nowrap">2023-07-14</span></span>.</cite><span title="ctx_ver=Z39.88-2004&rft_val_fmt=info%3Aofi%2Ffmt%3Akev%3Amtx%3Abook&rft.genre=unknown&rft.btitle=Memory+Allocation+%E2%80%94+Cython+3.0.0.dev0+documentation&rft_id=https%3A%2F%2Fcython.readthedocs.io%2Fen%2Flatest%2Fsrc%2Ftutorial%2Fmemory_allocation.html&rfr_id=info%3Asid%2Fen.wikipedia.org%3AList+of+programming+languages+by+type" class="Z3988"></span></span> </li> <li id="cite_note-20"><span class="mw-cite-backlink"><b><a href="#cite_ref-20">^</a></b></span> <span class="reference-text"><link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r1238218222"><cite class="citation web cs1"><a rel="nofollow" class="external text" href="https://dlang.org/spec/garbage.html">"Garbage Collection"</a>. <i>D Programming Language</i><span class="reference-accessdate">. Retrieved <span class="nowrap">2022-03-18</span></span>.</cite><span title="ctx_ver=Z39.88-2004&rft_val_fmt=info%3Aofi%2Ffmt%3Akev%3Amtx%3Ajournal&rft.genre=unknown&rft.jtitle=D+Programming+Language&rft.atitle=Garbage+Collection&rft_id=https%3A%2F%2Fdlang.org%2Fspec%2Fgarbage.html&rfr_id=info%3Asid%2Fen.wikipedia.org%3AList+of+programming+languages+by+type" class="Z3988"></span></span> </li> <li id="cite_note-21"><span class="mw-cite-backlink"><b><a href="#cite_ref-21">^</a></b></span> <span class="reference-text"><link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r1238218222"><cite class="citation web cs1"><a rel="nofollow" class="external text" href="https://nim-lang.github.io/Nim/mm.html">"Nim's Memory Management"</a><span class="reference-accessdate">. Retrieved <span class="nowrap">2022-03-18</span></span>.</cite><span title="ctx_ver=Z39.88-2004&rft_val_fmt=info%3Aofi%2Ffmt%3Akev%3Amtx%3Abook&rft.genre=unknown&rft.btitle=Nim%27s+Memory+Management&rft_id=https%3A%2F%2Fnim-lang.github.io%2FNim%2Fmm.html&rfr_id=info%3Asid%2Fen.wikipedia.org%3AList+of+programming+languages+by+type" class="Z3988"></span></span> </li> <li id="cite_note-22"><span class="mw-cite-backlink"><b><a href="#cite_ref-22">^</a></b></span> <span class="reference-text"><link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r1238218222"><cite id="CITEREFAdobe1999" class="citation book cs1">Adobe (February 1999). <a rel="nofollow" class="external text" href="https://www.adobe.com/jp/print/postscript/pdfs/PLRM.pdf"><i>PostScript Language Reference, third edition</i></a> <span class="cs1-format">(PDF)</span>. Addison-Wesley Publishing Company. pp. <span class="nowrap">56–</span>65.</cite><span title="ctx_ver=Z39.88-2004&rft_val_fmt=info%3Aofi%2Ffmt%3Akev%3Amtx%3Abook&rft.genre=book&rft.btitle=PostScript+Language+Reference%2C+third+edition&rft.pages=%3Cspan+class%3D%22nowrap%22%3E56-%3C%2Fspan%3E65&rft.pub=Addison-Wesley+Publishing+Company&rft.date=1999-02&rft.au=Adobe&rft_id=https%3A%2F%2Fwww.adobe.com%2Fjp%2Fprint%2Fpostscript%2Fpdfs%2FPLRM.pdf&rfr_id=info%3Asid%2Fen.wikipedia.org%3AList+of+programming+languages+by+type" class="Z3988"></span></span> </li> <li id="cite_note-23"><span class="mw-cite-backlink"><b><a href="#cite_ref-23">^</a></b></span> <span class="reference-text"><link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r1238218222"><cite class="citation web cs1"><a rel="nofollow" class="external text" href="https://scala-native.org/en/stable/user/interop.html">"Native code interoperability – Scala Native 0.4.14 documentation"</a><span class="reference-accessdate">. Retrieved <span class="nowrap">2023-07-05</span></span>.</cite><span title="ctx_ver=Z39.88-2004&rft_val_fmt=info%3Aofi%2Ffmt%3Akev%3Amtx%3Abook&rft.genre=unknown&rft.btitle=Native+code+interoperability+%E2%80%93+Scala+Native+0.4.14+documentation&rft_id=https%3A%2F%2Fscala-native.org%2Fen%2Fstable%2Fuser%2Finterop.html&rfr_id=info%3Asid%2Fen.wikipedia.org%3AList+of+programming+languages+by+type" class="Z3988"></span></span> </li> <li id="cite_note-24"><span class="mw-cite-backlink"><b><a href="#cite_ref-24">^</a></b></span> <span class="reference-text"><link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r1238218222"><cite class="citation web cs1"><a rel="nofollow" class="external text" href="https://web.archive.org/web/20240121085048/https://wiki.gnome.org/Projects/Vala/ReferenceHandling#Manual_memory_management_with_pointer_syntax">"Projects/Vala/ReferenceHandling - GNOME Wiki!"</a>. Archived from <a rel="nofollow" class="external text" href="https://wiki.gnome.org/Projects/Vala/ReferenceHandling#Manual_memory_management_with_pointer_syntax">the original</a> on 2024-01-21<span class="reference-accessdate">. Retrieved <span class="nowrap">2022-03-21</span></span>.</cite><span title="ctx_ver=Z39.88-2004&rft_val_fmt=info%3Aofi%2Ffmt%3Akev%3Amtx%3Abook&rft.genre=unknown&rft.btitle=Projects%2FVala%2FReferenceHandling+-+GNOME+Wiki%21&rft_id=https%3A%2F%2Fwiki.gnome.org%2FProjects%2FVala%2FReferenceHandling%23Manual_memory_management_with_pointer_syntax&rfr_id=info%3Asid%2Fen.wikipedia.org%3AList+of+programming+languages+by+type" class="Z3988"></span></span> </li> <li id="cite_note-25"><span class="mw-cite-backlink"><b><a href="#cite_ref-25">^</a></b></span> <span class="reference-text"><link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r1238218222"><cite class="citation web cs1"><a rel="nofollow" class="external text" href="https://doc.rust-lang.org/nightly/book/ch04-00-understanding-ownership.html">"Understanding Ownership - The Rust Programming Language"</a>. <i>doc.rust-lang.org</i>.</cite><span title="ctx_ver=Z39.88-2004&rft_val_fmt=info%3Aofi%2Ffmt%3Akev%3Amtx%3Ajournal&rft.genre=unknown&rft.jtitle=doc.rust-lang.org&rft.atitle=Understanding+Ownership+-+The+Rust+Programming+Language&rft_id=https%3A%2F%2Fdoc.rust-lang.org%2Fnightly%2Fbook%2Fch04-00-understanding-ownership.html&rfr_id=info%3Asid%2Fen.wikipedia.org%3AList+of+programming+languages+by+type" class="Z3988"></span></span> </li> <li id="cite_note-26"><span class="mw-cite-backlink"><b><a href="#cite_ref-26">^</a></b></span> <span class="reference-text"><link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r1238218222"><cite class="citation web cs1"><a rel="nofollow" class="external text" href="https://doc.rust-lang.org/nightly/book/second-edition/ch15-00-smart-pointers.html">"Smart Pointers - The Rust Programming Language"</a>. <i>doc.rust-lang.org</i>.</cite><span title="ctx_ver=Z39.88-2004&rft_val_fmt=info%3Aofi%2Ffmt%3Akev%3Amtx%3Ajournal&rft.genre=unknown&rft.jtitle=doc.rust-lang.org&rft.atitle=Smart+Pointers+-+The+Rust+Programming+Language&rft_id=https%3A%2F%2Fdoc.rust-lang.org%2Fnightly%2Fbook%2Fsecond-edition%2Fch15-00-smart-pointers.html&rfr_id=info%3Asid%2Fen.wikipedia.org%3AList+of+programming+languages+by+type" class="Z3988"></span></span> </li> <li id="cite_note-27"><span class="mw-cite-backlink"><b><a href="#cite_ref-27">^</a></b></span> <span class="reference-text">Jon Bentley (AT&T) August 1986 <i>CACM</i> <b>29</b> (8) "Little Languages", pp 711-721 from his <a rel="nofollow" class="external text" href="http://www.cs.toronto.edu/~chechik/courses18/csc2125/paper13.pdf">Programming Pearls column</a></span> </li> <li id="cite_note-31"><span class="mw-cite-backlink"><b><a href="#cite_ref-31">^</a></b></span> <span class="reference-text"><link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r1238218222"><cite class="citation web cs1"><a rel="nofollow" class="external text" href="https://perl6advent.wordpress.com/2011/12/14/meta-programming-what-why-and-how/">"Meta-programming: What, why and how"</a>. 2011-12-14.</cite><span title="ctx_ver=Z39.88-2004&rft_val_fmt=info%3Aofi%2Ffmt%3Akev%3Amtx%3Abook&rft.genre=unknown&rft.btitle=Meta-programming%3A+What%2C+why+and+how&rft.date=2011-12-14&rft_id=https%3A%2F%2Fperl6advent.wordpress.com%2F2011%2F12%2F14%2Fmeta-programming-what-why-and-how%2F&rfr_id=info%3Asid%2Fen.wikipedia.org%3AList+of+programming+languages+by+type" class="Z3988"></span></span> </li> <li id="cite_note-32"><span class="mw-cite-backlink"><b><a href="#cite_ref-32">^</a></b></span> <span class="reference-text"><link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r1238218222"><cite class="citation web cs1"><a rel="nofollow" class="external text" href="https://doc.rust-lang.org/nightly/book/ch19-06-macros.html#procedural-macros-for-generating-code-from-attributes">"Procedural Macros for Generating Code from Attributes"</a>. <i>doc.rust-lang.org</i>.</cite><span title="ctx_ver=Z39.88-2004&rft_val_fmt=info%3Aofi%2Ffmt%3Akev%3Amtx%3Ajournal&rft.genre=unknown&rft.jtitle=doc.rust-lang.org&rft.atitle=Procedural+Macros+for+Generating+Code+from+Attributes&rft_id=https%3A%2F%2Fdoc.rust-lang.org%2Fnightly%2Fbook%2Fch19-06-macros.html%23procedural-macros-for-generating-code-from-attributes&rfr_id=info%3Asid%2Fen.wikipedia.org%3AList+of+programming+languages+by+type" class="Z3988"></span></span> </li> <li id="cite_note-34"><span class="mw-cite-backlink"><b><a href="#cite_ref-34">^</a></b></span> <span class="reference-text"><link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r1238218222"><cite class="citation web cs1"><a rel="nofollow" class="external text" href="https://docs.perl6.org/language/classtut">"Classes and Roles"</a>.</cite><span title="ctx_ver=Z39.88-2004&rft_val_fmt=info%3Aofi%2Ffmt%3Akev%3Amtx%3Abook&rft.genre=unknown&rft.btitle=Classes+and+Roles&rft_id=https%3A%2F%2Fdocs.perl6.org%2Flanguage%2Fclasstut&rfr_id=info%3Asid%2Fen.wikipedia.org%3AList+of+programming+languages+by+type" class="Z3988"></span></span> </li> <li id="cite_note-35"><span class="mw-cite-backlink"><b><a href="#cite_ref-35">^</a></b></span> <span class="reference-text"><link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r1238218222"><cite class="citation web cs1"><a rel="nofollow" class="external text" href="https://docs.perl6.org/language/mop">"Meta-object protocol (MOP)"</a>.</cite><span title="ctx_ver=Z39.88-2004&rft_val_fmt=info%3Aofi%2Ffmt%3Akev%3Amtx%3Abook&rft.genre=unknown&rft.btitle=Meta-object+protocol+%28MOP%29&rft_id=https%3A%2F%2Fdocs.perl6.org%2Flanguage%2Fmop&rfr_id=info%3Asid%2Fen.wikipedia.org%3AList+of+programming+languages+by+type" class="Z3988"></span></span> </li> <li id="cite_note-36"><span class="mw-cite-backlink"><b><a href="#cite_ref-36">^</a></b></span> <span class="reference-text"><link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r1238218222"><cite id="CITEREFScabia" class="citation web cs1">Scabia, Marco. <a rel="nofollow" class="external text" href="https://www.adobe.com/devnet/flashplayer/articles/what-is-agal.html">"What is AGAL"</a>. <i>Adobe Developer Connection</i>. Adobe<span class="reference-accessdate">. Retrieved <span class="nowrap">8 May</span> 2018</span>.</cite><span title="ctx_ver=Z39.88-2004&rft_val_fmt=info%3Aofi%2Ffmt%3Akev%3Amtx%3Ajournal&rft.genre=unknown&rft.jtitle=Adobe+Developer+Connection&rft.atitle=What+is+AGAL&rft.aulast=Scabia&rft.aufirst=Marco&rft_id=https%3A%2F%2Fwww.adobe.com%2Fdevnet%2Fflashplayer%2Farticles%2Fwhat-is-agal.html&rfr_id=info%3Asid%2Fen.wikipedia.org%3AList+of+programming+languages+by+type" class="Z3988"></span></span> </li> <li id="cite_note-37"><span class="mw-cite-backlink"><b><a href="#cite_ref-37">^</a></b></span> <span class="reference-text"><link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r1238218222"><cite class="citation web cs1"><a rel="nofollow" class="external text" href="https://docs.raku.org/language/grammars">"Grammars"</a>.</cite><span title="ctx_ver=Z39.88-2004&rft_val_fmt=info%3Aofi%2Ffmt%3Akev%3Amtx%3Abook&rft.genre=unknown&rft.btitle=Grammars&rft_id=https%3A%2F%2Fdocs.raku.org%2Flanguage%2Fgrammars&rfr_id=info%3Asid%2Fen.wikipedia.org%3AList+of+programming+languages+by+type" class="Z3988"></span></span> </li> <li id="cite_note-38"><span class="mw-cite-backlink"><b><a href="#cite_ref-38">^</a></b></span> <span class="reference-text"><link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r1238218222"><cite id="CITEREFWulfRussell,_D.B.Haberman,_A.N.1971" class="citation journal cs1">Wulf, W.A.; Russell, D.B.; Haberman, A.N. (December 1971). "BLISS: A Language for Systems Programming". <i>Communications of the ACM</i>. <b>14</b> (12): <span class="nowrap">780–</span>790. <a href="/wiki/CiteSeerX_(identifier)" class="mw-redirect" title="CiteSeerX (identifier)">CiteSeerX</a> <span class="id-lock-free" title="Freely accessible"><a rel="nofollow" class="external text" href="https://citeseerx.ist.psu.edu/viewdoc/summary?doi=10.1.1.691.9765">10.1.1.691.9765</a></span>. <a href="/wiki/Doi_(identifier)" class="mw-redirect" title="Doi (identifier)">doi</a>:<a rel="nofollow" class="external text" href="https://doi.org/10.1145%2F362919.362936">10.1145/362919.362936</a>. <a href="/wiki/S2CID_(identifier)" class="mw-redirect" title="S2CID (identifier)">S2CID</a> <a rel="nofollow" class="external text" href="https://api.semanticscholar.org/CorpusID:9564255">9564255</a>.</cite><span title="ctx_ver=Z39.88-2004&rft_val_fmt=info%3Aofi%2Ffmt%3Akev%3Amtx%3Ajournal&rft.genre=article&rft.jtitle=Communications+of+the+ACM&rft.atitle=BLISS%3A+A+Language+for+Systems+Programming&rft.volume=14&rft.issue=12&rft.pages=%3Cspan+class%3D%22nowrap%22%3E780-%3C%2Fspan%3E790&rft.date=1971-12&rft_id=https%3A%2F%2Fciteseerx.ist.psu.edu%2Fviewdoc%2Fsummary%3Fdoi%3D10.1.1.691.9765%23id-name%3DCiteSeerX&rft_id=https%3A%2F%2Fapi.semanticscholar.org%2FCorpusID%3A9564255%23id-name%3DS2CID&rft_id=info%3Adoi%2F10.1145%2F362919.362936&rft.aulast=Wulf&rft.aufirst=W.A.&rft.au=Russell%2C+D.B.&rft.au=Haberman%2C+A.N.&rfr_id=info%3Asid%2Fen.wikipedia.org%3AList+of+programming+languages+by+type" class="Z3988"></span></span> </li> <li id="cite_note-39"><span class="mw-cite-backlink"><b><a href="#cite_ref-39">^</a></b></span> <span class="reference-text"><link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r1238218222"><cite class="citation web cs1"><a rel="nofollow" class="external text" href="http://www.stroustrup.com/applications.html">"C++ Applications"</a>.</cite><span title="ctx_ver=Z39.88-2004&rft_val_fmt=info%3Aofi%2Ffmt%3Akev%3Amtx%3Abook&rft.genre=unknown&rft.btitle=C%2B%2B+Applications&rft_id=http%3A%2F%2Fwww.stroustrup.com%2Fapplications.html&rfr_id=info%3Asid%2Fen.wikipedia.org%3AList+of+programming+languages+by+type" class="Z3988"></span></span> </li> <li id="cite_note-40"><span class="mw-cite-backlink"><b><a href="#cite_ref-40">^</a></b></span> <span class="reference-text"><link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r1238218222"><cite class="citation web cs1"><a rel="nofollow" class="external text" href="https://dlang.org/orgs-using-d.html">"Organizations using the D Language"</a>. <i>D Programming Language</i>.</cite><span title="ctx_ver=Z39.88-2004&rft_val_fmt=info%3Aofi%2Ffmt%3Akev%3Amtx%3Ajournal&rft.genre=unknown&rft.jtitle=D+Programming+Language&rft.atitle=Organizations+using+the+D+Language&rft_id=https%3A%2F%2Fdlang.org%2Forgs-using-d.html&rfr_id=info%3Asid%2Fen.wikipedia.org%3AList+of+programming+languages+by+type" class="Z3988"></span></span> </li> <li id="cite_note-41"><span class="mw-cite-backlink"><b><a href="#cite_ref-41">^</a></b></span> <span class="reference-text"><link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r1238218222"><cite class="citation web cs1"><a rel="nofollow" class="external text" href="https://www.mozilla.org/en-US/research/">"Mozilla Research"</a>. 1 January 2014.</cite><span title="ctx_ver=Z39.88-2004&rft_val_fmt=info%3Aofi%2Ffmt%3Akev%3Amtx%3Abook&rft.genre=unknown&rft.btitle=Mozilla+Research&rft.date=2014-01-01&rft_id=https%3A%2F%2Fwww.mozilla.org%2Fen-US%2Fresearch%2F&rfr_id=info%3Asid%2Fen.wikipedia.org%3AList+of+programming+languages+by+type" class="Z3988"></span></span> </li> </ol></div></div> <div class="navbox-styles"><link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r1129693374"><style data-mw-deduplicate="TemplateStyles:r1236075235">.mw-parser-output .navbox{box-sizing:border-box;border:1px solid #a2a9b1;width:100%;clear:both;font-size:88%;text-align:center;padding:1px;margin:1em auto 0}.mw-parser-output .navbox .navbox{margin-top:0}.mw-parser-output .navbox+.navbox,.mw-parser-output .navbox+.navbox-styles+.navbox{margin-top:-1px}.mw-parser-output .navbox-inner,.mw-parser-output .navbox-subgroup{width:100%}.mw-parser-output .navbox-group,.mw-parser-output .navbox-title,.mw-parser-output .navbox-abovebelow{padding:0.25em 1em;line-height:1.5em;text-align:center}.mw-parser-output .navbox-group{white-space:nowrap;text-align:right}.mw-parser-output .navbox,.mw-parser-output .navbox-subgroup{background-color:#fdfdfd}.mw-parser-output .navbox-list{line-height:1.5em;border-color:#fdfdfd}.mw-parser-output .navbox-list-with-group{text-align:left;border-left-width:2px;border-left-style:solid}.mw-parser-output tr+tr>.navbox-abovebelow,.mw-parser-output tr+tr>.navbox-group,.mw-parser-output tr+tr>.navbox-image,.mw-parser-output tr+tr>.navbox-list{border-top:2px solid #fdfdfd}.mw-parser-output .navbox-title{background-color:#ccf}.mw-parser-output .navbox-abovebelow,.mw-parser-output .navbox-group,.mw-parser-output .navbox-subgroup .navbox-title{background-color:#ddf}.mw-parser-output .navbox-subgroup .navbox-group,.mw-parser-output .navbox-subgroup .navbox-abovebelow{background-color:#e6e6ff}.mw-parser-output .navbox-even{background-color:#f7f7f7}.mw-parser-output .navbox-odd{background-color:transparent}.mw-parser-output .navbox .hlist td dl,.mw-parser-output .navbox .hlist td ol,.mw-parser-output .navbox .hlist td ul,.mw-parser-output .navbox td.hlist dl,.mw-parser-output .navbox td.hlist ol,.mw-parser-output .navbox td.hlist ul{padding:0.125em 0}.mw-parser-output .navbox .navbar{display:block;font-size:100%}.mw-parser-output .navbox-title .navbar{float:left;text-align:left;margin-right:0.5em}body.skin--responsive .mw-parser-output .navbox-image img{max-width:none!important}@media print{body.ns-0 .mw-parser-output .navbox{display:none!important}}</style></div><div role="navigation" class="navbox" aria-labelledby="Programming_languages625" style="padding:3px"><table class="nowraplinks hlist mw-collapsible expanded navbox-inner" style="border-spacing:0;background:transparent;color:inherit"><tbody><tr><th scope="col" class="navbox-title" colspan="2"><link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r1129693374"><link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r1239400231"><div class="navbar plainlinks hlist navbar-mini"><ul><li class="nv-view"><a href="/wiki/Template:Programming_languages" title="Template:Programming languages"><abbr title="View this template">v</abbr></a></li><li class="nv-talk"><a href="/wiki/Template_talk:Programming_languages" title="Template talk:Programming languages"><abbr title="Discuss this template">t</abbr></a></li><li class="nv-edit"><a href="/wiki/Special:EditPage/Template:Programming_languages" title="Special:EditPage/Template:Programming languages"><abbr title="Edit this template">e</abbr></a></li></ul></div><div id="Programming_languages625" style="font-size:114%;margin:0 4em"><a href="/wiki/Programming_language" title="Programming language">Programming languages</a></div></th></tr><tr><td class="navbox-abovebelow" colspan="2"><div> <ul><li><a href="/wiki/Comparison_of_programming_languages" title="Comparison of programming languages">Comparison</a></li> <li><a href="/wiki/Timeline_of_programming_languages" title="Timeline of programming languages">Timeline</a></li> <li><a href="/wiki/History_of_programming_languages" title="History of programming languages">History</a></li></ul> </div></td></tr><tr><td colspan="2" class="navbox-list navbox-odd" style="width:100%;padding:0"><div style="padding:0 0.25em"> <ul><li><a href="/wiki/Ada_(programming_language)" title="Ada (programming language)">Ada</a></li> <li><a href="/wiki/ALGOL" title="ALGOL">ALGOL</a> <ul><li><a href="/wiki/Simula" title="Simula">Simula</a></li></ul></li> <li><a href="/wiki/APL_(programming_language)" title="APL (programming language)">APL</a></li> <li><a href="/wiki/Assembly_language" title="Assembly language">Assembly</a></li> <li><a href="/wiki/BASIC" title="BASIC">BASIC</a> <ul><li><a href="/wiki/Visual_Basic" title="Visual Basic">Visual Basic</a> <ul><li><a href="/wiki/Visual_Basic_(classic)" title="Visual Basic (classic)">classic</a></li> <li><a href="/wiki/Visual_Basic_(.NET)" title="Visual Basic (.NET)">.NET</a></li></ul></li></ul></li> <li><a href="/wiki/C_(programming_language)" title="C (programming language)">C</a></li> <li><a href="/wiki/C%2B%2B" title="C++">C++</a></li> <li><a href="/wiki/C_Sharp_(programming_language)" title="C Sharp (programming language)">C#</a></li> <li><a href="/wiki/COBOL" title="COBOL">COBOL</a></li> <li><a href="/wiki/Erlang_(programming_language)" title="Erlang (programming language)">Erlang</a></li> <li><a href="/wiki/Forth_(programming_language)" title="Forth (programming language)">Forth</a></li> <li><a href="/wiki/Fortran" title="Fortran">Fortran</a></li> <li><a href="/wiki/Go_(programming_language)" title="Go (programming language)">Go</a></li> <li><a href="/wiki/Haskell" title="Haskell">Haskell</a></li> <li><a href="/wiki/Java_(programming_language)" title="Java (programming language)">Java</a></li> <li><a href="/wiki/JavaScript" title="JavaScript">JavaScript</a></li> <li><a href="/wiki/Julia_(programming_language)" title="Julia (programming language)">Julia</a></li> <li><a href="/wiki/Kotlin_(programming_language)" title="Kotlin (programming language)">Kotlin</a></li> <li><a href="/wiki/Lisp_(programming_language)" title="Lisp (programming language)">Lisp</a></li> <li><a href="/wiki/Lua_(programming_language)" title="Lua (programming language)">Lua</a></li> <li><a href="/wiki/MATLAB" title="MATLAB">MATLAB</a></li> <li><a href="/wiki/ML_(programming_language)" title="ML (programming language)">ML</a></li> <li><a href="/wiki/Pascal_(programming_language)" title="Pascal (programming language)">Pascal</a> <ul><li><a href="/wiki/Object_Pascal" title="Object Pascal">Object Pascal</a></li></ul></li> <li><a href="/wiki/Perl" title="Perl">Perl</a></li> <li><a href="/wiki/PHP" title="PHP">PHP</a></li> <li><a href="/wiki/Prolog" title="Prolog">Prolog</a></li> <li><a href="/wiki/Python_(programming_language)" title="Python (programming language)">Python</a></li> <li><a href="/wiki/R_(programming_language)" title="R (programming language)">R</a></li> <li><a href="/wiki/Ruby_(programming_language)" title="Ruby (programming language)">Ruby</a></li> <li><a href="/wiki/Rust_(programming_language)" title="Rust (programming language)">Rust</a></li> <li><a href="/wiki/SQL" title="SQL">SQL</a></li> <li><a href="/wiki/Scratch_(programming_language)" title="Scratch (programming language)">Scratch</a></li> <li><a href="/wiki/Shell_script" title="Shell script">Shell</a></li> <li><a href="/wiki/Smalltalk" title="Smalltalk">Smalltalk</a></li> <li><a href="/wiki/Swift_(programming_language)" title="Swift (programming language)">Swift</a></li> <li><i><a href="/wiki/List_of_programming_languages" title="List of programming languages">more...</a></i></li></ul> </div></td></tr><tr><td class="navbox-abovebelow" colspan="2"><div> <ul><li><span class="noviewer" typeof="mw:File"><span title="List-Class article"><img alt="" src="//upload.wikimedia.org/wikipedia/en/thumb/d/db/Symbol_list_class.svg/16px-Symbol_list_class.svg.png" decoding="async" width="16" height="16" class="mw-file-element" srcset="//upload.wikimedia.org/wikipedia/en/thumb/d/db/Symbol_list_class.svg/23px-Symbol_list_class.svg.png 1.5x, //upload.wikimedia.org/wikipedia/en/thumb/d/db/Symbol_list_class.svg/31px-Symbol_list_class.svg.png 2x" data-file-width="180" data-file-height="185" /></span></span> <b>Lists:</b> <a href="/wiki/List_of_programming_languages" title="List of programming languages">Alphabetical</a></li> <li><a class="mw-selflink selflink">Categorical</a></li> <li><a href="/wiki/Generational_list_of_programming_languages" title="Generational list of programming languages">Generational</a></li> <li><a href="/wiki/Non-English-based_programming_languages" title="Non-English-based programming languages">Non-English-based</a></li> <li><span class="noviewer" typeof="mw:File"><span title="Category"><img alt="" src="//upload.wikimedia.org/wikipedia/en/thumb/9/96/Symbol_category_class.svg/16px-Symbol_category_class.svg.png" decoding="async" width="16" height="16" class="mw-file-element" srcset="//upload.wikimedia.org/wikipedia/en/thumb/9/96/Symbol_category_class.svg/23px-Symbol_category_class.svg.png 1.5x, //upload.wikimedia.org/wikipedia/en/thumb/9/96/Symbol_category_class.svg/31px-Symbol_category_class.svg.png 2x" data-file-width="180" data-file-height="185" /></span></span> <a href="/wiki/Category:Programming_languages" title="Category:Programming languages">Category</a></li></ul> </div></td></tr></tbody></table></div> <!-- NewPP limit report Parsed by mw‐api‐int.codfw.main‐5b65fffc7d‐fbnx2 Cached time: 20250216214022 Cache expiry: 2592000 Reduced expiry: false Complications: [vary‐revision‐sha1, show‐toc] CPU time usage: 0.855 seconds Real time usage: 1.032 seconds Preprocessor visited node count: 6926/1000000 Post‐expand include size: 96140/2097152 bytes Template argument size: 7063/2097152 bytes Highest expansion depth: 12/100 Expensive parser function count: 25/500 Unstrip recursion depth: 1/20 Unstrip post‐expand size: 168841/5000000 bytes Lua time usage: 0.412/10.000 seconds Lua memory usage: 6932869/52428800 bytes Number of Wikibase entities loaded: 0/400 --> <!-- Transclusion expansion time report (%,ms,calls,template) 100.00% 717.644 1 -total 34.41% 246.938 2 Template:Reflist 27.47% 197.140 32 Template:Cite_web 11.64% 83.557 1 Template:Programming_language_lists 11.44% 82.066 1 Template:Sidebar 10.34% 74.181 1 Template:Short_description 6.79% 48.700 2 Template:Pagetype 6.38% 45.810 2 Template:Citation_needed 6.35% 45.553 14 Template:Main 5.79% 41.535 40 Template:Div_col --> <!-- Saved in parser cache with key enwiki:pcache:144144:|#|:idhash:canonical and timestamp 20250216214022 and revision id 1276098860. Rendering was triggered because: api-parse --> </div><!--esi <esi:include src="/esitest-fa8a495983347898/content" /> --><noscript><img src="https://login.wikimedia.org/wiki/Special:CentralAutoLogin/start?useformat=desktop&type=1x1&usesul3=0" alt="" width="1" height="1" style="border: none; position: absolute;"></noscript> <div class="printfooter" data-nosnippet="">Retrieved from "<a dir="ltr" href="https://en.wikipedia.org/w/index.php?title=List_of_programming_languages_by_type&oldid=1276098860">https://en.wikipedia.org/w/index.php?title=List_of_programming_languages_by_type&oldid=1276098860</a>"</div></div> <div id="catlinks" class="catlinks" data-mw="interface"><div id="mw-normal-catlinks" class="mw-normal-catlinks"><a href="/wiki/Help:Category" title="Help:Category">Categories</a>: <ul><li><a href="/wiki/Category:Lists_of_programming_languages" title="Category:Lists of programming languages">Lists of programming languages</a></li><li><a href="/wiki/Category:Array_programming_languages" title="Category:Array programming languages">Array programming languages</a></li></ul></div><div id="mw-hidden-catlinks" class="mw-hidden-catlinks mw-hidden-cats-hidden">Hidden categories: <ul><li><a href="/wiki/Category:Articles_with_short_description" title="Category:Articles with short description">Articles with short description</a></li><li><a href="/wiki/Category:Short_description_is_different_from_Wikidata" title="Category:Short description is different from Wikidata">Short description is different from Wikidata</a></li><li><a href="/wiki/Category:All_articles_with_unsourced_statements" title="Category:All articles with unsourced statements">All articles with unsourced statements</a></li><li><a href="/wiki/Category:Articles_with_unsourced_statements_from_January_2018" title="Category:Articles with unsourced statements from January 2018">Articles with unsourced statements from January 2018</a></li><li><a href="/wiki/Category:Articles_to_be_expanded_from_November_2016" title="Category:Articles to be expanded from November 2016">Articles to be expanded from November 2016</a></li><li><a href="/wiki/Category:All_articles_to_be_expanded" title="Category:All articles to be expanded">All articles to be expanded</a></li><li><a href="/wiki/Category:Articles_to_be_expanded_from_April_2018" title="Category:Articles to be expanded from April 2018">Articles to be expanded from April 2018</a></li><li><a href="/wiki/Category:Articles_to_be_expanded_from_September_2018" title="Category:Articles to be expanded from September 2018">Articles to be expanded from September 2018</a></li><li><a href="/wiki/Category:Articles_with_unsourced_statements_from_March_2015" title="Category:Articles with unsourced statements from March 2015">Articles with unsourced statements from March 2015</a></li><li><a href="/wiki/Category:Articles_with_unsourced_statements_from_August_2015" title="Category:Articles with unsourced statements from August 2015">Articles with unsourced statements from August 2015</a></li></ul></div></div> </div> </main> </div> <div class="mw-footer-container"> <footer id="footer" class="mw-footer" > <ul id="footer-info"> <li id="footer-info-lastmod"> This page was last edited on 16 February 2025, at 21:40<span class="anonymous-show"> (UTC)</span>.</li> <li id="footer-info-copyright">Text is available under the <a href="/wiki/Wikipedia:Text_of_the_Creative_Commons_Attribution-ShareAlike_4.0_International_License" title="Wikipedia:Text of the Creative Commons Attribution-ShareAlike 4.0 International License">Creative Commons Attribution-ShareAlike 4.0 License</a>; additional terms may apply. By using this site, you agree to the <a href="https://foundation.wikimedia.org/wiki/Special:MyLanguage/Policy:Terms_of_Use" class="extiw" title="foundation:Special:MyLanguage/Policy:Terms of Use">Terms of Use</a> and <a href="https://foundation.wikimedia.org/wiki/Special:MyLanguage/Policy:Privacy_policy" class="extiw" title="foundation:Special:MyLanguage/Policy:Privacy policy">Privacy Policy</a>. Wikipedia® is a registered trademark of the <a rel="nofollow" class="external text" href="https://wikimediafoundation.org/">Wikimedia Foundation, Inc.</a>, a non-profit organization.</li> </ul> <ul id="footer-places"> <li id="footer-places-privacy"><a href="https://foundation.wikimedia.org/wiki/Special:MyLanguage/Policy:Privacy_policy">Privacy policy</a></li> <li id="footer-places-about"><a href="/wiki/Wikipedia:About">About Wikipedia</a></li> <li id="footer-places-disclaimers"><a href="/wiki/Wikipedia:General_disclaimer">Disclaimers</a></li> <li id="footer-places-contact"><a href="//en.wikipedia.org/wiki/Wikipedia:Contact_us">Contact Wikipedia</a></li> <li id="footer-places-wm-codeofconduct"><a href="https://foundation.wikimedia.org/wiki/Special:MyLanguage/Policy:Universal_Code_of_Conduct">Code of Conduct</a></li> <li id="footer-places-developers"><a href="https://developer.wikimedia.org">Developers</a></li> <li id="footer-places-statslink"><a href="https://stats.wikimedia.org/#/en.wikipedia.org">Statistics</a></li> <li id="footer-places-cookiestatement"><a href="https://foundation.wikimedia.org/wiki/Special:MyLanguage/Policy:Cookie_statement">Cookie statement</a></li> <li id="footer-places-mobileview"><a href="//en.m.wikipedia.org/w/index.php?title=List_of_programming_languages_by_type&mobileaction=toggle_view_mobile" class="noprint stopMobileRedirectToggle">Mobile view</a></li> </ul> <ul id="footer-icons" class="noprint"> <li id="footer-copyrightico"><a href="https://wikimediafoundation.org/" class="cdx-button cdx-button--fake-button cdx-button--size-large cdx-button--fake-button--enabled"><img src="/static/images/footer/wikimedia-button.svg" width="84" height="29" alt="Wikimedia Foundation" lang="en" loading="lazy"></a></li> <li id="footer-poweredbyico"><a href="https://www.mediawiki.org/" class="cdx-button cdx-button--fake-button cdx-button--size-large cdx-button--fake-button--enabled"><picture><source media="(min-width: 500px)" srcset="/w/resources/assets/poweredby_mediawiki.svg" width="88" height="31"><img src="/w/resources/assets/mediawiki_compact.svg" alt="Powered by MediaWiki" width="25" height="25" loading="lazy"></picture></a></li> </ul> </footer> </div> </div> </div> <div class="vector-header-container vector-sticky-header-container"> <div id="vector-sticky-header" class="vector-sticky-header"> <div class="vector-sticky-header-start"> <div class="vector-sticky-header-icon-start vector-button-flush-left vector-button-flush-right" aria-hidden="true"> <button class="cdx-button cdx-button--weight-quiet cdx-button--icon-only vector-sticky-header-search-toggle" tabindex="-1" data-event-name="ui.vector-sticky-search-form.icon"><span class="vector-icon mw-ui-icon-search mw-ui-icon-wikimedia-search"></span> <span>Search</span> </button> </div> <div role="search" class="vector-search-box-vue vector-search-box-show-thumbnail vector-search-box"> <div class="vector-typeahead-search-container"> <div class="cdx-typeahead-search cdx-typeahead-search--show-thumbnail"> <form action="/w/index.php" id="vector-sticky-search-form" class="cdx-search-input cdx-search-input--has-end-button"> <div class="cdx-search-input__input-wrapper" data-search-loc="header-moved"> <div class="cdx-text-input cdx-text-input--has-start-icon"> <input class="cdx-text-input__input" type="search" name="search" placeholder="Search Wikipedia"> <span class="cdx-text-input__icon cdx-text-input__start-icon"></span> </div> <input type="hidden" name="title" value="Special:Search"> </div> <button class="cdx-button cdx-search-input__end-button">Search</button> </form> </div> </div> </div> <div class="vector-sticky-header-context-bar"> <nav aria-label="Contents" class="vector-toc-landmark"> <div id="vector-sticky-header-toc" class="vector-dropdown mw-portlet mw-portlet-sticky-header-toc vector-sticky-header-toc vector-button-flush-left" > <input type="checkbox" id="vector-sticky-header-toc-checkbox" role="button" aria-haspopup="true" data-event-name="ui.dropdown-vector-sticky-header-toc" class="vector-dropdown-checkbox " aria-label="Toggle the table of contents" > <label id="vector-sticky-header-toc-label" for="vector-sticky-header-toc-checkbox" class="vector-dropdown-label cdx-button cdx-button--fake-button cdx-button--fake-button--enabled cdx-button--weight-quiet cdx-button--icon-only " aria-hidden="true" ><span class="vector-icon mw-ui-icon-listBullet mw-ui-icon-wikimedia-listBullet"></span> <span class="vector-dropdown-label-text">Toggle the table of contents</span> </label> <div class="vector-dropdown-content"> <div id="vector-sticky-header-toc-unpinned-container" class="vector-unpinned-container"> </div> </div> </div> </nav> <div class="vector-sticky-header-context-bar-primary" aria-hidden="true" ><span class="mw-page-title-main">List of programming languages by type</span></div> </div> </div> <div class="vector-sticky-header-end" aria-hidden="true"> <div class="vector-sticky-header-icons"> <a href="#" class="cdx-button cdx-button--fake-button cdx-button--fake-button--enabled cdx-button--weight-quiet cdx-button--icon-only" id="ca-talk-sticky-header" tabindex="-1" data-event-name="talk-sticky-header"><span class="vector-icon mw-ui-icon-speechBubbles mw-ui-icon-wikimedia-speechBubbles"></span> <span></span> </a> <a href="#" class="cdx-button cdx-button--fake-button cdx-button--fake-button--enabled cdx-button--weight-quiet cdx-button--icon-only" id="ca-subject-sticky-header" tabindex="-1" data-event-name="subject-sticky-header"><span class="vector-icon mw-ui-icon-article mw-ui-icon-wikimedia-article"></span> <span></span> </a> <a href="#" class="cdx-button cdx-button--fake-button cdx-button--fake-button--enabled cdx-button--weight-quiet cdx-button--icon-only" id="ca-history-sticky-header" tabindex="-1" data-event-name="history-sticky-header"><span class="vector-icon mw-ui-icon-wikimedia-history mw-ui-icon-wikimedia-wikimedia-history"></span> <span></span> </a> <a href="#" class="cdx-button cdx-button--fake-button cdx-button--fake-button--enabled cdx-button--weight-quiet cdx-button--icon-only mw-watchlink" id="ca-watchstar-sticky-header" tabindex="-1" data-event-name="watch-sticky-header"><span class="vector-icon mw-ui-icon-wikimedia-star mw-ui-icon-wikimedia-wikimedia-star"></span> <span></span> </a> <a href="#" class="cdx-button cdx-button--fake-button cdx-button--fake-button--enabled cdx-button--weight-quiet cdx-button--icon-only" id="ca-edit-sticky-header" tabindex="-1" data-event-name="wikitext-edit-sticky-header"><span class="vector-icon mw-ui-icon-wikimedia-wikiText mw-ui-icon-wikimedia-wikimedia-wikiText"></span> <span></span> </a> <a href="#" class="cdx-button cdx-button--fake-button cdx-button--fake-button--enabled cdx-button--weight-quiet cdx-button--icon-only" id="ca-ve-edit-sticky-header" tabindex="-1" data-event-name="ve-edit-sticky-header"><span class="vector-icon mw-ui-icon-wikimedia-edit mw-ui-icon-wikimedia-wikimedia-edit"></span> <span></span> </a> <a href="#" class="cdx-button cdx-button--fake-button cdx-button--fake-button--enabled cdx-button--weight-quiet cdx-button--icon-only" id="ca-viewsource-sticky-header" tabindex="-1" data-event-name="ve-edit-protected-sticky-header"><span class="vector-icon mw-ui-icon-wikimedia-editLock mw-ui-icon-wikimedia-wikimedia-editLock"></span> <span></span> </a> </div> <div class="vector-sticky-header-buttons"> <button class="cdx-button cdx-button--weight-quiet mw-interlanguage-selector" id="p-lang-btn-sticky-header" tabindex="-1" data-event-name="ui.dropdown-p-lang-btn-sticky-header"><span class="vector-icon mw-ui-icon-wikimedia-language mw-ui-icon-wikimedia-wikimedia-language"></span> <span>7 languages</span> </button> <a href="#" class="cdx-button cdx-button--fake-button cdx-button--fake-button--enabled cdx-button--weight-quiet cdx-button--action-progressive" id="ca-addsection-sticky-header" tabindex="-1" data-event-name="addsection-sticky-header"><span class="vector-icon mw-ui-icon-speechBubbleAdd-progressive mw-ui-icon-wikimedia-speechBubbleAdd-progressive"></span> <span>Add topic</span> </a> </div> <div class="vector-sticky-header-icon-end"> <div class="vector-user-links"> </div> </div> </div> </div> </div> <div class="vector-settings" id="p-dock-bottom"> <ul></ul> </div><script>(RLQ=window.RLQ||[]).push(function(){mw.config.set({"wgHostname":"mw-web.codfw.main-b766959bd-jsw47","wgBackendResponseTime":149,"wgPageParseReport":{"limitreport":{"cputime":"0.855","walltime":"1.032","ppvisitednodes":{"value":6926,"limit":1000000},"postexpandincludesize":{"value":96140,"limit":2097152},"templateargumentsize":{"value":7063,"limit":2097152},"expansiondepth":{"value":12,"limit":100},"expensivefunctioncount":{"value":25,"limit":500},"unstrip-depth":{"value":1,"limit":20},"unstrip-size":{"value":168841,"limit":5000000},"entityaccesscount":{"value":0,"limit":400},"timingprofile":["100.00% 717.644 1 -total"," 34.41% 246.938 2 Template:Reflist"," 27.47% 197.140 32 Template:Cite_web"," 11.64% 83.557 1 Template:Programming_language_lists"," 11.44% 82.066 1 Template:Sidebar"," 10.34% 74.181 1 Template:Short_description"," 6.79% 48.700 2 Template:Pagetype"," 6.38% 45.810 2 Template:Citation_needed"," 6.35% 45.553 14 Template:Main"," 5.79% 41.535 40 Template:Div_col"]},"scribunto":{"limitreport-timeusage":{"value":"0.412","limit":"10.000"},"limitreport-memusage":{"value":6932869,"limit":52428800}},"cachereport":{"origin":"mw-api-int.codfw.main-5b65fffc7d-fbnx2","timestamp":"20250216214022","ttl":2592000,"transientcontent":false}}});});</script> <script type="application/ld+json">{"@context":"https:\/\/schema.org","@type":"Article","name":"List of programming languages by type","url":"https:\/\/en.wikipedia.org\/wiki\/List_of_programming_languages_by_type","sameAs":"http:\/\/www.wikidata.org\/entity\/Q389085","mainEntity":"http:\/\/www.wikidata.org\/entity\/Q389085","author":{"@type":"Organization","name":"Contributors to Wikimedia projects"},"publisher":{"@type":"Organization","name":"Wikimedia Foundation, Inc.","logo":{"@type":"ImageObject","url":"https:\/\/www.wikimedia.org\/static\/images\/wmf-hor-googpub.png"}},"datePublished":"2002-11-05T02:38:25Z","dateModified":"2025-02-16T21:40:18Z","headline":"Wikimedia list article"}</script> </body> </html>