Remember its mostly just an algorithm, not a game yet, the rules for blackjack can be found http://en.wikipedia.org/wiki/Blackjack. Theres also a couple of Perl nasties in there too, i.e. inappropriate global var, it will eventually be written in OOP. Although in blackjack the suit (hearts, diamonds, clubs, spades) doesn't particularly matter, i'll eventually need to keep track of all fifty two cards, assigning them to columns / piles. The suit will be important when displaying the appropriate image. I could even put my own twist on the game, i.e. set 4H => [0], therefore making it a special card that will only serve me in achieving a five card trick. I thought it would be best to jump straight into passing a "list of card keys" as oppose to a "list of list of values" to the entry function.