Skip to content

Commit e2cace6

Browse files
Fix a whole bunch of typos (#1236)
1 parent 79082d0 commit e2cace6

File tree

24 files changed

+38
-38
lines changed

24 files changed

+38
-38
lines changed

CONTRIBUTING.md

+2-2
Original file line numberDiff line numberDiff line change
@@ -74,7 +74,7 @@ If there is no such issue, you may open one. The baseline of work is as follows:
7474
1. Create `.meta/tests.toml`. If the exercise that is being implemented has test data in the [problem specifications repository][problem-specifications], the contents of this file **must** be a list of UUIDs of the tests that are implemented or not implemented. Scroll down to [tools](#tools) to find configlet which aids generating this file _interactively_.
7575
1. Run the tests locally, using `scripts/test`: `ASSIGNMENT=slug npx babel-node scripts/test`.
7676
1. Run the linter locally, using `scripts/lint`: `ASSIGNMENT=slug npx babel-node scripts/lint`.
77-
1. Create an entry in `config.json`: a unique _new_ UUID (you can use the `configlet uuid` tool to generate one, scroll down to [tools](#tools) to see how you can get it), give it a difficulty (should be similar to similar exercises), and make sure the _order_ of the file is sane. Currently the file is ordered first on core - non core, then on difficulty low to high, and finally lexographically.
77+
1. Create an entry in `config.json`: a unique _new_ UUID (you can use the `configlet uuid` tool to generate one, scroll down to [tools](#tools) to see how you can get it), give it a difficulty (should be similar to similar exercises), and make sure the _order_ of the file is sane. Currently the file is ordered first on core - non core, then on difficulty low to high, and finally lexicographically.
7878
1. Format the files, using `scripts/format`: `npx babel-node scripts/format`.
7979

8080
The final step is opening a Pull Request, with these items all checked off. Make sure the tests run and the linter is happy. It will run automatically on your PR.
@@ -127,7 +127,7 @@ There is quite a bit of student-facing documentation, which can be found in the
127127

128128
## Tools
129129

130-
You'll need LTS or higher NodeJS in order to contribute to the _code_ in this respository. Run `npm install` in the root in order to be able to run the scripts as listed below. We use the following dependencies:
130+
You'll need LTS or higher NodeJS in order to contribute to the _code_ in this repository. Run `npm install` in the root in order to be able to run the scripts as listed below. We use the following dependencies:
131131

132132
- `shelljs` in order to provide shell interface to scripts
133133
- `eslint` for linting all code in the stub, test file and example file

TAGS.md

+2-2
Original file line numberDiff line numberDiff line change
@@ -6,8 +6,8 @@ This document aims to provide reasoning why `config.json` contains the `"tags"`
66

77
- [x] `paradigm/declarative`: mostly popularised by libraries and frameworks such as React, Vue, etc.
88
- [x] `paradigm/functional`: there is a lot of support for functional programming, including various defactor libraries in the ecosystem providing functional programming patterns.
9-
- [x] `paradigm/imperative`: the majority of scripts written in JavaScript, but also a _lot_ of DOM based interacivity sprinkles are imperative.
10-
- [ ] `paradigm/logic`: whilst it is possible to write DSL or patterns that' allow for logic-based programming, JavaScript doesn't inheritly support it.
9+
- [x] `paradigm/imperative`: the majority of scripts written in JavaScript, but also a _lot_ of DOM based interactivity sprinkles are imperative.
10+
- [ ] `paradigm/logic`: whilst it is possible to write DSL or patterns that' allow for logic-based programming, JavaScript doesn't inherently support it.
1111
- [x] `paradigm/object_oriented`: has been around in JavaScript since prototypes were a thing (so since the beginning), and more popular with the ES6 classes.
1212

1313
## Typing

concepts/callbacks/links.json

+1-1
Original file line numberDiff line numberDiff line change
@@ -5,7 +5,7 @@
55
},
66
{
77
"url": "https://www.educative.io/edpresso/what-are-callbacks-in-javascript",
8-
"description": "Edspresso: What are callbacks in JavaScript?"
8+
"description": "Edpresso: What are callbacks in JavaScript?"
99
},
1010
{
1111
"url": "https://javascript.info/callbacks",

concepts/errors/introduction.md

+1-1
Original file line numberDiff line numberDiff line change
@@ -30,7 +30,7 @@ try {
3030
}
3131
```
3232

33-
As any object in Javascript the Error can be "extended" to create Custom errors. You can use the `instanceof` syntax to check if the error catched is an instance of a particular object.
33+
As any object in Javascript the Error can be "extended" to create Custom errors. You can use the `instanceof` syntax to check if the error caught is an instance of a particular object.
3434

3535
```javascript
3636
class CustomError extends Error {}

concepts/numbers/about.md

+1-1
Original file line numberDiff line numberDiff line change
@@ -71,7 +71,7 @@ See [comparison][concept-comparison] for more information on comparisons in gene
7171

7272
## Pitfalls
7373

74-
Becuase numbers in JavaScript are floating point numbers, all math using these values is floating point math.
74+
Because numbers in JavaScript are floating point numbers, all math using these values is floating point math.
7575
Therefore, in JavaScript:
7676

7777
```javascript

concepts/strings/introduction.md

+1-1
Original file line numberDiff line numberDiff line change
@@ -13,7 +13,7 @@ The first is the `charAt()` method:
1313
```
1414

1515
The other way is to treat a `string` as a list of characters, where individual characters correspond to a numerical index (starts at zero).
16-
The indexer syntax (`[index]`) can then be used to acccess the character at a specific index:
16+
The indexer syntax (`[index]`) can then be used to access the character at a specific index:
1717

1818
```javascript
1919
'cat'[1];

exercises/concept/errors/.docs/instructions.md

+4-4
Original file line numberDiff line numberDiff line change
@@ -1,18 +1,18 @@
11
# Instructions
22

3-
Elena is the new quality manager of a newspaper factory. As she has just arrived in the company, she has decided to review some of the processes in the factory to see what could be improved. She found out that technicians are doing a lot of quality checks by hand. She sees there is a good oportunity for automation and asks you, a freelance developer, to develop a piece of software to monitor some of the machines.
3+
Elena is the new quality manager of a newspaper factory. As she has just arrived in the company, she has decided to review some of the processes in the factory to see what could be improved. She found out that technicians are doing a lot of quality checks by hand. She sees there is a good opportunity for automation and asks you, a freelance developer, to develop a piece of software to monitor some of the machines.
44

55
## Check the humidity level of the production room
66

77
Your first mission is to write a piece of software to monitor the humidity level of the production room. There is already a sensor connected to the software of the company that returns periodically the humidity percentage of the room. You need to implement a function in the software that will throw an error if the humidity percentage is too high.
88

99
## Detect overheating and broken sensors
1010

11-
Elena is very pleased with your first assignement and ask you to deal with the monitoring of the machines' temperature.
11+
Elena is very pleased with your first assignment and ask you to deal with the monitoring of the machines' temperature.
1212

1313
While chatting with a technician, Greg, you are told that if the temperature of a machine exceeds 500°C, the technicians start worrying about overheating.
1414

15-
The machine is equiped with a sensor that measures its internal temperature. You should know that the sensor is very sensitive and often breaks. In this case the technicians will need to change it.
15+
The machine is equipped with a sensor that measures its internal temperature. You should know that the sensor is very sensitive and often breaks. In this case the technicians will need to change it.
1616

1717
Your job is to implement a function that throws an error if the sensor is broken or if the machine starts overheating.
1818

@@ -52,7 +52,7 @@ Implements a function `reportOverheating` that takes the temperature as a parame
5252

5353
If the sensor is broken, the temperature will be null. In this case you should throw an `ArgumentError`.
5454

55-
When everything works, if the temperature exceeds 500°C, you should throw a `OverheatingError`. This error class will be instanciated with a temperature argument. Make sure that the `OverheatingError` you throw has a temperature property attached to it.
55+
When everything works, if the temperature exceeds 500°C, you should throw a `OverheatingError`. This error class will be instantiated with a temperature argument. Make sure that the `OverheatingError` you throw has a temperature property attached to it.
5656

5757
```javascript
5858
reportOverheating(null);

exercises/concept/errors/.docs/introduction.md

+1-1
Original file line numberDiff line numberDiff line change
@@ -30,7 +30,7 @@ try {
3030
}
3131
```
3232

33-
As any object in Javascript the Error can be "extended" to create Custom errors. You can use the `instanceof` syntax to check if the error catched is an instance of a particular object.
33+
As any object in Javascript the Error can be "extended" to create Custom errors. You can use the `instanceof` syntax to check if the error caught is an instance of a particular object.
3434

3535
```javascript
3636
class CustomError extends Error {}

exercises/concept/freelancer-rates/.docs/hints.md

+1-1
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,7 @@
22

33
## 1. Calculate the day rate given an hourly rate
44

5-
- Use the [numeric operators][ref-numeric-operators] from Lucian's Lucious Lasagna.
5+
- Use the [numeric operators][ref-numeric-operators] from Lucian's Luscious Lasagna.
66

77
[ref-numeric-operators]: https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Operators/Arithmetic_Operators
88

exercises/concept/mixed-juices/.meta/design.md

+1-1
Original file line numberDiff line numberDiff line change
@@ -55,7 +55,7 @@ The comment types mentioned below only serve as a proposal.
5555
2. `limesToCut`
5656

5757
- A solution that uses `if (limes.length < 0) break;` instead of combining the conditions should be considered equally correct to the exemplar solution.
58-
The version in the examplar file is shorter but the break version emphasizes that there is a special edge case.
58+
The version in the exemplar file is shorter but the break version emphasizes that there is a special edge case.
5959
- `essential`: Verify that `while` was used.
6060
- `essential`: If a helper function was used for the switch statement, check that is was not exported.
6161
- `actionable`: If the student wrote `if (limes.length < 0) return limesCut`, comment that the duplication of `return limesCut` can be avoided by using break there instead of return.

exercises/concept/translation-service/.meta/exemplar.alternative.js

+4-4
Original file line numberDiff line numberDiff line change
@@ -30,14 +30,14 @@ export class TranslationService {
3030
* - Requests a translation if the translation is not available, then retries
3131
*
3232
* @param {string} text
33-
* @param {number} miniumQuality
33+
* @param {number} minimumQuality
3434
* @returns {Promise<string>}
3535
*/
36-
async premium(text, miniumQuality) {
36+
async premium(text, minimumQuality) {
3737
try {
3838
const { translation, quality } = await this.api.fetch(text);
3939

40-
if (miniumQuality > quality) {
40+
if (minimumQuality > quality) {
4141
throw new QualityThresholdNotMet(text);
4242
}
4343
return translation;
@@ -47,7 +47,7 @@ export class TranslationService {
4747
}
4848

4949
await this.request(text);
50-
return await this.premium(text, miniumQuality);
50+
return await this.premium(text, minimumQuality);
5151
}
5252
}
5353

exercises/concept/translation-service/.meta/exemplar.js

+4-4
Original file line numberDiff line numberDiff line change
@@ -29,19 +29,19 @@ export class TranslationService {
2929
* - Requests a translation if the translation is not available, then retries
3030
*
3131
* @param {string} text
32-
* @param {number} miniumQuality
32+
* @param {number} minimumQuality
3333
* @returns {Promise<string>}
3434
*/
35-
premium(text, miniumQuality) {
35+
premium(text, minimumQuality) {
3636
return this.api.fetch(text).then(
3737
({ translation, quality }) => {
38-
if (miniumQuality > quality) {
38+
if (minimumQuality > quality) {
3939
throw new QualityThresholdNotMet(text);
4040
}
4141

4242
return translation;
4343
},
44-
() => this.request(text).then(() => this.premium(text, miniumQuality))
44+
() => this.request(text).then(() => this.premium(text, minimumQuality))
4545
);
4646
}
4747

exercises/concept/translation-service/service.js

+2-2
Original file line numberDiff line numberDiff line change
@@ -65,10 +65,10 @@ export class TranslationService {
6565
* - Requests a translation if the translation is not available, then retries
6666
*
6767
* @param {string} text
68-
* @param {number} miniumQuality
68+
* @param {number} minimumQuality
6969
* @returns {Promise<string>}
7070
*/
71-
premium(text, miniumQuality) {
71+
premium(text, minimumQuality) {
7272
throw new Error('Implement the premium function');
7373
}
7474
}

exercises/practice/anagram/.meta/proof.ci.js

+1-1
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
const normalize = (str) => str.toLowerCase().split('').sort().join();
22
const sameWord = (word, candidate) =>
33
word.toLowerCase() === candidate.toLowerCase();
4-
const isAnagram = (word, candiate) => normalize(word) === normalize(candiate);
4+
const isAnagram = (word, candidate) => normalize(word) === normalize(candidate);
55

66
export const findAnagrams = (subject, candidates) => {
77
const wordsCopy = Array.isArray(candidates) ? candidates : [...candidates];

exercises/practice/bowling/bowling.spec.js

+1-1
Original file line numberDiff line numberDiff line change
@@ -95,7 +95,7 @@ describe('Bowling', () => {
9595
expect(bowling.score()).toEqual(81);
9696
});
9797

98-
xtest('a strike in the last frame gets a two roll bonues that is counted once', () => {
98+
xtest('a strike in the last frame gets a two roll bonuses that is counted once', () => {
9999
const rolls = [
100100
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 10, 7, 1,
101101
];

exercises/practice/change/.meta/proof.ci.js

+3-3
Original file line numberDiff line numberDiff line change
@@ -71,7 +71,7 @@ export class Change {
7171
});
7272
};
7373

74-
// is everthing searched?
74+
// is everything searched?
7575
const isDone = () =>
7676
candidates.every(
7777
(candidate) => isNumber(candidate) || candidate.isSearched()
@@ -83,12 +83,12 @@ export class Change {
8383
(candidate) => !isNumber(candidate) && !candidate.isSearched()
8484
);
8585

86-
// for the candidate, generate another candate for each of the possible coins
86+
// for the candidate, generate another candidate for each of the possible coins
8787
const branch = (current) => {
8888
coinArray.forEach((coin) => {
8989
// make a new Candidate for coin type
9090
const candidate = new Candidate();
91-
// copy the curent coins into it and add the new coin type
91+
// copy the current coins into it and add the new coin type
9292
current.getCoins().forEach((currentCoin) => {
9393
candidate.addCoin(currentCoin);
9494
});

exercises/practice/linked-list/.docs/instructions.append.md

+1-1
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,7 @@
22

33
Your list must also implement the following interface:
44

5-
- `delete` (delete the first occurence of a specified value)
5+
- `delete` (delete the first occurrence of a specified value)
66
- `count` (count the number of items in the list)
77

88
**NOTE**: Do _not_ use a library to implement this exercise. Do _not_ use a backing array to implement this exercise.

exercises/practice/linked-list/linked-list.spec.js

+1-1
Original file line numberDiff line numberDiff line change
@@ -177,7 +177,7 @@ describe('LinkedList', () => {
177177
expect(list.count()).toBe(1);
178178
});
179179

180-
xtest('deletes only the first occurence', () => {
180+
xtest('deletes only the first occurrence', () => {
181181
const list = new LinkedList();
182182
list.push(73);
183183
list.push(9);

exercises/practice/proverb/proverb.spec.js

+1-1
Original file line numberDiff line numberDiff line change
@@ -32,7 +32,7 @@ And all for the want of a nail.`
3232
);
3333
});
3434

35-
xtest('the whole proveb', () => {
35+
xtest('the whole proverb', () => {
3636
const result = proverb(
3737
'nail',
3838
'shoe',

reference/exercise-concepts/beer-song.md

+1-1
Original file line numberDiff line numberDiff line change
@@ -21,7 +21,7 @@
2121
- **duck typing**: using duck typing whenever methods or properties of String or Array objects are called
2222
- **arithmetic operators**: using '-' operator for computing number of verses/bottles in different contexts.
2323
Using '--' operator inside the for statement
24-
- **comparision operators**: using '>' operator to test if the number of verses inside the array is larger than 0
24+
- **comparison operators**: using '>' operator to test if the number of verses inside the array is larger than 0
2525

2626
## Using a switch statement
2727

reference/implementing-a-concept-exercise.md

+1-1
Original file line numberDiff line numberDiff line change
@@ -61,7 +61,7 @@ github/exercism
6161

6262
The configuration files may be copied from another exercise. We aim to keep these in sync:
6363

64-
> ⚠ Just like with _practice_ exericses, we will provide a script for you to run. This script needs to be updated from its v2 version, which has not yet been done.
64+
> ⚠ Just like with _practice_ exercises, we will provide a script for you to run. This script needs to be updated from its v2 version, which has not yet been done.
6565
6666
- `.eslintrc`
6767
- `.gitignore`

reference/keywords/export.md

+1-1
Original file line numberDiff line numberDiff line change
@@ -61,7 +61,7 @@ module.exports = {
6161

6262
## Where to use
6363

64-
The `export` keyword, just like `import`, can only be used in a module, which means it has to be run in [Node.js][node-js], transpiled by [babel][babel] or therelike or be used in a [file included in the browser directly][es-modules-in-browser] using `<script type="module" src="…">`.
64+
The `export` keyword, just like `import`, can only be used in a module, which means it has to be run in [Node.js][node-js], transpiled by [babel][babel] or similar, or be used in a [file included in the browser directly][es-modules-in-browser] using `<script type="module" src="…">`.
6565

6666
## Further reading
6767

reference/keywords/import.md

+1-1
Original file line numberDiff line numberDiff line change
@@ -26,7 +26,7 @@ This was the primarily way of importing modules in Node.js, but current versions
2626

2727
## Where to use
2828

29-
The `import` keyword, just like `export`, can only be used in a module, which means it has to be run in [Node.js][node-js], transpiled by [babel][babel] or therelike or be used in a [file included in the browser directly][es-modules-in-browser] using `<script type="module" src="…">`.
29+
The `import` keyword, just like `export`, can only be used in a module, which means it has to be run in [Node.js][node-js], transpiled by [babel][babel] or similar, or be used in a [file included in the browser directly][es-modules-in-browser] using `<script type="module" src="…">`.
3030

3131
## Further reading
3232

scripts/pr-check

+1-1
Original file line numberDiff line numberDiff line change
@@ -7,7 +7,7 @@
77
*
88
* This will run following checks:
99
* 1. Find the exercises at all the paths provided
10-
* 2. Check stub existance for those exercises
10+
* 2. Check stub existence for those exercises
1111
* 3. Check integrity of configuration for those exercises
1212
* 4. Run eslint for those exercises to check code-style
1313
*/

0 commit comments

Comments
 (0)