11.0.0:
- New Features:
- Neural Networks
- support for building your own custom neural networks using hypermutation and data-objects (OOP 2.0)
- added new "Neural Networks" library for creating, training sharing and visualizing vector-based deep neural networks
- First-Class Colors
- new immutable data type "color", new "color" entry in the "is a ?" predicate
- new color readout in variable and list watchers and speech and result balloons
- added "color" selector to pen-attributes reporter
- added "color" selector to location-aspect reporter "[] at []"
- added "colors" selector to "(attributes) of costume" block - reports the pixels of the costume as table of colors
- new "color []" reporter primitive, lets you
- pick a color and reports it
- pass in a list of RGB(A) values each from 0-255 to create a color, where
- a single item represents a gray scale
- a pair of numbers represents a gray scale and an alpha value
- a triple represents RGB
- four numbers represent RGBA
- pass in a multidimensional HYPER structure to create lists, tables and tensors of numbers all at once
- pass in a costume to report a matrix of colors
- pass in a multidimensional HYPER structure of costumes
- new "[dimension] of color []" reporter primitive, hyperized, also directly for costumes
- new polyadic hyperized "new color hue [] saturation [] brightness [] transparency" reporter primitive for generating a color from HSB values on a range from 0-100
- color-type input slots in primitives ("set pen color", "is touching color", "color is touching") accept reporter drops of
- colors
- RGB(A) value lists
- new fundamentally simplified "Colors" library based on first-class colors, lets you mix, modify and transition colors
- new "request" reporter primitive in the Control category palette, same as "broadcast and wait" but collects replies
- Hyper-mutation for arbitrary (sub-) lists: the CHANGE BY command also accepts list values in its first input slot
- Hyper-mutation support for non-inherited data-object list attributes (e.g. weight vectors/matrices inside hidden layer objects in neural networks)
- Added sigmoid (σ) function to the dropdown of the monadic operators reporter
- support for optional input slots using a variadic input group and setting max slots to the length of the group
- new S4A Connector extension for all firmate boards (e.g. Arduino), thanks, Joan!
- new websockets extension, thanks, Bernat!
- new stage-resolution setting option for performer-mode, thanks, Bernat!
- new "stop speech recognition" command in the spech library and "tts_stop" extension, globally un-blocks all processes currently waiting for speech recognition and advances to the next block
- Minor typography enhancements
- new "txt_width" extension, reports the width of the given text at the specified font size and optional stylings
- "Writing and formatting" library: new "width of text" reporter for determining the width of a text given the specified size and stylings
- "Writing and formatting" library: new "write ... wrap" command for automatically word-wrapping a text at the specified width given the size and stylings
- Neural Networks
- Notable Changes:
- allow non-list inputs (scalars) to APPEND, automatically treat as single-item lists without throwing a type assertion error
- allow using RUN as "ignore" command for a reporter, removed the ring type assertion and error message
- allow setting "my scripts" to a list of scripts (powerful but dangerous!)
- significantly sped-up rendering morphs representing data inside table cells
- support testing selectors (translatable text) for equality with text and numbers without needing to "unselect" them
- added support for color slot default values
- replaced "Object" type input slot with "Color" type in the input slot dialog ("Object" is now in the "special slots" menu)
- hyperized "new costume" reporter to also work on tensors of colors
- keep the source's ghost effect when pasting a sprite onto another
- enabled the stage to create temporary sprites using the "a new clone of (Turtle sprite)" reporter
- increased watcher update frequency for non-table monitors
- Just Bars library: added option to clear before plotting
- in embedded projects don't show the embed overlay ('green flag')' if embedMode is present but noRun isn't, thanks, Bernat!
- updated the "Just Bars" single block library with new optional inputs
- cleaned up and simplified all translation files, thanks, Joan!
- Notable Fixes:
- fixed sorting the distribution of compound non-list data (blocks, colors)
- improved localization of list watcher ('length' label)
- fixed case-insensitive text comparison for <, <=, >, >=
- serial port communication fixes for MicroBlocks, thanks, Bernat!
- ignore hidden blocks when reordering the palette
- fixed unicode splitting, thanks, Michael!
- SciScnap3: fixed a JS type casting bug, thanks, Eckart!
- MQTT: Base64 byte decoding improvement, thanks, Simon!
- fixed an edge-case glitch for ASK -ing a list with a zero number item
- Just Bars library: Only plot non-zero values, avoid drawing a "dot" for zero
- Translation Updates:
- German, including translation of the "Writing and formatting" library blocks
- Catalan, thank you, Joan!