En está ocasión haremos una comparativa entre el lenguaje de programación Go y Moonbit, el lenguaje orientado a I.A.
Go es un lenguaje de programación diseñado para ser rápido, eficiente, concurrente y fácil de aprender. Compilado y con tipado estático, destaca en el desarrollo backend, sistemas en la nube y redes gracias a su gestión automática de memoria y alto rendimiento.
Por el otro lado, MoonBit es una cadena de herramientas de lenguaje de programación nativo de IA para computación en la nube y edge. Además se compila a WebAssembly, JavaScript y C.
Observemos la siguiente tabla comparativa.
| Característica | Go | MoonBit |
|---|---|---|
| Creador | Ken Thompson, Robert Pike y Robert Griesemer | Zhang Hongbo |
| Paradigma | Multiparadigma | Programación asíncrona basado en corrutinas, similar a Kotlin |
| Tipado | Estático | Estático |
| Extensión | .go | .mbt |
| Nivel de abstracción | Alto | Alto |
| Tipo de ejecución | Compilado | Compilado |
| Ideal para | Microservicios, aplicaciones concurrentes, etc. | Orientado a la I.A. y aplicaciones en tiempo real |
Ambos lenguajes comparten ciertas características y poseen su propias peculiaridades. No obstante, la mejor forma de comparar estos lenguajes es realizando algunos ejemplos.
Para más detalles puedes ver esto: https://docs.moonbitlang.com/en/latest/tutorial/for-go-programmers/index.html
Creando proyectos con Go y MoonBit
Empezaremos creando un sencillo proyecto con Go.
1. Creamos un directorio y nos ubicamos en el:
$ mkdir holamundo $ cd holamundo
2. Inicializamos el módulo:
$ go mod init example.com\holamundo
3. Creamos un programa ``main.go`` con el siguiente contenido:
package main import "fmt" func main() { fmt.Println("¡Hola, mundo en Go!") }
La estructura del proyecto lucirá así:
holamundo/ go.mod main.go
Construimos:
$ go build
Esto creará un ejecutable.
Salida:
¡Hola, mundo en Go!
Ahora con MoonBit.
1. Creamos el proyecto:
$ moon new holamundo $ cd holamundo
El directorio principal y archivos quedarán de esta forma:
holamundo/ ├── cmd │ └── main │ ├── main.mbt │ └── moon.pkg ├── holamundo_test.mbt ├── config.mbt ├── holamundo.mbt ├── moon.mod.json └── moon.pkg
El contenido del archivo ``main.mbt`` es el siguiente:
fn main { println("¡Hola, mundo en MoonBit!") }
Ahora ejecutamos:
$ moon run cmd\main\main.mbt
Salida:
¡Hola, mundo en MoonBit!
Por el momento es todo. Continuaremos con la comparativa en próximas entregas.
Enlaces:
https://tour.moonbitlang.com/https://projecteuler.net/
https://docs.moonbitlang.com/en/latest/tutorial/for-go-programmers/index.html
https://alquimistadecodigo.blogspot.com/search?q=go
https://go.dev/
https://emanuelpeg.blogspot.com/search?q=go
















