How to resolve the algorithm Idiomatically determine all the characters that can be used for symbols step by step in the Lua programming language
How to resolve the algorithm Idiomatically determine all the characters that can be used for symbols step by step in the Lua programming language
Table of Contents
Problem Statement
Idiomatically determine all the characters that can be used for symbols. The word symbols is meant things like names of variables, procedures (i.e., named fragments of programs, functions, subroutines, routines), statement labels, events or conditions, and in general, anything a computer programmer can choose to name, but not being restricted to this list. Identifiers might be another name for symbols. The method should find the characters regardless of the hardware architecture that is being used (ASCII, EBCDIC, or other). Display the set of all the characters that can be used for symbols which can be used (allowed) by the computer program. You may want to mention what hardware architecture is being used, and if applicable, the operating system. Note that most languages have additional restrictions on what characters can't be used for the first character of a variable or statement label, for instance. These type of restrictions needn't be addressed here (but can be mentioned).
Let's start with the solution:
Step by Step solution about How to resolve the algorithm Idiomatically determine all the characters that can be used for symbols step by step in the Lua programming language
Source code in the lua programming language
function isValidIdentifier(id)
local reserved = {
["and"]=true, ["break"]=true, ["do"]=true, ["end"]=true, ["else"]=true, ["elseif"]=true, ["end"]=true,
["false"]=true, ["for"]=true, ["function"]=true, ["goto"]=true, ["if"]=true, ["in"]=true,
["local"]=true, ["nil"]=true, ["not"]=true, ["or"]=true, ["repeat"]=true, ["return"]=true,
["then"]=true, ["true"]=true, ["until"]=true, ["while"]=true }
return id:find("^[a-zA-Z_][a-zA-Z0-9_]*$") ~= nil and not reserved[id]
end
vfc, vsc = {}, {}
for i = 0, 255 do
local c = string.char(i)
if isValidIdentifier(c) then vfc[#vfc+1]=c end
if isValidIdentifier("_"..c) then vsc[#vsc+1]=c end
end
print("Valid First Characters: " .. table.concat(vfc))
print("Valid Subsequent Characters: " .. table.concat(vsc))
You may also check:How to resolve the algorithm Evaluate binomial coefficients step by step in the F# programming language
You may also check:How to resolve the algorithm Call a function in a shared library step by step in the Tcl programming language
You may also check:How to resolve the algorithm Respond to an unknown method call step by step in the C# programming language
You may also check:How to resolve the algorithm Exceptions step by step in the PureBasic programming language
You may also check:How to resolve the algorithm Quaternion type step by step in the PowerShell programming language