Skip to content

Releases: burnlang/burn

v26.1.0-experimental-9

Pre-release

Choose a tag to compare

@github-actions github-actions released this 16 Oct 10:38
2c1fa7a

What's Changed

  • Document keywords and built-in types in the editor by @S42yt in #121
  • Release 26.1.0-experimental-9 by @S42yt in #122

Full Changelog: v26.1.0-experimental-8...v26.1.0-experimental-9

v26.1.0-experimental-8

Pre-release

Choose a tag to compare

@github-actions github-actions released this 16 Oct 08:57
29969af

What's Changed

  • Add a JIT to bvm by @S42yt in #114
  • Document the JIT and the self-hosted bvm by @S42yt in #115
  • Keep values in registers in the JIT and compile more inline by @S42yt in #116
  • Compare overriding signatures after checking the bodies by @S42yt in #117
  • Link the documentation at s42yt.github.io/burn-docs by @S42yt in #118
  • Run the JIT on arm64 by @S42yt in #119
  • Release 26.1.0-experimental-8 by @S42yt in #120

Full Changelog: v26.1.0-experimental-7...v26.1.0-experimental-8

v26.1.0-experimental-7

Pre-release

Choose a tag to compare

@github-actions github-actions released this 15 Oct 19:31
e7a57e4

What's Changed

  • Call C from native code and let C call Burn: @extern by @S42yt in #95
  • Compile raw memory loads and stores inline in native code by @S42yt in #96
  • Build native runtime libraries from Burn by @S42yt in #97
  • Write the native runtime in Burn by @S42yt in #98
  • Link native executables against the runtime written in Burn by @S42yt in #99
  • Read and write bvm bytecode in Burn by @S42yt in #100
  • Fix the tests that fail on master by @S42yt in #101
  • Run bytecode with bvm written in Burn by @S42yt in #102
  • Link bvm modules and apply mixins in Burn by @S42yt in #103
  • Assemble bvm text in Burn by @S42yt in #104
  • Complete the bvm command in Burn, with archives by @S42yt in #105
  • Run bytecode in executables with bvm written in Burn by @S42yt in #106
  • Ship the toolchain as a native executable written in Burn by @S42yt in #107
  • Drop unused code from native executables and the Rust no-std runtime by @S42yt in #108
  • Bootstrap from assembly seeds without Rust by @S42yt in #109
  • Write the end-to-end tests and Ember in Burn by @S42yt in #110
  • Delete Rust by @S42yt in #111
  • Release 26.1.0-experimental-7 by @S42yt in #112
  • Make the runtime's inline assembly work with clang by @S42yt in #113

Full Changelog: v26.1.0-experimental-6...v26.1.0-experimental-7

v26.1.0-experimental-6

Pre-release

Choose a tag to compare

@github-actions github-actions released this 13 Oct 10:21
3dfb84e

What's Changed

  • Add import aliases: import "module" as Name by @S42yt in #92
  • Add local imports: import inside functions and blocks by @S42yt in #93
  • Release 26.1.0-experimental-6 by @S42yt in #94

Full Changelog: v26.1.0-experimental-5...v26.1.0-experimental-6

v26.1.0-experimental-5

Pre-release

Choose a tag to compare

@github-actions github-actions released this 13 Oct 06:53
c4cb3d8

What's Changed

  • Native executables for arm64: Apple silicon Macs and Linux by @S42yt in #79
  • More docs: functions, errors, testing, JavaScript, the REPL and the std modules by @S42yt in #80
  • Docs: a complete language reference by @S42yt in #81
  • Allow bindings in a match on a top-level variable by @S42yt in #82
  • Docs: how Burn works in the background by @S42yt in #83
  • Docs: async, modules and built-in aliases in full by @S42yt in #84
  • Docs: diagrams by @S42yt in #85
  • Move the documentation to burnlang/docs by @S42yt in #86
  • Add unsafe blocks, unsafe functions and inline assembly by @S42yt in #87
  • Build Burn with Burn: replace stage0 with a boot compiler in the repository by @S42yt in #88
  • Use inline assembly in the compiler for float bits by @S42yt in #89
  • Add std/memory: raw memory for unsafe code by @S42yt in #90
  • Release 26.1.0-experimental-5 by @S42yt in #91

Full Changelog: v26.1.0-experimental-4...v26.1.0-experimental-5

v26.1.0-experimental-4

Pre-release

Choose a tag to compare

@github-actions github-actions released this 09 Oct 16:49
adeb382

What's Changed

  • Bring back the JavaScript backend, written in Burn by @S42yt in #75
  • Bring back native executables, written in Burn by @S42yt in #76
  • Keep the command line's objects out of the programs it runs by @S42yt in #77
  • Release 26.1.0-experimental-4 by @S42yt in #78

Full Changelog: v26.1.0-experimental-3...v26.1.0-experimental-4

v26.1.0-experimental-3

Pre-release

Choose a tag to compare

@github-actions github-actions released this 09 Oct 12:45
291bfe2

