For 2023 (and 2024 ...) - we are now fully retired from IT training. We have made many, many friends over 25 years of teaching about Python, Tcl, Perl, PHP, Lua, Java, C and C++ - and MySQL, Linux and Solaris/SunOS too. Our training notes are now very much out of date, but due to upward compatability most of our examples remain operational and even relevant ad you are welcome to make us if them "as seen" and at your own risk.
Lisa and I (Graham) now live in what was our training centre in Melksham - happy to meet with former delegates here - but do check ahead before coming round. We are far from inactive - rather, enjoying the times that we are retired but still healthy enough in mind and body to be active!
I am also active in many other area and still look after a lot of web sites - you can find an index ((here)) |
Dot, dot, dot in Lua - variable length parameter lists
 Lua functions can take any number of parameters - the ... (dot,dot,dot) table given as a parameter 'soaking up' all remaining parameters into the indexed section of the table, rather this "*" in front of a parameter in PHP. (In Perl, the whole list appears in @_)
function join (sep,...)
togo = {...}
There are two styles to calling Lua functions - passing in a comma separated list of parameters in round brackets, or combining them into a table in curly braces:
-- Many parameter variety
str1 = join(" ","This","is","a","Program")
-- Two parameter variety
str2 = join(" ",{"This","is","another","Program"})
And the code within the function can tell the styles apart and adapt itself as appropriate by checking the number and/or type of parameters:
if type(togo[1]) == "table" then
See source code of full example
Illustration - delegates on a private Lua course. We run public Lua training courses at our centre in Melksham, Wiltshire, England and private course onsite worldwide.
(written 2009-08-11, updated 2010-06-19)
Associated topics are indexed as below, or enter http://melksh.am/nnnn for individual articles U106 - Lua - Functions. [1685] Short circuit evaluation (lazy operator) in Lua - (2008-06-22) [1697] Sorting in lua - specifying your own sort routine - (2008-07-05) [1699] If you are learning Lua, here are some more examples - (2008-07-06) [1743] First class functions in Lua lead to powerful OO facilities - (2008-08-07) [1744] Lua examples, Lua Courses - (2008-08-08) [1847] Lua - IAQ (Infrequently Answered Questions) - (2008-10-18) [2312] What are closures in Lua? - (2009-07-31) [2356] Passing multiple results back from a function - Lua, Python, etc - (2009-08-13) [2455] Lua examples - coroutines, error handling, objects, etc - (2009-10-15) [2723] Returning multiple values from a function - Lua - (2010-04-15) [2949] Lua - variable function arguments and select - (2010-09-08) [3695] Functions are first class variables in Lua and Python - (2012-04-13)
Some other Articles
Ternary operators alternatives - Perl and Lua lazy operatorsTen years in Melksham - looking forward to ten more.Businesses effected by road works in MelkshamFinding literals rather than patterns in LuaDot, dot, dot in Lua - variable length parameter listsThe indexed and hashed parts of a Lua tableAutomatically initialising Lua variables the first timeReading a data file and sensing EOF in LuaWorld Flags in your PHP pagesTraining Classes in other tongues
|
4759 posts, page by page
Link to page ... 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96 at 50 posts per page
This is a page archived from The Horse's Mouth at
http://www.wellho.net/horse/ -
the diary and writings of Graham Ellis.
Every attempt was made to provide current information at the time the
page was written, but things do move forward in our business - new software
releases, price changes, new techniques. Please check back via
our main site for current courses,
prices, versions, etc - any mention of a price in "The Horse's Mouth"
cannot be taken as an offer to supply at that price.
Link to Ezine home page (for reading).
Link to Blogging home page (to add comments).
|
|