Commit Graph

59 Commits

Author SHA1 Message Date
Jon Fetter-Degges 5e3e7d60ae couple more comment changes 2022-10-11 22:18:32 -04:00
Jon Fetter-Degges 7b929ecbb1 Small fixes and use min/max 2022-10-11 22:03:57 -04:00
Jon Fetter-Degges 5214f2a681 One more implementation note 2022-10-11 21:49:40 -04:00
Jon Fetter-Degges 14e59ac5fe Improve printing, make output closer to original
Implemented Display for CellState, and tweaked outputs to match the
BASIC implementation.

Also fixed some more comments.
2022-10-11 21:37:05 -04:00
Jon Fetter-Degges 6e46aba249 README file for the Rust port 2022-10-11 21:34:40 -04:00
Jon Fetter-Degges 15724219b5 Input bounds checking, refactor and cleanup
get_pattern now checks the size of the input to prevent out of bounds
writes., and converts String to Vec<char> immediately.

Refactors: changed function names, ran rust-fmt, improved some comments
2022-10-11 20:29:40 -04:00
Jon Fetter-Degges a068af4bc9 Do bounds update in finish_cell_transitions
Merged the functionality of update_bounds into finish_cell_transitions,
eliminating a loop.
2022-10-11 16:26:28 -04:00
Jon Fetter-Degges 0d2b7c6559 Initial commit of Life in Rust 2022-10-11 12:43:22 -04:00
Martin Thoma a561322962 Python: Add type annotations 2022-04-02 09:30:56 +02:00
Martin Thoma 1b1d50986b Python: Add type annotations to all 'print' functions (#662)
* Add test to superstartrek and fixes several issues in superstartrek - I probably introduced them 🙈
* Mastermind type annotations
2022-03-21 10:41:14 +01:00
Martin Thoma 83b3dc402c Python: Add type annotations 2022-03-20 19:16:39 +01:00
Jeff Atwood f40a1fc465 add Porting Notes to readme.md for each game 2022-03-18 19:50:22 -07:00
Martin Thoma f52d9a0e54 Clean Code: Python
Fix issues found by flake8-bugbear:

* Unused loop variables
* assert statements in non-test code
* mixing test code with production code
* mark one excessive test which takes ~10min to run
  as 'slow'
2022-03-18 14:59:08 +01:00
Jeff Atwood 6f6ac93d1f Merge pull request #633 from mojoaxel/js-terminal-style
Add "nice" terminal style stylesheet for javascript html
2022-03-15 23:50:18 -05:00
Jeff Atwood 43f2ec013a add 00_Alternate_Langage folder and move alternate ports there 2022-03-15 20:49:07 -07:00
Alexander Wunschik f2b3d6f2ed add terminal-stylesheet for javascript html 2022-03-13 11:23:05 +01:00
Martin Thoma e64fb6795c MAINT: Apply pre-commit
Remove byte-order-marker pre-commit check as there would be
many adjustments necessary
2022-03-05 09:29:23 +01:00
Stefan Waldmann a7b9ab89c6 Edit README.md 2022-01-29 17:05:10 +01:00
Stefan Waldmann 1f3855e98c Edit README.md 2022-01-29 16:56:53 +01:00
Stefan Waldmann 17e011405d Merge remote-tracking branch 'upstream/main' into main 2022-01-29 16:51:24 +01:00
Stefan Waldmann 6f7e311b51 Add Javadoc 2022-01-29 16:30:42 +01:00
Stefan Waldmann 69a62c5c4b Prompt for ENTER to continue 2022-01-28 08:01:21 +01:00
Stefan Waldmann be5552f677 Add command line arg to stop after each generation 2022-01-28 07:57:44 +01:00
Stefan Waldmann 7dadd251ab Evaluate invalid state 2022-01-19 07:20:50 +01:00
Nezumi Ronin d5a032e642 Create life.pl 2022-01-18 10:56:57 -06:00
Stefan Waldmann 064907c83e Print generation header formatted correctly 2022-01-17 19:08:19 +01:00
Stefan Waldmann 8df8eb6165 Refactor, add Javadoc 2022-01-17 18:48:29 +01:00
Stefan Waldmann b2735b1d2e Add Java implementation 2022-01-16 18:10:28 +01:00
Zev Spitz 75def2707d Add sln and csroj/vbproj files where missing 2022-01-16 08:17:31 +02:00
Dyego Maas 2ac2819151 Removed extra line printed after each generation, to better match the original's visuals. 2022-01-12 20:23:17 -03:00
Dyego Maas b93cc409e2 Adjusted message of "invalid" generations, matching the original. 2022-01-12 20:22:26 -03:00
Dyego Maas d52981de73 Refactoring. 2022-01-12 20:21:30 -03:00
Dyego Maas f70b6d42dd Refactoring. 2022-01-12 20:08:53 -03:00
Dyego Maas 7a7d92ce24 Compensated for the displacement that was occurring in the y axis by adjusting the "middle" to a valid value when working with zero based indexes. 2022-01-12 20:07:52 -03:00
Dyego Maas 5731a4df08 Temporary compensation for error calculating (possibly related to rounding) that caused misplacement of the initial pattern by 2 in the y axis. 2022-01-12 19:50:32 -03:00
Dyego Maas fd8c02371a Adjusting indexes. 2022-01-12 19:49:30 -03:00
Dyego Maas 6a3f0b3259 Fix various indexing problems that caused drifting. Now, the application behaves exactly like the original, even in "invalid" generations. 2022-01-12 16:09:10 -03:00
Dyego Maas f25adca07a Fix the initialization of the matrix, which was displacing the pattern in the initial position onto the matrix, which caused the evolution of the simulation to variate in relation with the original game in Basic when once the cells reached the boarder (invalid cases). 2022-01-12 16:07:35 -03:00
Dyego Maas 73665d8b09 Fixes cropping that would happen when using an dot (.) in the beggining of the text. 2022-01-12 16:04:57 -03:00
Dyego Maas 159aa46e21 Fixed pattern reading when inputing DONE, which would lead to incorrect sizing of the pattern transcribed to the matrix and caused drifting in relation to the original. 2022-01-12 16:04:14 -03:00
Dyego Maas f621116064 Adding instructions on how to enter patterns, and also some examples. 2022-01-12 10:50:36 -03:00
Dyego Maas f3d63355df Adding instructions on how to run the example. 2022-01-12 10:09:31 -03:00
Dyego Maas 337e7976d1 Performance optimization, reducing the amount of writes to the console necessary to output each iteration's matrix. 2022-01-12 09:50:35 -03:00
Dyego Maas 8c02ea39d2 Documented the --wait argument. 2022-01-11 20:58:07 -03:00
Dyego Maas 985e1886ac Adding comment about the port. 2022-01-11 20:51:48 -03:00
Dyego Maas c7c3d68a2e Moving pause location to the end of iteration. 2022-01-11 20:47:08 -03:00
Dyego Maas 3ffd2fdc52 Refactoring and documenting the solution. 2022-01-11 20:46:39 -03:00
Dyego Maas cd478a4a94 Added argument to configure a pause in between iterations, allowing the player to enjoy watching the evolution of the game of life. 2022-01-11 20:46:07 -03:00
Dyego Maas 4870a14909 Refactoring, plus adding real user input again. 2022-01-11 20:45:34 -03:00
Dyego Maas 778af346d7 Added enum Cell to enhance clarity. 2022-01-11 20:45:00 -03:00