Skip to content

Releases: Jamesbarford/holyc-lang

v0.0.14-beta

Choose a tag to compare

@Jamesbarford Jamesbarford released this 03 Jul 15:54
1aad0f3

What's Changed

New Contributors

Full Changelog: v0.0.13-beta...v0.0.14-beta

beta-v0.0.12

Choose a tag to compare

@Jamesbarford Jamesbarford released this 15 May 21:43
8024135

Full Changelog: beta-v0.0.11...beta-v0.0.12

beta-v0.0.11

Choose a tag to compare

@Jamesbarford Jamesbarford released this 15 May 19:24

What's Changed

The IR PR was bloated and also did the following

  • IR now used as the basis of the x86_64 backend, all tests pass however they are a bit light. Can still use the old AST walker with --use-legacy-x86.
  • feature; try/catch.
  • feature; mix local variables in assembly blocks.
  • feature; pin registers to variables (and use those in ASM blocks).
  • feature; pin registers to function parameters, if no other variables or expressions are used in the function and there is only an asm {} block inside then no stack frame is initialised and the allocator will not run on that block.
  • Numerous obnoxious bug fixes to the Map implementation in containers.c.
  • Fix for going from ints to floats and floats to ints, correct assembly is generated.

New Contributors

Full Changelog: beta-v0.0.10...beta-v0.0.11

beta-v0.0.10

Choose a tag to compare

@Jamesbarford Jamesbarford released this 02 Aug 15:59
341cdfa
  • @tsMezotic fix for function pointer default arguments
  • @ske2004 fix for cqto in division
  • @BlackSystemCoder fix for broken link in README
  • Fix for string escaping in lexer
  • Use clang --target=x86_64-apple-darwin when compiling on aarch64. This will not work with linux aarch64!, however there is a #define _CC so _CC can be set to any arbitrary string.
  • Refactor of hashtables, maps and sets

beta-v0.0.9

Choose a tag to compare

@Jamesbarford Jamesbarford released this 04 Feb 22:03
13a0778

Fixes

  • -run now works again
  • Filenames don't get chopped off @rilysh
  • Compile files that don't have a new line ending
  • Allow for empty string literals
  • Hex escape sequences are handled better @krizej
  • sizeof(...) works as intended
  • Hashtable probing no longer spins forever
  • Compiler flags are passed in properly through the Makefile

Features

  • New CLI interface

beta-v0.0.8

Choose a tag to compare

@Jamesbarford Jamesbarford released this 25 Dec 20:51
4b36525

Feat: can pass off .s files internally for gcc to assemble
Feat: transpile to C
Feat: chose an installation directory
Feat: RedBlack Tree and IntSet, with iterators

Fix: ReAlloc
Fix: Array indexing & global arrays
Fix: net.HC #defines's for Linux (were mac only before)
Fix: line numbers are correct when reporting errors
Fix: string hashtables in the library
Fix: Function pointer on a class

beta-v0.0.7

Choose a tag to compare

@Jamesbarford Jamesbarford released this 19 Nov 19:32
726b894
  • Error handling, in most cases, has been improved
  • Ast level function inlining with inline keyword, works well enough for a beta release

Vectors & Hashtable fix

Choose a tag to compare

@Jamesbarford Jamesbarford released this 10 Nov 16:07
92ab58f
  • Adds Vectors for ints, floats and pointers (arbitrary objects)
  • Fixes hashtables

Fixes

Choose a tag to compare

@Jamesbarford Jamesbarford released this 03 Nov 20:30
a37294c
  • Removed mandatory dependency of sqlite3
  • Fixed ordering of libs

Fixes

Choose a tag to compare

@Jamesbarford Jamesbarford released this 01 Jun 20:03
d2a09c7
  • Fixed memory allocation issue with ReAlloc()
  • Fixed issue with StrNew()
  • Fixed printing tokens (quite rough and ready)