Free Online Go to Rust Code Converter

Instantly convert code snippets from Go to Rust with our free online code converter. Transform your code easily and accurately.

GoGo Code

0/8000 characters

Unlock Powerful Code Conversion with Advanced AI Models

  • Convert up to 100,000 characters per request
  • Support for 61+ languages and frameworks
  • Convert code snippets or sets of files
  • Powered by cutting-edge AI (Claude 3.5 Sonnet and GPT-4) and LLMs agents

Experience the full potential of AI-driven code conversion and transformation!

How to Use Our Go to Rust Code Converter

  1. Paste your Go code snippet into the input box.
  2. Click the "Convert" button to transform your code.
  3. Our AI-powered converter will instantly translate your Go code to Rust.
  4. Copy the converted Rust code and use it in your project.

Is Our Go to Rust Converter Secure?

We prioritize your code's security and privacy. Your code is not stored on our servers and is only temporarily processed for conversion. We use OpenAI's secure servers for the conversion process, ensuring your code remains confidential.

About Go

Go is a statically typed, compiled programming language designed at Google. Go is syntactically similar to C, but with memory safety, garbage collection, structural typing, and CSP-style concurrency.

About Rust

Rust is a multi-paradigm programming language focused on performance and safety, especially safe concurrency.

Palindrome Check Example: Go vs Rust

Palindrome Check in Go

package main

import (
    "fmt"
    "strings"
    "unicode"
)

func isPalindrome(s string) bool {
    // Clean the string
    clean := strings.Map(func(r rune) rune {
        if unicode.IsLetter(r) || unicode.IsNumber(r) {
            return unicode.ToLower(r)
        }
        return -1
    }, s)
    
    // Check palindrome
    for i := 0; i < len(clean)/2; i++ {
        if clean[i] != clean[len(clean)-1-i] {
            return false
        }
    }
    return true
}

func main() {
    fmt.Println(isPalindrome("A man, a plan, a canal: Panama")) // true
    fmt.Println(isPalindrome("race a car")) // false
}

Palindrome Check in Rust

fn is_palindrome(s: &str) -> bool {
    let clean: String = s.chars()
        .filter(|c| c.is_alphanumeric())
        .map(|c| c.to_ascii_lowercase())
        .collect();
    
    clean.chars().eq(clean.chars().rev())
}

fn main() {
    println!("{}", is_palindrome("A man, a plan, a canal: Panama")); // true
    println!("{}", is_palindrome("race a car")); // false
}

Bubble Sort Example: Go vs Rust

Bubble Sort in Go

package main

import "fmt"

func bubbleSort(arr []int) {
    n := len(arr)
    for i := 0; i < n; i++ {
        for j := 0; j < n-i-1; j++ {
            if arr[j] > arr[j+1] {
                arr[j], arr[j+1] = arr[j+1], arr[j]
            }
        }
    }
}

func main() {
    arr := []int{64, 34, 25, 12, 22, 11, 90}
    bubbleSort(arr)
    fmt.Println(arr)
}

Bubble Sort in Rust

fn bubble_sort(arr: &mut [i32]) {
    let n = arr.len();
    for i in 0..n {
        for j in 0..n - i - 1 {
            if arr[j] > arr[j + 1] {
                arr.swap(j, j + 1);
            }
        }
    }
}

fn main() {
    let mut arr = vec![64, 34, 25, 12, 22, 11, 90];
    bubble_sort(&mut arr);
    println!("{:?}", arr);
}

More Go Code Conversion Tools

GoGoPythonPython

Convert Go to Python

Open Converter

GoGoJavaScriptJavaScript

Convert Go to JavaScript

Open Converter

GoGoTypeScriptTypeScript

Convert Go to TypeScript

Open Converter

GoGoJavaJava

Convert Go to Java

Open Converter

GoGoCC

Convert Go to C

Open Converter

GoGoC++C++

Convert Go to C++

Open Converter

GoGoC#C#

Convert Go to C#

Open Converter

GoGoDartDart

Convert Go to Dart

Open Converter

GoGoRubyRuby

Convert Go to Ruby

Open Converter

GoGoSwiftSwift

Convert Go to Swift

Open Converter

GoGoKotlinKotlin

Convert Go to Kotlin

Open Converter

GoGoScalaScala

Convert Go to Scala

Open Converter

GoGoPHPPHP

Convert Go to PHP

Open Converter

GoGoRR

Convert Go to R

Open Converter

GoGoHaskellHaskell

Convert Go to Haskell

Open Converter

GoGoJuliaJulia

Convert Go to Julia

Open Converter

GoGoMATLABMATLAB

Convert Go to MATLAB

Open Converter

GoGoLuaLua

Convert Go to Lua

Open Converter

GoGoAssemblyAssembly

Convert Go to Assembly

Open Converter

GoGoPerlPerl

Convert Go to Perl

Open Converter

GoGoGroovyGroovy

Convert Go to Groovy

Open Converter

GoGoElixirElixir

Convert Go to Elixir

Open Converter

GoGoF#F#

Convert Go to F#

Open Converter

GoGoClojureClojure

Convert Go to Clojure

Open Converter

GoGoDelphiDelphi

Convert Go to Delphi

Open Converter