InfoQ Homepage Programming Languages Content on InfoQ
-
Rust 1.51 Stabilizes Const Generics MVP, Improves Cargo and Compile Times
Rust 1.51 brings to stable a minimum value proposition for const generics, which enable parametrizing types by constant values, for example integers, as opposed to types or lifetimes. The new Rust release also includes improvements to Cargo with a new feature resolver, and faster compile times on macOS.
-
AWS Announces Node.js 14 Support for Its Function as a Service, Lambda
Recently AWS announced Node.js version 14 support for its Function as a Service (FaaS), Lambda. Developers can now author AWS Lambda functions using Node.js' new features, such as top-level-await, enhanced diagnostics, modifications of the streams APIs, and a revised JavaScript engine for better performance.
-
PHP 8 Brings New JIT, Union Types, and More
PHP 8 is a major update to PHP that includes a new just-in-time compiler (JIT) and many new language features. InfoQ has spoken with Sentry principal developer Mark Story to better understand what role PHP and PHP 8 play in today's language landscape.
-
Swift Aims to Become a Data Race-Free Concurrent Language
The Swift team has published its roadmap to improve concurrency support in Swift. In a first phase, Swift will gain the async syntax and actors, while in a second phase focus will be on eliminating data races and deadlocks.
-
Google Engineer Tailors Swift for Windows
The vision for Swift to become a cross-platform programming language has moved one step further with the introduction of a Swift toolchain for Windows 10. Early adopters can now use Swift to create Windows 10 programs that interoperate through the C ABI with existing libraries available on the platform.
-
Swift 5.3 Brings New Language Features, Better Developer Experience, and Improved Performance
Swift 5.3, which has recently become available with Xcode 12, includes a number of significant new features at the syntax level, including support for multi-pattern catch clauses, increased availability for implicit self, and more. Additionally, the Swift team has worked on improving runtime performance, especially when using SwiftUI, and developer experience.
-
C++20 Is Now Final, C++23 at Starting Blocks
Originally planned for release last February, C++20 has now received the final technical approval and will be published foreseeably by the end of the year. C++20 will include modules, coroutines, and concepts among its major new features.
-
Go 1.16 Will Support Register-Based Calling Convention
The Go team is working to implement a minimum viable register-based calling convention in Go 1.16. This change could provide 5-10% throughput improvement, according to the Google Go team, while keeping backward compatibility for code using Go current stack-based calling convention.
-
Is Julia Production Ready? Q&A with Bogumił Kamiński
On the heels of JuliaCon 2020, SGH Warsaw School of Economics professor and DataFrames.jl maintainer Bogumił Kamiński summarized the status of the language and its ecosystem and stated that Julia is finally production-ready. InfoQ has taken the chance to speak with professor Kamiński.
-
Rust Moving Towards an IDE-Friendly Compiler with Rust Analyzer
Rust Analyzer is an experimental IDE/latency-oriented Rust compiler. This is an emerging endeavour within the Rust ecosystem, which is aimed at improving the IDE experience with Rust.
-
IBM Stops Work on Swift — Q&A with Chris Bailey
IBM has recently discontinued its involvement in Server-side Swift development, which started soon after Swift was open-sourced, and relinquished its leadership in the Swift Server Work Group [SSWG]. InfoQ has talked to IBM's Chris Bailey to learn more about what this may imply for Swift and the Swift community.
-
Swift 6 Will Bring Improved Concurrency Support and Memory Ownership
Swift development lead Ted Kremenek has announced a preliminary vision of what Swift 6 could include and how the community will get there on Swift's mailing list. Swift 6 will bring significant improvements to the language, including better concurrency support and memory ownership. No fixed timeline has been set yet, though, leading people to think it will not happen in 2020.
-
Google Updates Google App Engine with More New Runtimes: Node.js 12, Go 1.13, PHP 7.3 and Python 3.8
In a recent blog post, Google announced several new runtimes for the App Engine service on its cloud platform. These runtimes are Node.js 12, Go 1.13, PHP 7.3 and Python 3.8.
-
Microsoft Introduces Bosque, a Programming Language for Writing Easy-to-Reason-about Code
Microsoft has recently introduced the Bosque programming language, an investigative language design research project for writing code that is simple, obvious, and easy-to-reason-about for both humans and machines. The language derives from a combination of TypeScript inspired syntax and types, plus ML and Node/JavaScript inspired semantics.
-
Scratch 3 Released with Tablet Support and New Extension System
MIT released the latest version of their visual programming language Scratch on January 2. Scratch 3 brings changes to the look and feel of the Scratch layout, new paint and editing tools, new code blocks, and a new extensions system. Scratch 3 is available in both online and offline versions and can now be run on tablets.