Skip to content

Releases: Princess-org/Princess

Princess 0.3.14

12 Oct 16:00
Compare
Choose a tag to compare
Princess 0.3.14 Pre-release
Pre-release

Changes:

  • Make it possible to call functions without parens, ie. print 10, 20, 30 is working now.
  • Destructors can now optionally return a boolean depending on if you want the default code to run or not. The default behavior is to run it.

Princess 0.3.13

06 May 08:42
Compare
Choose a tag to compare
Princess 0.3.13 Pre-release
Pre-release

Changes:

Backwards incompatible!

Changed weak_ref(T) to weak &T

Princess 0.3.12

05 May 18:02
cb2ac85
Compare
Choose a tag to compare
Princess 0.3.12 Pre-release
Pre-release

Changes:

  • Now polymorphic functions get compiled into the module that uses them, this should make incremental compilation far easier while also fixing some weird side effects
  • Weak references are safe now, they return null if the referenced object got collected

Princess 0.3.11

02 Mar 21:12
Compare
Choose a tag to compare
Princess 0.3.11 Pre-release
Pre-release

Fixed memory leak issues

Princess 0.3.10

06 Feb 19:57
Compare
Choose a tag to compare
Princess 0.3.10 Pre-release
Pre-release

Breaking changes ahead!

  • Change struct initializer to []
  • Removed the ability to initalize struct elements by index
  • Change closure types to use the new tuple syntax for arguments and return types
  • Change array access syntax to arr(x) and arr(x) = v. This is done using apply and update
  • Add tuples using the new initalizer syntax let a: [int, double] = [10, 10.5]
  • Tuples convert from and to arrays depending on if the elements are compatible with each other
  • Multiple return types can also be defined using the tuple syntax in function definitions
  • Add anonymous structs

Princess 0.3.9

04 Jun 10:44
Compare
Choose a tag to compare
Princess 0.3.9 Pre-release
Pre-release

Changes:

  • Create doc comments
  • Yield from
  • Inline functions
  • Progress bar for the compiler

This build now contains the bootstrap compiler version which is a completely standalone elf executable.
It needs to be placed inside the bin directory of the extracted tar file and can be used to bootstrap the compiler
on (hopefully) any distro.

Princess 0.3.8

04 Apr 17:15
Compare
Choose a tag to compare
Princess 0.3.8 Pre-release
Pre-release

Changes:

  • Introduce implicit functions
  • Allow destructors and constructors to be called at compile time
  • New String types: StringBuffer, String, Str and StringSlice
  • Arena allocator

Princess 0.3.7

26 Jan 19:02
Compare
Choose a tag to compare
Princess 0.3.7 Pre-release
Pre-release

Changes:

  • Fix generators
  • Allow interfaces to see generic functions

Princess 0.3.6

04 Jan 11:22
Compare
Choose a tag to compare
Princess 0.3.6 Pre-release
Pre-release

Changes:

  • Fix generators

Princess 0.3.5

21 Dec 15:11
Compare
Choose a tag to compare
Princess 0.3.5 Pre-release
Pre-release

Changes:

  • Mostly working incremental compilation, use --no-incremental to disable it
  • add from statement to re-export functions and variables