From beebe at math.utah.edu Fri May 22 07:54:37 2026 From: beebe at math.utah.edu (Nelson H. F. Beebe) Date: Fri, 22 May 2026 08:54:37 -0600 Subject: Algol 68 compiler on DragonFlyBSD 6.4.2 Message-ID: In late November 2025, the GNU Algol 68 compiler, ga68, was merged into recent gcc-15, gcc-16, and gcc-17 distributions: https://www.phoronix.com/news/Algol-68-Merged-Into-GCC-16 There is an active mailing list for ga68 at https://gcc.gnu.org/pipermail/algol68/ where I've made several postings, including one announcing two extensive new bibliographies of publications about the Algol language family: https://www.math.utah.edu/pub/tex/bib/algol68.bib https://www.math.utah.edu/pub/tex/bib/algol-bulletin.bib As always in our archives at Utah, you can change the final ".bib" to ".html" if you prefer a Web browser view with live hyperlinks. The BibTeX ".bib" file is the definitive source, and the companion "*.ltx" LaTeX files demonstrate that the entries can be successfully typeset. I have built ga68 on several platforms, and am working on more. Few O/S distributions have ga68 yet, but Ubuntu 26.04 RISC-V64 does, so I have been able to test the compiler on that CPU, plus with my own builds on physical ARM64 and x86_64 CPUs. Here is a short example for calling a C math function from Algol 68: % cat demo-j0f.a68 demo_j0f: begin short real x; short real y; proc (short real) short real j0f = nest C "j0f"; x := 0.0; for k from 0 to 8 do y := j0f(x); puts("C j0f(" + fixed(x, 6, 3) + ") = " + fixed(y, 18, 9) + "'n"); x +:= 0.125 od end % ga68 demo-j0f.a68 -lm && ./a.out C j0f(+0.000) = +1.000000000 C j0f(+0.125) = +0.996097564 C j0f(+0.250) = +0.984435939 C j0f(+0.375) = +0.965151596 C j0f(+0.500) = +0.938469791 C j0f(+0.625) = +0.904702281 C j0f(+0.750) = +0.864242362 C j0f(+0.875) = +0.817560386 C j0f(+1.000) = +0.765197706 These are early days for ga68, and corresponding tests for "real" and "long real" types (like C "double" and "long double") do not yet appear to work correctly. Nevertheless, I've been able to write about 4K lines of test code in Algol 68 for both ga68, and for the venerable Algol 68 Genie compiler, a68g. Unfortunately, the latter appears to have no escape to other languages, such as used in the "nest C" example above. Also, it requires rather different syntax from that accepted by ga68, and it does not seem possible to use both compilers on common Algol 68 source files. The main purpose of this note is to report that I have been able to build ga68 on DragonFlyBSD 6.4.2 from the gcc-17-20260517 snapshot, with a couple of workarounds during the build, and builds are in progress on that system for more languages supported by gcc-17: ada,c,algol68,c++,cobol,d,fortran,go,lto,m2,objc,obj-c++,rust Builds of the full complement of languages in gcc on virtual machines are multiday affairs, so progress is slow. On our fastest multicore x86_64 machines, the builds take about an hour. On a 4-core Raspberry Pi (2.4GHz Cortex-A74), they take about 17 hours. I encourage the gcc maintainers for DragonFlyBSD to consider adding support for gcc-16 and gcc-17 streams, and to include builds for ALL of the available languages, including Algol 68, Cobol, D, Go, and Modula/2. The gcc Rust compiler, gccrs, is, alas, not yet in a usable state, and cannot process a hello-world example program that works fine with rustc. ---------------------------------------- P.S> If any list reader is anxious to try my build of ga68 for DragonFlyBSD, please contact me off list. I will supply a private link to a .tar.gz file of the installation tree, which should be usable immediately after unpacking the bundle, along with a bundle of test Algol 68 programs. ------------------------------------------------------------------------------- - Nelson H. F. Beebe Tel: +1 801 581 5254 - - University of Utah - - Department of Mathematics, 110 LCB Internet e-mail: beebe at math.utah.edu - - 155 S 1400 E RM 233 beebe at acm.org beebe at computer.org - - Salt Lake City, UT 84112-0090, USA URL: https://www.math.utah.edu/~beebe - ------------------------------------------------------------------------------- From mneumann at ntecs.de Sat May 23 01:20:01 2026 From: mneumann at ntecs.de (Michael Neumann) Date: Sat, 23 May 2026 10:20:01 +0200 Subject: Algol 68 compiler on DragonFlyBSD 6.4.2 In-Reply-To: References: Message-ID: On Fri, May 22, 2026 at 08:54:37AM -0600, Nelson H. F. Beebe wrote: > In late November 2025, the GNU Algol 68 compiler, ga68, was merged > into recent gcc-15, gcc-16, and gcc-17 distributions: Pretty cool! Thanks for keeping us informed! I still remember this Algol 60 textbook of my father lying around somewhere (and the one for PL/1 and FORTH as well :), but I am still lucky and young enough to never got in touch with ALGOL myself :) Without doubt, it's one of the most influential languages. Regards, Michael