ERights Home download / 0-8-33 
No Previous Sibling On to: SWT Support

Highlights of 0.8.33o


Non-Upwards Compatible Changes

New features

Deprecated features

Bugs Addressed

Non-Upwards Compatible Changes

CapTP protocol changes

In order to fix the Inappropriate "the donor is gone" bug, I made an incompatible change to the CapTP protocol: the addition of the donorPath to the acceptFrom messages.

Syntax changes

Reserved some new keywords: "datatype", "fn", "fun".

An assignment-level statement in the collection position of a for-loop now requires parens.

for i in (def coll := foo()) {

New features

Experimental extra sugared forms of when-catch

See "experimental extra sweet when-catch syntaxes"

Experimental sugar-free form of when-catch

See "User Defined Control Flow"

Forward declaration may now appear at right end of assignment without parens

? def r := def p
# value: <Resolver>

Slightly better tracing

Setting TraceLog_causality=event will now trace exceptions that caught by an E try-catch and that escape a deflector.

Help is now sorted

? help(3)

Newly tamed classes

Thanks to Kevin Reid and Marc Stiegler

java.io.DataInput
java.io.InputStream
java.io.Reader
java.nio.Buffer
java.nio.ByteBuffer
java.nio.CharBuffer
java.nio.charset.Charset
java.nio.charset.CharsetDecoder
java.nio.charset.CharsetEncoder
java.nio.charset.CoderResult
java.nio.charset.CodingErrorAction
org.xml.sax.InputSource
org.w3c.dom.Node

Newly iteratable classes

java.util.Collection
java.util.Iterator
java.util.Map

So, assuming it was correct not to suppress Charset#availableCharsets/0 above, we can enumerate it:

? def x := <import:java.nio.charset.Charset>.availableCharsets()

? for k => v in x {
>     println(`$k => $v`)
>     if (k[0] > 'E') { break }
> }
# stdout: Big5 => Big5
#         Big5-HKSCS => Big5-HKSCS
#         EUC-JP => EUC-JP
#         EUC-KR => EUC-KR
#         GB18030 => GB18030
#         

Deprecated features

none yet


Bugs Addressed

  Thanks to...
out of memory in donutlab sliverserver Marc Stiegler
Inappropriate "the donor is gone" Benny Tsai
InputStream read/1 and read/3 must be suppressed Kevin Reid
SturdyRefs amplify even when they should not Kevin Reid
meta.context() exposes global state Kevin Reid
UnsafeLoader not thread-safe Kevin Reid
 
Unless stated otherwise, all text on this page which is either unattributed or by Mark S. Miller is hereby placed in the public domain.
ERights Home download / 0-8-33 
No Previous Sibling On to: SWT Support
Download    FAQ    API    Mail Archive    Donate

report bug (including invalid html)

Golden Key Campaign Blue Ribbon Campaign