化作风化作雨是什么歌| 胰腺在什么位置| 幽灵蛛为什么不能打死| 6月13号是什么星座| lycra是什么面料| shiraz是什么名字红酒| 家里有小蜘蛛预示什么| 昙花一现是什么生肖| 纤维是什么意思| 紫五行属什么| 敬邀是什么意思| 1884年属什么生肖| 猜忌是什么意思| 胃胀反酸吃什么药效果好| 肠胃炎饮食要注意什么| 3月30日是什么星座| 社区建档需要什么资料| 不什么而同| 杜比全景声是什么意思| 查输卵管通不通做什么检查| 美女是指什么生肖| 京剧脸谱黑色代表什么| 开放性神经管缺陷是什么意思| 嘴唇起泡用什么药| 咽喉肿痛吃什么药| 内膜回声欠均匀是什么意思| 3月2日什么星座| 肺结节吃什么食物散结节最快| 什么回忆| 沙和尚是什么动物变的| 什么是意象| 大脚趾头麻木是什么原因| 8月23是什么星座| 拉不出大便吃什么药| 脚掌麻木是什么原因| gms是什么意思| 囊肿是什么原因| 群青色是什么颜色| 猫弓背什么意思| 地藏经适合什么人念| 省长什么级别| 胃火吃什么食物好| 梦见花椒是什么意思| 你是什么星座| 糙米饭是什么米| 冰冻三尺的下一句是什么| nc是什么| 肩周炎是什么引起的| 几成是什么意思| 喝什么补血| 尿胆红素阳性什么意思| 五月七号是什么星座| 蛋白尿吃什么食物好| 晚上睡不着白天睡不醒是什么原因| cim是什么意思| 龙筋是什么| 什么是酒糟鼻| 乳房痛挂什么科| 吹空调咳嗽吃什么药| 寒咳吃什么药| 肝不好吃什么药| 三点水念什么| 蝉属于什么类动物| 早搏的症状是什么表现| 心脏衰竭吃什么药| 弹性是什么意思| 小鸭子吃什么| 1991年五行属什么| 宜什么意思| 什么原因引起脑梗| 质问是什么意思啊| 肝血虚吃什么食物调理| 肛周脓肿什么症状| 做梦梦到蛇是什么意思| 蒲公英和什么相克致死| 荨麻疹能吃什么食物| 果脯是什么| 胎盘成熟度0级什么意思| 观音位置摆放什么方向| 什么时期最容易怀孕| 皮肤过敏不能吃什么| 榴莲为什么会苦| 一个木一个舌读什么| 又双叒叕念什么啥意思| 什么降压药副作用小且效果最好| 怀孕14天有什么症状| 白果有什么功效与作用| 肝囊肿有什么危害| 先兆流产是什么原因| 簋是什么| 腮腺炎吃什么药| 灵芝孢子粉有什么用| 状元郎是什么生肖| 牙髓炎是什么原因引起的| 胃间质瘤为什么不建议切除| 什么羽毛球拍最好| 平的反义词是什么| 吃什么丰胸| 过誉是什么意思| 同床出血什么原因呢| 现在领结婚证需要什么| 脚后跟麻木是什么原因| 喝酒睡不着是什么原因| 缺碘吃什么| 第一次是什么感觉| 取环挂什么科室| 鼻子长痘是什么原因| 成双成对是什么数字| 裸婚是什么意思| 眼睛发黑是什么原因引起的| 先河是什么意思| 地西泮是什么药| 逍遥丸主治什么病| 百岁山和景田什么关系| 为什么会缺乏维生素d| 乳腺点状强回声是什么意思| 前列腺在什么地方| 狗感冒了吃什么药| 保险凭证号是什么| 五月五日什么星座| 让我爱你然后把我抛弃是什么歌| 备孕是什么意思| 小孩子眼睛眨得很频繁是什么原因| 风疹是什么症状| 邂逅什么意思| 梦见数字是什么意思| 腺体肠化是什么意思| 肺部玻璃结节是什么病| 眼睛红是什么原因引起的| 镇党委副书记是什么级别| 取决于你是什么意思| 肾虚是什么原因| 孕吐反应什么时候开始| 后年是什么年| 无力是什么意思| izzue是什么牌子| 新西兰现在是什么季节| 38线是什么意思| 干燥综合征挂什么科| 618是什么节日| 八月十四是什么星座| 口出狂言是什么生肖| 女人的逼长什么样| 基数是什么意思| 玄武岩属于什么岩石| 豆腐干炒什么菜好吃| 为什么抽烟会恶心想吐| 肩周炎吃什么药效果最好| 不丹为什么不跟中国建交| 吃什么食物补气血| 比特币是什么意思| 电邮地址是什么| 腿毛长的男人代表什么| 赵构为什么杀岳飞| 我在你心里是什么颜色| 痣挂什么科| 肠胃炎输液用什么药| 副乳是什么原因造成的| m什么意思| 梦之蓝是什么香型| 睡觉睁眼睛是什么原因| 梦见很多蜘蛛是什么意思| 人活着有什么意思| 为什么会得脂溢性皮炎| 总胆汁酸高是什么原因| 痔疮是什么原因| 吃什么囊肿会消失| 夫妻分床睡意味着什么| 三焦湿热吃什么中成药| 什么时候种玉米| 包皮炎用什么软膏| 欲壑难填是什么意思| 英语介词是什么意思| 吃什么可以让阴茎变硬| 端倪是什么意思| 辟支佛是什么意思| 血液粘稠吃什么药| 胃酸胃胀反酸水吃什么药| 长水痘可以吃什么菜| 大小姐是什么意思| bv是什么| 徐峥的老婆叫什么名字| 血压低什么原因造成的| 医学美容技术学什么| 1997年是什么生肖| 宝宝辅食虾和什么搭配| 澎湃是什么意思| 零和游戏是什么意思| 耳膜穿孔有什么症状| 元气大伤什么意思| 发配是什么意思| 春天是什么样子的| ghz是什么单位| 说话快的人什么性格| 生活是什么| 锅包肉用什么淀粉| 喜人是什么意思| 雏凤是什么意思| 预包装食品指的是什么| 冠军是什么意思| 喝豆浆拉肚子什么原因| 陌然是什么意思| 小孩拉肚子吃什么药| 能力很强的动物是什么| 为什么喝咖啡会拉肚子| 女生补肾吃什么| 万金油是什么意思| 面色发黄是什么原因| 埋头苦干是什么生肖| 拔牙能吃什么| 乐不思蜀什么意思| 吃什么能降尿蛋白| 发霉是什么菌| 蛋白尿是什么症状| 靠谱什么意思| 我国的国花是什么花| 6.18是什么星座| 乜贴是什么意思| 小孩鼻子出血什么原因| paco2是什么意思| 胃不舒服想吐是什么原因| 为什么近亲不能结婚| 阿司匹林主治什么病| 早上六点是什么时辰| 屎壳郎吃什么| 胃疼适合吃什么食物| 火箭是干什么用的| 3月16日是什么星座| 梦见眼镜蛇是什么预兆| 人为什么会中暑| 帕金森看什么科室| 五月一号什么星座| 左耳疼痛什么原因引起| 始于初见止于终老是什么意思| 五蕴指什么| 尿胆原阳性是什么病| b型血和o型血生的孩子是什么血型| 甲状腺什么原因引起的| 宝宝嘴巴臭臭的是什么原因| 政治信仰是什么| 青梅竹马什么意思| 黄花菜不能和什么一起吃| 津液不足吃什么中成药| 鸡肉配什么菜好吃| 焯水是什么意思| 舌头起泡是什么原因| 111什么意思| 什么虫子咬了像针扎一样疼| 果脯是什么| 肝郁气滞吃什么中成药| 10.14是什么星座| 沙特用什么货币| 婚动是什么意思| 翊是什么意思| 欺世盗名是什么生肖| 拉绿色大便是什么原因| dm是什么病| 慢性结膜炎用什么眼药水| icd医学上是什么意思| 手心烫是什么原因| 受之无愧的意思是什么| 检查阑尾炎挂什么科| 小孩磨牙是什么原因| 孔雀吃什么食物| 百度Jump to content

