Skip to content

Releases: Kray-G/kinx

v1.1.1

27 Dec 09:00
3e12859
Compare
Choose a tag to compare

Updates from v1.1.0 to v1.1.1.

  • Improvements/Enhancements
    • #352: JIT library enhancement.
      • Support a string and a binary.
      • Load a C function and use it.
      • Direct write of a literal without Jit.IMM.
      • Support mov8, mov16, mov32, fmov, and fmov32 for more flexible.

v1.1.0

06 Dec 13:10
1736064
Compare
Choose a tag to compare

Updates from v1.0.0 to v1.1.0.

  • New Features
    • #232: Supported a Package Manager named as Kip.
      • 1st version with no dependency check and no update check.
    • #275: Supported SAT solver by picosat.
  • Improvements/Enhancements
    • #261: Separated binary modules in extlib to another repository & reduced a repository size.
    • #255: Improved the operator[] in Range.
    • #264: Supported to change directory.
    • #265: Supported $pwd for getting a current directory.
    • #272: Supported a binary mode in HTTP.
    • #273: Supported read/write in File.
    • #290: Supported chmod in File.
    • #308: Improvement of the stack usage.
    • #316: Changed a specification of a label to be with 2 colons.
    • #332: Supported any radix on the Integer.toString() method.
    • #343: Supported an exponent representation for a real number literal.
    • #346: Supported an assignment of inherit class instance to the variable having the base class type.
    • Small improvements and enhancements as follows without managing by issues.
      • Supported SemanticVersion class with using SemanticVersion;.
      • Supported putting a comma at the end of an argument's list for both declaration and calling.
      • Added operators of == and != in Boolean class.
      • Supported String#isIntegerString.
      • Shared an implementation of conversion for a string, an integer, and a double.
      • Improved type analysis for the language server.
      • SpecTest: Made a space wider of Test case number.
      • Improved Array.keySet() for Array itself.
      • Improved a type check a little in assignment.
  • Bug Fixed
    • #235: Crash when using _ outside a function.
    • #236: Can't specify the class as a return type of function.
    • #237: Comparing between variables having a string is failed.
    • #256: Comparison operator will be failed with an integer on LHS and a variable(double) on RHS.
    • #257: Fails a destructuring assignment when declaration with const.
    • #258: There is a case that the bytecode is not outputted.
    • #267: Can't use a variable name using an upper case in debugger.
    • #269: Object item is removed by flatten().
    • #274: No error for multiple const declaration for the same variable.
    • #284: Fixed a segmentation fault problem on Linux.
    • #288: Incorrect message is displayed when File.open failed.
    • #289: File.setFiledate does not work correctly.
    • #293: Fixed a problem of a stack overflow with =~ or !~.
    • #301: Fixed a prblem of using ctx after cleanup.
    • #302: Fixed a prblem of the string optimization.
    • #305: Fixed a prblem of no POPC in try.
    • #314: Fixed a crash when accessing uninitialized object in native.
    • #331: Fixed an incorrect handling of a big integer literal in lexer.
    • #341: Fixed a problem that it crashes in destructuring assignment.
    • #342: Fixed a problem that a pin operator in not avaiable at 2nd item or later in array.
    • #345: Fixed to block the unsupported type conversion in native.

v1.0.3

10 Aug 13:24
Compare
Choose a tag to compare

This is a minor update to fix some bugs or improvements.

  • Improvements
    • #308: Improvement of the stack usage.
    • Some feedbacks from V1.1.0.
      • Supported putting a comma at the end of an argument's list for both declaration and calling.
  • Bug Fixed
    • #274: No error for multiple const declaration for the same variable.
    • #302: Fixed a prblem of the string optimization.
    • #305: Fixed a prblem of no POPC in try.

v1.0.2

21 May 01:43
Compare
Choose a tag to compare

This is a minor update to fix some bugs.

  • Bug Fixed
    • #284: Fixed a segmentation fault problem on Linux.
    • #288: Incorrect message is displayed when File.open failed.
    • #289: File.setFiledate does not work correctly.
    • #293: Fixed a problem of a stack overflow with =~ or !~.

v1.0.1

22 Apr 11:47
Compare
Choose a tag to compare

Updates from v1.0.0

  • Improvements
    • Improved type analysis for the language server.
    • Improved Array.keySet() for Array itself.
    • #264: Supported to change directory.
    • #265: Supported $pwd for getting a current directory.
  • Bug Fixed
    • #235: Crash when using _ outside a function.
    • #236: Can't specify the class as a return type of function.
    • #237: Comparing between variables having a string is failed.
    • #256: Comparison operator will be failed with an integer on LHS and a variable(double) on RHS.
    • #257: Fails a destructuring assignment when declaration with const.
    • #258: There is a case that the bytecode is not outputted.
    • #267: Can't use a variable name using an upper case in debugger.
    • #269: Object item is removed by flatten().

