Skip to content

Latest commit

 

History

History
88 lines (68 loc) · 1.9 KB

history.md

File metadata and controls

88 lines (68 loc) · 1.9 KB

Version History

0.4.0

  • add embedded macro for FFIs
  • add transpiler to Coq

0.3.9

  • fix a bug on the garbage collector

0.3.8

  • fix a bug on typing
    • check the number of arguments
    • (+ 10) was passed typing rule
  • add != and neq
    • (!= 10 10)
    • (neq (Some "Hello") 10)

0.3.7

  • add bit shift operators
    • (<< 8 4) ; shift left
    • (>> 128 4) ; shift right
  • add Char type
  • add character literal
    • `H`
  • add chars and str functions
    • chars converts String to (List Char)
      • (chars "Hello, World!")
    • str converts (List Char) to String
      • (str '(`H` `e` `l` `l` `o`))

0.3.6

  • make <, >, <=, >= functions' type (Pure (-> (t t) Bool))
    • perform comparison between 2 values whose types are same
    • (< "Hello" "World")
    • (>= (Some 5) (Some 19))
  • add lt, gt, leq, geq functions
    • perform comparison between any 2 values
    • function type is (Pure (-> (t1 t2) Bool))
    • (eq "Hello" 10)
    • (lt (Some 6) "Hello")

0.3.5

  • add string type and literal
    • String
    • "Hello World!"
  • make equal function generics
    • it can be used for non-integer types
    • (= "Hello" "Hello")
    • (= (Some 1) (Some 2))
  • fix a bug on typing
    • (= (Some 1) (Some 2)) could not be typed properly

0.3.4

  • fix bugs on typing
    • bug 1: some locally defined functions are cannot be called
    • bug 2: empty list cannot be typed properly
  • add filter and reverse functions to prelude

0.3.3

  • add hexadecimal, octal, and binary
    • 0xabcDEF
    • 0o777
    • 0b1010

0.3.2

  • add pow to compute exponent
    • example: (pow 10 20)
    • type of pow: (Pure (-> (Int Int) (Option Int)))
    • if the exponent portion is greater or equal to 2^32, then return None
  • add sqrt
    • example: (sqrt 16)
    • type of sqrt: (Pure (-> (Int) (Option Int)))
    • if the value is less than 0, then return None
  • add bitwise operations
    • band, bor, bxor

0.3.1

  • garbage collection is ready (mark and sweep)