#!/usr/bin/lua local point= require "point" local print_r= function(table) for key,value in pairs(table) do io.write("[", key, "] = ", tostring(value), "\n") end end local p= point.new_Point(3,4) --p.x= 8 --> Write access throws an error --print(p.y) --> Read access throws an error print(p:tostring()) --> [3|4] print_r(p) --> prints nothing