Skip to content

BRS 0.10.0

Pre-release
Pre-release
Compare
Choose a tag to compare
@sjbarag sjbarag released this 29 Nov 03:54

brs 0.10 brings some significant improvements:

  • A whole bunch of global functions:
    • Str
    • StrI
    • Substitute
    • Val
    • Exp
    • Log
    • Sqr
    • Rnd
    • Atn
    • Cos
    • Sin
    • Tan
    • Abs
    • Cdbl
    • Cint
    • Csng
    • Fix
    • Int
    • Sgn
  • Overloads (and technically multiple dispatch) for standard-library functions
  • AssociativeArray literals and indexing into them (both the [] and . forms), e.g.:
    a = {
        foo: {
            bar: 1,
            baz: 2,
            "requires quotes": 3
        }
    }
    
    print a.foo["requires quotes"] ' prints 3
  • For-each loops across associative array keys
  • Heavily improved type-mismatch error messaging. New error messages look something like this:
    brs> UCase(5)
    [Line 1] Provided arguments don't match UCase's signature.
        function UCase(s as String) as String:
            * Argument 's' must be of type String, but received Integer.
    
  • Floating point math closer to the Reference BrightScript Interpreter (RBI)

❤️ Contributors ❤️

@strattonbrazil implemented 19 standard library functions. Wow!