Announced the start

Took place release GNU Guile 3.0, a freely implemented functional programming language Scheme, supporting the ability to embed code in applications written in other programming languages. Guile can be used as a language for developing extensions for applications, defining configurations, or creating components for connecting various primitives provided by the application. Guile is the official extension development language for the GNU operating system.

Guile is based on an efficient virtual machine that executes a portable set of instructions generated by a special optimizing compiler. The Guile virtual machine easily integrates with application code written in C and C++. In addition to the Scheme language, support is implemented for specifications R5RS, R6RS and R7RS, within the Guile project, compilers for other languages, such as ECMAScript, Emacs Lisp, and Lua (in development), have also been created. The package includes a library of modules that implement standard service functions, such as handling HTTP protocols, XML parsing, and utilizing object-oriented programming methods.

A key innovation in GNU Guile 3.0 is the introduction of a JIT compiler, in addition to the previously offered interpreter and bytecode compiler that executes in a special virtual machine linked to the application as a library. The JIT allows for generating machine code on the fly and significantly accelerates the execution of Guile applications (tests show up to 4 times acceleration). The JIT compiler supports operation on architectures x86-64, i686, ARMv7, and AArch64.

Some other improvements include:

  • Support for the new Scheme language specification R7RS and the library modules defined in it;
  • The Guile virtual machine supports a lower-level bytecode that allows for advanced optimizations;
  • Support for combining internal define definitions and expressions (for example, ‘(define _ (begin (foo) #f))’);
  • A unified implementation of structured data types (‘records’) has been proposed;
  • Primitive exception handling (throw and catch) has been redesigned;
  • Bindings for the extended syntax ‘else’, ‘=>’, ‘…’, and ‘_’ have been defined;
  • The ability to load content over an encrypted communication channel using TLS with proper certificate verification has been added to http-request, http-get, and other related web client procedures.

Source: opennet.ru

Buy reliable website hosting with DDoS protection, VPS VDS servers 🔥 Buy reliable website hosting with DDoS protection, VPS VDS servers | ProHoster