Go - Programming Language from Google

  •        742

Go is expressive, concise, clean, and efficient. Its concurrency mechanisms make it easy to write programs that get the most out of multicore and networked machines, while its novel type system enables flexible and modular program construction. Go compiles quickly to machine code yet has the convenience of garbage collection and the power of run-time reflection. It's a fast, statically typed, compiled language that feels like a dynamically typed, interpreted language.




Related Projects

red - Red is a next-generation programming language strongly inspired by Rebol, but with a broader field of usage thanks to its native-code compiler, from system programming to high-level scripting and cross-platform reactive GUI, while providing modern support for concurrency, all in a zero-install, zero-config, single 1MB file!

Red is a new programming language strongly inspired by Rebol, but with a broader field of usage thanks to its native-code compiler, from system programming to high-level scripting, while providing modern support for concurrency and multi-core CPUs. Red has its own complete cross-platform toolchain, featuring two compilers, an interpreter and a linker, not depending on any third-party library, except for a Rebol2 interpreter, required during the bootstrap phase. Once complete, Red will be self-hosted.

Eta - A powerful language for building scalable systems on the JVM

Eta is a pure, lazy, strongly typed functional programming language on the JVM. It is a dialect of Haskell on the JVM. It is pure by default which means that calling a function with the same arguments will yield the same results every time. It is lazy by default which means that data stays in unevaluated state until a function needs to peek inside.

gocaml - :camel: Practical statically typed functional programming language implementation with Go and LLVM

GoCaml is subset of OCaml in Go based on MinCaml using LLVM. GoCaml adds many features to original MinCaml. MinCaml is a minimal subset of OCaml for educational purpose. It is statically-typed and compiled into a binary. This project aims incremental compiler development for my own programming language. Type inference, closure transform, mid-level IR are implemented.

luajit-lang-toolkit - A Lua bytecode compiler written in Lua itself for didactic purposes or for new language implementations

The LuaJIT Language Toolkit is an implementation of the Lua programming language written in Lua itself. It works by generating LuaJIT bytecode, including debug information, and uses LuaJIT's virtual machine to run the generated bytecode. On its own, the language toolkit does not do anything useful, since LuaJIT itself does the same things natively. The purpose of the language toolkit is to provide a starting point to implement a programming language that targets the LuaJIT virtual machine.

Cython - C extensions for the Python language

Cython is a language that makes writing C extensions for the Python language as easy as Python itself. It is based on the well-known Pyrex, but supports more cutting edge functionality and optimizations. It gives you the combined power of Python and C to let you write Python code that calls back and forth from and to C or C++ code natively at any point.

mint - :leaves: A refreshing programming language for the front-end web.

The project is in alpha stage: we are still tweaking the language and standard library. Questions or suggestions? Ask on Gitter channel or on Spectrum.

PyPy - fast, compliant alternative implementation of the Python language

PyPy is a fast, compliant alternative implementation of the Python language. It supports most of the commonly used Python standard library modules. Its feature include Just-in-Time compiler, Less memory usage, support Stackless and lot more. PyPy focuses on speed, efficiency and 100% compatibility with the original CPython interpreter. It was conceived as an implementation of Python written in Python, which enables Python developers to hack the implementation.

goflow - Flow-based and dataflow programming library for Go programming language

This is quite a minimalistic implementation of Flow-based programming and several other concurrent models in Go programming language that aims at designing applications as graphs of components which react to data that flows through the graph. Current version of the library requires a latest stable Go release. If you don't have the Go compiler installed, read the official Go install guide.

RustBooks - List of Rust books

Welcome! This book will teach you about the Rust Programming Language. Rust is a systems programming language focused on three goals: safety, speed, and concurrency. It maintains these goals without having a garbage collector, making it a useful language for a number of use cases other languages aren’t good at: embedding in other languages, programs with specific space and time requirements, and writing low-level code, like device drivers and operating systems. It improves on current languages targeting this space by having a number of compile-time safety checks that produce no runtime overhead, while eliminating all data races. Rust also aims to achieve ‘zero-cost abstractions’ even though some of these abstractions feel like those of a high-level language. Even then, Rust still allows precise control like a low-level language would. This is Rust-101, a small tutorial for the Rust language. It is intended to be an interactive, hands-on course: I believe the only way to really learn a language is to write code in it, so you should be coding during the course. If you have any questions that are not answered here, check out the "Additional Resources" below. In particular, the IRC channel is filled with awesome people willing to help you! I spent lots of time there ;-) I will assume some familiarity with programming, and hence not explain the basic concepts common to most languages. Instead, I will focus on what makes Rust special.

Haxe - The Cross-Platform Toolkit

Haxe is an open source toolkit that allows you to easily build cross-platform tools and applications that target many mainstream platforms.

Python - Programming Language

Python is a remarkably powerful dynamic programming language that is used in a wide variety of application domains. It is embeddable within applications as a scripting interface. Build flexible data-driven code using Python's powerful and dynamic introspection capabilities and advanced language features such as meta-classes, duck typing and decorators.

Clojush - The Push programming language and the PushGP genetic programming system implemented in Clojure

Lee Spector (lspector@hampshire.edu), started 20100227 See version history. Older version history is in old-version-history.txt. This is the README file accompanying Clojush, an implementation of the Push programming language and the PushGP genetic programming system in the Clojure programming language. Among other features this implementation takes advantage of Clojure's facilities for multi-core concurrency.

dmd - dmd D Programming Language compiler

DMD is the reference compiler for the D programming language. To report a problem or browse the list of open bugs, please visit the bug tracker.

futhark - :boom::computer::boom: A data-parallel functional programming language

Futhark is a purely functional data-parallel programming language. Its optimising compiler is able to compile it to typically very performant GPU code. The language and compiler is developed at DIKU at the University of Copenhagen, originally as part of the HIPERFIT centre. Although still under heavy development, Futhark is already useful for practical high-performance programming. For more information, see the website.

agora - a dynamically typed, garbage collected, embeddable programming language built with Go

Agora is a dynamically typed, garbage collected, embeddable programming language. It is built with the Go programming language, and is meant to provide a syntactically similar, loose and dynamic companion to the statically typed, machine compiled Go language - somewhat like Lua is to C. go get -t github.com/PuerkitoBio/agora/...

IronPython - Python programming language for the .NET Framework

IronPython is an open-source implementation of the Python programming language which is tightly integrated with the .NET Framework. IronPython can use the .NET Framework and Python libraries, and other .NET languages can use Python code just as easily. It supports an interactive console with fully dynamic compilation.

gosu-lang - The Gosu programming language

Gosu is a pragmatic programming language for the JVM. It has been designed with Java developers in mind by providing a set of features that allow them to be more productive without sacrificing the benefits of static typing. Gosu is an object oriented language with a sprinkle of functional programming features. It was nominated Language of the Month in a Dr Dobb's article in 2011. You need Java JDK 1.8 and Maven 3.x to build Gosu. Set the JAVA_HOME environment variable to JDK 1.8's home.