Snap! (programming language): Difference between revisions

Content deleted Content added
Also redundant and obvious.
No edit summary
 
(10 intermediate revisions by 7 users not shown)
Line 10:
| designer = [[Brian Harvey (lecturer)|Brian Harvey]] and [https://github.com/jmoenig/ Jens Mönig]
| developer = [https://github.com/jmoenig/ Jens Mönig]
| latest release version = 910.27.172
| latest release date = {{Start date and age|20242025|45|245}} <ref>{{cite web|url=https://github.com/jmoenig/Snap/releases|title=jmoenig/Snap|website=GitHub|access-date=May 175, 20242025}}</ref>
| typing = [[Type system|dynamic]]
| implementations =
Line 17:
| dialects =
| influenced by = [[Scratch (programming language)|Scratch]], [[Scheme (programming language)|Scheme]], [[Logo (programming language)|Logo]], [[Smalltalk]], [[APL (programming language) | APL]]
| influenced = [[Scratch (programming language)|Scratch]], BeetleBlocks, NetsBlox, Dragme IDE, [[Turtlestitch]]
| operating system = [[Cross-platform]]
| license = [[Affero General Public License|AGPL]]
Line 24:
}}
 
'''Snap''!''''' (formerly Build Your Own Blocks) is a free block-based [[List of educational programming languages|educational]] graphical programming language and online community. Snap allows students to explore, create, and remix interactive animations, games, stories, and more, while learning about mathematical and computational ideas. While inspired by [[Scratch (programming language)|Scratch]], Snap''!'' has many advanced features. The Snap''!'' editor, and programs created in it, are [[web application]]s that run in the browser (like [[Scratch (programming language)|Scratch 3]]) without requiring [[Installation (computer programs)|installation]].{{#tag:ref|BYOB, Snap''!''{{'}}s predecessor, was a modification of Scratch and could export projects as [[Portable Executable|Windows executables]].|group=Note}} It is built on top of ''Morphic.js'',<ref name="morphic_js">{{cite web |last1=Mönig |first1=Jens |title=morphic.js |url=https://github.com/jmoenig/morphic.js/blob/master/morphic.txt |website=GitHub |accessdate=7 June 2023}}</ref> a [[Morphic (software)|Morphic]] GUI, written by Jens Mönig as 'middle layer' between Snap! itself and 'bare' JavaScript.
 
==User interface==
Line 60:
==Mascot==
[[File:Snap! mascot, Alonzo.svg|50px|right]]
Alonzo, the mascot of Snap''!'', bears the name of [[Alonzo Church]], the inventor of a model of computation in which a universal function, represented by lambda, can create any function behavior by calling it on itself in various combinations. The mascot is a modified version of Gobo from [[Scratch (programming language)|Scratch]], with permission of the Scratch teamTeam. Because Alonzo Church's work is called [[lambda calculus]], the mascot's hair is shaped as the Greek letter [[lambda]].
 
==Special-purpose blocks (libraries)==
Line 70:
While the software itself has little restraints, it does have some limitations.
 
These include as follows:
 
* No native cloud variables
* 10 [[megabyte]] file cap for uploading (Snap''!'' Cloud only)
* Users have to manually enable Javascript when loading a project that uses inline bits of JS, due to a hack a few years ago.
 
==History==