老虎山远看像卧虎 “牛毛夕照”属于沧口八景

From Wikipedia, the free encyclopedia
Snap!
Paradigmobject-oriented, educational, event-driven
Designed byBrian Harvey and Jens M?nig
DeveloperJens M?nig
First appeared2011; 14 years ago (2011)
Stable release
10.7.2 / May 5, 2025; 2 months ago (2025-08-06) [1]
Typing disciplinedynamic
Implementation languageMorphic.js[2] (written in JavaScript); [Note 1]
OSCross-platform
LicenseAGPL
Filename extensions.xml (Snap!)
Websitesnap.berkeley.edu
Influenced by
Scratch, Scheme, Logo, Smalltalk, APL
Influenced
Scratch, BeetleBlocks, NetsBlox, Dragme IDE, Turtlestitch
百度 但坦白讲,《环太平洋2》的这段戏份对于机甲系和怪兽片都不过是一次完全流于表面的复制式致敬。

Snap! (formerly Build Your Own Blocks) is a free block-based 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, Snap! has many advanced features. The Snap! editor, and programs created in it, are web applications that run in the browser (like Scratch) without requiring installation.[Note 2] It is built on top of Morphic.js,[2] a Morphic GUI, written by Jens M?nig as 'middle layer' between Snap! itself and 'bare' JavaScript.

