Programming Languages Concepts: Difference between revisions

From NovaOrdis Knowledge Base
Jump to navigation Jump to search
No edit summary
No edit summary
Line 3: Line 3:
==Static Typing vs Dynamic Typing==
==Static Typing vs Dynamic Typing==


https://en.wikipedia.org/wiki/Type_system
* Wikipedia Type System https://en.wikipedia.org/wiki/Type_system
 
Dynamically typed languages are convenient, but certain types of errors cannot be caught until the program executes. For statically typed languages, many of these errors are caught at the compilation phase. On the downside, static languages usually comes with a great deal of ceremony around everything that happens in the program (heavy syntax, type annotations, complex type hierarchies).


==Strong Typing vs Loose Typing==
==Strong Typing vs Loose Typing==

Revision as of 19:43, 16 March 2016

Typing

Static Typing vs Dynamic Typing

Dynamically typed languages are convenient, but certain types of errors cannot be caught until the program executes. For statically typed languages, many of these errors are caught at the compilation phase. On the downside, static languages usually comes with a great deal of ceremony around everything that happens in the program (heavy syntax, type annotations, complex type hierarchies).

Strong Typing vs Loose Typing

https://en.wikipedia.org/wiki/Strong_and_weak_typing

Duck Typing

Metaprogramming

Metaprogramming is writing code that manipulates other code, or even itself.

Functional Programming

Closures and recursion are at the base of the functional programming paradigm.

Closures