Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- # Markov chain name generator
- # Author: Michael Stroud
- # Generates a list of 100 names using Markov chains based on a source list of
- # real names. The real names list should be in a file called "first_names.rb"
- # in the same folder as this script.
- #
- # No warranty, express or implied. I hope it's useful, but I make no promises.
- #
- # Permission is granted to modify and redistribute, but do not remove any of
- # these comments.
- require './first_names.rb'
- markov_name = ""
- 100.times do
- names_array = Names.names.split("\n")
- markov_name = names_array.sample[0]
- loop do
- split_str = markov_name[markov_name.length - 1]
- if markov_name.length > 1
- split_str.prepend(markov_name[markov_name.length - 2])
- end
- names_array = Names.names.split(split_str)
- names_array.shift
- next_sample = names_array.sample
- if next_sample.length > 0
- next_char = next_sample[0]
- break if next_char == "\n"
- markov_name << next_char
- end
- end
- puts markov_name
- end
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement