Clone wiki

scopes / Bangra Release 0.6

Bangra Release 0.6



  • Enable VT100 emulation on windows so colors can be displayed. [43bb11de375a]
  • Renamed concat to join operator (..). [df28e1beefa0]
  • table-join is now implemented as .. operator for the table type. [df28e1beefa0]
  • Replaced list-join with a .. operator for the list type. [fdc0c9b44fdf]
  • Added min and max for variable arguments. [df28e1beefa0]
  • Turned Macro type into a type qualifier. [01a41f631894]
  • New tag and qualifier types. [42007f043b78]
  • The tag type can be used as factory to create new qualifiers. [42007f043b78]
  • Qualifier types splice, quote and macro are now subtypes of qualifier. [42007f043b78]
  • Implemented ** power operator [e772da7c9267]
  • Transformed test_all into a testing hub [3f30f2e8e557] [661012d05f71]
  • Fixed exception handling breaking closure in loops. [661012d05f71]
  • Added cc/call special form that calls a continuation with explicit continuation argument. [d1cc0a926abf] [7b9f70aac5ed] [2ea5aa90d91f]
  • Added slice functionality to tuples. [3157f4eb1bb2]
  • Varargs are now implicitly spliced. [d713f0b94a41]
  • va-countof and va-arg can be used to query number of arguments and retrieve individual elements. [d713f0b94a41]
  • Opaque types are now recognized by their alignment of zero, rather than their size. [0daed9e1223e]
  • Implemented for macro to simplify iteration of sequences and counters. [d30e5fd7faca] [f774b0c20754]
  • Added range, zip and enumerate iteration helpers. [d30e5fd7faca]
  • string is now a type with a type factory. [f774b0c20754]
  • Iterators are qualified as iterator. [f774b0c20754] [813bddc89532]
  • Fixed some type comparisons breaking with flipped order. [f774b0c20754]
  • Added qualify and disqualify to add and remove qualifiers to/from values. [f774b0c20754]
  • table is now a type, table factory function has been renamed to tableof. [904b7e61e074]
  • loop, for both support initializers using the with keyword. [d36d3a038de0] [0c221c576104]
  • Fixed semicolons crashing interpreter during stripping comments. [42b25e40a43d]
  • SciTE lexer uses separate color scheme for built-in functions now. The color is set via style.script_bangra.4. [5fd9356ebb9c]
  • SciTE lexer colors functions with side effects differently. The color can be set with style.script_bangra.5. [09728790ac37]
  • Added raise function to throw arbitrary values. [f84039b86d94]
  • Support for iterating functions, so-called "generators". for can iterate functions by passing a special yield return function that enables the caller to resume the function. [01d947aebb18] [0524e80ef94d] [813bddc89532] [20ece86fbe8c]
  • Limit output when dumping error messages. [21f40037f63d]
  • Compiler generates tail call optimized flow nodes. [21f40037f63d]
  • let is no longer recursive by default. Use xlet for recursive bindings. [1faafc3911af] [0a89c471b96e]
  • Added set! macro that permits late binding. [1faafc3911af]
  • Cross-dependent functions can be chained with with. [a41429f26d63]
  • Improved clang bridge and fixed a stack overflow when a struct had a field that depended on its own type. [789b2ad19654]
  • import-c no longer resolves symbols, but only returns externals in form of a symbol-type tuple. This simplifies inspection and writing custom thunks. [7813e7db265a]
  • external loads C symbols from the global rather than the process namespace. [7813e7db265a]
  • Calls into C functions raise an error if the function pointer is null [7813e7db265a]
  • Added a REPL console that can be invoked from the command-line. [86cb54d4ee6b] [b14936b26482] [2b938ee34317] [0c0475208172] [8e07b766689d] [2ff4bb56796e] [181404317f04]
  • Renamed function macro to fn. [2ea5aa90d91f]
  • Renamed continuation macro to fn/cc. [2ea5aa90d91f]
  • Updated documentation, particularly the language reference section. [a57be1fe3649] [e9d87c43f0ad]