Skip to content

Commit

Permalink
Spellchecking in ref floder. Hopefully for the only time. (#3816)
Browse files Browse the repository at this point in the history
  • Loading branch information
BethanyG authored Nov 6, 2024
1 parent dcc052c commit 27931ea
Show file tree
Hide file tree
Showing 25 changed files with 40 additions and 40 deletions.
2 changes: 1 addition & 1 deletion reference/concepts/boolean_values.md
Original file line number Diff line number Diff line change
Expand Up @@ -3,4 +3,4 @@
TODO: ADD MORE

- this solution uses Boolean values (`True` / `False`) [hamming](../exercise-concepts/hamming.md)
- True and False of type `bopl`. The example solution uses `True` and `False` as return values from functions that test membership in a list of values. [markdown](../exercise-concepts/markdown.md)
- True and False of type `bool`. The example solution uses `True` and `False` as return values from functions that test membership in a list of values. [markdown](../exercise-concepts/markdown.md)
2 changes: 1 addition & 1 deletion reference/concepts/builtin_types/dict.md
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
# `dict`

Python's primary [mapping type][docs-mapping-type] that associatess keys with values in a [hash map][hash-map].
Python's primary [mapping type][docs-mapping-type] that associates keys with values in a [hash map][hash-map].

See examples of usage in [markdown][markdown], [rna-transcription][rna-transcription], and [robot-simulator][robot-simulator].

Expand Down
2 changes: 1 addition & 1 deletion reference/concepts/builtin_types/frozenset.md
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@

TODO: ADD MORE DETAIL

See the Python documentation entries for the [`set`][docs-set] collection, the [immutable][set type][docs-set-type]; essentially a [hash map][hash-map] in which only the key is relevant, and which disallows [mutaion][mutation] of keys after intialization.
See the Python documentation entries for the [`set`][docs-set] collection, the [immutable][set type][docs-set-type]; essentially a [hash map][hash-map] in which only the key is relevant, and which disallows [mutation][mutation] of keys after initialization.

[immutable]: https://github.com/exercism/v3/blob/main/reference/concepts/immutability.md
[mutation]: https://github.com/exercism/v3/blob/main/reference/concepts/mutation.md
Expand Down
2 changes: 1 addition & 1 deletion reference/concepts/builtin_types/list.md
Original file line number Diff line number Diff line change
Expand Up @@ -8,7 +8,7 @@ A multi-dimensional list-with-a-list is used as a simple (but not very efficient

TODO: ADD MORE DETAIL

See the Python documentation entries for the [mutable][mutation] [`list` type][docs-list-type] and it's [constructor][list-as-function]. This is Python's most commonly used [sequential collection][docs-sequence-types], and as it allows _heterogenous data_ it's quite different from the [fixed array][general-concept-array] and [singly-linked list][general-concept-list] types you may have encountered in other, less flexible, languages.
See the Python documentation entries for the [mutable][mutation] [`list` type][docs-list-type] and it's [constructor][list-as-function]. This is Python's most commonly used [sequential collection][docs-sequence-types], and as it allows _heterogeneous data_ it's quite different from the [fixed array][general-concept-array] and [singly-linked list][general-concept-list] types you may have encountered in other, less flexible, languages.

[variable-length-quantity]: ../../exercise-concepts/variable-length-quantity.md
[markdown]: ../../exercise-concepts/markdown.md
Expand Down
2 changes: 1 addition & 1 deletion reference/concepts/constructor.md
Original file line number Diff line number Diff line change
Expand Up @@ -3,4 +3,4 @@
TODO: ADD MORE

- student needs to know how to build an object using its constructor [binary-search-tree](../exercise-concepts/binary-search-tree.md)
- customizing object initalization with actions and persisting data. The example uses a constructor to process the passed in data into a list of lists assigned to an instance property [matrix](../exercise-concepts/matrix.md)
- customizing object initialization with actions and persisting data. The example uses a constructor to process the passed in data into a list of lists assigned to an instance property [matrix](../exercise-concepts/matrix.md)
2 changes: 1 addition & 1 deletion reference/concepts/default_arguments.md
Original file line number Diff line number Diff line change
Expand Up @@ -2,4 +2,4 @@

TODO: ADD MORE

- pre-setting function arguments to protect against them not being passed by a caller. The example uses `direction = NORTH` and `x=0, y=0` to ensure those values for a `robot` even if they are not initally passed. [robot-simulator](../exercise-concepts/robot-simulator.md)
- pre-setting function arguments to protect against them not being passed by a caller. The example uses `direction = NORTH` and `x=0, y=0` to ensure those values for a `robot` even if they are not initially passed. [robot-simulator](../exercise-concepts/robot-simulator.md)
2 changes: 1 addition & 1 deletion reference/concepts/dunder_methods.md
Original file line number Diff line number Diff line change
Expand Up @@ -7,4 +7,4 @@ TODO: ADD MORE
- "dunder" -> "double under", referring to the names of these methods being prefixed with two underscores, e.g. `__init__`. There is no formal privacy in Python, but conventionally a single underscore indicates a private method, or one that the programmer should assume may change at any time; methods without an underscore are considered part of an object's public API. Double underscores are even more special - they are used by Python's builtin functions like `len()`, for example, to allow objects to implement various interfaces and functionality. They can also be used for operator overloading. If you have a custom class that you would like to be able to compare to other instances of the same class, implementing `__lt__`, `__gt__`, `__eq__` etc. allow programmers to use the `>`, `<`, `=` operators. Dunder methods allow programmers to build useful objects with simple interfaces, i.e. you can add two instances together using `+` instead of writing something like `instance1.add(instance2)`. [hamming](../exercise-concepts/hamming.md)
- the example uses the `__init__` magic method as its constructor for the class [matrix](../exercise-concepts/matrix.md)
- User defined classes can (and generally do) overload the `__init__` method, whose first argument is `self`, because the result of `__init__` is a class _instance_. [phone-number](../exercise-concepts/phone-number.md)
- The example uses `__init__` as a constructor for the class, which also calls `__new__`. In addition, the example uses `__call__()` via the appending of `()` to instance method names, and `__eq__()` (_rich compairison_) via the use of `==` [robot-simulator](../exercise-concepts/robot-simulator.md)
- The example uses `__init__` as a constructor for the class, which also calls `__new__`. In addition, the example uses `__call__()` via the appending of `()` to instance method names, and `__eq__()` (_rich_comparison_) via the use of `==` [robot-simulator](../exercise-concepts/robot-simulator.md)
2 changes: 1 addition & 1 deletion reference/concepts/initialization.md
Original file line number Diff line number Diff line change
Expand Up @@ -2,4 +2,4 @@

TODO: ADD MORE

- customizing object instatiation with actions and persisting data. The example uses `__init__` to persist a `compass` object and x, y coordinates assigned to instance attributes. [robot-simulator](../exercise-concepts/robot-simulator.md)
- customizing object instantiation with actions and persisting data. The example uses `__init__` to persist a `compass` object and x, y coordinates assigned to instance attributes. [robot-simulator](../exercise-concepts/robot-simulator.md)
2 changes: 1 addition & 1 deletion reference/concepts/instance_attributes.md
Original file line number Diff line number Diff line change
Expand Up @@ -2,4 +2,4 @@

TODO: ADD MORE

- this exercise rquires one or more instance attributes to persist passed in data. [robot-simulator](../exercise-concepts/robot-simulator.md)
- this exercise requires one or more instance attributes to persist passed in data. [robot-simulator](../exercise-concepts/robot-simulator.md)
2 changes: 1 addition & 1 deletion reference/concepts/instance_methods.md
Original file line number Diff line number Diff line change
Expand Up @@ -4,6 +4,6 @@ TODO: ADD MORE

- the exercise relies on the `def` statement to create an instance method [allergies](../exercise-concepts/allergies.md)
- use of `def` to define a class's methods [clock](../exercise-concepts/clock.md)
- classes can have instance _methods_ which are called from an instance of the class (as opposed to class methods, called from the Class itself). The first parameter of an instance method is always `self`, which is provided when calling from the instance (i.e. the programmer does not need to pass it as an argument explicitly). Static methods are methods called from the class itself, and are not connected to an instance of the class. They have access to class attributes (those defined on the class, not connected to the `self`), and do not require an instance of the class to exist. Classes can also define a `property` by using the `@property` decorator (not shown here); a `property` can be "lazily evaluated" to avoid uneeded computation [phone-number](../exercise-concepts/phone-number.md)
- classes can have instance _methods_ which are called from an instance of the class (as opposed to class methods, called from the Class itself). The first parameter of an instance method is always `self`, which is provided when calling from the instance (i.e. the programmer does not need to pass it as an argument explicitly). Static methods are methods called from the class itself, and are not connected to an instance of the class. They have access to class attributes (those defined on the class, not connected to the `self`), and do not require an instance of the class to exist. Classes can also define a `property` by using the `@property` decorator (not shown here); a `property` can be "lazily evaluated" to avoid unneeded computation [phone-number](../exercise-concepts/phone-number.md)
- tests for this exercises require one or more instance methods that will return a specified row or column list of the `matrix`. [matrix](../exercise-concepts/matrix.md)
- tests for this exercises require one or more instance methods that will take in a set of starting coordinates and a bearing and then accept a series of instructions that "move" the instance to a new set of coordinates and bearing. [robot-simulator](../exercise-concepts/robot-simulator.md)
2 changes: 1 addition & 1 deletion reference/concepts/instance_properties.md
Original file line number Diff line number Diff line change
Expand Up @@ -2,4 +2,4 @@

TODO: ADD MORE

- this exercise rquires one or more instance properties to persist passed in data. [matrix](../exercise-concepts/matrix.md)
- this exercise requires one or more instance properties to persist passed in data. [matrix](../exercise-concepts/matrix.md)
2 changes: 1 addition & 1 deletion reference/concepts/regular_expressions.md
Original file line number Diff line number Diff line change
Expand Up @@ -4,7 +4,7 @@ TODO: ADD MORE

- the `re.sub()` function of the `re` module that replaces a `regular expression` match with a new value. The example solutions use this function in various places to substitute _markdown_ syntax for _HTML_ syntax in the passed in markdown text. [markdown](../exercise-concepts/markdown.md)
- Both the original code to be refactored for this exercise and the example solution import and use the `re` module for Regular Expressions in python. [markdown](../exercise-concepts/markdown.md)
- the `re.match()` function from the `re` module returns a `match` object with any matched values from a specified Regular Expression or pre-compliled Regular Expression. The example uses `re.match()` in multiple places to search for text patterns that need re-formatting or subsitituting. [markdown](../exercise-concepts/markdown.md)
- the `re.match()` function from the `re` module returns a `match` object with any matched values from a specified Regular Expression or pre-compiled Regular Expression. The example uses `re.match()` in multiple places to search for text patterns that need re-formatting or substituting. [markdown](../exercise-concepts/markdown.md)
- Various functions in the re module return a `re.Match` _instance_ which in turn has a `Match.group` method. `Match.group` exists even if there are no groups specified in the pattern. See the [Match.group docs](https://docs.python.org/3/library/re.html#re.Match.group) for more detail. [markdown](../exercise-concepts/markdown.md)
- regular expressions is a language of sorts that can detect substrings and extract groups from a string, as well as replace them with something else [phone-number](../exercise-concepts/phone-number.md)
- A Domain Specific Language (DSL) for text processing. Like many other programming languages in use, python supports a quasi-dialect of PCRE (_Perl compatible regular expressions_). `Regular expressions` can be used via the core python `re` module, or the third-party `regex` module. Both the original code to be refactored for this exercise and the example solutions use the core `re` module to access `regular expressions` functionality. [markdown](../exercise-concepts/markdown.md)
4 changes: 2 additions & 2 deletions reference/concepts/return_value.md
Original file line number Diff line number Diff line change
Expand Up @@ -7,7 +7,7 @@ TODO: ADD MORE
- Most of the functions in the example solution specify a _return_ value using the `return` keyword. [markdown](../exercise-concepts/markdown.md)
- the exercise must use a `return` statement to return a value to the caller [leap](../exercise-concepts/leap.md)
- this function return a string by this line: `return text[::-1]` [reverse-string](../exercise-concepts/reverse-string.md)
- the `return` keyword is used in a _return statement_ at the end of a function. Exits a function and may or may not pass data or an expression back to calling code. Functions in python without an expicit `return` keyword and statment will return (pass back) the singleton object `none`. The example code _returns_ a copy of the passed-in argument (assumed to be a string) that has been mapped through `str.translate()`, using the table made from `str.maketrans()` [rna-transcription](../exercise-concepts/rna-transcription.md)
- knowing that functions need not have _explicit_ return statements or values but will return `None` if `return` is not specified. Except for the two `@property`-decorated functions, all of the functions in the example omit an explicit `return` statment and all return `None`. [robot-simulator](../exercise-concepts/robot-simulator.md)
- the `return` keyword is used in a _return statement_ at the end of a function. Exits a function and may or may not pass data or an expression back to calling code. Functions in python without an explicit `return` keyword and statement will return (pass back) the singleton object `none`. The example code _returns_ a copy of the passed-in argument (assumed to be a string) that has been mapped through `str.translate()`, using the table made from `str.maketrans()` [rna-transcription](../exercise-concepts/rna-transcription.md)
- knowing that functions need not have _explicit_ return statements or values but will return `None` if `return` is not specified. Except for the two `@property`-decorated functions, all functions in the example omit an explicit `return` statement and all return `None`. [robot-simulator](../exercise-concepts/robot-simulator.md)
- the knowledge of `return` statement could be a useful concept in this exercise [variable-length-quantity](../exercise-concepts/variable-length-quantity.md)
- "row" and "column" list values are expected from defined instance method(s) [matrix](../exercise-concepts/matrix.md)
2 changes: 1 addition & 1 deletion reference/concepts/slicing.md
Original file line number Diff line number Diff line change
Expand Up @@ -4,4 +4,4 @@ TODO: ADD MORE

- the extended solution to this exercise can employ a slice (returns a copy) instead of calling `.copy()`. [matrix](../exercise-concepts/matrix.md)
- a slice within an iterable, i.e. the slice of items from `<iterable>[x]` to `<iterable>[y]`, can be accessed via `<iterable>[x:y]` notation; a third parameter allows "skipping" by `z`, i.e. `stringname[x:y:z]` [phone-number](../exercise-concepts/phone-number.md)
- becase `str` in Python is a sequence type, [slicing](https://docs.python.org/3/reference/expressions.html#slicings) syntax can be used here. Specifically: for syntax `string[start:stop:stride]`: [reverse-string](../exercise-concepts/reverse-string.md)
- because `str` in Python is a sequence type, [slicing](https://docs.python.org/3/reference/expressions.html#slicings) syntax can be used here. Specifically: for syntax `string[start:stop:stride]`: [reverse-string](../exercise-concepts/reverse-string.md)
2 changes: 1 addition & 1 deletion reference/concepts/string_splitting.md
Original file line number Diff line number Diff line change
Expand Up @@ -3,4 +3,4 @@
TODO: ADD MORE

- The example solution uses `str.split()` to break the passed in markdown string into a list of lines broken up by the `\n` character. The alternate Python example solution uses `str.splitlines()` for the same effect across all line end characters. [markdown](../exercise-concepts/markdown.md)
- the example uses `str.split` with and without seperators to break the passed in string into "rows" and then "elements" [matrix](../exercise-concepts/matrix.md)
- the example uses `str.split` with and without separators to break the passed in string into "rows" and then "elements" [matrix](../exercise-concepts/matrix.md)
2 changes: 1 addition & 1 deletion reference/concepts/string_translation.md
Original file line number Diff line number Diff line change
Expand Up @@ -2,4 +2,4 @@

TODO: ADD MORE

- the `str.translate()` _instance method_ is called on an object from the `str` class (e.g. `<my string>`.translate()). Returns a copy of the inital string with each character re-mapped through the given _translation table_. The _translation table_ is typically a mapping or sequence type that implements indexing via the magic method `__getitem__()`. [rna-transcription](../exercise-concepts/rna-transcription.md)
- the `str.translate()` _instance method_ is called on an object from the `str` class (e.g. `<my string>`.translate()). Returns a copy of the initial string with each character re-mapped through the given _translation table_. The _translation table_ is typically a mapping or sequence type that implements indexing via the magic method `__getitem__()`. [rna-transcription](../exercise-concepts/rna-transcription.md)
2 changes: 1 addition & 1 deletion reference/concepts/type_hinting.md
Original file line number Diff line number Diff line change
Expand Up @@ -2,4 +2,4 @@

TODO: ADD MORE

- In modern Python it's possibly to type hint annotations to parameters and variables, see [typing](https://docs.python.org/3/library/typing.html#module-typing). While not neccessary in Python such annotations can help your code be easier to read, understand, and check automatically using tools like `mypy`. [reverse-string](../exercise-concepts/reverse-string.md)
- In modern Python it's possibly to type hint annotations to parameters and variables, see [typing](https://docs.python.org/3/library/typing.html#module-typing). While not necessary in Python such annotations can help your code be easier to read, understand, and check automatically using tools like `mypy`. [reverse-string](../exercise-concepts/reverse-string.md)
4 changes: 2 additions & 2 deletions reference/exercise-concepts/binary-search-tree.md
Original file line number Diff line number Diff line change
Expand Up @@ -60,7 +60,7 @@ class BinarySearchTree:

## Concepts

- [class][class]: a general comprehension of class concept and and how it works is required, `class` statement
- [class][class]: a general comprehension of class concept and how it works is required, `class` statement
- [Implied Argument][implied-argument]: student needs to know how to use statement `self` in a class
- [class members][class-members]: student must know how members of a class work
- [class methods][class-methods]: student must know how methods of a class work inside and outside the class, the use and meaning of `def` statement
Expand All @@ -78,5 +78,5 @@ class BinarySearchTree:
- [Integer comparison][integer-comparison]: concept required to solve the exercise
- [Recursion][recursion]: recursion is a core concept in this exercise
- [Lists][lists]: knowledge of lists and iteration on lists is required for this exercise
- [Conditional structures][conditional-structures]: knowledge of conditional conceptis and `if...else` statements are required
- [Conditional structures][conditional-structures]: knowledge of conditional concepts and `if...else` statements are required
- [Methods of list][methods-of-list]: the use of methods of list could be useful in this exercise. Methods like `append`, `pop`...
2 changes: 1 addition & 1 deletion reference/exercise-concepts/leap.md
Original file line number Diff line number Diff line change
Expand Up @@ -18,7 +18,7 @@ def leap(year):
- [Modular Division][modular-division]: the exercise relies on the `%` operator to check if one number is evenly divisible by another
- [Boolean Operators][boolean-operators]: the exercise relies on `and`, `or`, and (optionally) `not` to form Boolean predicates
- [Boolean Logic][boolean-logic]: the exercise relies on `and` and `or` to combine Boolean predicates into a single logical answer
- [Comparision][comparision]: the exercise relies on the `==` and `!=` operators to make binary comparisons between values
- [Comparison][comparison]: the exercise relies on the `==` and `!=` operators to make binary comparisons between values
- [Equivalence][equivalence]: the exercise relies on the `==` and `!=` operators to check that two values are equivalent (or not)
- [Order of Evaluation][order-of-evaluation]: the exercise relies on parentheses to explicitly modify the normal order of evaluation of an expression
- [Operator Precedence][operator-precedence]: the exercise is most simply stated when the student understands the operator precedence binding rules of Python
Expand Down
Loading

0 comments on commit 27931ea

Please sign in to comment.