http://www.perlmonks.org?node_id=1003651


in reply to Re^2: Using user input to return variable typed.
in thread Using user input to return variable typed.

What is in $b? Where is $CMB? Why do you expect the value stored in a hash to change once it's been set? Why are you not rolling the die each time the user inputs a request?

If the computer were a person, here is what that person is doing currently:

  1. Roll a die, and write down the result.
  2. Roll another, and write down the result.
  3. Roll again and write down the result.
  4. Read the first result and write it again into a little book of indexes and corresponding values.
  5. Read the second result and write it again into a little book of indexes and corresponding values.
  6. Read the third result and write it again into a little book of indexes and corresponding values.
  7. Repeatedly ask someone what they would like to know.
  8. Look in your little index book and find the answer that was written down for the question that was asked.
  9. Read back to the user the answer that you wrote in your little book.
  10. Wonder why the answer written in the little book hasn't been magically erased and re-written without your intervention.

In real life, as a person, you would roll the dice each time someone requests a roll. In your program, you roll just one time and store the result. I don't think that caching a die roll is the right approach.


Dave