User interface

[edit]

In Snap!, the screen is organized in three resizable columns containing five regions: the block group selector (top of left column), the blocks palette (left column), the main area (middle column), and the stage area (top of right column) with the sprite selector (also called the sprite corral) showing sprite thumbnails below it.[Note 3]

In the interactively resizable stage area are shown the graphical results of the scripts running in the script area and/or interactively double-clicked individual blocks in any palette. Individual blocks can be dragged from the palette onto the scripts area to be associated with the selected sprite.

Category Notes Category Notes
  Motion Moves and turns sprites   Control If statements, events,
loop structures,
scenes, OOP,
metaprogramming
  Looks Controls visibility,
costumes, and output
  Sensing All sprite hit detection
and user input
  Sound Plays audio files and
programmable sequenced audio
  Operators Mathematical, text, and
Boolean operators; lambda
  Pen Write, draw, or
stamp on stage
  Variables Variables, lists,
including lists of lists, lists of blocks, etc
Three resizable columns, containing five regions, in Snap!'s IDE at startup

Snap!'s blocks are divided into eight groups: Motion, Looks, Sound, Pen, Control, Sensing, Operators, and Variables. The layout of these groups in the block group selector is shown in the table below.

The central area can show scripts, costumes/backdrops, or sounds associated with the selected sprite. What that area shows depends on the selected tab.

Features

[edit]

