Skip to content

Commit

Permalink
Extract concepts from v2 exercise: macros
Browse files Browse the repository at this point in the history
* extract concepts from v2 exercise: macros

Closes exercism/v3#245

* require mutability concept; remove extraneous note on Hashmap<K, V>

* break out a more fine-grained list of concepts

* Update languages/reference/exercise-concepts/macros.md

Co-Authored-By: Eli Flanagan <[email protected]>

Co-authored-by: Eli Flanagan <[email protected]>
  • Loading branch information
2 people authored and ErikSchierboom committed Jan 29, 2021
1 parent 72a371b commit cc2ed92
Showing 1 changed file with 31 additions and 0 deletions.
31 changes: 31 additions & 0 deletions reference/exercise-concepts/macros.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,31 @@
# Concepts Required for the Macros exercise

There are many ways to potentially solve an exercise, but I'll be looking at the [canonical example](https://github.com/exercism/rust/blob/666c366fc0d39d9f6fd8e837facea8afe2153ae2/exercises/macros/example.rs) as my primary reference for what concepts are used.

When referring to the list of concepts, we mean [this list](https://github.com/exercism/v3/blob/master/languages/rust/reference/README.md)

Note that for both concept and practice exercises, the list of prerequisite concepts should be as small as possible. The goal here is not to enumerate all concepts which may be used in all possible approaches to the problem; it is to enumerate the minimal set of knowledge with which a determined student could conceivably solve the problem.

Note that this exercise is very likely to become a concept exercise for the concept "Writing declarative macros".

## Required concepts
### Existing

- structs
- (im)mutability
- `Hashmap<K, V>`

### Should be added

- variable assignment (part of `fundamentals`)
- variable scope / namespacing (part of `fundamentals`)
- methods and associated functions (depends on `structs`)

## Optional Concepts
### Existing

_none_

### Should be added

_none_

0 comments on commit cc2ed92

Please sign in to comment.