Comparison of multi-paradigm programming languages: Difference between revisions

Content deleted Content added
Citation bot (talk | contribs)
m Alter: title, template type. Add: date, title, isbn, pages, doi, chapter, chapter-url. Removed or converted URL. Converted bare reference to cite template. Formatted dashes. | You can use this bot yourself. Report bugs here. | User-activated.
Impinball (talk | contribs)
Language overview: Add a few library implementations for ES, include Light Table as a partial visual programming implementation
Line 77:
|-
| [[Clojure]] || 5
| {{yes}}<ref>[https://clojure.org/about/concurrent_programming Clojure - Concurrent Programming]</ref><ref>[https://github.com/clojure/core.async Clojure - core.async]</ref> || {{no}} || {{no}} || {{yes}} || {{no}} || {{yes}}<ref>[https://clojure.org/about/functional_programming Clojure - Functional Programming]</ref> || {{yes}}<ref>[https://clojure.org/reference/macros Clojure - Macros]</ref> || {{no}} || {{no}} || {{partial|Library}}<ref>[https://github.com/clojure/core.logic/ Clojure - core.logic]</ref> || {{no}} || {{no}} || {{yes}}<ref>[https://clojure.org/guides/threading_macros Clojure - Threading Macros Guide]</ref> || {{nopartial|Editor}}<ref>{{Cite web | url=http://lighttable.com/ | title=Light Table| date=2019-04-08}}</ref> || {{no}} || [[Multiple dispatch]]<ref>[https://clojure.org/reference/multimethods Multimethods and Hierarchies]</ref>, Agents<ref>[https://clojure.org/reference/agents Agents and Asynchronous Actions]</ref>
|-
| [[Common Lisp]] || 5
Line 98:
|-
| [[ECMAScript]]<ref>[http://www.crockford.com/javascript/little.html The Little JavaScripter] demonstrates fundamental commonality with Scheme, a functional language.</ref><ref>[http://mckoss.com/jscript/object.htm Object Oriented Programming in JavaScript] gives an overview of object-oriented programming techniques in JavaScript.</ref> ([[ActionScript]], [[E4X]], [[JavaScript]], [[JScript]]) || 4 (5)
| {{partial|partial (promises, native extensions)}}<ref group="a" name="nodejs-cluster">using [[Node.js]]' [https://nodejs.org/api/cluster.html cluster] module or [https://nodejs.org/api/child_process.html#child_process_child_process_fork_modulepath_args_options child_process.fork] method, [https://developer.mozilla.org/en-US/docs/Web/API/Web_Workers_API/Using_web_workers web workers] in the browser, etc.</ref> || {{no}} || {{no}} || {{nopartial|Library}}<ref>{{Cite web | url=https://reactjs.org/ | title=React – A JavaScript library for building user interfaces| date=2019-04-08}}</ref><ref>{{Cite web | url=https://reactjs.org/ | title=React – A JavaScript library for building user interfaces| date=2019-04-08}}</ref><ref>{{Cite web | url=https://github.com/getify/tng-hooks | title=TNG-Hooks| date=2019-04-08}}</ref> || {{no}} || {{yes}} || {{no}} || {{no}} || {{yes}} || {{no}} || {{yes}} || {{yes}}<ref group="a" name="prototype">Prototype-based</ref> || {{nopartial|Library}}<ref>{{Cite web | url=https://lodash.com/docs/4.17.11#flow | title=Lodash documentation| date=2019-04-08}}</ref><ref>{{noCite web | url=https://swannodette.github.io/mori/#pipeline | title=mori| date=2019-04-08}}</ref> || {{partial|Editor}}<ref>{{Cite web | url=http://lighttable.com/ | title=Light Table| date=2019-04-08}}</ref> || {{no}} || reactive<ref group="a" name="rxjs">using [http://reactivex.io/rxjs/ Reactive Extensions (RxJS)]</ref><ref>{{Cite web | url=https://github.com/getify/tng-hooks | title=TNG-Hooks| date=2019-04-08}}</ref>, event driven<ref group="a" name="node-events">in Node.js via their [https://nodejs.org/api/events.html events] module</ref><ref group="a" name="dom-events">in browsers via their native [https://developer.mozilla.org/en-US/docs/Web/API/EventTarget EventTarget] API</ref>
 
|-
Line 191:
| {{yes}}<ref>{{cite web|title=Chapter 9. Metaprogramming|url=http://chimera.labs.oreilly.com/books/1230000000393/ch09.html|website=chimera.labs.oreilly.com|accessdate=22 October 2016}}</ref><ref>{{cite web|title=Metaprogramming|url=https://python-3-patterns-idioms-test.readthedocs.io/en/latest/Metaprogramming.html|website=readthedocs.io|accessdate=22 October 2016}}</ref>
| {{yes}}<ref>{{cite web|title=PEP 443 -- Single-dispatch generic functions|url=https://www.python.org/dev/peps/pep-0443/|website=python.org|accessdate=22 October 2016}}</ref><ref>{{cite web|title=PEP 484 -- Type Hints|url=https://www.python.org/dev/peps/pep-0484/#generics|website=python.org|accessdate=22 October 2016}}</ref>|| {{yes}} || {{partial|Library}}<ref>{{cite web |url=https://sites.google.com/site/pydatalog/ |title=PyDatalog |accessdate=22 October 2016}}</ref>|| {{yes}}|| {{yes}}<ref group="a" name="class" />
| {{no}}|| {{nopartial|Editor}}<ref>{{Cite web | url=http://lighttable.com/ | title=Light Table| date=2019-04-08}}</ref> || {{no}}|| [[Structured programming|structured]]
|-
| [[R (programming language)|R]] || 4