title: Why isn't my LUA interpreter able to handle string key values?
body: <p>When testing code with both a predefined script and the LUA runtime environment, LUA will not take any form of string key values. However, if a numerical value key is used LUA will work with it as intended. The exception to this rule when I am using Tshark with a LUA file to parse packet captures. This allows the string key value syntax to work normally. Is there something I may be performing wrong?</p>
  
  <p>I have tried creating several .lua script files with different variations including:</p>
  
  <p>testArray.NewItem = "value1"
  testArray["NewItem"] = "value1"</p>
  
  <p>NewItemValue = "NewItem"
  testArray[NewItemValue] = "value1"</p>
  
  <p>These all result in an nil value or an error due to trying to call a nil value depending on the return style used to check.</p>
  
  <pre><code>&gt; tcpstream = {}
  &gt; stream1 = tostring(14356)
  &gt; tcpstream[stream1] = "nothing"
  &gt; print(#tcpstream)
  0
  &gt; print(tcpstream[1])
  nil
  &gt; tcpstream[1] = "nothing"
  &gt; print(#tcpstream)
  1
  &gt; print(tcpstream[1])
  nothing
  </code></pre>
  
  <p>the output of the print(#tcpstream) after the tcpstream[stream1] = "nothing" should show 1 not zero. The subsequent print(tcpstream[1]) should also show "nothing".</p>