Crystal 1.16.0 Released: Enhanced Multithreading and Crucial Bug Fixes

2025-04-11
Crystal 1.16.0 Released: Enhanced Multithreading and Crucial Bug Fixes

The Crystal programming language has released version 1.16.0, bringing several improvements and bug fixes. This release addresses the implementation of File.match?, improves HTTP::Request resource string parsing, and deprecates parameter name suffixes ? and !. Most notably, it introduces Execution Contexts as a preview feature, significantly enhancing multithreading support and providing more robust tools for concurrent programming. Furthermore, the compiler has been improved with support for longer options and environment variables, and updated support for LLVM 20.

Read more
Development

Crystal Macros: Compile-Time Code Generation Powerhouse

2025-01-14

Crystal 1.15.0's macro system enables compile-time code execution, significantly extending the language's capabilities. The `Crystal::Macros` module offers a rich set of functions, including `read_file` for reading file contents, `run` for executing external programs, `env` for getting environment variables, and even version comparison and type parsing. These features empower developers to perform complex preprocessing tasks at compile time, such as dynamically generating code based on platform or environment, improving development efficiency and code maintainability. This is a powerful tool for building highly customized applications and libraries.

Read more
Development Macros