Snap! (programming language): Difference between revisions

Content deleted Content added
No edit summary
Their computer-science theoretical basis IS, not ARE. The verb is applied to the noun "basis," which is a singular noun. Therefore, IS is the correct verb. Also, a list is not a sentence. When you start using bullet points, the lines should NOT end in punctuation.
Line 51:
==Features==
The most important features that Snap''!'' offers, but Scratch does not, include:
* expressionsExpressions using anonymous functions, represented by a block inside a gray ring, having one or more empty slot(s)/argument(s) that are filled by a "higher order function" (the one that is calling the anonymous one). (Their computer-science theoretical basis areis [[first class function]]s, which in turn have [[lambda calculus]] as their even more abstract, and mathematical, foundation),
* listsLists that are [[First class object|first class]] (including ''lists of lists/arrays''),
* ''First class'' sprites (or in other words, [[Prototype-based programming|prototype-oriented instance-based classless object programming]]),
* "Hyperblocks": functions whose natural ___domain is scalars (text or numbers), extended to accept lists as inputs and apply the underlying function to the scalars in the list or a sublist,
* nestableNestable sprites,
* codificationCodification of Snap''!'' programs to text languages such as [[Python (programming language)|Python]], JavaScript, [[C (programming language)|C]], etc.
* [[metaprogrammingMetaprogramming]], reflection, and macros.
 
==Mascot==