Questions about this topic? Sign up to ask in the talk tab.

Difference between revisions of "LUA"

From NetSec
Jump to: navigation, search
 
(10 intermediate revisions by 2 users not shown)
Line 1: Line 1:
 
Lua is a portable [[interpreted languages|interpreted language]]. It is mainly used in Games, however it is also used by [[nmap|NMAP]]'s Scripting Engine
 
Lua is a portable [[interpreted languages|interpreted language]]. It is mainly used in Games, however it is also used by [[nmap|NMAP]]'s Scripting Engine
  
 +
<font size="-2">Special thanks to [[User:Trep|Trep]] for his contributions to this article.</font>
 
=Comments=
 
=Comments=
 
{{code|text=
 
{{code|text=
Line 21: Line 22:
  
 
=Variables=
 
=Variables=
In Lua, variables are very simple, you don't even have to declare a datatype, all you need to do is assign a value.
+
Variables in Lua are very simple. it is not required to declare the variable's data type, just assign a value.
 
{{code|text=
 
{{code|text=
 
<source lang="lua">
 
<source lang="lua">
Line 32: Line 33:
 
}}
 
}}
 
==Global Variables vs Local Variables==
 
==Global Variables vs Local Variables==
When you declare a variable in Lua, it is globally accessible unless otherwise specified with ''local''.
+
 +
When Variables in lua are declared, they are globally accessible unless otherwise specified with ''local''.
  
 
{{code|text=
 
{{code|text=
 
<source lang="lua">
 
<source lang="lua">
 
GlobalVar = 0
 
GlobalVar = 0
 +
local LocalVar = 1337
 
</source>
 
</source>
 
}}
 
}}
  
 +
=Functions=
 +
Functions in lua are quite easy as well.
 +
{{code|text=
 +
<source lang="lua">
 +
function SimpleAddition(x,y,z)
 +
  local Sum = x + y + z --only accessible from within this context.
 +
  SumTimesTwo = Sum * 2 -- can be referenced from anywhere in the current file, or wherever file is loaded.
 +
  return Sum
 +
end
 +
</source>
 +
}}
  
 +
 +
=Tables=
 +
Lua tables are a bit like arrays, except that an array is.. well an array of values.
 +
A Table, is an array of Keys, and those Keys have values.
 +
 +
 +
====Declaring an empty Table====
 
{{code|text=
 
{{code|text=
 
<source lang="lua">
 
<source lang="lua">
local LocalVar = 0
+
MyTable = {} --declares an empty table.
 +
</source>
 +
}}
 +
====Declaring, and populating a Table====
 +
{{code|text=
 +
<source lang="lua">
 +
Numbers = {"one","Two","Three","Four","Five"}
 +
</source>
 +
}}
 +
The above declaration is exact to the one below
 +
{{code|text=
 +
<source lang="lua">
 +
Numbers = {}
 +
Numbers[1] = "one"
 +
Numbers[1] = "Two"
 +
Numbers[1] = "Three"
 +
Numbers[1] = "Four"
 +
Numbers[1] = "Five"
 +
</source>
 +
}}
 +
 
 +
====Indexing Tables====
 +
{{Protip|Unlike what you would expect, the index for a table starts at 1, instead of 0.}}
 +
{{code|text=
 +
<source lang="lua">
 +
Numbers = {"one","Two","Three","Four","Five"}
 +
print(Numbers[0]) -- prints nil, as index starts at 1.
 +
print(Numbers[1]) -- prints "one"
 
</source>
 
</source>
 
}}
 
}}
  
[[Category:Programming Languages]]
 
  
 
{{programming}}{{social}}
 
{{programming}}{{social}}
 +
 +
[[Category:Interpreted languages]][[Category:Programming Languages]]

Latest revision as of 03:43, 20 September 2012

Lua is a portable interpreted language. It is mainly used in Games, however it is also used by NMAP's Scripting Engine

Special thanks to Trep for his contributions to this article.

Comments

 
-- This is a single line comment
 
 
--[[
  This
  is
  a
  multi-line
  comment
  ]]
 


Variables

Variables in Lua are very simple. it is not required to declare the variable's data type, just assign a value.

 
Var = 1
Var2 = "Im a var!"
Var3 = 2
Var4 = Var * Var3
 
 

Global Variables vs Local Variables

When Variables in lua are declared, they are globally accessible unless otherwise specified with local.

 
GlobalVar = 0
local LocalVar = 1337
 

Functions

Functions in lua are quite easy as well.

 
function SimpleAddition(x,y,z)
   local Sum = x + y + z --only accessible from within this context.
   SumTimesTwo = Sum * 2 -- can be referenced from anywhere in the current file, or wherever file is loaded.
   return Sum
end
 


Tables

Lua tables are a bit like arrays, except that an array is.. well an array of values. A Table, is an array of Keys, and those Keys have values.


Declaring an empty Table

 
MyTable = {} --declares an empty table.
 

Declaring, and populating a Table

 
Numbers = {"one","Two","Three","Four","Five"} 
 

The above declaration is exact to the one below

 
Numbers = {} 
Numbers[1] = "one"
Numbers[1] = "Two"
Numbers[1] = "Three"
Numbers[1] = "Four"
Numbers[1] = "Five"
 

Indexing Tables

Protip: Unlike what you would expect, the index for a table starts at 1, instead of 0.
 
Numbers = {"one","Two","Three","Four","Five"} 
print(Numbers[0]) -- prints nil, as index starts at 1.
print(Numbers[1]) -- prints "one"
 


LUA is part of a series on programming.
<center>
</center>