Merge pull request #506 from andrewcsmith/patch-2
[supercollider.git] / HelpSource / Guides / News-3_6.schelp
blobea068805f53571829f23ec16d3a4c1bd7801f7e5
1 title:: News in 3.6
2 summary:: A summary of news in SC 3.6
3 categories:: News
5 SECTION:: ScIDE
7 link::Guides/SCIde::
10 SECTION:: Language-side news
12 subsection:: More informative syntax errors
13 The parser now posts the details of syntax errors, example:
14 code::
15 [1,2,%,4];
16 123;
18 Posts the following error message:
19 teletype::
20 ERROR: syntax error, unexpected BINOP, expecting ']'
21   in file 'selected text'
22   line 1 char 6:
24   [1,2,%,4];
25        ^
26   123;
27 -----------------------------------
28 ERROR: Command line parse failed 
31 subsection:: Remove old syntax
32 code::#(a:1):: was valid syntax, but yielded nonsense results. This will now result in a syntax error instead.
34 subsection:: YAML/JSON parser
35 link::Classes/String#-parseYAML:: and link::Classes/String#-parseYAMLFile:: can be used to parse YAML or JSON.
37 subsection:: SynthDef optimizations for additive terms
39 When the SynthDef is compiled, separate additive ugens are combined via the new link::Classes/Sum3:: and
40 link::Classes/Sum4:: ugens.
42 subsection:: Basic dead code elimination for SynthDefs
44 The process of building synthdefs now performs a simple dead code elimination pass, which removes all
45 link::Classes/PureUGen:: instaces without successor.
47 subsection:: Case sensitive String comparision
48 String comparision operators (teletype::==, !=, <=, >=, >, <::) are now case sensitive.
49 code::
50 "Foo" == "fOo"; // false
53 subsection:: SplayAz Bug Fix
54 Positioning of SplayAz was broken. The semantics of the TELETYPE::spread:: and TELETYPE::center:: arguments has
55 been changed in order to fix the behavior.
57 subsection:: Array primitives respect mutability
58 The array primitives now respect object mutability: writing to an immutable object now fails and changing an 
59 immutable object with TELETYPE::add::, TELETYPE::addAll::, TELETYPE::insert::, TELETYPE::extend::, 
60 TELETYPE::growClear:: and TELETYPE::overwrite:: will return a newly allocated object.
62 SECTION:: Server-side news
64 subsection:: SynthDef2 fileformat
66 subsection:: C++ base class for Unit Generators
68 A new C++ base class has been introduced, which extends the plain c-style Unit struct by a moden C++ interface.