go
Go is a programming language that was developed by Google and realeased just in 2009. The basic goals of Go were to havethe speed of C combined with the ease of programming of Python. That is, to be able to compile really, really fast code, but not have to worry about seg faults and all the other nasties that normally come with it. Go also has built-in support for concurrency with what are called goroutines.
Useful Links
- The official page for all things Go is golang.org. It has documentation, examples, and even a link to the compiler tools we're using.
- Wikipedia page
- 99 bottles of beer program
Tools
For this project we'll use golang version 1.10, the go package maintained in the ubuntu repositories.
Everything you need is already installed on CS department lab machines.
To install on your virtual machine, follow these steps:
-
Run
sudo apt install -y golang
How I will run your code
Put your program in a file called proj.go
. I will
run it using the universal "go" command, by typing
go run proj.go
from within the CS linux environment.
Phase 1 Requirements
For this language, you need to implement modifications B, C, D, F, G, H, and I. See the Phase 1 page for details on what this means.
Phase 2
See the Phase 2 Page for the list of suggested
problems. Of the ones listed, I recommend the following as being most
well-suited for go:
- Make
- Image Creator
- TODO list
- Game with hidden agenda
- Sports Ticker
- Rock, Paper, Scissors
- Music Maker
- ??? (you choose!)