Go 1.18 Released With Generics And Fuzzing
Written by Kay Ewbank   
Thursday, 17 March 2022

Go 1.18 has been released with improvements including support for generic code using parameterized types and fuzzing fully integrated into its standard toolchain. At the point the beta was released, the developers described generics as the most significant change to Go since the release of Go 1, and the largest single language change they’d ever made.

Go is an open source project developed by a team at Google and many contributors from the open source community over more than 8 years. The main intended use is as a systems programming language, and it has been used in high profile commercial successes such as Docker.

goicon2

When the Go team announced the inclusion of Generics, Mike James pointed out that this removes the major criticism of Go, its lack of generics. The inclusion won't be universally popular, as generics go along with strong typing, and many Go developers see this as not essential.

gopher

The other main improvement to Go 1.18 is built-in support for writing fuzzing-based tests, to automatically find inputs that cause your program to crash or return invalid answers. The Go development team is proud of the fact that Go is the first major language with fuzzing fully integrated into its standard toolchain.

There's also a new “Go workspace mode”, which lets you work with multiple Go modules simultaneously. The team says this has been added to address the most common challenge identified by users in the 2021 user survey, that of working across multiple modules.

Go is also up to 20% faster when used on ARM64 and PPC64 based systems, thanks to the expansion of the new register-based calling convention to speed up Go code. This was added in Go 1.17 for x86-64 systems, and has now been more generally introduced.

Go 1.18  is available for download now.

goicon2

More Information

Go Download Page

GoLang Org Webpage

Related Articles

Insights Into Where Go Is Going

Go Adopts Generics

Go 1.15 Improves Linker

Go 2 Details Revealed

Help Go Develop

Go 1.11 Adds WebAssembly Port
Go Drops The Gopher - The End is in Sight

Go SDK For Azure Released

Go Survey Revelations

Go At Eight

Why invent a new language? Go creator explains

A Programmer's Guide To Go

A Programmer's Guide To Go Part 2 - Objects And Interfaces

A Programmer's Guide To Go Part 3 - Goroutines And Concurrency

 

To be informed about new articles on I Programmer, sign up for our weekly newsletter, subscribe to the RSS feed and follow us on Twitter, Facebook or Linkedin.

Banner


AWS Generative AI Professional Certificate On Coursera
20/06/2025

Generative AI is having an revolutionary impact across the board. Some jobs will be lost but more will be created and to get in on the ground floor now is the time to gain a credentials to show employ [ ... ]



Student’s Robot Smashes 4x4 Rubik’s Cube World Record
13/06/2025

Matt Pidden, a computer science student at the University of Bristol, UK, has broken the world record for solving a 4x4 Rubik's Cube using a robot he designed, built and trained in just 15 weeks.


More News

pico book

 

Comments




or email your comment to: comments@i-programmer.info