Gold: The Go Language, for all Platforms | RemObjects Software
Languages Platforms IDEs | Download Pricing |
Gold
Go, everwhere.

RemObjects Gold

Gold brings Google's Go Language across platforms, with language support for all Elements Platforms.

Built on over fifteen years of solid compiler knowledge and technology, with Gold, you can use Go to write code directly against a wide range of development targets, from .NET over Java and Android to Cocoa. And you can also share a lot of non-UI code between platforms.

Write Go Code, for Any Platform

With Elements, you can now leverage your Go language experience to write code for any modern target platform. That includes:

  • .NET, .NET Core, Mono and ASP.NET
  • The Java VM and any device that runs Java code
  • Android, both Java-based SDK and NDK
  • iOS, macOS, tvOS and watchOS
  • Windows (native)
  • Linux (native)
  • WebAssembly, for browser and Node.js

You can read more about the platforms supported by the Elements compiler, here, and the full Go language syntax is now available on all of them. And of course you can mix Go code with any of the other four Elements languages in your project, if you like!

import (
    "fmt"
    "time"
)

func main() {
    isFinished := make(chan bool, 1)
    go doWork(isFinished)
    
import (
    "fmt"
    "time"
)

func main() {
    isFinished := make(chan bool, 1)
    go doWork(isFinished)
    <-isFinished
    fmt.Println("Done!")
}

func doWork(isFinished chan bool) {
    fmt.Println("doing things...")
    time.Sleep(time.Second * 2)
    isFinished 
import (
    "fmt"
    "time"
)

func main() {
    isFinished := make(chan bool, 1)
    go doWork(isFinished)
    <-isFinished
    fmt.Println("Done!")
}

func doWork(isFinished chan bool) {
    fmt.Println("doing things...")
    time.Sleep(time.Second * 2)
    isFinished <- true
}

Use the powerful Go Base Library

Go is not just a language; it also comes with a vast base library of APIs for a variety of interesting areas, from math over encryption to network communication, from HTML parsing to image processing. We've ported this library to be fully source compatible with Gold, so for a subset of Elements platforms, you now have access to native versions of these APIs – from any Elements language. These include:

  • .NET, .NET Core, Mono and ASP.NET
  • Android NDK
  • iOS, macOS, and tvOS
  • Windows (native)
  • Linux (native)

Third-Party Open Source Go libraries

Beyond just the base library, the Go ecosystem is ripe with literally thousands of great free open source libraries, from database drivers to full web engines to video processing; from general utility libraries to whole middle-ware implementations. With the Go support in Elements compiler and the base Go library, many of these libraries are now available to compile for any of the above platforms so they can be used directly from, for example, your .NET or iOS project.

You can find just of of many such collections at awesome-go.com.

Sophisticated IDEs for Mac and Windows

Of course, the Go language is deeply integrated into our development environments. Develop your Go projects in our smart yet lightweight IDEs, Fire on Mac or Water on Windows – with project templates, code completion, integrated debugging and many other advanced development features. Elements also integrates Go into Visual Studio 2017, 2019 or 2022.

Mix Go With Other Languages

With Elements, all languages are created equal. Even within the same project, you can mix Go, C#, Swift, Java, Oxygene and Mercury. This is great news in two fronts:

If you're a dedicated Go developer, you can continue to use Go as your main language, but fall back to adding a source file written in another language here and there – for example to use a feature not available in Go (such as classes), or reuse some source you found online.

And if you're using one of the other languages for your main work, you can now add snippets of Go code to your projects if you like, to leverage Go's strengths where applicable.

Ecosystem

Gold, like all five Elements languages, comes with an extensive tool chain that takes care of all parts of your development process – from IDEs to work in, over the compiler and auxiliary build tasks, all the way to your final product.

It also integrates deeply with the existing ecosystem for whatever platform(s) you are targeting. For example:

  • On Mac or iOS, you have full access to the entire range of Cocoa APIs. You can use .xib files, storyboards, asset catalogs etc. just as you would in Xcode.

  • On Android and Java, Go seamlessly uses the platform tools for "dex'ing" your Java code or creating .apk files, and has support for pulling in external Gradle packages like you'd expect.

  • On .NET, you have full access to the framework library and third-party .dlls and libraries, and you can use NuGet packages to pull in code. You can target the full desktop .NET Framework, as well as .NET Core or Mono. And so on.

Watch the Intro Video


Get Yours Now!

Gold is available standalone (Go-language only) or as part of the full Elements package with all six languages.

Either edition supports all platforms, includes the Fire and Water IDEs so you can work on Mac and Windows, and comes with a full year of free weekly updates and support.

 

Purchase Gold: Gold: $299 Elements: $799  

 

Licenses cover a single named developer. Volume discounts, site licenses, as well as academic and personal-use licenses are also available.

Love the idea of RemObjects Gold, but prefer a different language?
Check out RemObjects C#, Swift or Iodine (Java) or Oxygene!

What's new?   |   Forums   |   Twitter   |   Facebook

What's new?
Forums
Twitter
Facebook