In the long term, Wikidata is probably the way to go on something like this.

In the short term, as far as dividing things up, note that you can
implement on-demand loading in Lua easily enough using the __index
metamethod.

  local obj = {}

  setmetatable( obj, {
      __index = function ( t, k )
          -- This will get called on access of obj[k] if it is not already
set.
          -- Do whatever you might need, e.g. require() a submodule,
          -- assign things to t for future lookups, then return the
requested k.
      end
  } )

  return obj

Also note that you can save space at the expense of code complexity by
accessing "obj.us_name or obj.name" rather than storing the same string in
both fields; remember in Lua only nil (unset) and boolean false are
considered "false", the number 0 and the empty string are both considered
true.
_______________________________________________
Wikitech-l mailing list
Wikitech-l@lists.wikimedia.org
https://lists.wikimedia.org/mailman/listinfo/wikitech-l

Reply via email to