JetBrains to Release GoLand 2018.2

New version of popular Goland IDE brings improvements and new interesting features; scroll down to get more info
27 July 2018   1588

The development team from JetBrains introduced a new version of the IDE for the Go programming language - GoLand 2018.2. A large summer update brought support for individual Go-modules, improved Move-refactoring, new Postfix templates and an improved debugger.

GoLand 2018.2 Features:

  • Integration with separate Go-modules (vgo) is available.
  • Move-refactoring has received a new dialog box that indicates whether or not to use the identifier, as well as the ability to move characters between packets.

GoLand Move-refactoring
GoLand Move-refactoring

  • There are new tools for rapid error correction: one for converting the value to the required type depending on the language requirements and the second, adding the missing methods.

GoLand tools for rapid error correction
GoLand tools for rapid error correction

  • Implement Methods now allows not only add new methods through the interface, but also quickly create new ones.

GoLand Implement Methods
GoLand Implement Methods

  • Added new Postfix templates .sort and .rr. The latter combines the two already available templates .rre and .rrv.

GoLand Postfix Templates
GoLand Postfix Templates

  • The updated debugger allows you to set a stop point by monitoring the log in the console, and also tracing the stack at the reached point and then continuing to execute the code.

GoLand updated debuggerGoLand updated debugger

  • Updated Docker-plugin.
  • Added support for TypeScript 2.9 and the future release of TypeScript 3.0.
  • Implemented tracking of unused parts of the code.

The previous version, GoLand 2018.1, was released in late March 2018. This was the first large-scale update of the new IDE, and changes in it mainly concerned the support for writing code and integrating the environment with other tools.

V Language Compliler to be Open Sourced

V was designed to combine Go's simplicity of syntax, compilation speed, portability and maintainability of code with C / C ++ performance and Rust security
24 June 2019   389

Compiler for the V language has been transered to the open source. V is a compiled into machine code language with static typing, focused on solving problems of simplifying development tracking and ensuring a very high compilation speed. The compiler code, libraries and related tools are open under the MIT license.

The syntax V is a lot like Go, borrowing some constructs from Oberon, Rust and Swift. The language is maximally simplified and, according to the developer, it takes 30 minutes to study the documentation to learn the basics. At the same time, the language remains quite powerful and can be used to perform the same tasks as when using other programming languages ​​(for example, libraries are available for 2D / 3D graphics, GUI and web application creation).

Creating a new language was motivated by the desire to combine the Go's simplicity of syntax, compilation speed, simplicity of parallelizing operations, portability and maintainability of code with C / C ++ performance, Rust security and generation of machine code at the Zig compilation stage. Developers also wanted to get a compact and fast compiler that can work without external dependencies, get rid of the global scope (global variables) and provide the ability to "hot" reload code.

Compared to C ++, the new language is significantly simpler, provides a faster compilation speed (up to 400 times), practices safe programming techniques, is free from problems with undefined behavior, and provides built-in tools for parallelizing operations. Compared to Python, V is faster, easier, safer, and easier to maintain. Compared to Go, V has no global variables, no null, all variable values ​​must always be defined, all objects are immutable by default (immutable), only one type of assignment is supported ("a: = 0"), a significantly more compact runtime and the size of the final executable files, the presence of direct portability from C, the absence of the garbage collector, faster serialization, the ability to interpolate lines ("println ('$ foo: $ bar.baz')").

Get more info at Github