rsc3/doc-schelp/HelpSource/Guides/News-3_6.schelp

71 lines
2.2 KiB
Text
Raw Permalink Normal View History

2022-08-24 13:53:18 +00:00
title:: News in 3.6
summary:: A summary of news in SC 3.6
categories:: News
SECTION:: SuperCollider IDE
A new cross-platform SuperCollider coding environment.
Read link::Guides/SCIde##the guide::!
SECTION:: Language-side news
subsection:: More informative syntax errors
The parser now posts the details of syntax errors, example:
code::
[1,2,%,4];
123;
::
Posts the following error message:
teletype::
ERROR: syntax error, unexpected BINOP, expecting ']'
in file 'selected text'
line 1 char 6:
[1,2,%,4];
^
123;
-----------------------------------
ERROR: Command line parse failed
::
subsection:: Remove old syntax
code::#(a:1):: was valid syntax, but yielded nonsense results. This will now result in a syntax error instead.
subsection:: YAML/JSON parser
link::Classes/String#-parseYAML:: and link::Classes/String#-parseYAMLFile:: can be used to parse YAML or JSON.
subsection:: SynthDef optimizations for additive terms
When the SynthDef is compiled, separate additive ugens are combined via the new link::Classes/Sum3:: and
link::Classes/Sum4:: ugens.
subsection:: Basic dead code elimination for SynthDefs
The process of building synthdefs now performs a simple dead code elimination pass, which removes all
link::Classes/PureUGen:: instances without successor.
subsection:: Case sensitive String comparison
String comparison operators (teletype::==, !=, <=, >=, >, <::) are now case sensitive.
code::
"Foo" == "fOo"; // false
::
subsection:: SplayAz Bug Fix
Positioning of SplayAz was broken. The semantics of the TELETYPE::spread:: and TELETYPE::center:: arguments has
been changed in order to fix the behavior.
subsection:: Array primitives respect mutability
The array primitives now respect object mutability: writing to an immutable object now fails and changing an
immutable object with TELETYPE::add::, TELETYPE::addAll::, TELETYPE::insert::, TELETYPE::extend::,
TELETYPE::growClear:: and TELETYPE::overwrite:: will return a newly allocated object.
SECTION:: Server-side news
subsection:: SynthDef2 fileformat
subsection:: C++ base class for Unit Generators
A new C++ base class has been introduced, which extends the plain c-style Unit struct by a C++ interface.