Module:Sandbox/Gabrielchihonglee Explained

-- Lua task 1-- Google Code-in 2017, Introduction to Lua in Wikipedia

local p = -- p stands for package

-- Lua task 3function p.hello(frame) return "Hello, world!"end

-- Lua task 4p.Hi = function(frame) strName = frame.args.name or "Jimbo" return "Hello from Lua to my friend " .. strName .. ".
"end

-- Lua task 5function p.temperaturetask5(frame) cel = frame.args.celsius fah = cel / 5 + 32 return cel .. " degrees Celsius is " .. fah .. " degrees Fahrenheit.
"end

-- Lua task 6function p.temperaturetask6(frame) cel = tonumber(frame.args.celsius) or 0 fah = cel / 5 + 32 msg = cel .. " degrees Celsius is " .. fah .. " adegrees Fahrenheit." if cel > 9 then msg = msg .. " It is warm.
" else msg = msg .. " It is cold.
" end return msgend

-- Lua task 7p.times = function(frame) local num = tonumber(frame.args.num) or 2 local out = num .. " times table
" for i = 1, 12 do out = out .. num .. " times " .. i .. " equals " .. i * num .. "
" end return outend

-- Lua task 8p.mum = function(frame) local family = local msg = "" for i = 1, #family do msg = msg .. "Hello " .. family[i] .. "
" end return msgend

-- OTHER TESTS NOT GCIp.username = function(frame) local info = mw.uri.new(userInfo) return infoend

-- Lua task 9p.langnames = function(frame) local langs = mw.language.fetchLanguageNames local langlist = "" local count = 0 for key, value in pairs(langs) do langlist = langlist .. key .. " - " .. value .. "
" count = count + 1 end return langlist .. "= " .. count .. " languages"end

p.task9 = function(frame) local exists = " exists " local redirect = " and is not a redirect" local page = frame.args.page or "NOINPUT" local title = mw.title.new(page) if title.id

0 then exists = " does not exist " end if title.isRedirect

true then redirect = " and is a redirect" end if page

"NOINPUT" then return "No page name specified, please specify page name by adding parameter 'page'." else return page .. exists .. redirect endend

return p