From 2cded107cd75a4024d9d0f76055ef48432301fad Mon Sep 17 00:00:00 2001 From: Dave Gauer Date: Sat, 6 Feb 2021 09:29:49 -0500 Subject: Add ex 35,36 enums; updated README I'm changing the order of some more topics. Trying to explain the value of pointers when we're mostly dealing with stack-sized values like integers feels convoluted. So I'm starting with enums (which also has a nice segue from an earlier "switch" exercise). Then structs. Then unions (just in keeping with the order of these items on ziglearn.org) and THEN pointers and multi-pointers and slices. --- README.md | 24 +++++++++++++++++++----- 1 file changed, 19 insertions(+), 5 deletions(-) (limited to 'README.md') diff --git a/README.md b/README.md index f8b16d5..be0b269 100644 --- a/README.md +++ b/README.md @@ -9,6 +9,18 @@ This project was directly inspired by the brilliant and fun [rustlings](https://github.com/rust-lang/rustlings) project for the [Rust](https://www.rust-lang.org/) language. +## Intended Audience + +This will probably be quite difficult if you've _never_ programmed before. +However, no specific programming experience is required. And in particular, +you are _not_ expected to know C or other "systems programming" language. + +Each exercise is self-contained and self-explained. However, you're encouraged +to also check out these Zig language resources for more detail: + +* https://ziglearn.org/ +* https://ziglang.org/documentation/master/ + ## Getting Started _Note: This currently uses a shell (Bash) script to automate the "game". A @@ -53,7 +65,7 @@ the learning resource I wished for. There will be tons of room for improvement: * Wording of explanations * Idiomatic usage of Zig * Additional exercises -* Re-write the `ziglings` script using the Zig build system (???) +* Re-write the `ziglings` script using the Zig build system (or just a Zig application) Planned exercises: @@ -70,13 +82,13 @@ Planned exercises: * [x] Defer (and errdefer) * [x] Switch * [x] Unreachable +* [x] Enums +* [ ] Structs +* [ ] Unions * [ ] Pointers * [ ] Pointer sized integers * [ ] Multi pointers * [ ] Slices -* [ ] Enums -* [ ] Structs -* [ ] Unions * [ ] Integer rules * [ ] Floats * [ ] Labelled blocks @@ -91,4 +103,6 @@ Planned exercises: * [ ] Imports The initial topics for these exercises were unabashedly cribbed from -[ziglearn.org](https://ziglearn.org/). +[ziglearn.org](https://ziglearn.org/). I've since moved things around +in an order that I think best lets each topic build upon each other. + -- cgit v1.2.3-ZIG