May 2012 Lua Article Problems

The lua examples in the May 2012 article "Object-Oriented Programming with Lua" do not seem to work as presented in either version 5.4.1 or 5.2. In particular using:

function Point.new(self, o)
local p = o or {x=0, y=0}
return p
end

and the print method given. Then using:

p1 = Point.new({x=10, y=10})

Point.print(p1)

Gives (0,0) instead of (10,10).

The problem appears to be the "self" in the constructor makes to ctor fail to process the object {x=10, y=10}. Is something missing from the article?

Problem Resolved

crandylb's picture

Syntax requires using the colon ":" instead of dot "." in
p1 = Point:new({x=10, y=10})
Then the print method works.

Free Dummies Books
Continuous Engineering

Learn:

  • What continuous engineering is
  • How to continuously improve complex product designs
  • How to anticipate and respond to markets and clients
  • How to get the most out of your engineering resources

Get your free book now

Sponsored by IBM

Free Dummies Books
Service Virtualization

Learn to:

  • Define service virtualization
  • Select the most beneficial services to virtualize
  • Improve your traditional approach to testing
  • Deliver higher-quality software faster

Get your free book now

Sponsored by IBM