v1.0.0

15 Mar 22:35
Compare
Choose a tag to compare

This is a 1st official release version.


Small updates from v0.22.0

  • Updated
    • Updated Functional.
    • Supported String Color methods with Escape Sequence.
    • Updated Documentation & SpecTest.
    • Some bug fixes and improvements.

v0.22.0

05 Mar 14:36
Compare
Choose a tag to compare
v0.22.0 Pre-release
Pre-release

Updates from v0.21.0

  • Updated
    • Supported a pipeline and a function compoition operator.
      See a pipeline, a function composition, and a library of Functional for details.
      • Supported a pipeline operator of a |> b which is just same as b(a).
      • Supported a pipeline operator of a <| b which is just same as a(b).
      • Supported a function composition operator of a +> b which is like { => b(a(_1)) }.
      • Supported a function composition operator of a <+ b which is like { => a(b(_1)) }.
    • Supported to read/write from/to Clipboard.
      • By var cb = new Clipboard();, then you can:
        • Use cb.write(str) to write str to clipboard, or
        • Use cb.read() to read a text from clipboard.
    • Documentation & SpecTest complete.
      • The documents which was planned was prepared at least, although the quality should be increased.
    • Some bug fixes and improvements.

v0.21.0

15 Feb 13:24
Compare
Choose a tag to compare
v0.21.0 Pre-release
Pre-release

Updates from v0.20.1

  • Updated
    • Obsoleted a dot style of string literal like .abc which means "abc".
      • This is changed to another feature.
      • Newly .abc is a function object which means { => _1.abc.isFunction ? _1.abc() : _1.abc }.
      • And also .is*** like .isFunction to check a type is a function object which means { => _1.is*** }.
      • This feature will care for the purpose below.
        • As a call back method for methods of Array such as Array#map, Array#filter, and so on.
        • As a function object placed at a when clause in case-when.
    • Updated case-when features.
      • Supported ^ as a pin operator.
      • Supported an lvalue of array with index at when condition.
      • Supported | operator for multiple conditions called as alternative pattern at when condition.
      • Supported putting a function object to check the result by function call at when condition.
      • Changed to make it error when the length of array is mismatched.
      • _ means to ignore binding a value at when condition.
    • Introduced a when label in switch statement.
      • This can be used a substitute of a case label, and it will do break automatically by default.
      • When specifying fallthrough; at the last statement of a when clause, it will be fallthrough.
      • The label instead of default: is else: which will do break automatically at the end of statements.
      • The fallthrough keyword in a case is meaningless and it will be ignored.
      • You can mix a case label and a when label, but it is not recommended.
      • switch-when is a statement and it is same as switch-case except a behavior of break and fallthrough.
    • Updated some type system.
      • For type check in a language server.
      • Making a compile error when it is unknown type or type mismatch in assignment.
    • I am very sorry but, after a reconsideration I desided to change a syntax for a return type of native again.
      Instead, It was possible to add a syntax that you can specify a return type also for a normal function.
      However note that a return type for a normal function is currently just an information to the language server.
      • OLD
        • native:int
      • NEW/ADD
        • native funcname(args):int
        • function funcname(args):int
        • public funcname(args):int
        • private funcname(args):int
    • Some bug fixes and improvements.

v0.20.1

29 Jan 13:40
Compare
Choose a tag to compare
v0.20.1 Pre-release
Pre-release

Updates from v0.19.3

  • Updated
    • Added the same directory as a current parsing file to a search path for using.
    • Introduced File#getUtf8Char() to get directly UTF8 character from a File object including $stdin.
    • Introduced newly case-when expression for trial.
    • Supported a different variable name from an object key in assignment, declaration, and function arguments.
      • var { x: a, y: b } = { x: 10, y: 100 } means a = 10, b = 100.
    • Supported a pattern matching syntax in assignment, declaration, and function arguments.
      • var { x: a, y: 100 } = { x: 10, y: m } means a = 10 if m == 100, otherwise an exception occurs.
    • Supported an object key style also with an assignment.
      • { x, y } = { x: 10, y: 100 } means x = 10, y = 100.
    • Relocation of build environment.
      • Created a build directory and moved files needed at building to the build directory.
    • Some bug fixes and improvement.

v0.19.3

18 Jan 23:38
Compare
Choose a tag to compare
v0.19.3 Pre-release
Pre-release

Updates from v0.18.0

  • Updated
    • Added some features to use a language server.
    • Added a debugger mode for debugging.
    • Removed KiTyy files to reduce a repository size.
    • Updated Copyright.
    • Some bug fixes and improvement.

NEWS!

  • By moving KiTTy, the archived zip file size of a source code has been reduced from 106MB to 24MB. (77.4% off!)
  • A tiny and simple debugger is supported from this version. Please see details in the debugger document.