Christmas is nearly on us, 10 shopping days to go. Things at the pole were gathering pace, with so much left to do. Rudolph (him again) was pacing up and down, mashing his cheroot. He cast his mind back to the App::Crag calcs he had done last ti[…]
Previously in this series: Two articles in, and our coding agent can already do quite a bit. It can explore projects, read and write code, execute shell commands, and run tests. Adding a definition of done (DoD) in our last article gave it the f[…]
Santa was playing and losing yet another game of Yahtzee with Mrs. Claus and the elves when a thought occurred to him: why don’t you get points for rolling the first 5 digits of the Fibonacci sequence (1, 1, 2, 3, 5)? For t[…]
Benchmarking is an important part of writing efficient Kotlin code. The kotlinx-benchmark library helps you measure and compare performance across different implementations or hardware configurations. However, raw text results only take you so f[…]
Meeting C++ is hosting a 24h++ Event on December 18th and 19th! Get your tickets now!
Meeting C++ 24h++
by Jens Weller
From the page:
Meeting C++ 24h++ starts at the 18. December 2025.
Meeting C++ hosts an 24h++ online eve[…]
Am I the only one who often gets obsessed with stuff they discovered in really weird ways? I watch a film and some character listens to some music on their car stereo; I look it up and have a new favourite band for the next few months. That kind[…]
Datastar is a hypermedia systems library in the same tradition as htmx, Unpoly, Alpine AJAX, and Hotwire‘s Turbo. These libraries are generally Javascript/Typescript bundles that utilize the HTML standard to allow you to declaratively write AJ[…]
CLion 2025.3 is here, a landmark release with a groundbreaking Constexpr Debugger...
CLion 2025.3 Is Here, and It’s Epic: Faster Language Engine, Unique Constexpr Debugger, DAP Support, and Much More
by Oleg Zinovyev
From the art[…]
Cron Meets Raku The Finance Department’s computers had been converted to Debian Linux with Rakuized software along with all the other departments at the North Pole headquaters, and its employees enjoyed the Windows-free environment. However, a[…]
This is the first guest post in a two-part series from José Luis González. José Luis has a PhD in software development and is a JetBrains-certified Kotlin Trainer, who works with developers and engineering teams to deepen their Kotlin skills […]
What a year I had! One more conference, one more trip report! I had the chance to go to Meeting C++ and give not just one but two talks!
Trip report: Meeting C++ 2025
by Sandor Dargo
From the article:
I remember that last year[…]
A recap of the latest servicing updates for .NET and .NET Framework for December 2025.
The post .NET and .NET Framework December 2025 servicing releases updates appeared first on .NET Blog.
Learn how to implement in-app purchases in your .NET MAUI apps with our new cross-platform billing sample for Android, iOS, Mac Catalyst, and Windows.
The post Implementing Cross-Platform In-App Billing in .NET MAUI Applications appeared first o[…]
This document provides examples of monadic pipelines for computational workflows in Raku. It expands on the blog post "Monad Laws in Raku" by including practical, real-life examples.
Explore how the Learn MCP server enhances the developer experience with Copilot, showcase practical examples, and provide straightforward integration instructions for Visual Studio, Visual Studio Code, the Copilot Command Line Interface, and the[…]
Head on over to https://raku-advent.blog to see this year’s posts so far … thanks to all for the great contributions: Advent: Last Call for your Participation We already have 8 days under Santa’s belt with a further 7 posts lined up. So on[…]
Introducing new networking features in .NET 10 including HTTP space, WebSockets, security and more!
The post .NET 10 Networking Improvements appeared first on .NET Blog.
Lua 5.5.0 (rc3) has been released for testing.
This article was written by an external contributor. Kubernetes is a container orchestration system for deploying, scaling, and managing containerized applications. If you build services on the Java virtual machine (JVM), you likely know that mo[…]
C++11 gave us enum class and while it’s great to have scoped enums I don’t find it great for error handling. Let’s talk about why.
C++ Enum Class and Error Codes
by Mathieu Ropert
From the article:
Most of my r[…]
.NET Conf 2025 is over, but you can catch up with all the announcements and fun with video recordings, slides, demos, and more.
The post .NET Conf 2025 Recap – Celebrating .NET 10, Visual Studio 2026, AI, Community, & More appeared first o[…]
The Budapest C++ Meetup was a great reminder of how strong and curious our local community is. Each talk approached the language from a different angle — Jonathan Müller from the perspective of performance, mine from design and type safety,[…]
Announcing the preview of open, modular data ingestion building blocks in .NET, empowering developers to build scalable AI pipelines with seamless integration, extensibility, and easy getting started experiences across the .NET ecosystem.
The po[…]
Write a Simple Code Agent using moonbitlang/async
Modverse #52: Advancing AI Together — Community Projects & Platform Milestones
Earlier this year, the TypeScript team announced that we’ve been porting the compiler and language service to native code to take advantage of better raw performance, memory usage, and parallelism. This effort (codenamed “Project Corsa”, a[…]
Lua 5.5.0 (rc2) has been released for testing.
When working with legacy or rigid codebases, performance bottlenecks can emerge from designs you can’t easily change—like interfaces that force inefficient map access by index. This article explores how a simple thread_local cache can dram[…]
Head on over to https://raku-advent.blog to see the first of this year’s posts from Nigel Hamilton… thanks for setting the trend! Advent: Call for your Participation We already have 9 days covered by 5 authors, same as this time last week. D[…]
Community Newsletter for November 2025
A missing DismissUI() call on one code path led to a subtle bug—but rather than patching it with more try/catch and return logic, there’s a cleaner C++ solution. This article shows how to use RAII and wil::scope_exit to guarantee cleanup a[…]
Join us live for five days of Advent of Code puzzles and five Kotlin livestreams on December 1–5. Solve the puzzles in Kotlin with help from Kotlin team experts and fun community guests, climb the leaderboard, learn new tricks, and have a chan[…]
I’ve teased it long enough:1 today we’re going to look at the real meat of turning declarative, something-that-looks-like-this patterns into fast, running, imperative, if-this-then-that code. The absolute final generation of working Scheme c[…]
This document (notebook) shows transformations of a movie dataset into a format more suitable for data analysis and for making a movie recommender system. It is the first of a three-part series of notebooks that showcase Raku packages for doing […]
Join us live on December 9 to explore the newest, most practical ways to modernize your .NET apps with Azure, AI, and powerful agentic tooling.
The post .NET Day on Agentic Modernization Coming Soon appeared first on .NET Blog.
I’ve gathered the latest Kotlin highlights for you – from the Kotlin Reddit AMA and documentation updates to learning programs and Google Summer of Code 2025 projects. Whether you’re here to stay up to date or just looking for something in[…]
In the previous article, we saw how to build a basic coding agent with list, read, write, and edit capabilities. Today, we’ll dive into how to extend the agents’ capabilities by creating additional tools within the Koog framework. As an exam[…]
In this final part of the tuple-iteration mini-series, we move beyond C++20 and C++23 techniques to explore how C++26 finally brings first-class language support for compile-time iteration. With structured binding packs (P1061) and expansion s[…]
Launching the Julia Security Working Group
We already have 9 days covered by 5 authors. Don’t miss out and reserve your slot now for the festive fun at the authors.md page. All it takes to get on the schedule is to make a quick PR with your name and your proposed festive post title(s).[…]
The best way to skip the “beginner mistakes” phase is to learn from the teams who have already solved them at scale. For Week 3 of KMP Level Up, we’ve curated the Top 10 KotlinConf talks that cover the full spectrum of adoption, from massi[…]
Amper 0.9.0 is out, and it brings the first version of our extensibility prototype! Read on for all of the details, and see the release notes for the full list of changes and bug fixes. To get support for Amper’s latest features, use IntelliJ […]
Guest post by Urs Peter, Senior Software Engineer and JetBrains-certified Kotlin Trainer. For readers who’d like a more structured way to build Kotlin skills, Urs also leads the Kotlin Upskill Program at Xebia Academy. This is the fifth p[…]
The Haskell.org committee is pleased to present the results of Haskell's
participation in the Google Summer of Code 2025. This marks our 14th time
taking part in GSoC!
Patrice Roy gave a great talk online on C++ casts at Meetign C++ 2025
To lie, and hopefully - to lie usefully - Patrice Roy - Meeting C++ 2025
by Patrice Roy
A new paper:
Bjarne Stroustrup: Concept-Based Generic Programming
https://www.stroustrup.com/Concept-based-GP.pdf
We present programming techniques to illustrate the facilities and principles of C++ generic programming using conce[…]
std::format allows us to format values quickly and safely. Spencer Collyer demonstrates how to provide formatting for a simple user-defined class.
User-Defined Formatting in std::format
by Spencer Collyer
From the article:
In […]
An exploration of how .NET evolved from a distributed build system to Unified Build, dramatically reducing complexity and build times while improving flexibility and predictability for shipping .NET releases.
The post Reinventing how .NET Builds[…]
The first video from Meeting C++ 2025. As every year the online track is released first.
The Code is Documentation Enough - Tina Ulbrich - Meeting C++ 2025
by Tina Ulbrich
Watch now:
Modular 25.7: Faster Inference, Safer GPU Programming, and a More Unified Developer Experience
Modern C++ offers elegant abstractions like std::ranges that promise cleaner, more expressive code without sacrificing speed. Yet, as with many abstractions, real-world performance can tell a more nuanced story—one that every engineer should[…]
Boost your testing workflow with GitHub Copilot testing for .NET, available now in Visual Studio. Automatically generate, build, and run high-quality unit tests for files, projects, or entire solutions.
The post Supercharge Your Test Coverage wi[…]
Learn how Visual Studio 2026 and GitHub Copilot app modernization upgrade .NET versions and frameworks, fix build issues, and migrate apps to Azure with less manual effort
The post A step-by-step guide to modernizing .NET applications with GitHu[…]
Guest post by Urs Peter, Senior Software Engineer and JetBrains-certified Kotlin Trainer. For readers who’d like a more structured way to build Kotlin skills, Urs also leads the Kotlin Upskill Program at Xebia Academy. This is the fourth […]
If you’re a regular reader of Sandor's blog, you know he's been sharing what he learned about new C++ language and library features ever since C++20. You probably also read his CppCon 2025 Trip Report. And this post is where the two come tog[…]
Congrats to the team for the new Rakudo compiler, Release #187 (2025.11). The following people contributed to this release: Will Coleda, Elizabeth Mattijsen, Eric Forste, Patrick Böker, librasteve, David Schultz, Timo Paulssen, Anton Oks, Danie[…]
We are pleased to announce the release of Ruby 4.0.0-preview2. Ruby 4.0 updates its Unicode version to 17,0.0, and so on.
Language changes
*nil no longer calls nil.to_a, similar to how **nil does
not call nil.to_hash. [Feature #21047]
Co[…]
Monad laws are defined and verified for various built-in features, programming paradigms, and styles in Raku.
Alright! Last time we looked at the mouth of extensible-match and how it chews up patterns in order to make them digestible. Before we take a look into the stomach,1 we should look at what that chewed-up form of patterns looks like. This is an e[…]
Lua 5.5.0 (rc1) has been released for testing.
In this post, we’ll take a closer look at how to extend the earlier callback wrapper mechanism to handle regular function pointers as well as member functions. Along the way, we’ll examine some of the subtleties of inferring function point[…]
Congrats to all GSoC 2025 contributors and mentors! This year’s projects have made a real impact on the Kotlin ecosystem and the contributions are already being integrated, used, and appreciated. Thank you all for your hard work! Join our #gso[…]
This post chronicles a month-long experiment using C++26 reflections to automate the generation of pybind11 bindings, blending the promise of modern metaprogramming with real-world complexity. It offers a candid look at what worked beautifully[…]
It’s that time of the year again: the time for writing Raku Advent Calendar blog posts! So that we can all enjoy them in the darkest days of the year (well, at least on the Northern Hemisphere). The elven have opened up the 2025 list of articl[…]
"TTS 1 Max" (powered by Modular Platform) Ranked #1 Speech Model on Artificial Analysis
PyTorch and LLVM in 2025 — Keeping up With AI Innovation
Over the last two posts, we explored different implementations of the observer pattern in C++. We began with a very simple example, then evolved toward a more flexible, template- and inheritance-based design.
This week, l[…]
Community Newsletter for October 2025
When you pass an overloaded function like f to std::apply, the compiler can’t peek inside the tuple to figure out which overload matches—it only sees an ambiguous callable and a single tuple argument. Because overload resolution happe[…]
Announcing LLDB based debugger for MoonBit
The Nim Team is happy to announce version 2.2.6, the third patch release for our stable release, Nim 2.2.
It comes six months after the 2.2.4 release and it contains 141 commits, bringing bugfixes and improvements.
If you’re still on Nim 1.6[…]
Go 1.25 includes a new experimental garbage collector, Green Tea.
In the last post, we built a templated observer framework that let any publisher push strongly-typed messages to its subscribers.
This time we’ll push the design further by trying to let a single publisher handle multiple message types—an[…]
With today, the final schedule for Meeting C++ 2025 has been published. Tickets for Berlin and online are still available until next week Wednesday!
The last update to the schedule for Meeting C++ 2025
by Jens Weller
From the artic[…]
This year marks C++'s 40th anniversary, and at C++ Day 2025 (a proper "wrap-up post" will follow in the next days) we couldn't let the occasion pass without a little celebration!
While there wasn't a cake, we gathered everyone to sing "[…]
While preparing a talk for Meeting C++ 2025 I've started looking into binary trees. And got curious about a different design choice.
Looking at binary trees in C++
by Jens Weller
From the article:
I'm in the process of prepari[…]
The new Constexpr Debugger available in the first CLion 2025.3 EAP build allows you to stay in the compiler’s world and see what really happens – by stepping through evaluation, inspecting values, and confirming which if constexpr branch f[…]
Meeting C++ 2025 has now a fully filled schedule with 5 Tracks on 3 days!
Schedule of Meeting C++ 2025
November 6th - 8th, Berlin and online.
Ruby 3.3.10 has been released.
This release includes an update to the uri gem addressing CVE-2025-61594,
along with other bug fixes. Please refer to the release notes on GitHub for further details.
We recommend updating your version of the uri[…]
The goal of this mini-series is to explore the Observer Design Pattern in C++, walking through different implementations and weighing their pros and cons.
Discovering Observers - Part 1
by Sandor Dargo
From the article:
First,[…]
Dear Ruby community,
RubyGems and Bundler are essential official clients for rubygems.org and the Ruby ecosystem, bundled with the Ruby language for many years and functioning as part of the standard library.
Despite this crucial role, RubyGem[…]
Achieving State-of-the-Art Performance on AMD MI355 — in Just 14 Days
Meeting C++ hosts a new track in Berlin this year, offering 4 tracks onsite
Releasing the 5th Track for Meeting C++ 2025
by Jens Weller
from the article:
I am excited to announce that with the recent changes to the schedule, M[…]
Async DNS ResolutionAuthor: Andrew KelleyWithout libc in the picture, DNS resolution is a happy async utopia. We can blast out multiple queries and handle responses as they arrive, using standard system primitives such as file descriptors and po[…]
A long-delayed dream finally came true: after years of near-misses and lessons learned (“better to be invited than sent”), I made it to CppCon—and it was bigger, louder, and more inspiring than I imagined. In this recap I share the vibe […]
Sadly I have to inform you about Rainer Grimms passing last week. He was a great C++ author, trainer, speaker and friend. Heartfelt condolences to his family.
Rainer Grimms ALS Journey 31/31: the end
by Beatrix Grimm
From the artic[…]
The number of open bug reports in the R bug tracker has been reduced by about 25% during August and September this year. This work has been possible thanks to an investment of the Sovereign Tech Fund.
Urgent bug reports that are easily reproduci[…]
Install the Wasm version of the MoonBit toolchain
Structured binding is a C++17 feature that allows you to bind multiple variables to the elements of a structured object, such as a tuple or struct. This can make your code more concise and easier to read, especially when working with complex d[…]
no-matrix build optionAuthor: Andrew KelleyI added a new build option, -Dno-matrix, which makes it so that using zig build test-std or zig build test-behavior it only runs the default, native target tests. This is handy when you already know it[…]
A blog entry about this years t-shirt at Meeting C++ 2025 and exploring QPainterPath for it.
You should use QPainterPath they said...
by Jens Weller
From the article:
This post is about what I learned while playing around with[…]
Highlights of the Julia 1.12 release.
Ruby 3.4.7 has been released.
This release includes an update to the uri gem addressing CVE-2025-61594,
along with other bug fixes. Please refer to the release notes on GitHub for further details.
We recommend updating your version of the uri […]
We published security advisory for CVE-2025-61594.
CVE-2025-61594: URI Credential Leakage Bypass over CVE-2025-27221
In affected URI version, a bypass exists for the fix to CVE-2025-27221 that can expose user credentials.
This vulnerability h[…]
With Meeting C++ 2025 coming closer, we're doing a last round of onboarding for sponsors
Final call for sponsors for Meeting C++ 2025
by Jens Weller
From the article:
With Meeting C++ 2025 just being 5 weeks away, I share a ca[…]
Whether you’re in a coding interview or writing production code, you’ll eventually face the question: What’s the right way to look up values in a std::map or std::unordered_map? For simplicity, we’ll refer to b[…]
For the second consecutive year, The Perl and Raku Foundation (TPRF) is
overjoyed to announce a donation of USD 25,000 from
DuckDuckGo.
DuckDuckGo has demonstrated how Perl and its ecosystem can deliver power and
scale to drive the DuckDuckGo c[…]
Community Newsletter for September 2025
This blog posts shows how to utilize Large Language Model (LLM) «Function Calling» with the Raku package "LLM::Functions", which supports high level LLM function calling via llm-synthesize and llm-synthe[…]
Introducing Async Programming in MoonBit
Passing a string temporary into a string_view can make the latter dangling
Safely passing std::strings and std::string_view
by Niek J Bouman
From the article:
Many of you will agree that C++ is a language that comes wi[…]
Sometimes some object A needs to interact with another object B, e.g., A calls one of B’s methods. In a language like C++, it is left to the programmer to assure that B outlives A; if B happens to be already destructed, this would be a use-a[…]
Some reflections on a harsh critic by Linus Torvalds on a RISC-V Linux kernel contribution.
Linus Torvalds and the Supposedly “Garbage Code”
by Giovanni Dicanio
From the article:
So, the correct explicit code is no[…]
CppCon 2025 was packed with exciting talks, deep dives, and great conversations.
CppCon 2025 Trip Report
by tipi.build by EngFlow
About the report
tipi.build by EngFlow attended both as a developer team and as a CppCon sp[…]
Go 1.25 introduces a new tool in the diagnostic toolbox, flight recording.
Last week, we discussed why we should sometimes use remove_cvref_t on our template parameters before applying concepts to them. We also saw that the solution is not super readable because we lose access to the terse, shorthand s[…]
Meeting C++ is offering online and onsite student and support tickets for this years conference!
Highlighting the student and support tickets for Meeting C++ 2025
by Jens Weller
From the article:
I'd like to point towards the […]
Modular Raises $250M to scale AI's Unified Compute Layer
Let’s talk about templates, constraints, and concepts. We’ll start with a quick reminder of why concepts are essential when working with templates. Then we’ll dive into the challenge posed by reference-qualified types and finish with a p[…]
Modular 25.6: Unifying the latest GPUs from NVIDIA, AMD, and Apple
Compile time code can be very efficient. Andrew Drakeford demonstrates how to write efficient chains of matrix multiplication.
Simple Compile-Time Dynamic Programming in Modern C++
by Andrew Drakeford
From the article:
Modern […]
Modverse #51: Modular x Inworld x Oracle, Modular Meetup Recap and Community Projects
Matrix Multiplication on Blackwell: Part 4 - Breaking SOTA
Today The Perl and Raku Foundation is thrilled to announce a donation of USD
10,000 from Geizhals Preisvergleich. This gift helps to
secure the future of The Perl 5 Core Maintenance Fund.
Perl has been an integral part of our product price comp[…]
There is a DoS vulnerability in REXML gem. This vulnerability has been assigned the CVE identifier CVE-2025-58767. We strongly recommend upgrading the REXML gem.
Details
Parsing invalid XML containing multiple XML declarations may cause increa[…]
In today's post, I like to talk about C++26 and one of the probably most impactful features that have been added to the working draft. While C++26 is still some months away from official completion, since the WG21 summer meeting in June we all[…]
Developing a C Compiler in MoonBit
Ruby 3.4.6 has been released.
This is a routine update that includes bug fixes.
Please refer to the release notes on GitHub for further details.
Release Schedule
We intend to release the latest stable Ruby version (currently Ruby 3.4) every t[…]
Help shape the future of Go
Previously, we discussed how to write our own formatter and finished with a relatively simple solution for printing a struct called ProgrammingLanguage. Today, we’ll take it to the next level.
Format your own type (Part 2[…]
Your Favorite Perl Web Framework, Now Even Better
The Dancer Core Team project is proud to announce the release of Dancer2 2.0.0!
This release has been a long time coming, and while open source sometimes takes longer
than we’d like, we believe[…]
This is the 15th of the HARC Stack essays. Previous <= Don’t forget – HARC Stack combines HTMX with raku Air, Red and Cro to supply a fresh approach to web development. Two weeks ago, back before HARC Stack became the darling child of htt[…]
Registration is now open for CppCon 2025! The conference starts on September 13 and will be held in person in Aurora, CO. To whet your appetite for this year’s conference, we’re posting some upcoming talks that you will be able t[…]
This document provides visual dictionaries for the interpretation of graph-plots of LLM-graphs.
Matrix Multiplication on Blackwell: Part 3 - The Optimizations Behind 85% of SOTA Performance
Registration is now open for CppCon 2025! The conference starts on September 13 and will be held in person in Aurora, CO. To whet your appetite for this year’s conference, we’re posting some upcoming talks that you will be able t[…]
The 2025-09 mailing of new standards papers is now available.
WG21 Number
Title
Author
Document Date
Mailing Date
Previous Version
Subgroup
[…]
Meeting C++ is hosting a job fair in October online and planning a job fair in November in Berlin at Meeting C++ 2025!
Planning the next Meeting C++ job fairs
by Jens Weller
From the article:
The next Meeting C++ online job […]
I recently published two posts about how C++26 improves std::format and the related facilities. (If you missed them, here are Part 1 and Part 2). Now it’s time to explore how you can format your own types u[…]
Registration is now open for CppCon 2025! The conference starts on September 13 and will be held in person in Aurora, CO. To whet your appetite for this year’s conference, we’re posting some upcoming talks that you will be able t[…]
A full day of C++ in Pavia (Italy) on October 25:
C++ Day 2025
An event organized by the Italian C++ Community and SEA Vision.
Sponsors: SEA Vision, ELT, Sigeo (and others in the pipeline).
&n[…]
Registration is now open for CppCon 2025! The conference starts on September 13 and will be held in person in Aurora, CO. To whet your appetite for this year’s conference, we’re posting some upcoming talks that you will be able t[…]
Go 1.25 introduces experimental support for encoding/json/jsontext and encoding/json/v2 packages.
This is the 14th of the HARC Stack essays. Previous <= As if you didn’t know, HARC Stack combines HTMX with raku Air, Red and Cro to supply a fresh approach to web development. Hot news this week is that the Raku official website https://ra[…]
Matrix Multiplication on Blackwell: Part 2 - Using Hardware Features to Optimize Matmul
One of the "standard" things to do with an Agentic Artificial Intelligence (AI) system is to summarize
(large) texts using different Large Language Model (LLM) agents. This document illustrates how to specify an LLM graph for deriving comprehens[…]
Value type and bits pattern in MoonBit, 30% faster than Rust!
Community Newsletter for August 2025
Matrix Multiplication on Blackwell: Part 1 - Introduction
The Guilt
I consider myself successful.
I’m 45, with a sportscar, a house, a family, and a small business now 30 years old.
I made good decisions.
My car is 15-years old, my monitors are 20-years old, my chair is 25-years old, my desk is 25-y[…]
A discussion of testing asynchronous code and an exploration of the `testing/synctest` package. Based on the GopherCon Europe 2025 talk with the same title.
Modverse #50: Modular Platform 25.5, Community Meetups, and Mojo's Debut in the Stack Overflow Developer Survey
New GOMAXPROCS defaults in Go 1.25 improve behavior in containers.
Go 1.25 adds container-aware GOMAXPROCS, testing/synctest package, experimental GC, experimental encoding/json/v2, and more.
This is the 13th of the HARC Stack essays. Previous <= As if you didn’t know, HARC Stack combines HTMX with raku Air, Red and Cro to supply a fresh approach to web development. Well, Cro has an awesome, declarative way to set up forms in yo[…]
The Perl and Raku Foundation (TPRF) is thrilled to announce a substantial
$11,500 donation from SUSE, one of the world’s leading
enterprise Linux and cloud-native and AI solutions providers. This generous
contribution bolsters the Perl 5 Core […]
Modular Platform 25.5: Introducing Large Scale Batch Inference
This is the 12th of the HARC Stack essays. Previous <= By the way, HARC Stack combines HTMX with raku Air, Red and Cro to supply a fresh approach to web development. My favourite HTMX example is the Active Search. Just so cool to be able to d[…]
Today we are excited to announce the release of TypeScript 5.9! If you’re not familiar with TypeScript, it’s a language that builds on JavaScript by adding syntax for types. With types, TypeScript makes it possible to check your code to avoi[…]
Community Newsletter for June and July 2025
SF Compute and Modular Partner to Revolutionize AI Inference Economics
Introducing MoonBit Pilot: The Code Agent dedicated to the MoonBit toolchain
"Amelia's Sad Face" by donnierayjones is licensed under CC BY 2.0 .
MetaCPAN.org, the essential search engine for Perl’s
CPAN repository, has faced months of severe traffic issues that brought the
service to its knees with frequent 503 errors.[…]
This is the 11th of the HARC Stack essays. Previous <= HARC Stack combines HTMX with raku Air, Red and Cro to supply a fresh approach to web development. While the perennial Todo example is not one of those listed on the HTMX examples, we are[…]
Printing statistics to the
terminal
or plotting data extracted from FIT
files
is all well and good. One problem is that the feedback loops are long.
Sometimes questions are better answered by playing with the data directly.
Enter the Perl Data […]
Today we are excited to announce the Release Candidate (RC) of TypeScript 5.9! To get started using the Release Candidate, you can get it through npm with the following command: npm install -D typescript@rc Let’s take a look at what’s new in[…]
Ruby 3.3.9 has been released.
This release includes the following security fix of default gems:
CVE-2025-24294: Possible Denial of Service in resolv gem
and the following fixes for build issues:
GCC 15.1
Visual Studio 2022 Version 1[…]
Ruby 3.2.9 has been released.
This release includes the following security fixes:
CVE-2025-24294: Possible Denial of Service in resolv gem
CVE-2025-43857: DoS vulnerability in net-imap
and the following fixes for build issues:
GCC 1[…]
MoonBit Programming Language 1.0 Roadmap Preview
The Perl and Raku Foundation (TPRF) is delighted to announce a generous €10,000
donation from Proxmox Server Solutions GmbH, supporting the critical Perl 5
Core Maintenance Fund. Corporate partnerships play a critical role in
enabling TPRF to […]
New Aarch64 BackendAuthor: Andrew Kelley & Jacob YoungJacob upstreamed his new backend yesterday. 275 src/codegen/aarch64/Mir.zig
138 src/codegen/aarch64/abi.zig
11799 src/codegen/aarch64/encoding.zig
10981 src/codegen/aarch64/Sel[…]
Announcing Google Summer of Code 2025 selected projects
AI Agents for AWS Marketplace
Ruby 3.4.5 has been released.
This is a routine update that includes bug fixes and GCC 15 support. Please refer to the
release notes on GitHub for further details.
Release Schedule
We intend to release the latest stable Ruby version (currentl[…]
Go now has a built-in, native FIPS 140-3 compliant mode.
Modverse #49: Modular Platform 25.4, Modular 🤝 AMD, and Modular Hack Weekend
Today we are excited to announce the availability of TypeScript 5.9 Beta. To get started using the beta, you can get it through npm with the following command: npm install -D typescript@beta Let’s take a look at what’s new in TypeScript 5.9![…]
Adding type parameters to interface types is surprisingly powerful
Running WebAssembly-based MoonBit compiler using `rusty_v8`
Inside Modular Hack Weekend: Top Projects and Community Highlights
Lua 5.5.0 (beta) released
The beta version of Lua 5.5 has been released for testing.
Zig Roadmap 2026Author: Loris CroWe scheduled a new Zig SHOWTIME episode for July 2nd to talk with Andrew about the Zig roadmap for 2026.For more information check out https://zig.show/episodes/41/
Last
time, we
worked out how to extract, collate, and print statistics about the data
contained in a FIT file. Now we’re going to take the next logical step and
plot the time series data.
Start plotting with Gnu
Now that we’ve extracted dat[…]
FIT files record the activities of people using devices such as sports
watches and bike head units. Platforms such as Strava and Zwift understand
this now quasi-standard format. So does Perl! Here I discuss how to parse
FIT files and calculat[…]
A few weeks ago I was chatting with coralina and she linked me 4:19 of The Zipf Mystery but every time he repeats a word it loops.
It's an instance of a meme format I don't think I had seen before. The basic conceit is,
How is Modular Democratizing AI Compute? (Democratizing AI Compute, Part 11)
Hi! It's me again, the timotimo you may know & love from the Raku community.
I used to have a blog years ago when I was writing and posting reports for a TPF Grant for the Rakudo / MoarVM profilers, and some other stuff related to Rakudo and[…]
Modular 25.4: One Container, AMD and NVIDIA GPUs, No Lock-In
Parallel Self-Hosted Code GenerationAuthor: Matthew LuggLess than a week ago, we finally turned on the x86_64 backend by default for Debug builds on Linux and macOS. Today, we’ve got a big performance improvement to it: we’ve parallelized th[…]
Modular + AMD: Unleashing AI performance on AMD GPUs
Introducing Mammoth: Enterprise-Scale GenAI Deployments Made Simple
Self-Hosted x86 Backend is Now Default in Debug ModeAuthor: Andrew KelleyNow, when you target x86_64, by default, Zig will use its own x86 backend rather than using LLVM to lower a bitcode file to an object file.The default is not changed on Win[…]
I seldom release modules to CPAN; mainly because
there’s so much great stuff there already. An answer on StackOverflow
about pretty printing DBIx::Class result
sets got me thinking. I then
climbed onto the shoulders of several giants to crea[…]
Intro to the Zig Build System VideoAuthor: Loris CroI’ve released a few days ago a new video on YouTube where I show how to get started with the Zig build system for those who have not grokked it yet.In the video I show how to create a package[…]
In the previous
post,
we created a network close enough to reality so that finding routes between
stations was possible and sufficiently interesting. In this final post in
the series, we’re going to see how to handle indirect connections betw[…]
Lua 5.4.8 has been released. It fixes all known bugs in Lua 5.4.7.
SlapbirdAPM is a free-software observability platform tailor made for Perl web-applications. [ It is also a Perl web-application :^) ]
It has first class support for Plack, Mojo, Dancer2, and CGI. Slapbird provides developers with comprehensive
[…]
Markdown-Oriented Programming in MoonBit: Bridging Code and Documentation
Community Newsletter for May 2025
The Perl Toolchain Summit 2025
From May 1–4, 2025, the invite-only Perl Toolchain Summit (PTS) brought together in Leipzig, Germany, 33 of the ecosystem’s most active maintainers — and welcomed 6 first-timers — for four days of uninterr[…]
Modverse #48: Modular Platform 25.3, MAX AI Kernels, and the Modular GPU Kernel Hackathon
Exploring Metaprogramming in Mojo
The previous
post
focused on adding more lines to the network and adding colour to those
lines. This time, we’ll add another line, but now the map will better
match reality. This will allow us to start finding routes between stations
on the […]
MoonBit Programming Language: Born for AI and Large Systems, Seamlessly Integrating Python
This past March we unveiled our efforts to port the TypeScript compiler and toolset to native code. This port has achieved a 10x speed-up on most projects – not just by using a natively-compiled language (Go), but also through using shared mem[…]
C math library functions, such as exp or sin, are not guaranteed to be “precise”. The results might be slightly different on different platforms. A recent change in mingw-w64 v12, which is a core dependency of compilers we use on Windows (bo[…]
FreeBSD and NetBSD Cross-Compilation SupportAuthor: Alex Rønne PetersenPull requests #23835 and #23913 have now been merged. This means that, using zig cc or zig build, you can now build binaries targeting FreeBSD 14.0.0+ and NetBSD 10.1+ from […]
Modular GPU Kernel Hackathon Highlights: Innovation, Community, & Mojo🔥
Introducing virtual package in MoonBit
Modular’s bet to break out of the Matrix (Democratizing AI Compute, Part 10)
Modular Platform 25.3: 450K+ Lines of Open Source Code and pip Packaging
Community Newsletter for April 2025
MoonBit Native on ESP32-C3: With C-Level Performance
C math library functions, such as exp or sin, are heavily used by R and packages. The C standard doesn’t require these functions to be “precise”. Instead, there is room for performance optimizations causing a reasonable amount of inaccurac[…]
A New, Simpler License for MAX and Mojo
Why do HW companies struggle to build AI software? (Democratizing AI Compute, Part 9)
The Nim Team is happy to announce two releases:
version 2.2.4, a second patch release for the latest stable version
version 2.0.16, an eight patch release for Nim 2.0
Nim v2.2.4 comes two and a half months after the v2.2.2 release and it […]
Modverse #47: MAX 25.2 and an evening of GPU programming at Modular HQ
Introduce The Elm Architecture to MoonBit: build robust web app with simple principles
The HLS Team is proud to announce the new release of the Haskell Language Server 2.10.0.0!
Website updated to Zine 0.10.0Author: Loris CroThe official Zig website now builds using standalone Zine. A lot of code got rewritten so if you see regressions on the website, please open an issue. Regressions only please, thanks!Normally a Zine[…]
What about the MLIR compiler infrastructure? (Democratizing AI Compute, Part 8)
Highlights for Quarter 1 of 2025
Community Newsletter for March 2025
What is stability? What has the Haskell Foundation Stability Working Group been working on?
What about Triton and Python eDSLs? (Democratizing AI Compute, Part 7)
MAX 25.2: Unleash the power of your H200's–without CUDA!
Erlang.org webpage will be down due to an planned power outage at the site.
What about TVM, XLA, and AI compilers? (Democratizing AI Compute, Part 6)
Today I’m excited to announce the next steps we’re taking to radically improve TypeScript performance. The core value proposition of TypeScript is an excellent developer experience. As your codebase grows, so does the value of TypeScript its[…]
Announcing LLVM backend for MoonBit
What about OpenCL and CUDA C++ alternatives? (Democratizing AI Compute, Part 5)
Release Tag Status UpdateThe 0.14.0 release is coming shortly. We didn’t get the release notes done yet, and I’m calling it a day.Tomorrow morning I’ll make the tag, kick off the CI, and then work to finish the release notes while it build[…]
Community Newsletter for February 2025
Today we’re excited to announce the release of TypeScript 5.8! If you’re not familiar with TypeScript, it’s a language that builds on top of JavaScript by adding syntax for types. Writing types in our code allows us to explain intent and h[…]
How to Use Moonpad on Your Website
Modverse #46: MAX 25.1, MAX Builds, and Democratizing AI Compute
Improved UBSan Error MessagesAuthor: David RubinLately, I’ve been extensively working with C interop, and one thing that’s been sorely missing is clear error messages from UBSan. When compiling C with zig cc, Zig provides better defaults, in[…]
CUDA is the incumbent, but is it any good? (Democratizing AI Compute, Part 4)
MAX 25.1 - Introducing MAX Builds
Profiling MoonBit-Generated Wasm using Chrome
Today we are excited to announce the Release Candidate (RC) of TypeScript 5.8! To get started using the Release Candidate, you can get it through npm with the following command: npm install -D typescript@rc Let’s take a look at what’s new in[…]
How did CUDA succeed? (Democratizing AI Compute, Part 3)
Thoughts and advice on starting your own Julia community workgroup.
No-Libc Zig Now Outperforms Glibc ZigAuthor: Andrew KelleyAlright, I know I’m supposed to be focused on issue triage and merging PRs for the upcoming release this month, but in my defense, I do some of my best work while procrastinating.Jokes […]
Paged Attention & Prefix Caching Now Available in MAX Serve
What exactly is “CUDA”? (Democratizing AI Compute, Part 2)
The Nim Team is happy to announce version 2.2.2, the first patch release for our stable release, Nim 2.2.
It comes four months after the 2.2.0 release and it contains 203 commits, bringing bugfixes and improvements.
If you’re still on Nim 1.[…]
Community Newsletter for January 2025
DeepSeek's Impact on AI (Democratizing AI Compute, Part 1)
Agentic Building Blocks: Creating AI Agents with MAX Serve and OpenAI Function Calling
Today we are excited to announce the availability of TypeScript 5.8 Beta. To get started using the beta, you can get it through npm with the following command: npm install -D typescript@beta Let’s take a look at what’s new in TypeScript 5.8![…]
R and R packages on Windows, if they include native code, are built using compiler toolchain and libraries from Rtools. There is always a specific version of Rtools for a given version of R. Rtools44 is used for R 4.4.x, and hence R 4.4.x and pa[…]
LLDB Fork for ZigAuthor: Alex Rønne PetersenOne of the major things Jacob has been working on is good debugging support for Zig. This includes an LLDB fork with enhancements for the Zig language, and is primarily intended for use with Zig’s s[…]
Use MAX with Open WebUI for RAG and Web Search
The Nim community survey 2024 has been open for two months, and we have received 367 responses – less than in previous years, but we’ll still try to draw conclusions about our users and their habits.
Before we go into details, we would like […]
Consuming a High Performance Wasm Library in MoonBit from JavaScript
GHC since version 9.8 allows us to create callbacks from JS to Haskell code, which enables us to create full-fledged browser apps.
This article shows how to use the JS backend with foreign component libraries.
To conclude the year 2024, the GHC and Cabal teams are happy to announce the releases of GHC 9.12 and cabal 3.14.
The history of the SatelliteToolbox.jl ecosystem
Community Newsletter for December 2024
The Nim team is happy to announce Nim version 2.0.14, our seventh patch release for Nim 2.0,
for our users who haven’t switched yet to Nim 2.2.
Version 2.0.14 contains 40 commits, and it brings several improvements to Nim 2.0.12, released two[…]
The Cabal Manual now has a guide on how to collect performance statistics of Haskell applications.
Evaluating Llama Guard with MAX 24.6 and Hugging Face
MoonBit compiler is available on GitHub
Exposed EPMD: A Hidden Security Risk for RabbitMQ and the BEAM Ecosystem
MAX GPU: State of the Art Throughput on a New GenAI platform
Introducing MAX 24.6: A GPU Native Generative AI Platform
Build a Continuous Chat Interface with Llama 3 and MAX Serve
Community Newsletter for November 2024
For conversion of strings from a given character encoding to another, R uses iconv, a function defined by POSIX. It is available on Linux and macOS with the operating system and for Windows, R ships with a slightly customized version of win_icon[…]
We are proud to announce the launch of the official
2024 Nim Community Survey!
No matter whether you use Nim today, have used Nim previously, or never used Nim before;
we want to know your opinions.
Your feedback will help the Nim project under[…]
Highlights for December - Interview with Karl Zylinski
Most R users would sometimes install or update R packages and hence are impacted by how long this takes. The parts of package installation that take potentially longest have already been addressed by support for binary packages and parallel inst[…]
Today we excited to announce the availability of TypeScript 5.7! If you’re not familiar with TypeScript, it’s a language that builds on JavaScript by adding syntax for type declarations and annotations. This syntax can be used by the TypeScr[…]
The Haskell.org committee is pleased to present the results of Haskell's
participation in the Google Summer of Code 2024. This marks our 13th time
taking part in GSoC!
I published my new book: A Language a Day, which is a collection of brief overviews to 21 programming languages.
The Nim team is happy to announce Nim version 2.0.12, our sixth patch release for Nim 2.0,
for our users who haven’t switched yet to Nim 2.2.
Version 2.0.12 is a small release, containing just 24 commits, but it brings several improvements to[…]
This year, there was another London Perl Workshop 2024, I decided to attend it.
Understanding SIMD: Infinite Complexity of Trivial Problems
NimConf 2024 will take place on October 26th, starting from 11:00 UTC.
It will have the same format as in previous incarnations, and it will be streamed for free via YouTube.
There will be 10 talks on various subjects
and we’re sure you’ll[…]
Community Spotlight: Writing Mojo with Cursor
Highlights of the Julia 1.11 release.
Community Newsletter for October 2024
Community Newsletter for September 2024
The Nim Team is happy to announce two releases:
version 2.2.0, our new stable release
version 2.0.10, a patch release for Nim 2.0
Nim v2.2.0 is a continuation of our efforts to improve Nim 2: it contains almost 1000 new commits, bringing […]
Highlights for October - Interview with Crews
JuliaCon Global 2025 and JuliaCon 2024 Wrap-Up Blogpost.
The playground (play.haskell.org) allows you to run single-file Haskell programs right from your browser, and share them with others.
In this post, I will introduce the playground and give some implementation details.
The JavaScript world has been battling for low bundle size from the very beginning.
It is now our turn to enter the battle
In the Haddock team, part of our mission is to help with writing documentation, and promoting best practices. This article will help you write the best documentation you can!
MAX 24.5 - With SOTA CPU Performance for Llama 3.1
Highlights for September - Interview with Marshall B
When using R interactively via a console, one edits a line of input, confirms it by pressing ENTER, then R parses the line, evaluates it, prints the output and lets the user enter another line. This is also known as REPL (Read-Eval-Print-Loop).
[…]
Highlights for August - Interview with Feoramund
Announcing stack-pr: an open source tool for managing stacked PRs on GitHub
Develop locally, deploy globally
Bring your own PyTorch model
A brief guide to the Mojo n-body example
The Nim team is happy to announce Nim version 2.0.8, our fourth patch release for Nim 2.0.
Version 2.0.8 is a small release, containing just 20 commits, but it brings important improvements to Nim 2.0.6, released 10 days ago.
Major improvement[…]
Highlights for July - Showcasing 4 Blogs Entries
Lua 5.4.7 has been released. It fixes all known bugs in Lua 5.4.6.
What's new in MAX 24.4? MAX on macOS, fast local Llama3, native quantization and GGUF support
What’s new in Mojo 24.4? Improved collections, new traits, os module features and core language enhancements
MAX 24.4 - Introducing quantization APIs and MAX on macOS
Deep dive into ownership in Mojo
Highlights for June - Showcasing 4 Community Projects
What ownership is really about: a mental model approach
The question has been raised, how to get named arguments into sub EXPORT via a use-statement. The ever helpful raiph provided an answer, which in turn left me with the question, why he didn’t just use a Capture to move the data around. Well, b[…]
Fast⚡k-means clustering in Mojo🔥: a guide to porting Python to Mojo🔥 for accelerated k-means clustering
Generalizing Support for Functional OOP in R R has built-in support for two functional Object Oriented Programming (OOP) systems: S3 and S4, corresponding to the third and fourth version of the S language, respectively. The two systems are large[…]
This is a brief statement on behalf or the R Core Team on the serialization bug recently reported by the cybersecurity form HiddenLayer. The bug has been reported as a vulnerability with id CVE-2024-27322.
R is a full-featured language that incl[…]
Developer Voices: Deep Dive with Chris Lattner on Mojo
GSoC and JSoC Fellows and Projects announced for 2024.
What’s New in Mojo 24.3: Community Contributions, Pythonic Collections and Core Language Enhancements
MAX 24.3 - Introducing MAX Engine Extensibility
Highlights for May - Showcasing 5 Community Projects
R 4.4.0, to be released tomorrow, comes with experimental native support for 64-bit ARM Windows machines (aarch64, arm64). Rtools44 with native support for the platform has been released at the beginning of March.
The effort to add Windows/aarch[…]
Row-major vs. Column-major Matrices: A Performance Analysis in Mojo and NumPy
What’s new in Mojo 24.2: Mojo Nightly, Enhanced Python Interop, OSS stdlib and more
Highlights for April - Showcasing 2 Community Projects
The Next Big Step in Mojo🔥 Open Source
MAX 24.2 is Here! What’s New?
Semantic Search with MAX Engine
How to Be Confident in Your Performance Benchmarking
Mojo🔥 ❤️ Pi 🥧: Approximating Pi with Mojo🔥 using Monte Carlo methods
Evaluating MAX Engine inference accuracy on the ImageNet dataset
Highlights for March - Showcasing 4 Community Projects
MAX is here! What does that mean for Mojo🔥?
Getting started with MAX Developer Edition
Announcing MAX Developer Edition Preview
What are dunder methods? A guide in Mojo🔥
As the title states, I made Raku bigger because lol context (that’s how the Synopsis is calling **@) makes supporting feed operators fairly easy. I wonder if Larry added this syntax to Signature with that goal in mind. With PR#5532 the followi[…]
Having a flexible and powerful compiler library has been one of the stated goals of the D Language Foundation for some time now. This makes sense, as a proper compiler library will channel the efforts of contributors into building developer tool[…]
Mojo🔥 ♥️ Python: Calculating and plotting a Valentine’s day ♥️ using Mojo and Python
Mojo vs. Rust: what are the differences?
Highlights for February - Community Showcase Categorized
What is loop unrolling? How you can speed up Mojo🔥 code with @unroll
Mojo🔥 SDK v0.7 now available for download!
Mojo 🔥 lightning talk ⚡️ one language for all AI programming!
Highlights for January - Community Showcase Categorized
Highlights of the Julia 1.10 release.
Over on Reddit zeekar wasn’t too happy about Raku’s love of Seq. It’s immutability can be hindering indeed. I provided a solution I wasn’t happy with. It doesn’t DWIM and is anything but elegant. So while heavily digesting on my sofa ([…]
The mailing list has moved to Google Groups.
Modular to bring NVIDIA Accelerated Computing to the MAX Platform
Modular partners with Amazon Web Services (AWS) to bring MAX to AWS services
Key announcements from ModCon 2023
Mojo 🔥 Traits Have Arrived!
Highlights for December - Community Showcase Categorized
Mojo 🔥 Advent of Code 2023
ModCon 2023 sessions you don’t want to miss!
What’s new in Mojo SDK v0.5?
According to Larry, laziness is a programmers virtue. The best way to be lazy is having somebody else do it. By my request, SmokeMachine kindly did so. This is not fair. We both should have been lazy and offload the burden to the CORE-team. Plea[…]
Welcome Mostafa Hagog to Modular
Highlights for November - Community Showcase Categorized
My version of JSON::Class is now released. The previous post explains why does this worth a note.
Lately, some unhappiness has popped up about Range and it’s incomplete numericaliness. Having just one blogpost about it is clearly not enough, given how big Ranges can be. I don’t quite agree with Rakudo here. There are clearly ∞ elements[…]
Mojo🔥 is now available on Mac
This will be a short one. I have recently released a family of WWW::GCloud modules for accessing Google Cloud services. Their REST API is, apparently, JSON-based. So, I made use of the existing JSON::Class. Unfortunately, it was missing some fea[…]
Mojo 🔥 - A systems programming language presented at LLVM 2023
Community Spotlight: How I built llama2.🔥 by Aydyn Tairov
Have you ever looked at your code from five years ago and had to study it to figure out what it was doing? And the further back in time you look, the worse it gets? Pity me, who is still maintaining code I wrote over 40 years ago. This article i[…]
How to setup a Mojo🔥 development environment with Docker containers
Solving the task from The Weekly Challenge 233, where you need to sort numbers by two dimensions.
A solution to the task 1 of the Weekly Challenge 233, where the goal is to find the words constructed from the same letters.
Highlights for September - Community Showcase Categorized
At WWDC 2023 earlier this year, Apple announced it completed transition from Intel to 64-bit ARM processors (Apple Silicon): no new machines with Intel processors will be offered. This was three years after the transition has been announced at W[…]
Two tasks from the Weekly Challenge 231 solved in the Raku programming language.
Highlights for August - Community Showcase Categorized
I was always concerned about making things easier. No, not this way. A technology must be easy to start with, but also be easy in accessing its advanced or fine-tunable features. Let’s have an example of the former.
PSA: Thread-local state is no longer recommended; Common misconceptions about threadid() and nthreads()
I have managed to finish one more article in the Advanced Raku For Beginners series, this time about type and object composition in Raku.
Once, long ago, coincidentally a few people were asking the same question: how do I get a method object of a class?
Highlights for July - Package News - Community Showcase - 3 Jam Games!
The first Raku Core Summit, a gathering of folks who work on “core” Raku things, was held on the first weekend of June, and I was one of those invited to attend. It’s certainly the case that I’ve been a … Continue reading →
Highlights from May & June - Package / Binding News - Primeagen Interview with GingerBill - Discord Showcase
When using R interactively from the command line, one can interrupt the current computionation using Ctrl+C key combination and enter a new command. This works both on Unix terminal and on Windows console in Rterm. Such computation may be implem[…]
Highlights of the Julia 1.9 release.
Lua 5.4.6 has been released. It fixes all known bugs in Lua 5.4.5.
Lua 5.4.5 has been released. It fixes all known bugs in Lua 5.4.4.
Release Note Highlights & Interview with phwo, author of Handmade Games
When testing development versions of Rtools for Windows, I’ve ran into strange failures of several CRAN packages where R could not find, read from or write to some files. The files should have been in temporary directories which get automatica[…]
The first entry in this series shows how to use the new DIP1000 rules to have slices and pointers refer to the stack, all while being memory safe. The second entry in this series teaches about the ref storage class and how DIP1000 works with agg[…]
Release Note Highlights & Interview with Cloin, author of Spall
From version 4.2.0 released in April 2022, R on Windows uses UTF-8 as the native encoding via UCRT as the new C Windows runtime. The transition for R and its packages has been a non-trivial effort which took several years. This post gives a summ[…]
Release Note Highlights & Interview with Skytrias, author of Todool
This post is a story of a bug in Rterm, the console R front-end on Windows, which has been bugging me for several years, but only two weeks ago it showed up unwarily so that I could trace it down and fix.
The terminal sometimes crashed during co[…]
One of the strengths of R is its ability to help in producing documents. Sweave and knitr can work with .Rnw files, evaluating and automatically inserting the results of R code to produce a LaTeX document in a .tex file. We call this “preproce[…]
In R, a string can be declared to be in bytes encoding. According to ?Encoding, it must be a non-ASCII string which should be manipulated as bytes and never converted to a character encoding (e.g. Latin 1, UTF-8). This text summarizes recen[…]
DIP1000: Memory Safety in a Modern System Programming Language Pt. 2 The previous entry in this series shows how to use the new DIP1000 rules to have slices and pointers refer to the stack, all while being memory safe. But D can refer to the sta[…]
Highlights of the Julia 1.8 release.
If you use R you may have wondered if there are ways you can contribute to making R better. An important feature of R that encourages its use around the world is the support for localization. This enables R’s messages, warnings and errors, as […]
Regular expression operations in R, such as grep or gsub, sometimes have significant performance overheads due to encoding conversions.
Some R code tries to mitigate this by ignoring input encodings and pretending it is fine to work on individua[…]
The R blog moves to https://blog.r-project.org, a more prominent location, after 37 blog posts (some of them perhaps surprisingly detailed) and a bit over 4 years.
This blog site has been started under https://developer.r-project.org in March 20[…]
Using \x in string literals is almost always a bad idea, but using it in regular expressions is particularly dangerous.
Consider this “don’t do” example in R 4.2.1 or earlier:
text <- "Hello\u00a0R" gsub("\xa0", "", text) a0 is the code[…]
Memory safety needs no checks D is both a garbage-collected programming language and an efficient raw memory access language. Modern high-level languages like D are memory safe, preventing users from accidently reading or writing to unused memor[…]
R 4.2.1 is scheduled to be released next week with a number of Windows-specific fixes. All Windows R users currently using R 4.2.0 should upgrade to R 4.2.1. This text has more details on some of the fixes.
R 4.2.0 on Windows came with a signifi[…]
Support for pattern fills was added to the R graphics engine in R version 4.1.0, with an R interface via the ‘grid’ package.
library(grid) For example, the following code defines a linear gradient that varies horizontally from red to white a[…]
May was a busy month in D land. Early on, a major milestone release of GDC, the GCC-based D compiler, hit the virtual shelves. It was followed in middle of the month by the release of D 2.100.0 along with a DMD release, the reference D compiler,[…]
Doing small network scientific machine learning in Julia 5x faster than PyTorch ...
The upcoming release of R (version 4.2.0) features several enhancements to the HTML help system.
The most noticeable features are that LaTeX-like mathematical equations in help pages are now typeset using either KaTeX or MathJax, and usage and e[…]
The first three months of 2022 brought some major milestones: Symmetry Autumn of Code 2021 came to an end on January 15, but the judges didn’t render a decision until the middle of February. And what a surprise it was! The D Language Foundatio[…]
Templates have been enormously profitable for the D programming language. They allow the programmer to generate efficient and correct code at compile time. Long gone are the days of preprocessor macros or handwritten, per-type data structures. D[…]
The Lua mailing list is now 25 years old.
This article was originally published in Russian by Grigorii Smorkalov. It was translated to English for the D Blog by Georgy Markov and lightly revised from the original by Michael Parker. This is the fourth year I’m teaching my D Programming[…]
10 years ago today, we published 'Why we Created Julia' ...
The Eilmer flow simulation code is the main simulation program in our collection of gas dynamics simulation tools. An example of its application is shown here with the simulation of the hypersonic flow over the BoLT-II research vehicle that is t[…]
Lua 5.4.4 has been released. It fixes all known bugs in Lua 5.4.3.
A number of new graphics features have been added to the R graphics engine in the development version of R (to become version 4.2.0):
groups, compositing operators, affine transformations, stroking and filling paths, and luminance masks. This ha[…]
DTable – an early performance assessment of a new distributed table implementation
R 4.2 for Windows will support UTF-8 as native encoding, which will be a major improvement in encoding support, allowing Windows R users to work with international text and data.
This new feature will require at least Windows 10 (version 1903) o[…]
UPDATE: (2023-05-18) The behaviour of compositing operators was modified in R version 4.3.0 (affecting the “clear” and “source” operators). The examples in this post have been updated so that they produce the same output (just using a di[…]
Some highlights of the Julia 1.7 release.
Composability in Julia: Implementing Deep Equilibrium Models via Neural ODEs
Around 18 months ago, I set about working on the largest set of architectural changes that Raku runtime MoarVM has seen since its inception. The work was most directly triggered by the realization that we had no good way to … Continue reading →
Julia User & Developer Survey 2021
Simulation of a swimming dogfish shark
Code, docs, and tests: what's in the General registry?
JuliaCon 2021, the largest Julia Programming event in history
If you use R you may have wondered if there are ways you can contribute to making R better. This is another post on how you might help (Reviewing Bug Reports was the first).
This post is about helping with testing of pre-release versions of R.
M[…]
Support for multi-byte characters and hence non-European languages in RTerm, the console-based front-end to R on Windows, has been improved. It is now possible to edit text including multi-byte and multi-width characters supported by the current[…]
I recently wrote about the new MoarVM dispatch mechanism, and in that post noted that I still had a good bit of Raku’s multiple dispatch semantics left to implement in terms of it. Since then, I’ve made a decent amount of … Continue reading →
Google Season of Docs 2020-2021 Wrap-Up.
Lua 5.4.3 has been released. It fixes all known bugs in Lua 5.4.2.
Some highlights of the Julia 1.6 release.
Microsoft provides a free Windows 10 virtual machine for testing. Package maintainers working on Linux and MacOS can use it to test their packages on Windows. See instructions on how to set up the machine automatically for checking R packages.
T[…]
My goodness, it appears I’m writing my first Raku internals blog post in over two years. Of course, two years ago it wasn’t even called Raku. Anyway, without further ado, let’s get on with this shared brainache. What is dispatch? … Continue reading →
A new, experimental, build of R for Windows is available, its main aim being to support the UTF-8 encoding and especially non-European languages. Check results for CRAN packages are now available on their CRAN results pages. Please help by revie[…]
Apache Arrow Support in Julia
A Look Back At The 2020 Industry Julia Users Contributhon
Tutorial on precompilation
Lua 5.4.2 has been released. It fixes all known bugs in Lua 5.4.1.
At WWDC 2020 earlier this year, Apple announced a transition from Intel to ARM-based processors in their laptops. This blog is about the prospects of when R will work on that platform, based on experimentation on a developer machine running A12Z[…]
Roberto talks live about Lua. In Portuguese.
Lua 5.4.1 has been released. It fixes all known bugs in Lua 5.4.0.
I’d like to thank everyone who voted for me in the recent Raku Steering Council elections. By this point, I’ve been working on the language for well over a decade, first to help turn a language design I found fascinating … Continue reading →
Lua 5.3.6 has been released. It fixes all known bugs in Lua 5.3.5.
The story of debugging a mysterious Julia segfault.
Within private companies, it can be difficult to smoothly transition internal code into high quality open-source contributions. At JuliaCon 2020, industry Julia users came together to discuss how to maximize their impact in the Julia ecosystem.
GSoC & JSoC 2020 Wrap-Up.
Julia runs fast, but suffers from latency due to compilation. This post analyzes one source of excess compilation, tools for detecting and eliminating its causes, and the impact this effort has had on latency.
This year, 2,565 Julia users and developers participated in the second annual Julia User and Developer Survey.
Julia version 1.5 has been released, featuring many performance improvements and new capabilities.
R-devel-win.exe is an experimental installer of R, set up to download experimental binary builds of CRAN packages. It sets UTF-8 as the current default encoding on Windows (Windows 10 November 2019 release or newer). 92% of CRAN packages are sup[…]
Support for gradient fills, pattern fills, clipping paths and masks has been added to the R graphics engine (in the development version of R, which will probably become R version 4.1.0).
An R-level interface for these new features has been added[…]
The first release of Lua 5.4 is now ready
The Lua Workshop 2021 will be held in Freiburg, Germany.
UPDATE (2020-11-18): canClip = NA_LOGICAL has been replaced by deviceClip = TRUE
The R graphics engine performs some clipping of output regardless of whether the graphics device it is sending output to can perform clipping itself. For example, o[…]
Sometimes it is useful to test R on unusual platforms, even when the expected number of users is not large at the moment. It is better to be ready when a new platform arrives or becomes more widely used, it may be easier to find some bugs on one[…]
GSoC and JSoC 2020 Project List
Julia 1.5 is gaining a cool new bug reporting capability, leveraging mozilla's rr project to automatically create fully-reproducible bug reports
R internally allows strings to be represented in the current native encoding, in UTF-8 and in Latin 1. When interacting with the operating system or external libraries, all these representations have to be converted to native encoding. On Linux […]
The symbol font When drawing text in R graphics, we can specify the font “family” to use, e.g., a generic family like "sans" or a specific family like "Helvetica", and we can specify the font “face” to use, e.g., plain, bold, or italic. […]
One of the main downsides to the ‘grid’ graphics package is that it is slow. And that makes some important packages that depend on ‘grid’, like ‘ggplot2’, slow. For example, the scatterplots shown below are roughly equivalent, but on[…]
Starting up a PSOCK cluster is not fast. In R 3.6 on just a few years old laptop with 8 logical cores, running Windows, it takes about 1.7s to start a cluster with 8 nodes:
library(parallel); system.time(cl <- makePSOCKcluster(8)) A good desi[…]
Since its inception, R has, at least by default, converted (character) strings to factors when creating data frames directly with data.frame() or as the result of using read.table() variants to read in tabular data. Quite likely, this will soon […]
Over the last couple of months, 212 young people have completed over 690 tasks using Julia as part of the Google Code-In program.
The Lua Workshop 2020 will be held in Freiburg, Germany, on Oct 12.
Yao.jl - Differentiable Quantum Programming In Julia
为 Julia 包设计的可靠、可复现的二进制工件系统
Just a quick update and note of thanks to all who have responded to our blog post on 2019-10-09 and helped with reviewing and resolving bug reports. Thanks to your help the pace at which bugs have been resolved has increased nicely since the dat[…]
UPDATE 2019-12-03: Following feedback, the new default palette has been tweaked so that the new “magenta” is a little redder and darker and the new “yellow” is a little lighter and brighter. The former is to improve the discriminability […]
Over the past few months, we have been iterating on and refining a design for Pkg in Julia 1.3+ to reason about binary objects that are not Julia packages. While the motivating application for this work has been improving the installation exper[…]
short lines !! -- Historical relict: R matrix is not an array In a recent discussion on the R-devel mailing list, in a thread started on July 8, head.matrix can return 1000s of columns – limit to n or add new argument? Michael Chirico and then[…]
Last time I said "just a little bit of work on the heap snapshots should result in a useful tool. Here's my report for the first useful pieces of the Heap Snapshot UI!
Lua 5.4.0 (beta) released
The beta version of Lua 5.4 has been released for testing.
If you use R you may have wondered if there are ways you can contribute to making R better. This is the first in several posts on how you might help. This post is about helping to review and resolve bugs reported on the R bug tracker.
Urgent bug[…]
This is an update on my previous post from May.
A number of things changed since: GFortran started adopting a fix that by default prevents optimizations which break code calling BLAS/LAPACK functions from C without hidden length arguments. R has[…]
Profiling tools are awesome. They let us see what actually is affecting our program performance. Profiling tools also are terrible. They lie to us and give us confusing information. They also have some surprisingly new developments: brendangregg[…]
Over the last months I have worked on the heap snapshot profiler, and now there's also things to see in moarperf's browser UI.
从事软件开发的行家里手们对版本发布流程与节奏如此了若指掌,以至于他们将其精髓内化(internalize)并以为人人都懂得这些“浅显的道理”。可是事实恰好相反,外行一眼望去如同雾里看花。所以为了整个Julia社区,乃至于其它编程语言社区,我觉得有必要将Julia的开发过程白纸黑字地写下来。在本文中,我将阐述...
A Julia workshop in China was hosted by JuliaCN in Beijing on Aug 24, 2019. This is the 5th Julia workshop in China hosted by JuliaCN since 2016. We thank the Julia community and our kind sponsors: Colorful Clouds, Microsoft, Swarma club, and Sy[…]
JuliaCN在8月24日,中国北京举办了自2016以来第五次Julia会议。我们非常感谢Julia社区对本次活动的支持, 以及彩云科技, 微软中国, 集智俱乐部, 机器之心对本次活动的大力支持。本次活动有100余人注册,实到50余人。 线上直播在线人数达1600余人。
Julia’s Release Process | People involved in the day-to-day development of a project tend to become so familiar with its rhythm and process that they internalize it and it feels like everyone must just know how each stage unfolds. Of course, f[…]
At the core of the S3 object system as introduced in the White Book lies the idea that (S3) methods are ordinary functions that follow the GEN.CLS naming convention (with GEN.default as a final fallback). In the initial R implementation of this […]
Julia User and Developer Survey 2019 | We conducted the first annual Julia User & Developer Survey in June, and the results were presented by Viral Shah at JuliaCon on July 23....
Julia将支持可组合的多线程并行机制 | 摩尔定律带来的免费性能提升(free lunch) free lunch 几近结束,...
Announcing composable multi-threaded parallelism in Julia | Software performance depends more and more on exploiting multiple processor cores....
Hello @DiffEqBot | Hi! Today we all got a new member to the DiffEq family. Say hi to our own DiffEqBot (https://github.com/DiffEqBot) - A bot which helps run benchmarks and compares with the current master of a given package. It also generates a[…]
A Summer of Julia 2019 | Every summer, we welcome a large group of students working on Julia and its packages via the Google Summer of Code program....
MoarVM is getting a new subsystem that allows users to programmatically configure specific parts of the runtime, such as what parts of the program the profiler should measure.
Recent version of the GNU Fortran compiler (7, 8, 9) include optimizations that break interoperability between C and Fortran code with BLAS/LAPACK. The compiled code of BLAS/LAPACK corrupts stack, often resulting in crashes. This impacts R, R pa[…]
Beyond machine learning pipelines with MLJ | - learning curves (from examples/random_forest.jl)...
This post presents the most common PROTECT bugs present in packages, based on manual inspection of ~100 remaining CRAN packages with reports from rchk.
Background Any C/C++ code interacting with R, both inside R itself and in packages, needs to […]
DiffEqFlux.jl – Julia 的神經微分方程套件 | 在這篇文章中,我們將會展示在 Julia 中使用微分方程解算器(DiffEq solver)搭配神經網路有多麼簡單、有效而且穩定。...
Starting with R 3.6.0 a new hcl.colors() function is available in grDevices, providing a wide range of HCL-based color palettes with much better perceptual properties than existing RGB/HSV-based palettes like rainbow(). An accompanying new hcl.p[…]
About 20% packages from CRAN and BIOC repositories include some native code and more than a half of those include some code in C++. This number is rather high given that the R API and runtime have been designed for C (or Fortran) and cannot be u[…]
A Julia interpreter and debugger | The authors are pleased to announce the release of a fully-featured...
Starting with R 3.6.0 the library() and require() functions allow more control over handling search path conflicts when packages are attached. The policy is controlled by the new conflicts.policy option. This post provides some background and de[…]
This text is about a new feature in R, staged installation of packages. It may be of interest to package authors and maintainers, and particularly to those who maintain packages that are affected.
The problem I often have to run checks for all C[…]
The Julia Project and Its Entities | There are a number of entities surrounding the Julia programming language. Understandably, many people are not entirely clear on what these groups are and what their relationship to each other is. It’s pret[…]
GSoC 2018 - Parallel Implementations of Graph Analysis Algorithms | This blog briefly summarises my GSoC 2018 project (Parallel Graph Development (https://summerofcode.withgoogle.com/archive/2018/projects/5193483178475520/)) and the results achi[…]
DiffEqFlux.jl – A Julia Library for Neural Differential Equations...
It wasn’t my primary goal to improve parser performance nor to measure it. I’ve been working on optimizations to reduce the runtime overhead of including source reference into packages (this is not done by default due to space and execution […]
In short, UNPROTECT_PTR is dangerous and should not be used. This text describes why and describes how to replace it, including mset-based functions that have been introduced as a substitute for situations when unprotection by value is really ne[…]
Building a Language and Compiler for Machine Learning | Since we originally proposed the need for a first-class language, compiler and ecosystem for machine learning (ML), there have been plenty of interesting developments in the field. Not only[…]
Historically R language allows conditions in if and while statements to be vectors (of length greater than one). The first element is used but the remaining elements are ignored, since November 2002 also with a warning (added by Brian Ripley). F[…]
How to get started with Julia 1.0's package manager | For those of you in the midst of transitioning or preparing to transition to Julia 1.0, I've made a short (less than 6 minutes) tutorial on the basics of the new package manager. This video i[…]
A portrait of JuliaCon 2018 | !JuliaCon2018 group photo (/assets/blog/2018-09-11-juliacon2018/JuliaCon2018groupphoto.jpg)...
The Julia Community Prizes, 2018 | The Julia Community Prizes celebrate the amazing set of scientists, developers and designers who have come together build such a strong and diverse ecosystem for numerical computing. Each of the four individual[…]
GSoC 2018 and Speech Recognition for the Flux Model Zoo: The Conclusion | Here we are on the other end of Google Summer of Code 2018. It has been a challenging and educational experience, and I wouldn't have it any other way. I am thankful to th[…]
GSoC 2018: Adding Newer Features and Speeding up Convolutions in Flux | Over the summer I have been working at improving the Computer Vision capabilities of Flux. My specific line of work was to add newer models to the Flux model-zoo, implement […]
Union-splitting: what it is, and why you should care | Among those who follow Julia's development closely, one of the (many) new features causing great excitement is something called "Union-splitting."...
Announcing the release of Julia 1.0. The much anticipated 1.0 release of Julia is the culmination of...
Julia 1.0 正式發佈 (Traditional Chinese) | 眾所期待的 Julia 語言 (https://julialang.org) 1.0 版是近十年的心血結晶。...
Julia 1.0 正式发布 (Simplified Chinese) | 备受期待的Julia语言 (https://julialang.org)的1.0版本积累了富有野心的程序员们的十年心血。...
La anticipada liberación de la versión 1.0 de...
GSoC 2018: Reinforcement Learning and Generative models using Flux | In this post I'm going to briefly summarize about the machine learning models I have worked on during this summer for GSoC. I worked towards enriching model zoo of Flux.jl (htt[…]
The Lua Workshop 2018 will be held in Kaunas, Lithuania, on Sep 6-7,
cortesy of CUJO.
Lua 5.3.5 has been released. It fixes all known bugs in Lua 5.3.4.
Writing Iterators in Julia 0.7 | This post originally appeared on the Invenia blog....
First-Class Statistical Missing Values Support in Julia 0.7 | The 0.7 release of Julia will soon introduce first-class support for statistical...
The second work version of Lua 5.4 has been released for testing.
Extensible broadcast fusion | Julia version 0.7 brings with it an exciting new feature: the ability to customize broadcast...
Tetris coming to Julia language for v1.0 | Good news, everyone! Starting v1.0, Tetris will be included in the standard library. This will allow you to play a round of Tetris while your code is busy running....
Some packages contain native code, which is linked to R dynamically in the form of dynamically loaded libraries (DLLs). Recently, R users started loading increasing numbers of packages; “workflow documents” are one source of this pattern. Th[…]
The first work version of Lua 5.4 has been released for testing.
Julia joins NumFOCUS in Google Summer of Code 2018 | The Julia project has participated in summer of code events since 2014, just two...
On this blogging site R developers share their experience, ideas and plans related to R core implementation. Technical details presented here might be useful for package developers and interesting for technically-minded R enthusiasts.
The blog p[…]
機器學習以及程式語言(Traditional Chinese) | > 任何足夠複雜的機器學習系統都包含一個特別設置、不符規範、充滿 bug 又緩慢實作的程式語言半成品。^greenspun ...
机器学习与编程语言 (Simplified Chinese) | > 任何足够复杂的机器学习系统,里面都拼凑了半个不规范,处处错误,且运行缓慢的编程语言。^greenspun ...
On Machine Learning and Programming Languages | > Any sufficiently complicated machine learning system contains an ad-hoc, informally-specified, bug-ridden, slow implementation of half of a programming language.^greenspun ...
GSoC 2017: Native Julia second order ODE and BVP solvers | My original GSoC project was about implementing native Julia solvers for solving boundary value problems (BVPs) that were determined from second order ordinary differential equations (OD[…]
NeuralNetDiffEq.jl: A Neural Network solver for ODEs | My GSoC 2017 project (https://summerofcode.withgoogle.com/projects/#5850956641075200) was to implement a package for Julia to solve Ordinary Differential Equations using Neural Networks....
Command interpolation for dummies | I've never been a big user of the command line. One could even say I actively avoided it!...
GSoC 2017 Project: Hamiltonian Indirect Inference | This is a writeup of my project for the Google Summer of Code 2017. The...
GSoC 2017: Parallelism in BioJulia | In this summer, I have worked on a project to develop tools that make BioJulia...
GSoC 2017: Efficient Discretizations of PDE Operators | This project is an attempt towards building a PDE solver for JuliaDiffEq using the Finite Difference Method (https://en.wikipedia.org/wiki/Finitedifferencemethod)(FDM) approach. We take up […]
GSoC 2017 Project: MCMC with flexible numbers of parameters | My original GSOC proposal (https://docs.google.com/document/d/1yY5VhucSRW4IHSDurvPsoSBeGQQLaqoyKyYKgVW0J8Q/edit) was to implement modify Mamba.jl to enable it to fit Crosscat, a gener[…]
GSoC 2017 : A Wrapper for the FEniCS Finite Element Toolbox | Throughout this Google Summer of Code project I, along with my mentors, aimed to create a Wrapper for the FEniCS Finite Element Toolbox in the Julia Language. Our work done can be fou[…]
After a perilous drive up a steep, narrow, winding road from Lake Geneva we arrived at an attractive Alpine village (Villars-sur-Ollon) to meet with fellow Perl Mongers in a small restaurant. There followed much talk and a little clandesti[…]
GSoC 2017: Documentation Browser for Juno | The aim of this GSoC project is to provide a convenient way to access documentation in the...
GSoC 2017: Implementing iterative solvers for numerical linear algebra | The central part of my GSoC project is about implementing the Jacobi-Davidson method natively in Julia, available in JacobiDavidson.jl (https://github.com/haampie/JacobiDav[…]
JuliaCon 2017 on the West Coast | ! (/assets/blog/2017-08-15-juliacon/juliacon.jpg)...
Creating domain-specific languages in Julia using macros | Since the beginning of Julia, it has been tempting to use macros to write domain-specific languages (DSLs), i.e. to extend Julia syntax to provide a simpler interface to create Julia obj[…]
The Lua Workshop 2017 will be held in San Francisco, CA, on Oct 16-17,
cortesy of Mashape.
The Lua web site now includes a page that highlights some products that use Lua.
Julia 0.6 Release Announcement | The Julia community is thrilled to announce the release of version 0.6.0 of the Julia language....
An article about Lua has appeared in The Hosting Blog: "Lua Founding Developer Shares the Scripting Language's Journey and Advantages for App Configuration and Data Management"
Julia available in Raspbian on the Raspberry Pi | Recently, Julia was accepted into the Raspbian (https://www.raspberrypi.org/downloads/raspbian/) distribution for the Raspberry Pi (https://raspberrypi.org). If you are running the latest Raspbia[…]
The book "Programming in Lua" (4rd edition) is now available as an e-book through Feisty Duck.
Upgrades to the REPL in Julia 0.6 | Since version 0.3, Julia has come with a command-line interface — a REPL (https://en.wikipedia.org/wiki/Read%E2%80%93eval%E2%80%93print_loop)...
Lua features in the "Inovan�as - Creations Brazilian style" exhibition at the Museum of Tomorrow in Rio.
Knowing where you are: custom array indices in Julia | Arrays are a crucial component of any programming language,...
Paper in SIAM Review: Julia - A Fresh Approach to Numerical Computing | Our paper, Julia: A Fresh Approach to Numerical Computing, was published in the prestigious SIAM Review (https://dx.doi.org/10.1137/141000671) in February 2017. While drafts[…]
Some fun with π in Julia | !pi (/assets/blog/2017-03-14-piday/pi.png) ^credit ...
Technical preview: Native GPU programming with CUDAnative.jl | could use Franklin's commands to allow this as variable?...
The Lua mailing list is now 20 years old.
Lua 5.3.4 has been released. It fixes all known bugs in Lua 5.3.3.
More Dots: Syntactic Loop Fusion in Julia | After a lengthy design process (https://github.com/JuliaLang/julia/issues/8450) and preliminary foundations in Julia 0.5 (/blog/2016-10-11-julia-0.5-highlights#vectorizedfunctioncalls), Julia 0.6 inclu[…]
At YAPC::EU 2010 in Pisa I received a business card with "Rakudo Star" and the date July 29, 2010 which was the date of the first release -- a week earlier with a countdown to 1200 UTC. I still have...
There is a Release Candidate for Rakudo Star 2016.11 (currently RC2) available at http://pl6anet.org/drop/ This includes binary installers for Windows and Mac. Usually Star is released about every three months but last month's release didn't inc[…]
The Lua Workshop 2016 held in San Francisco, CA, cortesy of Mashape.
Julia 0.5 Highlights | It introduces more transformative features than any release since the first official version....
Julia 0.5 Release Announcement | After over a year of development, the Julia community is proud to announce...
StructuredQueries.jl - A generic data manipulation framework | This post describes my work conducted this summer at the Julia Lab (https://julia.mit.edu/) to develop StructuredQueries.jl (https://github.com/davidagold/StructuredQueries.jl/), a g[…]
A Personal Perspective On JuliaCon 2016 | The gentle breeze brushed my face and the mild sunshine warmed an...
BioJulia 2016 - online sequence search, sequence demultiplexing, new readers and much more! | We are pleased to announce releasing...
The fourth edition of "Programming in Lua" by Roberto Ierusalimschy has been published.
We turned up in Cluj via Wizz Air to probably one of the best pre YAPC parties ever located on three levels on the rooftop of Evozon’s plush city centre offices. We were well supplied with excellent wine, snacks and...
Announcing support for complex-domain linear programs in Convex.jl | I am pleased to announce the support for complex-domain linear programs (LPs) in Convex.jl. As one of the Google Summer of Code students under The Julia Language, I had propose[…]
Lua 5.3.3 has been released. It fixes all known bugs in Lua 5.3.2.
An invitation to JuliaCon 2016 | the annual meeting of the Julia programming language community....
BioJulia Project in 2016 | I am pleased to announce that the next phase of BioJulia is starting! In the next several months, I'm going to implement many crucial features for bioinformatics that will motivate you to use Julia and BioJulia librari[…]
Google Summer of Code 2016 | We’re pleased to announce that the Julia Language is taking part in this year’s Google Summer of Code (https://summerofcode.withgoogle.com). This means that interested students will have the opportunity to spend […]
Generalizing AbstractArrays: opportunities and challenges | Somewhat unusually, this blog post is future-looking: it mostly...
lua.org now accepts https connections.
The meeting first night was in a large beer bar in the centre of Nuremberg. We went back to the Best Western to find a certain exPumpkin already resident in the bar. Despite several of the well named Bitburgers we...
An introduction to ParallelAccelerator.jl | The High Performance Scripting team at Intel Labs recently released...
The Lua Workshop 2016 will be held in San Francisco, CA, on Oct 13-14,
cortesy of Mashape.
To me It seemed a particularly good FOSDEM for both for Perl5/6 and other talks although very crowded as usual and I didn't see the usual *BSD or Tor stalls. I was stuck by the statistic that there were about...
Multidimensional algorithms and iteration | Julia makes it easy to write elegant and...
Julia IDE work in Atom | > A PL designer used to be able to design some syntax and semantics for their language, implement a compiler, and then call it a day. – Sean McDirmid...
Lua 5.3.2 has been released. It fixes all known bugs in Lua 5.3.1.
JSoC 2015 project: DataStreams.jl | Data processing got ya down? Good news! The DataStreams.jl (https://github.com/JuliaDB/DataStreams.jl) package, er, framework, has arrived!...
JSoC 2015 project: Automatic Differentiation in Julia with ForwardDiff.jl | This summer, I've had the good fortune to be able to participate in the first ever Julia Summer of Code (JSoC), generously sponsored by the Gordon and Betty Moore Founda[…]
JSoC 2015 project: Interactive Visualizations in Julia with GLVisualize.jl | GLVisualize is an interactive visualization library that supports 2D and 3D rendering as well as building of basic GUIs. It's written entirely in Julia and OpenGL....
JSoC 2015 project: Efficient data structures and algorithms for sequence analysis in BioJulia | Thanks to a grant from the Gordon and Betty Moore Foundation, I've enjoyed the...
JSoC 2015 project: Interactive 3D Graphics in the Browser with Compose3D | Over the last three months, I've been working on Compose3D (https://github.com/rohitvarkey/Compose3D.jl),...
The Lua Workshop 2015 was held in Stockholm, Sweden, courtesy of King.
JSoC 2015 project: NullableArrays.jl | My project under the 2015 Julia Summer of Code program has been to develop the NullableArrays (https://github.com/JuliaStats/NullableArrays.jl) package, which provides the NullableArray data type and its re[…]
Julia 0.4 Release Announcement | We are pleased to announce the release of Julia 0.4.0. This release contains...
Lua 5.3.1 has been released. It fixes all known bugs in Lua 5.3.0.
JuliaCon 2015 Preview - Deep Learning, 3D Printing, Parallel Computing, and so much more | The first ever JuliaCon (https://juliacon.org/2014/) was held in Chicago last year and was a great success. JuliaCon is back for 2015, this time in Cambri[…]
Julia Summer of Code 2015 | Thanks to a generous grant from the Moore Foundation (https://www.moore.org/), we are happy to announce the 2015 Julia Summer of Code (JSoC) administered by NumFocus (https://numfocus.org/). We realize that this annou[…]
Lua 5.2.4 has been released. It fixes all known bugs in Lua 5.2.3.
At FOSDEM 2015, Larry announced that there will likely be a Perl 6 release candidate in 2015, possibly around the September timeframe. What we’re aiming for is concurrent publication of a language specification that has been implemented and te[…]
We have entered the final release-candidate cycle for Lua 5.3.0.
The beta version of Lua 5.3 has been released for testing.
This past weekend I attended the 2014 Austrian Perl Workshop and Hackathon in Salzburg, which turned out to be an excellent way for me to catch up on recent changes to Perl 6 and Rakudo. I also wanted to participate directly … Continue reading →
The Lua Workshop 2014, which is being held in Moscow, ends today.
Julia 0.3 Release Announcement | We are pleased to announce the release of Julia 0.3.0. This release contains numerous improvements across the...
JuliaCon 2014 Optimization Presentations | Iain Dunning and Joey Huchette are both doctoral students in the Massachusetts Institute of Technology Operations Research Center, where they study constrained continuous and combinatorial numerical opt[…]
JuliaCon 2014 Opening Session Presentations | Tim Holy is a Professor in the Department of Anatomy and Neurobiology at Washington University in St. Louis. He’s been involved with Julia development for over 2 years. In this presentation, Tim de[…]
The alpha version of Lua 5.3 has been released for testing.
The third work version of Lua 5.3 has been released for testing.
The Lua Workshop 2014 will be held in Moscow, Russia,
on September 13-14, 2014.
The second work version of Lua 5.3 has been released for testing.
The Lua 5.2 reference manual has been translated into Portuguese.
O manual de refer�ncia de Lua 5.2 foi traduzido para o portugu�s.
Lua 5.2.3 has been released. It fixes all known bugs in Lua 5.2.2.
Lua Workshop 2013 held in Toulouse, France,
as part of Le Capitole du Libre.
Fast Numeric Computation in Julia | Working on numerical problems daily, I have always dreamt of a language that provides an elegant interface while allowing me to write codes that run blazingly fast on large data sets. Julia is a language that […]
Roberto Ierusalimschy, chief architect of Lua, received the Scientific Merit Award of the Brazilian Computer Society for his work on Lua.
We commemorate 20 years of the first version of Lua today.
The Lua Workshop 2013 will be held in Toulouse, France,
on November 23-24, 2013,
as part of Le Capitole du Libre.
[This is a response to the Russian Perl Podcast transcribed by Peter Rabbitson and discussed at blogs.perl.org.] I found this translation and podcast to be interesting and useful, thanks to all who put it together. Since there seems to have[…]
Building GUIs with Julia, Tk, and Cairo, Part II | In this installment, we'll cover both low-level graphics (using Cairo) and plotting graphs inside GUIs (using Winston)....
Building GUIs with Julia, Tk, and Cairo, Part I | This is the first of two blog posts designed to walk users through the process of creating GUIs in Julia....
The book "Programming in Lua" (3rd edition) is now available as an e-book through Feisty Duck.
Roberto gives an invited talk "Lua versus Javascript: Why do we need multiple languages?" at WWW 2013, the 22nd International World Wide Web Conference.
Passing Julia Callback Functions to C | One of the great strengths of Julia is that it is so easy to call C...
Put This In Your Pipe | In a previous post, I talked about why "shelling out" to spawn a pipeline of external programs via an intermediate shell is a common cause of bugs, security holes, unnecessary overhead, and silent failures....
Distributed Numerical Optimization | This post walks through the parallel computing functionality of Julia...
Videos from the Julia tutorial at MIT | We held a two day Julia tutorial at MIT in January 2013, which included 10 sessions. MIT Open Courseware and MIT-X (https://www.mitx.org/) graciously provided support for recording of these lectures, so th[…]
Lua 5.2.2 has been released. It fixes all known bugs in Lua 5.2.1.
Efficient Aggregates in Julia | We recently introduced an exciting feature that has been in planning for some...
The third edition of "Programming in Lua" by Roberto Ierusalimschy has been published.
Donations to the Lua project via PayPal are again available.
The Lua Workshop 2012 was held at Verisign's headquarters.
At YAPC::NA 2012 in Madison, WI I gave a lightning talk about basic improvements in Rakudo’s performance over the past couple of years. Earlier today the video of the lightning talks session appeared on YouTube; I’ve clipped out my tal[…]
Design and implementation of Julia | We describe the design and implementation of Julia in our first paper - Julia: A Fast Dynamic Language for Technical Computing. This is work in progress and comments are appreciated....
Lua 5.2.1 has been released. It fixes all known bugs in Lua 5.2.0.
A couple of weeks ago I entered the Dallas Personal Robotics Group Roborama 2012a competition, and managed to come away with first place in the RoboColumbus event and Line Following event (Senior Level). For my robot I used one of … Cont[…]
The Lua Workshop 2012 will be held at
Verisign's headquarters in Reston, Virginia, on November 29-30, 2012.
LuaJIT now has its own mailing list, dedicated to announcements, discussions, bug reports or feature requests.
New York Open Stats Meetup | I'll be giving a talk on Julia at the New York Open Statistical Programming Meetup on May 1st. After my presentation, John Myles White and Shane Conway are going to give followup demos of s...
You can help to spread the word about Lua by buying Lua T-shirts at Fibers. Use Lua, wear Lua!
We have started planning the Lua Workshop 2012. Please sign up if you're interested.
Lang.NEXT Announcement | Jeff and I will be giving a presentation on Julia at the upcoming Lang.NEXT conference, a gathering of "programming language design experts and enthusiasts" featuring "talks, ...
Shelling Out Sucks | Spawning a pipeline of connected programs via an intermediate shell — a.k.a. "shelling out" — is a really convenient and effective way to get things done....
Stanford Talk Video | Jeff gave his previously announced, invited talk at Stanford yesterday and the video is available here (https://ee380.stanford.edu/cgi-bin/videologger.php?target=120229-ee380-300.asx)....
Stanford Talk Announcement | I will be speaking about Julia at the...
Lua 5.1.5 has been released. It applies all patches for Lua 5.1.4.
Why We Created Julia | In short, because we are greedy....
为什么我们要创造Julia (Simplified Chinese) | 我们之中有些是使用MATLAB的重量级用户,有些是来自Lisp的极客,还有一些是来自Python和Ruby的魔法师,甚至还有来自Perl社区的大魔法师。我们之中还有从胡子都没长齐时就开始使用Mathematica的。其中的有些人现在都没长胡子喱!我们...
Lua won the Front Line Award 2011 from Game Developers Magazine in the category Programming Tools.
The first release of Lua 5.2 is now ready.
We have entered the final release-candidate cycle for Lua 5.2.0.
Roberto Ierusalimschy, the chief architect of Lua, will be visiting Stanford University for three months on a Tinker Professorship starting in January 2012.
The Lua Workshop 2011 was held in Switzerland.
The beta version of Lua 5.2 is now available for testing.
Lua enters the top 10 languages of the TIOBE index for the first time.
The article "Passing a Language through the Eye of a Needle" has appeared in ACM Queue.
The Lua Workshop 2011 will be held in Frick, Switzerland on September 8-9.
Lua is approaching the top 10 languages of the TIOBE Programming Community Index.
The Lua 5.1 reference manual has been translated into German.
We have started planning the Lua Workshop 2011. Please sign up if you're interested.
The alpha version of Lua 5.2 is now available for testing.
The fifth work version of Lua 5.2 has been released for testing.
Social Media Press has joined our corporate sponsorship program.
The mailing list has a new home at Pepperfish.
Short maintenance scheduled at Lua.org on 20 August.
Mirror site at PUC-Rio activated during downtime.
The fourth work version of Lua 5.2 has been released for testing.
The third work version of Lua 5.2 has been released for testing.
The Czechoslovak TeX Users Group has joined our corporate sponsorship program.
The book "Lua Programming Gems" is now available as an e-book through Feisty Duck.
Roberto Ierusalimschy, the chief architect of Lua, will talk tomorrow at the Stanford EE Computer Systems Colloquium about the design of Lua or "Small is Beautiful".
A full-day tutorial on Lua scripting in game production will be given today at the Game Developers Conference in San Francisco.
Adobe Systems has joined our corporate sponsorship program.
The Lua web forums have a new home, courtesy of Stefan Peters.
The book "Programming in Lua" (2nd edition) is now available as an e-book through Feisty Duck.
The second work version of Lua 5.2 has been released for testing.
The first work version of Lua 5.2 has been released for testing.
A full-day tutorial on Lua scripting in game production will be given at the Game Developers Conference in San Francisco on Tuesday, March 9th 2010.
You can help to spread the word about Lua by buying Lua products at Zazzle and CafePress. Use Lua, wear Lua!
The Lua Workshop 2009 was held at PUC-Rio in Rio de Janeiro.
Lua BR � a vers�o brasileira da lista de Lua.
Todos s�o bem vindos!
Lua BR is the brazilian version of lua-l.
The primary language of Lua BR is meant to be Portuguese.
Everyone is welcome.
Ansca has announced
the Corona SDK for writing native iPhone applications in Lua.
Google introduces the Android Scripting Environment with support for Lua.
This year the Lua Workshop will be held in Rio de Janeiro, Brazil,
on October 6-7, 2009.
The 9th edition of the book "Concepts of Programming Languages"
includes sections on Lua and a brief interview with Roberto.
Short maintenance scheduled at Lua.org on 15 April.
Mirror site at PUC-Rio activated during downtime.
The book "Masterminds of Programming: Conversations with the Creators of Major Programming Languages" includes an interview with the Lua team.
The Lua 5.1 reference manual has been translated into Hungarian.
The book "Lua Programming Gems" has been published.
Roberto Ierusalimschy, the chief architect of Lua,
was interviewed about Lua in
Computerworld's "The A-Z of Programming Languages" series.
Lua 5.1.4 has been released. It fixes all known bugs in Lua 5.1.3.
TYPO3 (AOE media) has joined our corporate sponsorship program.
We have launched a corporate sponsorship program for the Lua project and
Oc� is our first corporate sponsor.
Roberto Ierusalimschy, the chief architect of Lua,
will talk at the JAOO Australia conference in Brisbane and Sydney.
A Chinese translation of the book "Programming in Lua" has been published.
A patch file fixing all known bugs in Lua 5.1.3 is now available.
The Lua 5.1 reference manual has been translated into Russian.
You can now try Lua directly in your browser.
Lua 5.1.3 has been released. It fixes all known bugs in Lua 5.1.2.
The book "Introductory Lua programming" by Yutaka Ueno has been published (in Japanese).
The Lua 5.1 reference manual has been translated into Spanish.
Lua Workshop 2008 to be held at George Washington University in
Washington, D.C.
The Lua 5.1 reference manual has been translated into Portuguese.
O manual de refer�ncia de Lua 5.1 foi traduzido para o portugu�s.
The article
"Traveling light, the Lua way" by Ashwin Hirschi of Reflexis
has appeared in IEEE Software.
Lua has climbed from position 18 to position 15
in the TIOBE Programming Community Index.
A workshop on LuaTeX,
an extended version of pdfTeX that embeds Lua,
was held at the TUG 2007,
the 28th Annual Meeting of the TeX Users Group.
Lua has climbed from position 21 to position 18
in the TIOBE Programming Community Index.
A Korean translation of the book "Programming in Lua"
has been published by Insight.
The paper "The Evolution of Lua"
was presented at the
Third ACM SIGPLAN History of Programming Languages Conference (HOPL III).
The article "A Look at Lua" by Joseph Quigley
will appear in the June 2007 issue of the Linux Journal.
Lua 5.1.2 released, fixing all known bugs in Lua 5.1.
Lua has climbed from position 44 to position 25
in the TIOBE Programming Community Index.
The Lua mailing list is now 10 years old.
43 abstracts have been selected for Lua Programming Gems.
Contributions to a book on Lua Programming Gems are solicited.
A German translation of the book "Programming in Lua" has been published.
Lua has entered the top 50 in the TIOBE Programming Community Index.
The reference manual for Lua 5.1 is now available as a book.
Created official page for the Lua Workshop 2006
Lua 5.0.3 released, fixing all known bugs in Lua 5.0.2.
Lua 5.1.1 released, fixing all known bugs in Lua 5.1.
Lua elected for DistroWatch May 2006 donation.
Second edition of "Programming in Lua" by Roberto Ierusalimschy published.
Lua Workshop 2006 to be held at the Oc� R&D site in Venlo (NL).