Skip to content

Commit

Permalink
Config!
Browse files Browse the repository at this point in the history
  • Loading branch information
lpil committed Sep 27, 2023
1 parent cc3a645 commit d6c8870
Show file tree
Hide file tree
Showing 2 changed files with 22 additions and 21 deletions.
13 changes: 13 additions & 0 deletions config.json
Original file line number Diff line number Diff line change
Expand Up @@ -435,6 +435,19 @@
"maps"
],
"status": "active"
},
{
"slug": "expert-experiments",
"name": "Expert Experiments",
"uuid": "481133be-f550-4639-8e26-4f03fe292d1c",
"concepts": [
"use-expressions"
],
"prerequisites": [
"results",
"anonymous-functions"
],
"status": "active"
}
],
"practice": [
Expand Down
30 changes: 9 additions & 21 deletions exercises/concept/expert-experiments/.meta/design.md
Original file line number Diff line number Diff line change
Expand Up @@ -2,40 +2,28 @@

## Learning objectives

- Know how to define a variable.
- Know how to update a variable.
- Know that variable definitions can have type annotations.
- Know how to define a module function.
- Know how to return a value from a function (implicit return).
- Know how to call a function.
- Know how to define an integer.
- Know how to define a string.
- Know how to use mathematical operators on integers.
- Know how to define single-line comments.
- Know about use expressions.
- Know they can be used to avoid indentation.
- Know they can be used with any function that takes a function as a final argument.

## Out of scope

- Naming rules for identifiers.
- Generic values.
- Memory and performance characteristics.
- Anonymous functions.
- Organizing functions in modules.
- Public and private functions.
- Documentation comments
- Use expressions are block scoped, not function scoped like similar constructs in other languages.
- Use with JavaScript promises.

## Concepts

- `basics`: know what a variable is; know how to define a variable; know how to update a variable; know how to add type annotations for variables; know how to define a function; know how to return a value from a function; know how to call a function; how to define an integer; know how to define a string; know how to use mathematical operators on integers; know how to define comments.
- `use-expressions`

## Prerequisites

There are no prerequisites.
- `results`
- `anonymous-functions`

## Analyzer

This exercise could benefit from the following rules added to the [analyzer][analyzer]:

- Verify that the `remaining_minutes_in_oven` function calls the `expected_minutes_in_oven` function.
- Verify that the `total_time_in_minutes` function calls the `preparation_time_in_minutes` function.
- Verify that the `run_experiment` function uses `use` expressions.

[analyzer]: https://github.com/exercism/gleam-analyzer

0 comments on commit d6c8870

Please sign in to comment.