Go 1.11 Adds WebAssembly Port
Written by Kay Ewbank   
Thursday, 30 August 2018

The half-yearly update to Go has been released with an experimental port to WebAssembly and preliminary support for modules.

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.

The port to WebAssembly is still experimental. Go programs using the new feature compile to a single WebAssembly module that includes the Go runtime for goroutine scheduling, garbage collection, maps, and other Go essentials, resulting in a module of at least 2MB, or 500KB when compressed. Go programs can also call into JavaScript using a new experimental package. WebAssembly is a binary instruction format for a stack-based virtual machine. It is designed as a portable target for compilation of high-level languages like C/C++/Rust so apps can be deployed on the web for client and server applications.

Go 1.11 also adds preliminary support for a new concept called modules. In Go terms, this is an alternative to GOPATH with integrated support for versioning and package distribution. Using modules, developers are no longer confined to working inside GOPATH. Other advantages are that version dependency information is explicit yet lightweight, and builds are more reliable and reproducible.

Module support is considered experimental in its current form, and details are likely to change in response to feedback from Go 1.11 users. The developers also have more tools planned. They say that although the details of module support may change, projects that convert to modules using Go 1.11 will continue to work with Go 1.12 and later. 

goblack

More Information

Go 1.11 Release Notes

Related Articles

Go Drops The Gopher - The End is in Sight

Go 1.10 Adds Automatic Caching

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

Go 1.9 Adds Parallel Compilation

Go 1.8 Goes Faster

Go Language Of The Year With Dart Catching Up 

Go Turns Seven With Lots Of Attention 

Go 1.7 Goes Faster and in More Directions

Go 1.6 Released

Go 1.5 In Beta

Go 1.4 gets Android support 

Go 1.3 Released

A Programmer's Guide To Go

Why invent a new language? Go creator explains

Go Is Four

Go with Google - Yet Another Language! 

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


Google:We Have Quantum Supremacy IBM: No You Don't
23/10/2019

You think it would be easy to prove that a quantum computer was better than a classical computer. Google's Quantum Computer Group thinks that it has done just that, but has it?



Rust Gets Async-Await
08/11/2019

The latest version of Rust adds async-await for easy asynchronous programming and Microsoft thinks the language could be an alternative to C++.


More News

graphics

 



 

Comments




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

Last Updated ( Thursday, 30 August 2018 )