<commit_before># VendingMachineKata

My implementation of [Guy Royse's][1] [Vending Machine Kata][2].

  [1]:https://github.com/guyroyse
  [2]:https://github.com/guyroyse/vending-machine-kata

# Design

Vending machines are really just [Finite State Machines][3] and can be implemented in hardware. If the wikipedia article above is a bit too heavy, there's a great video from Computerphile, [Computers without memory][4].

Being we're building a state machine, I suspect we'll make use of the state pattern once we move beyong simply accepting/rejecting coins.

  [3]:https://en.wikipedia.org/wiki/Finite-state_machine
  [4]:https://www.youtube.com/watch?v=vhiiia1_hC4
<commit_msg>Added notes about states to read me<commit_after># VendingMachineKata

My implementation of [Guy Royse's][1] [Vending Machine Kata][2].

  [1]:https://github.com/guyroyse
  [2]:https://github.com/guyroyse/vending-machine-kata

# Design

Vending machines are really just [Finite State Machines][3] and can be implemented in hardware. If the wikipedia article above is a bit too heavy, there's a great video from Computerphile, [Computers without memory][4].

Being we're building a state machine, I suspect we'll make use of the state pattern once we move beyong simply accepting/rejecting coins.

  [3]:https://en.wikipedia.org/wiki/Finite-state_machine
  [4]:https://www.youtube.com/watch?v=vhiiia1_hC4

The following display states exist:
 1. Price
 2. Thank you!
 3. Insert Coin
 4. Current Total
{'fraction_non_alphanumeric': 0.10398379473328832, 'fraction_numerical': 0.016205266711681297, 'mean_word_length': 4.766536964980545, 'pattern_counts': {'":': 0, '<': 3, '<?xml version=': 0, '>': 3, 'https://': 8, 'lorem ipsum': 0, 'www.': 2, 'xml': 0}, 'pii_count': 0, 'substrings_counts': 0, 'word_list_counts': {'cursed_substrings.json': 0, 'profanity_word_list.json': 0, 'sexual_word_list.json': 0, 'zh_pornsignals.json': 0}}
{'dir': 'git-commits-cleaned', 'id': '1235721', 'n_tokens_mistral': 483, 'n_tokens_neox': 453, 'n_words': 162}