Talk:Lua (programming language)
This is the talk page for discussing improvements to the Lua (programming language) article. This is not a forum for general discussion of the article's subject. |
Article policies
|
Find sources: Google (books · news · scholar · free images · WP refs) · FENS · JSTOR · TWL |
![]() | This ![]() It is of interest to multiple WikiProjects. | ||||||||||||||||||||||||||||||||||||||||||||||
|
Index
|
||
This page has archives. Sections may be automatically archived by Lowercase sigmabot III when more than 4 sections are present. |
e.g.:
quote(string) -> "string" quote(quote(expr)) -> "quote(expr)" quote(quasiquote(expr)) -> "quasiquote(expr)" quote(quasiquote(unquote(expr))) -> "quasiquote(unquote(expr))" quote(unquote(expr)) -> "unquote(expr)" quasiquote(string) -> "string" quasiquote(quote(expr)) -> "quote(expr)" quasiquote(quasiquote(expr)) -> "quasiquote(expr)" quasiquote(unquote(expr)) -> expr
−3, –3, and -3 are three different things; to wit a minus, an endash, and a hyphen. Dis sayin' ... --Brogo13 (talk) 20:15, 11 February 2020 (UTC)
- I explained the problem, which is unrelated to this article, at my talk. Johnuniq (talk) 23:12, 11 February 2020 (UTC)
- The problem, according to your edit summary, was my script—I have none. I simply found some hyphens masquerading as dashes and some where minus signs would make sense e.g. west longtitudes and south latitudes. (Why they work but minuses don't is still beyond me.) --Brogo13 (talk) 03:12, 12 February 2020 (UTC)
- Template parameters expect numbers to be numbers, for example 12.3 or -12.3 (that's a hyphen which is the universal symbol for a negative number in programming languages). Some code in MediaWiki accepts a minus sign as equivalent to negative but modules (using Lua) do not, not unless the module takes extra steps to convert minus signs to hyphens before interpreting the numbers. Minus signs are typographic symbols for humans. Johnuniq (talk) 03:47, 12 February 2020 (UTC)
Object oriented programming?
[edit]In 'metatables', we learn that __index is a function that is called __index(self, key) whenever a key is not found.
But in 'object oriented programming', __index is set to Vector itself.
Does this mean that a table *is* a self function that performs lookup? That x['foo'] is the same as x(x, 'foo') ?
203.13.3.90 (talk) 00:54, 21 July 2020 (UTC)
- No it isn't. You can convince yourself of that by using https://www.lua.org/cgi-bin/demo and pasting the following:
x = {} x['foo'] = 123 print( x['foo'] ) print( x(x, 'foo') )
- The first print returns 123 as expected, the second returns an error. A table clearly performs a lookup, but is not a function in the Lua sense. For more information on datatypes, see https://www.lua.org/manual/5.3/manual.html#2 --RexxS (talk) 19:57, 21 July 2020 (UTC)
Not strongly typed
[edit]Info box says in "Typing discipline", "strong", but that is not true.
Similar to PHP or JavaScript, (and probably Perl and AWK), Lua has is weakly typed especially in arithmetic, i.e. "10" + 1 is allowed and result is integer 11 (technically number 11.0). Same with "5.5" * "2", is integer 11. On the other hand indexing into a "array" (table), t["1"] and t[1] are different (but t[0+"1"] and t[1] are same).
Some people argue that that is still strong typing, because for string concatenation one would use ".." in Lua. But that is not good enough argument. For example Wikipedia says C is weakly typed, but arguably Lua has even weaker type system, due to above mentioned value coercion in arithmetic, which does not happen in C. 81.6.34.169 (talk) 01:32, 1 September 2024 (UTC)
- C-Class vital articles
- Wikipedia level-5 vital articles
- Wikipedia vital articles in Technology
- C-Class level-5 vital articles
- Wikipedia level-5 vital articles in Technology
- C-Class vital articles in Technology
- C-Class Brazil articles
- Low-importance Brazil articles
- C-Class education and science in Brazil articles
- Low-importance education and science in Brazil articles
- Education and science in Brazil task force articles
- WikiProject Brazil articles
- C-Class Computer science articles
- Mid-importance Computer science articles
- WikiProject Computer science articles
- C-Class Computing articles
- Mid-importance Computing articles
- C-Class software articles
- Unknown-importance software articles
- C-Class software articles of Unknown-importance
- All Software articles
- C-Class Free and open-source software articles
- Mid-importance Free and open-source software articles
- C-Class Free and open-source software articles of Mid-importance
- All Free and open-source software articles
- All Computing articles