The most important features that Snap! offers, but Scratch does not, include:

  • Expressions 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 is first class functions, which in turn have lambda calculus as their even more abstract and mathematical foundation)
  • Lists that are first class (including lists of lists/arrays)
  • First class sprites (or in other words, prototype-based 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
  • Nestable sprites
  • Codification of Snap! programs to text languages such as Python, JavaScript, C, etc.
  • Metaprogramming, reflection, and macros

Mascot

[edit]

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, with permission of the Scratch Team. Because Alonzo Church's work is called lambda calculus, the mascot's hair is shaped as the Greek letter lambda.

Special-purpose blocks (libraries)

[edit]

Extended sets of blocks can be found in Snap! libraries, such as the 'streams' library that enables one to make the complete, infinite Fibonacci sequence, for example, using the special blocks ('stream', 'show stream', 'tail of stream', and 'map ( ) over stream' block) from the library.

Many other libraries are available, such as the 'list utilities' library, the 'words, sentences' library, the 'iterations' library, the 'animation' library, the 'frequency distribution' library, the 'audio computation' library, the 'bar charts' library, the 'world map' library, the 'colors and crayons' library, the 'strings and multi-line input' library, the 'parallelization' library, etc. for other special purposes.

Limitations

[edit]

While the software itself has little restraints, it does have some limitations.

These include:

  • 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

[edit]

The web-based Snap! and older desktop-based BYOB were both developed by Jens M?nig for Windows, OS X and Linux[3] with design ideas and documentation provided by Brian Harvey[4] from University of California, Berkeley and have been used to teach "The Beauty and Joy of Computing" introductory course in computer science (CS) for non-CS-major students.[5] Jens was a member of the Scratch Team before creating Snap!.[6] BYOB is still available for downloading.

License

[edit]

The source code of Snap! is GNU Affero General Public License (AGPL) licensed and is hosted on GitHub.[7] The earlier, desktop-based 3.x version's code is available under a license that allows modification for only non-commercial uses and can be downloaded from the UC Berkeley website[8] or CNET's download.com and TechTracker download page.[9][10]

Platforms

[edit]

Snap! runs on the major web-browsers on Windows, iOS, MacOS and Linux devices.

Supported web-browsers such as

  • Firefox
  • Chrome (and most Chromium based browsers.)
  • Opera GX
  • Microsoft Edge
  • Safari

Implementation

[edit]

Snap! is built on top of Morphic.js,[2] a Morphic GUI, which serves as 'middle layer' between Snap! itself and 'bare' JavaScript. It uses an HTML5 Canvas application programming interface (API).

All things visible in Snap! are morphs themselves, i.e. all buttons, sliders, dialog boxes, menus, entry fields, text rendering, blinking cursors etc. are created with morphic.js rather than using HTML DOM elements. Snap! caches the shapes of sprites so the sprite doesn't have to be re-drawn onto a new Canvas element every time the mouse moves over its bounding box. It does not cache blocks, however. Instead it manages the insides of C-shaped blocks through the morphic "holes" mechanism.

All user interaction is triggered by events, which are passed on from the root element "the world" to its submorphs. Dropping a morph causes it to become embedded in a new 'owner' ('parent') morph. In Morphic the preferred way to run an animation is to register it with the World by adding it to the World's animation queue. The World steps each registered animation once per display cycle independently of the Morphic stepping mechanism.

Recognition

[edit]

Snap! has been recognized by the Logo Foundation,[11] and reviewed in an online magazine for programmers.[12] As of December 2014, 100 New York City (NYC) high schools introduced University of California, Berkeley's “Beauty and Joy of Computing” as a new AP Computer Science Principles course, using Snap!.[13] Jens and Brian received the National Technology Leadership Summit (NTLS) 2020 Educational Leadership Award for lifetime achievement based in part on Snap!.

Notes

[edit]
  1. ^ BYOB was written in Squeak.
  2. ^ BYOB, Snap!'s predecessor, was a modification of Scratch and could export projects as Windows executables.
  3. ^ The way pre-2.0 Scratch version's screen was organized.

References

[edit]
  1. ^ "jmoenig/Snap". GitHub. Retrieved May 5, 2025.
  2. ^ a b c M?nig, Jens. "morphic.js". GitHub. Retrieved 7 June 2023.
  3. ^ "Scratch - Imagine, Program, Share". scratch.mit.edu. Retrieved 21 May 2017.
  4. ^ "HomePage for Brian Harvey (bh@cs.Berkeley.EDU)". people.eecs.berkeley.edu/~bh/. Retrieved 19 January 2019.
  5. ^ "UC Berkeley EECS - CS10 : The Beauty and Joy of Computing - Fall 2011". inst.eecs.berkeley.edu. Retrieved 21 May 2017.
  6. ^ "Relationship With the Scratch Team - Politics - Snap! Forums". forum.snap.berkeley.edu. Archived from the original on 2025-08-06.
  7. ^ "jmoenig/Snap". GitHub. Retrieved 21 May 2017.
  8. ^ "Snap! (Build Your Own Blocks) 4.0". snap.berkeley.edu. Retrieved 21 May 2017.
  9. ^ CNET Download.com and CNET TechTracker's BYOB for Windows download page
  10. ^ CNET's Download.com and TechTracker BYOB for Mac download page
  11. ^ "Logo History". el.media.mit.edu. Retrieved 21 May 2017.
  12. ^ Gee, Sue. "Visual Language Snap! Version 4.0 Released". i-programmer.info. Retrieved 21 May 2017.
  13. ^ "FACT SHEET: New Commitments to Support Computer Science Education". obamawhitehouse.archives.gov. 8 December 2014. Retrieved 20 January 2019.
[edit]


狗是什么意思 02属什么 气管小憩室是什么意思 痛经吃什么 姜还是老的辣是什么意思
蓝色加黄色等于什么颜色 为什么插不进去 子宫囊肿是什么原因引起的 炮机是什么 东北话篮子是什么意思
什么是血癌 细胞器是什么 手腕疼痛挂什么科 50元人民币什么时候发行的 蚊虫叮咬用什么药膏
小孩吃什么补脑更聪明 hcg稀释是什么意思 嘴唇干裂脱皮是什么原因 天麻有什么作用与功效 法国铁塔叫什么名字
二月一号是什么星座hcv8jop2ns6r.cn 奔头是什么意思hcv9jop8ns0r.cn 所以然什么意思hcv8jop5ns9r.cn sorona是什么面料hcv8jop0ns7r.cn 鼻子下面长痘什么原因hcv8jop4ns4r.cn
劫财是什么意思hcv9jop8ns0r.cn 内推是什么意思hcv9jop5ns8r.cn 抑郁看病看什么科hcv8jop5ns7r.cn 永加一个日念什么helloaicloud.com 男士吃什么壮阳最厉害hcv8jop5ns0r.cn
眼睛发黄什么原因xscnpatent.com 什么鱼适合红烧hcv9jop2ns3r.cn 肝主什么hcv9jop1ns6r.cn 老年人睡眠多是什么原因hcv9jop4ns7r.cn 自字五行属什么hcv9jop7ns2r.cn
非典是什么病hcv9jop0ns9r.cn 四月是什么星座weuuu.com 武警支队是什么级别hcv8jop9ns6r.cn 孕妇梦见自己出轨是什么意思hcv9jop3ns6r.cn 白头发吃什么维生素wuhaiwuya.com
百度