my_object = {}; --تمام پودمانهای لوآ در ویکیپدیا باید با تعریف یک متغیر آغاز شوند
--که توابعی را نگه میدارد که از خارج قابل دسترسی هستند.
--متغیرها هر اسمی که شما بخواهید میتوانند داشته باشند
--و همچنین هر تعداد تابع و داده ممکن است.
my_object.hello = function( frame ) --یک تابع به «my_object» اضافه کنید.
--چنین توابعی در ویکیپدیا
--بهواسطه دستور #invoke قابل فراخوانی هستند.
--«frame» دادههایی را شامل میشود که ویکیپدیا
--به این متد هنگام اجرا میفرستد.
local str = "Hello, World!" --یک متغیر محلی تعریف کنید و مقدار زیر را به آن نسبت دهید
--"Hello, World!".
return str --این خط میگوید که به پایان کار تابع رسیدیم و مقدار
--متغیر «str» را به ویکیپدیا برگردان.
end -- پایان تابع «hello»
return my_object --همهٔ پودمانها با بازگرداندن متغیری که شامل توابع خود میشود
--به ویکیپدیا پایان مییابند.
-- اکنون میتوانیم از این پودمان با دستور {{#invoke: HelloWorld | hello }} استفاده کنیم.
-- توجه کنید که اولین قسمت فراخوانی نام پودمان در ویکیپدیا است
-- و دومین قسمت نام یکی از توابع متغیری است که
-- به ویکیپدیا بازگرداندید.
-- تابع «print» در ویکیپدیا مجاز نیست. تمام خروجی با
-- رشتههای «returned» برای ویکیپدیا بدست میآیند.