The new version of Go 1.14 is here and these are its news

Go

GO Team Unveiled Go 1.14 Release Announcement, a new version of the open source programming language developed by Google. As promised, this release did not exceed the month of February and Go Team did not stop thanking all those who were kind enough to contribute to the design of this version, either through comments provided for this purpose and also for those who participated in the beta test or by issuing codes, reporting bugs and submitting comments.

So far, GO Team has endeavored to maintain the challenge launched by Rob Pike, one of the three creators of Golang, who I wanted this language to make large-scale programming easier and faster. Since Go's syntax is based on familiar elements of the C language with individual loanwords from the Python language. The language is concise enough, but the code is easy to read and understand.

Go code is compiled into separate binary executable files that run natively without using a virtual machine (profiles, debugging modules, and other troubleshooting subsystems are integrated at runtime as components of the runtime), which allows performance comparable to C.

The project was initially developed with multi-threaded programming and efficient work in multi-core systems in mind, even providing operator-level implemented means to organize parallel computing and interaction between parallel methods.

The language also provides built-in protection against allocated memory block overflow areas and provides the ability to use the garbage collector.

Go 1.14 main news

A major change in this new version concerns the new module system in the go command for widespread use, it is enabled by default and recommended for dependency management instead of GOPATH.

New module system features built-in version compatibility, package delivery tools, and an improved dependency management system. With the help of modules, developers are no longer bound to work within the GOPATH tree, they can explicitly define version-based dependencies and create repeatable assemblies.

In addition, threads will no longer have to hang indefinitely, as is the case above with a loop without calling a function, as Go Scheduler works to check for a certain possible execution time of the current routine during function calls before removing it from the thread to open space and allow execution of new routines. This will have an impact in terms of lower latency in Go 1.14.

Another change is the sAdded support for embedding interfaces with a set of overlapping methods. The methods of the built-in interface can now have the same names and the same signatures as the methods in the existing interfaces. Explicitly declared methods remain unique as before.

Moreover performance of the expression "defer" has been increased, whose use now hardly differs in speed from a direct call to a lazy function, allowing you to use the lazy start of a function in performance-sensitive code.

Asynchronous preemptive preference is also provided- Loops that do not contain function calls can now lead to a deadlock for the scheduler or a delay in the start of garbage collection.

The efficiency of the memory page allocation system has been improved, which now has significantly fewer lock conflicts in configurations with large GOMAXPROCS values.

As a result, delays were reduced and performance increased with intensive parallel allocation of large blocks of memory.

No more you can find a more complete list of these new features clef in the GO 1.14 release notes.

Also, this new version will work on macOS 10.11 El Capitan and will still support 32-bit binaries on this platform. This may be the latest version that also supports 32-bit binaries on other platforms like watchOS, iOS, iPadOS, and tvOS.


Leave a Comment

Your email address will not be published. Required fields are marked with *

*

*

  1. Responsible for the data: Miguel Ángel Gatón
  2. Purpose of the data: Control SPAM, comment management.
  3. Legitimation: Your consent
  4. Communication of the data: The data will not be communicated to third parties except by legal obligation.
  5. Data storage: Database hosted by Occentus Networks (EU)
  6. Rights: At any time you can limit, recover and delete your information.