typing = {}

--returns keys of mismatches
typing.matchSignature = function(tab, sig)
	for key, v in pairs(sig)
	do
		if type(tab[key]) ~= v
		then
			return key, v, type(tab[key])
		end
	end
end


--[[
local testSignature =
{
	a = "number",
	b = "string",
	c = "boolean",
	d = "nil"
}

local test =
{
	a = 1,
	b = "",
	c = false,
}

print(typing.matchSignature(test, testSignature))
]]