Go 1.18 Beta Released With Generics
User Rating: / 0
Monday, 20 December 2021

The first preview of Go 1.18 has been released with new support for generic code using parameterized types. The developers say generics are the most significant change to Go since the release of Go 1, and the largest single language change they’ve 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.


When the news of the new feature was announced, Mike James pointed out that right from the start the major criticism of Go was that it lacked generics. Of course, many Go programmers didn't miss it and actively worked to make sure that it remained outside of the language. This was never going to happen as generics are so mainstream as to be part of the official dogma of modern languages.


However, generics are necessary only when you enforce strong typing and while strong typing may be part of most of the major languages, it isn't essential. 

Other improvements to the new release include built-in support for writing fuzzing-based tests, to automatically find inputs that cause your program to crash or return invalid answers. There's also a new “Go workspace mode”, which lets you work with multiple Go modules simultaneously.

The final improvement of note follows the improvement in Go 1.17 which added a new register-based calling convention to speed up Go code on x86-64 systems. Go 1.18 Beta 1 expands that feature to ARM64 and PPC64, resulting in as much as 20% speed-ups.

Go 1.18 beta is available for download now.


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.


The Year of AI 2021 - The Best Papers

While 2021 was a difficult year due to the pandemic, it was also a year full of advancements in the field of AI. Louis Bouchard has compiled a great list with the best research papers that w [ ... ]

Brave Browser Surpasses 50 Million Users

After 5 years in which it has doubled its user base year on year, Brave, the ad-blocking browser pioneered by Mozilla co-founder and JavaScript inventor Brendan Eich, now claims over 50 [ ... ]

More News





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

Last Updated ( Tuesday, 21 December 2021 )