diff --git a/src/blocks.js b/src/blocks.js index 1e540be6..897e8844 100644 --- a/src/blocks.js +++ b/src/blocks.js @@ -418,7 +418,7 @@ SyntaxElementMorph.prototype.labelParts = { 'mouse-departed' : ['mouse-departed'], 'scrolled-up' : ['scrolled-up'], 'scrolled-down' : ['scrolled-down'], - 'stopped' : ['stopped'] // experimental + 'stopped' : ['stopped'] } }, '%dates': { @@ -3738,7 +3738,7 @@ BlockMorph.prototype.exportResultPic = function () { } }; -// BlockMorph components - EXPERIMENTAL +// BlockMorph syntax analysis BlockMorph.prototype.components = function (parameterNames = []) { if (this instanceof ReporterBlockMorph) { @@ -6046,7 +6046,7 @@ HatBlockMorph.prototype.blockSequence = function () { return result; }; -// HatBlockMorph components - EXPERIMENTAL +// HatBlockMorph syntax analysis HatBlockMorph.prototype.reify = function () { // private - assumes that I've already been deep copied @@ -9942,11 +9942,11 @@ InputSlotMorph.prototype.gettablesMenu = function () { dict['temporary?'] = ['temporary?']; } dict.name = ['name']; - dict.scripts = ['scripts']; // experimental + dict.scripts = ['scripts']; dict.costume = ['costume']; dict.costumes = ['costumes']; dict.sounds = ['sounds']; - dict.blocks = ['blocks']; // experimental + dict.blocks = ['blocks']; dict['dangling?'] = ['dangling?']; dict['draggable?'] = ['draggable?']; dict.width = ['width']; diff --git a/src/gui.js b/src/gui.js index 45508f03..bdd3a534 100644 --- a/src/gui.js +++ b/src/gui.js @@ -11325,9 +11325,6 @@ PaletteHandleMorph.prototype.mouseDoubleClick = function () { /* I am a dialog morph that lets users take a snapshot using their webcam and use it as a costume for their sprites or a background for the Stage. - - NOTE: Currently disabled because of issues with experimental technology - in Safari. */ // CamSnapshotDialogMorph inherits from DialogBoxMorph: @@ -11338,7 +11335,7 @@ CamSnapshotDialogMorph.uber = DialogBoxMorph.prototype; // CamSnapshotDialogMorph settings -CamSnapshotDialogMorph.prototype.enableCamera = true; // off while experimental +CamSnapshotDialogMorph.prototype.enableCamera = true; CamSnapshotDialogMorph.prototype.enabled = true; CamSnapshotDialogMorph.prototype.notSupportedMessage = diff --git a/src/threads.js b/src/threads.js index dcc3b53d..6f8a0968 100644 --- a/src/threads.js +++ b/src/threads.js @@ -598,11 +598,11 @@ Process.prototype = {}; Process.prototype.constructor = Process; Process.prototype.timeout = 500; // msecs after which to force yield Process.prototype.isCatchingErrors = true; -Process.prototype.enableHyperOps = true; // experimental hyper operations +Process.prototype.enableHyperOps = true; Process.prototype.enableLiveCoding = false; // experimental -Process.prototype.enableSingleStepping = false; // experimental +Process.prototype.enableSingleStepping = false; Process.prototype.enableCompiling = false; // experimental -Process.prototype.flashTime = 0; // experimental +Process.prototype.flashTime = 0; Process.prototype.enableJS = false; function Process(topBlock, receiver, onComplete, yieldFirst) { @@ -631,8 +631,8 @@ function Process(topBlock, receiver, onComplete, yieldFirst) { this.exportResult = false; this.onComplete = onComplete || null; this.procedureCount = 0; - this.flashingContext = null; // experimental, for single-stepping - this.isInterrupted = false; // experimental, for single-stepping + this.flashingContext = null; // for single-stepping + this.isInterrupted = false; // for single-stepping this.canBroadcast = true; // used to control "when I am stopped" if (topBlock) { @@ -1613,7 +1613,7 @@ Process.prototype.evaluateCustomBlock = function () { outer.variables.parentFrame = block.variables; - // block (instance) var support, experimental: + // block (instance) var support: // only splice in block vars if any are defined, because block vars // can cause race conditions in global block definitions that // access sprite-local variables at the same time. @@ -1899,7 +1899,7 @@ Process.prototype.doDeleteAttr = function (attrName) { } }; -// experimental message passing primitives +// message passing primitives Process.prototype.doTellTo = function (sprite, context, args) { this.doRun( @@ -2034,7 +2034,7 @@ Process.prototype.reportListItem = function (index, list) { return list.at(index); }; -// Process - experimental tabular list ops +// Process - tabular list ops Process.prototype.reportTranspose = function (list) { this.assertType(list, 'list'); @@ -4548,7 +4548,7 @@ Process.prototype.parseJSON = function (string) { return listify(JSON.parse(string)); }; -// Process script components - EXPERIMENTAL +// Process syntax analysis Process.prototype.assemble = function (blocks) { var first; @@ -5442,8 +5442,7 @@ Process.prototype.reportDirectionTo = function (name) { Process.prototype.reportBlockAttribute = function (attribute, block) { // hyper-dyadic - // note: specifying strings in the left input only accesses - // sprite-local variables. Attributes such as "width", "direction" etc. + // note: attributes in the left slot // can only be queried via the dropdown menu and are, therefore, not // reachable as dyadic inputs return this.hyperDyadic( @@ -5454,7 +5453,6 @@ Process.prototype.reportBlockAttribute = function (attribute, block) { }; Process.prototype.reportBasicBlockAttribute = function (attribute, block) { - // experimental - under construction var choice = this.inputOption(attribute), expr; this.assertType(block, ['command', 'reporter', 'predicate']); @@ -5738,7 +5736,7 @@ Process.prototype.reportObject = function (name) { }; Process.prototype.doSet = function (attribute, value) { - // experimental, manipulate sprites' attributes + // manipulate sprites' attributes var name, rcvr, ide; rcvr = this.blockReceiver(); this.assertAlive(rcvr); @@ -7096,7 +7094,7 @@ Context.prototype.stopMusic = function () { // Context single-stepping: Context.prototype.lastFlashable = function () { - // for experimental single-stepping when pausing + // for single-stepping when pausing if (this.expression instanceof SyntaxElementMorph && !(this.expression instanceof CommandSlotMorph)) { return this; @@ -7125,7 +7123,7 @@ Context.prototype.isInCustomBlock = function () { return false; }; -// Context components - EXPERIMENTAL +// Context syntax analysis Context.prototype.components = function () { var expr = this.expression;