What's Changed

  • Pin the Rust compiler release that bootstraps the Burn compiler by @S42yt in #41
  • Self-hosting, part 2: a parser written in Burn by @S42yt in #42
  • Give projects a standard layout by @S42yt in #43
  • Add workspaces for projects made of several packages by @S42yt in #44
  • Self-host part 3: diagnostics in Burn by @S42yt in #45
  • Self-host part 4: loader and projects in Burn by @S42yt in #46
  • Pick the same "did you mean" suggestion on every run by @S42yt in #47
  • Self-host part 5a: checker declarations in Burn by @S42yt in #48
  • Give the Burn compiler a project layout by @S42yt in #49
  • Docs: Burn standards by @S42yt in #50
  • Docs: semantic and yearly versions in the Burn standards by @S42yt in #51
  • Self-host part 5b: check function bodies in Burn by @S42yt in #52
  • Self-host part 5c: match and nullable operators in Burn by @S42yt in #53
  • Self-host part 5d: structs in the Burn checker by @S42yt in #54
  • Self-host part 5e: annotationsOf and mixins finish the Burn checker by @S42yt in #55
  • Self-host part 6: the ownership pass in Burn by @S42yt in #56
  • Self-host part 7: bvm code generation in Burn by @S42yt in #57
  • Self-host part 8: the Burn compiler builds itself by @S42yt in #58
  • Ship the compiler written in Burn and add --compiler burn by @S42yt in #59
  • Move bvm to the repository root by @S42yt in #60
  • Move burnfmt into lib/tools as an importable tools/fmt module by @S42yt in #61
  • Runtime in Burn, part 1: lib/runtime and the bvm link step by @S42yt in #62
  • Runtime in Burn, part 2: trim, int parsing and radix conversion by @S42yt in #63
  • Runtime in Burn, part 3: JSON parsing, abs and pow by @S42yt in #64
  • Move the runtime core into bvm as bvm/runtime by @S42yt in #65
  • Write the burn command line in Burn, part 1 by @S42yt in #66
  • Write the burn command line in Burn, part 2: fmt, fix, test and init by @S42yt in #67
  • Write the burn command line in Burn, part 3: bytecode libraries by @S42yt in #68
  • Write the burn command line in Burn, part 4: the REPL by @S42yt in #69
  • Write the burn command line in Burn, part 5: burn doc by @S42yt in #70
  • Write the burn command line in Burn, part 6: the checker index for the language server by @S42yt in #71
  • Write the burn command line in Burn, part 7: the language server by @S42yt in #72
  • Remove the compiler written in Rust by @S42yt in #73
  • Release 26.1.0-experimental-3 by @S42yt in #74

Full Changelog: v26.1.0-experimental-2...v26.1.0-experimental-3

v26.1.0-experimental-2

Pre-release

Choose a tag to compare

@github-actions github-actions released this 08 Oct 06:35
140fdbc

What's Changed

  • Update README.md by @ret2862 in #1
  • std lib + refactor by @S42yt in #2
  • Rewrite Burn in Rust and x86-64 assembly with a native compiler by @S42yt in #7
  • Add the Burn toolchain installer, burni/burnc, burnfmt written in Burn and a clean logo by @S42yt in #8
  • bvm: a general-purpose virtual machine, and version 26.1.0-experimental-1 by @S42yt in #9
  • Burn archives, mixins, native interop and annotations by @S42yt in #10
  • Structs, fix suggestions, Burndoc and a bvm that optimizes while running by @S42yt in #11
  • Type and null safety by @S42yt in #12
  • Mark the Go bnfmt as deprecated in the docs by @S42yt in #13
  • Projects and packages: burn init, burn.toml, burn.lock by @S42yt in #14
  • Document adding packages to the ash index through an issue by @S42yt in #15
  • Document burnup as the Burn version manager by @S42yt in #16
  • Memory limits for programs and the language server, import completion by @S42yt in #17
  • Import packages as bytecode for mixins by @S42yt in #18
  • Add generics, closures, match, bit operators and new std modules by @S42yt in #19
  • Free memory automatically through ownership instead of a garbage collector by @S42yt in #20
  • Complete match in the language server and add match and generic function snippets by @S42yt in #23
  • Sized number types with packed arrays: int8 to uint64 and float32 by @S42yt in #24
  • Build native executables without the standard runtime (--no-std / std = false) by @S42yt in #21
  • Editor tooling: library sources, refactoring in the language server, Zed and JetBrains extensions by @S42yt in #25
  • Full IDE support in the language server by @S42yt in #26
  • Context-aware completion for types, annotations, definitions and keywords by @S42yt in #27
  • Move the editor extensions into their own repositories by @S42yt in #28
  • Let a project import itself regardless of letter case by @S42yt in #29
  • Import packages whose name ends in .bn, and self-imports in the editor by @S42yt in #30
  • Reload projects from the editor by @S42yt in #31
  • Move non-core built-ins into standard library modules by @S42yt in #32
  • Allow std/fs, std/process and std/time without the standard runtime by @S42yt in #33
  • Turn off the standard library with std = false, like no_std by @S42yt in #34
  • Append to uniquely owned strings in place by @S42yt in #35
  • Read and write integers in any base from 2 to 36 by @S42yt in #36
  • Import the standard modules everywhere they are used by @S42yt in #37
  • Let enum variants carry data by @S42yt in #38
  • Self-hosting, part 1: a lexer written in Burn by @S42yt in #39
  • Let a release be started by hand by @S42yt in #40

New Contributors

Full Changelog: https://github.com/burnlang/burn/commits/v26.1.0-experimental-2