Skip to content

Releases: bamless/jstar

J* version 2.0.3

09 Apr 10:25

Choose a tag to compare

J* version 2.0.2

07 Apr 10:53

Choose a tag to compare

v2.0.2

extlib v2.0.2

J* version 2.0.1

24 Mar 16:49

Choose a tag to compare

  • Fix bug in number parsing in parser

J* version 2

08 Mar 01:58

Choose a tag to compare

v2.0.0

J* version 2

J* version 1.9.2

28 Nov 16:59

Choose a tag to compare

v1.9.2

J* version 1.9.2

J* Version 1.8.6

12 Jul 23:03

Choose a tag to compare

J* AUR page

New and improved cli:

  • Replaced linenoise-ng with replxx
  • Added multiplatform output coloring
  • Added syntax highlighting
  • Various other quality of life changes

J* Version 1.8.4

05 May 11:21

Choose a tag to compare

J* Version 1.8.2

04 Apr 00:53

Choose a tag to compare

J* AUR page

  • Slight changes to core library
  • Moved join method from String class to Iterable class
  • Added new standard iterators: ConcatIter, TakeIter, SkipIter
  • Added support for Tuple/List concatenation using +
  • Added * overload to String for construction of repeated strings
  • Minor bugfixes

J* Version 1.8.1

16 Mar 14:36

Choose a tag to compare

J* AUR page

  • Bugfixes
    • Fixed bug in 'compiler.c' during compilation of 'unpacking' assignments/variable assignments
    • Fixed bug in 'jstarc' regarding construction of output path during directory compilation
  • Quality of life changes
    • jstarc app now outputs colored output on compilation errors
    • Better handling of paths in jstarc app

J* Version 1.8

08 Mar 16:19

Choose a tag to compare

J* AUR page

  • Reworked import system.
    Now, upon executing an import statement, the module name will be defined in the current scope instead of the global one. Same thing applies to the names of an import for statement. This is more consistent with the rest of the language that always defines names in the closest surrounding scope
  • As a consequence of the changes to the import system, the import ... for * syntax is not allowed anymore
  • Can now overload the power operator ^ using the __pow__ overload method
  • Added bitwise operators to the language:
    • Infix:
      • Bitwise and operator &. Overloads: __band__ and __rband__
      • Bitwise or operator |. Overloads: __bor__ and __rbor__
      • Bitwise xor operator ~. Overloads: __xor__ and __rxor__
      • Bitwise left shift operator <<. Overloads: __lshift__ and __rlshift__
      • Bitwise right shift operator >>. Overloads: __rshift__ and __rrshift__
    • Prefix
      • Bitwise complement ~. Overload __invert__
  • When applied to Numbers, bitwise operators implicitly convert the arguments to 32-bit unsigned integers and then perform the operation. Thus, one should be careful when using numbers greater than 2^32 - 1 or smaller than 0, as overflow wrapping will take place.
  • Quality of life changes in the jstar app, especially regarding multi-line input
  • Minor fixes in the jstarc app