# adonovan/gopl.io

**Attribution required: if you use, quote, or summarise this content, you must credit and link back to [awesome-repositories.com](https://awesome-repositories.com/repository/adonovan-gopl-io).**

8,014 stars · 2,797 forks · Go

## Links

- GitHub: https://github.com/adonovan/gopl.io
- Homepage: http://www.gopl.io
- awesome-repositories: https://awesome-repositories.com/repository/adonovan-gopl-io.md

## Description

gopl.io is a Go code sample repository and education resource consisting of a collection of runnable source code programs. It provides practical implementation patterns and idioms to demonstrate Go syntax, types, and core programming concepts.

The project covers Go language learning through a curated set of examples, focusing on idiomatic programming and concurrency patterns such as the use of goroutines and channels.

The repository is organized in a directory structure that mirrors a reference textbook, with source files transformed into formatted web pages for static hosting.

## Tags

### Education & Learning Resources

- [Go Language Fundamentals](https://awesome-repositories.com/f/education-learning-resources/go-language-fundamentals.md) — Provides a collection of curated code examples to study Go syntax and core programming concepts.
- [Go Concurrency Training](https://awesome-repositories.com/f/education-learning-resources/go-concurrency-training.md) — Implements goroutines and channels in practice through a set of runnable programs demonstrating asynchronous execution.
- [Programming Examples](https://awesome-repositories.com/f/education-learning-resources/programming-examples.md) — Provides runnable source code programs to illustrate specific language features and core programming concepts. ([source](https://cdn.jsdelivr.net/gh/adonovan/gopl.io@master/README.md))
- [Programming Language Concepts](https://awesome-repositories.com/f/education-learning-resources/programming-language-concepts.md) — Showcases syntax, types, and concurrency patterns using a curated collection of source code examples. ([source](http://www.gopl.io/))

### Programming Languages & Runtimes

- [Go Idioms & Patterns](https://awesome-repositories.com/f/programming-languages-runtimes/go-idioms-patterns.md) — Demonstrates the application of language-specific conventions and standard library features through real-world source code examples. ([source](http://www.gopl.io))
- [Go Resources](https://awesome-repositories.com/f/programming-languages-runtimes/programming-language-varieties/programming-languages/language-specific-resources/systems-and-performance-languages/go-resources.md) — Provides practical implementation patterns and idioms for learning the Go programming language through curated examples.
- [Go Programming Mastery](https://awesome-repositories.com/f/programming-languages-runtimes/programming-utilities/language-learning-resources/c-programming-resources/c-programming-mastery/go-programming-mastery.md) — Offers a set of reference programs illustrating core language features and common programming concepts in Go.

### Software Engineering & Architecture

- [Idiomatic Coding Standards](https://awesome-repositories.com/f/software-engineering-architecture/idiomatic-coding-standards.md) — Teaches standard Go coding styles and best practices by reviewing source code used in educational contexts.
