Skip to content

Commit

Permalink
Update instructions for parallel-letter-frequency (exercism#2713)
Browse files Browse the repository at this point in the history
The exercise docs suggested that the submitted code is automatically
tested for the usage of parallelism. This is not the case, so the
paragraph rewritten to instead suggest students to check for parallelism
themselves.

To help, a few links to resources about concurrency and parallelism in
Java are added.
  • Loading branch information
yogan committed Mar 18, 2024
1 parent f6b855e commit 171c937
Showing 1 changed file with 6 additions and 2 deletions.
Original file line number Diff line number Diff line change
@@ -1,7 +1,11 @@
# Instructions append

Single-threaded (non-concurrent) solutions can pass all tests [but the last.](https://www.youtube.com/watch?v=mJZZNHekEQw) Your solution will be tested for concurrency by submitting it as a [Runnable](https://docs.oracle.com/javase/7/docs/api/java/lang/Runnable.html) to an [ExecutorService.](https://docs.oracle.com/javase/7/docs/api/java/util/concurrent/ExecutorService.html) Your solution must leverage multiple [Threads](https://docs.oracle.com/javase/7/docs/api/java/lang/Thread.html) to pass the final test.
The automated tests are currently not checking for parallelism. Please ensure yourself that your solution is using some form of parallelism, like threads or parallel streams.

Java documentation on [parallel streams](https://docs.oracle.com/javase/tutorial/collections/streams/parallelism.html) may provide some help.
The following resources may help you with this:

- [Concurrency (Oracle Java Tutorials)](https://docs.oracle.com/javase/tutorial/essential/concurrency)
- [Java Concurrency (Baeldung)](https://www.baeldung.com/java-concurrency)
- [Java 8 Parallel Streams (Baeldung)](https://www.baeldung.com/java-8-streams#parallel-streams)

As a stretch goal, consider if your implementation will work for characters with [diacritics or accents](https://en.wikipedia.org/wiki/Diacritic). For example, such solutions should not consider e and ë the same character. An example text for this case is [Wilhelmus](https://en.wikipedia.org/wiki/Wilhelmus), the Dutch national anthem.

0 comments on commit 171c937

Please sign in to comment.