# Learn Golang

Following the O'Reilly "Learning Go: An Idiomatic Approach to Real-World Go Programming"

## Notes

- The use of `./...` denotes a wildcard for tools like `go fmt`. It matches all .go files in the current directory and it's subdirectories.


## Installing Revive

The legacy linter I guess is no longer supported but the [revive](https://revive.run/docs#installation) project is a reasonable successor. 

```
go install github.com/mgechev/revive@latest
```

## Go Workspaces

Ok I don't really know about modules and workspaces, but to quiet the IDE I needed to add a `go.work` file to the root here, then a `go.mod` file to each subdir. We can figure this out later.
