<commit_before>life_game_viewer
================

This is a JRuby application that uses Java's Swing UI library
to render generations of Conway's Game of Life.

My intention in writing it was to provide a GUI player
with which developers could view and test their implementations
of the Game of Life exercise.

In order to do the exercise, you will need to effectively replace the
LifeModel's implementation with your own.  You will need to
respond appropriately to the LifeModel's public method names, because
they are called by the viewer, but you can implement them any way you
want, even using the LifeModel as a minimal adapter to a completely
different design. A LifeModel skeleton is provided for this purpose.

This software is located on GitHub at https://github.com/keithrbennett/life-game-viewer.

You can run it by rvm'ing to JRuby, cd'ing to the project's home directory,
and issuing the command lib/main.rb.

It is also available via the standard gem repository, so you can just do:

You can also use it as a gem (which you would naturally do if that is the
way you downloaded it). You can either the standard gem repository
(TODO: put it there), or do a gem build *gemspec from the project root,
and then gem install that file.

Then in your code (or in JRuby's irb) you can do:

require 'life_game_viewer'
LifeGameViewer.new.view<commit_msg>Refined run instructions in README.<commit_after>life_game_viewer
================

This is a JRuby application that uses Java's Swing UI library
to render generations of Conway's Game of Life.

My intention in writing it was to provide a GUI player
with which developers could view and test their implementations
of the Game of Life exercise.

In order to do the exercise, you will need to effectively replace the
LifeModel's implementation with your own.  You will need to
respond appropriately to the LifeModel's public method names, because
they are called by the viewer, but you can implement them any way you
want, even using the LifeModel as a minimal adapter to a completely
different design. A LifeModel skeleton file is provided for this purpose.

This software is located on GitHub at https://github.com/keithrbennett/life-game-viewer.

You can run it as follows: by rvm'ing to JRuby, cd'ing to the project's home directory,

```shell
rvm jruby
cd $LIFE_GAME_VIEWER_HOME  # wherever you've put it
lib/main.rb
```

It is also available via the standard gem repository, so you can just do:

You can also use it as a gem.  It will be made available on the standard
gem repository (if it is not already), or you can 'gem build' it
from the project root on the command line.

Then in your code (or in JRuby's irb) you can do:

```ruby
require 'life_game_viewer'
LifeGameViewer.new.view
```

{'fraction_non_alphanumeric': 0.0548492553577915, 'fraction_numerical': 0.0, 'mean_word_length': 4.48605577689243, 'pattern_counts': {'":': 0, '<': 3, '<?xml version=': 0, '>': 3, 'https://': 2, 'lorem ipsum': 0, 'www.': 0, 'xml': 0}, 'pii_count': 0, 'substrings_counts': 0, 'word_list_counts': {'cursed_substrings.json': 1, 'profanity_word_list.json': 0, 'sexual_word_list.json': 0, 'zh_pornsignals.json': 0}}
{'dir': 'git-commits-cleaned', 'id': '36254', 'n_tokens_mistral': 771, 'n_tokens_neox': 719, 'n_words': 433}