|
12
|
Dear Lua community,
I'm proud to announce the initial public release of LuaRT, a
comprehensive framework for Windows to develop in Lua.
Please visit the project home page for more info: https://www.luart.org(Documentation is still a work in progress)
LuaRT is based on Lua 5.4.1.
Disclaimer : LuaRT is beta material as bugs, caveats may occur...
Any feedback will be appreciated !
Samir
|
|
Nice project! But can you tell us why did you choose CC-BY-NC-ND 3.0
as luart's licence?
|
|
Le 2021-01-17 20:46, Sudipto Mallick a écrit :
> Nice project! But can you tell us why did you choose CC-BY-NC-ND 3.0
> as luart's licence?
Hi Mallick,
I just wanted to keep the project closed source for the moment, while
being able to distribute a binary package as freeware.
That license permits it and protect my intellectual property for that
work too.
Regards,
Samir
|
|
On 1/17/2021 10:35 AM, [hidden email] wrote:
> Dear Lua community,
>
> I'm proud to announce the initial public release of LuaRT, a
> comprehensive framework for Windows to develop in Lua.
>
> Please visit the project home page for more info: https://www.luart.org> (Documentation is still a work in progress)
>
> LuaRT is based on Lua 5.4.1.
> Disclaimer : LuaRT is beta material as bugs, caveats may occur...
>
> Any feedback will be appreciated !
>
> Samir
>
>
Looks very good. Documentation needs work, of course. Can 'each' be used
on Objects and if so how? The method names 'constructor' and
'destructor' while highly descriptive, are a bit long.
|
|
Any feedback will be appreciated !
The website looks nice! :-)
I see you have removed os.setlocale() from the standard library.
How to switch between C locale and national locale? Which locale is used in string.upper(), pattern "%u" and "str1 < str2" ? How are char intervals interpreted in patterns (such as "[A-Z]" but with unicode symbols)?
|
|
Le 2021-01-18 09:30, Michael Nelson a écrit :
> On 1/17/2021 10:35 AM, [hidden email] wrote:
>> Dear Lua community,
>>
>> I'm proud to announce the initial public release of LuaRT, a
>> comprehensive framework for Windows to develop in Lua.
>>
>> Please visit the project home page for more info:
>> https://www.luart.org>> (Documentation is still a work in progress)
>>
>> LuaRT is based on Lua 5.4.1.
>> Disclaimer : LuaRT is beta material as bugs, caveats may occur...
>>
>> Any feedback will be appreciated !
>>
>> Samir
>>
>>
> Looks very good. Documentation needs work, of course. Can 'each' be
> used on Objects and if so how? The method names 'constructor' and
> 'destructor' while highly descriptive, are a bit long.
Yes, the function 'each' can be used on Objects, but only for objects
from the standard library for the moment.
Had to agree for long method names "constructor" and "destructor", but I
think it fits more Lua style.
Samir
|
|
Le 2021-01-18 11:54, Egor Skriptunoff a écrit :
>> Any feedback will be appreciated !
>
> The website looks nice! :-)
>
> I see you have removed os.setlocale() from the standard library.
>
> How to switch between C locale and national locale?
> Which locale is used in string.upper(), pattern "%u" and "str1 < str2"
> ?
> How are char intervals interpreted in patterns (such as "[A-Z]" but
> with unicode symbols)?
Thank you for the feedback on the website :)
LuaRT does not use the concept of C locale.
All the necessary configuration is done during the 'sys' module
initialization for writing UTF8 characters to the console (with some
limits for some region, see discussion on the console limitation on
Windows for some language).
String.upper and string.lower uses the Windows API which is quite good
for some accentued characters.
Char intervals are treated the same. An accentued character (for example
"à") is not in the interval [A-Z] (which includes letters, but not
accentued letters).
Samir
|
|
Hi, nice project. What the syntax for the net.Socket? this fail: " in method Socket.constructor : 80" enigmatic error.
regards, Ranier Vilela Le 2021-01-18 11:54, Egor Skriptunoff a écrit :
>> Any feedback will be appreciated !
>
> The website looks nice! :-)
>
> I see you have removed os.setlocale() from the standard library.
>
> How to switch between C locale and national locale?
> Which locale is used in string.upper(), pattern "%u" and "str1 < str2"
> ?
> How are char intervals interpreted in patterns (such as "[A-Z]" but
> with unicode symbols)?
Thank you for the feedback on the website :)
LuaRT does not use the concept of C locale.
All the necessary configuration is done during the 'sys' module
initialization for writing UTF8 characters to the console (with some
limits for some region, see discussion on the console limitation on
Windows for some language).
String.upper and string.lower uses the Windows API which is quite good
for some accentued characters.
Char intervals are treated the same. An accentued character (for example
"à") is not in the interval [A-Z] (which includes letters, but not
accentued letters).
Samir
|
|
Le 2021-01-18 20:40, Ranier Vilela a écrit :
> Hi, nice project.
> What the syntax for the net.Socket?
> sock = net.Socket(" http://200.152.38.155", 80)
>
> this fail: " in method Socket.constructor : 80"
> enigmatic error.
>
> regards,
> Ranier Vilela
>
> Em seg., 18 de jan. de 2021 às 16:17, < [hidden email]>
> escreveu:
>
>> Le 2021-01-18 11:54, Egor Skriptunoff a écrit :
>>>> Any feedback will be appreciated !
>>>
>>> The website looks nice! :-)
>>>
>>> I see you have removed os.setlocale() from the standard library.
>>>
>>> How to switch between C locale and national locale?
>>> Which locale is used in string.upper(), pattern "%u" and "str1 <
>> str2"
>>> ?
>>> How are char intervals interpreted in patterns (such as "[A-Z]"
>> but
>>> with unicode symbols)?
>>
>> Thank you for the feedback on the website :)
>>
>> LuaRT does not use the concept of C locale.
>> All the necessary configuration is done during the 'sys' module
>> initialization for writing UTF8 characters to the console (with some
>>
>> limits for some region, see discussion on the console limitation on
>> Windows for some language).
>>
>> String.upper and string.lower uses the Windows API which is quite
>> good
>> for some accentued characters.
>> Char intervals are treated the same. An accentued character (for
>> example
>> "à") is not in the interval [A-Z] (which includes letters, but not
>> accentued letters).
>>
>> Samir
Thanks for your feedback.
You found a bug :)
You should use :
sock = net.Socket("200.152.38.155", 80)
For an ip address, you should remove the "http://"
Thanks again to the Lua community for your questions.
I don't want to polluate the Lua list with such specific questions that
are out of scope of the list.
Such quesitons should be asked on LuaRT community (link on the LuRT
website).
Samir
|
|
Hi, Something it doesn't smell good. See at:
32 virus engines point to your exe.
regards, Ranier Vilela
Le 2021-01-18 20:40, Ranier Vilela a écrit :
> Hi, nice project.
> What the syntax for the net.Socket?
> sock = net.Socket("http://200.152.38.155", 80)
>
> this fail: " in method Socket.constructor : 80"
> enigmatic error.
>
> regards,
> Ranier Vilela
>
> Em seg., 18 de jan. de 2021 às 16:17, <[hidden email]>
> escreveu:
>
>> Le 2021-01-18 11:54, Egor Skriptunoff a écrit :
>>>> Any feedback will be appreciated !
>>>
>>> The website looks nice! :-)
>>>
>>> I see you have removed os.setlocale() from the standard library.
>>>
>>> How to switch between C locale and national locale?
>>> Which locale is used in string.upper(), pattern "%u" and "str1 <
>> str2"
>>> ?
>>> How are char intervals interpreted in patterns (such as "[A-Z]"
>> but
>>> with unicode symbols)?
>>
>> Thank you for the feedback on the website :)
>>
>> LuaRT does not use the concept of C locale.
>> All the necessary configuration is done during the 'sys' module
>> initialization for writing UTF8 characters to the console (with some
>>
>> limits for some region, see discussion on the console limitation on
>> Windows for some language).
>>
>> String.upper and string.lower uses the Windows API which is quite
>> good
>> for some accentued characters.
>> Char intervals are treated the same. An accentued character (for
>> example
>> "à") is not in the interval [A-Z] (which includes letters, but not
>> accentued letters).
>>
>> Samir
Thanks for your feedback.
You found a bug :)
You should use :
sock = net.Socket("200.152.38.155", 80)
For an ip address, you should remove the "http://"
Thanks again to the Lua community for your questions.
I don't want to polluate the Lua list with such specific questions that
are out of scope of the list.
Such quesitons should be asked on LuaRT community (link on the LuRT
website).
Samir
|
|
Le 2021-01-18 23:12, Ranier Vilela a écrit :
> Hi,
> Something it doesn't smell good.
> See at:
> https://www.virustotal.com/gui/file/f31bcaa4a56b429b07e7064f1732d3078df14e05c133517f1753e05a2755cf21/detection>
> 32 virus engines point to your exe.
>
> regards,
> Ranier Vilela
>
> Em seg., 18 de jan. de 2021 às 16:51, < [hidden email]>
> escreveu:
>
>> Le 2021-01-18 20:40, Ranier Vilela a écrit :
>>> Hi, nice project.
>>> What the syntax for the net.Socket?
>>> sock = net.Socket(" http://200.152.38.155", 80)
>>>
>>> this fail: " in method Socket.constructor : 80"
>>> enigmatic error.
>>>
>>> regards,
>>> Ranier Vilela
>>>
>>> Em seg., 18 de jan. de 2021 às 16:17, < [hidden email]>
>>> escreveu:
>>>
>>>> Le 2021-01-18 11:54, Egor Skriptunoff a écrit :
>>>>>> Any feedback will be appreciated !
>>>>>
>>>>> The website looks nice! :-)
>>>>>
>>>>> I see you have removed os.setlocale() from the standard library.
>>>>>
>>>>> How to switch between C locale and national locale?
>>>>> Which locale is used in string.upper(), pattern "%u" and "str1 <
>>>> str2"
>>>>> ?
>>>>> How are char intervals interpreted in patterns (such as "[A-Z]"
>>>> but
>>>>> with unicode symbols)?
>>>>
>>>> Thank you for the feedback on the website :)
>>>>
>>>> LuaRT does not use the concept of C locale.
>>>> All the necessary configuration is done during the 'sys' module
>>>> initialization for writing UTF8 characters to the console (with
>> some
>>>>
>>>> limits for some region, see discussion on the console limitation
>> on
>>>> Windows for some language).
>>>>
>>>> String.upper and string.lower uses the Windows API which is quite
>>>> good
>>>> for some accentued characters.
>>>> Char intervals are treated the same. An accentued character (for
>>>> example
>>>> "à") is not in the interval [A-Z] (which includes letters, but
>> not
>>>> accentued letters).
>>>>
>>>> Samir
>>
>> Thanks for your feedback.
>> You found a bug :)
>>
>> You should use :
>> sock = net.Socket("200.152.38.155", 80)
>>
>> For an ip address, you should remove the "http://"
>>
>> Thanks again to the Lua community for your questions.
>> I don't want to polluate the Lua list with such specific questions
>> that
>> are out of scope of the list.
>> Such quesitons should be asked on LuaRT community (link on the LuRT
>> website).
>>
>> Samir
Hi,
LuaRT does not contain any virus nor malware or any other trojan.
LuaRT uses specific optimizations (DLL delay loading with an
incorporated lua54.DLL that permits static-like executable, and UPX
compression). I think that's why it's detected as false positive.
LuaRT is young and the "reputation" of luart.exe and wluart.exe is very
low. Some antivirus uses famousness to detect potential threats.
Windows defender, one of the best antivirus program on Windows, does not
detect it as positive (not tested on virustotal).
Regards,
Samir
|
|
UPX should be removed not to trigger any euristic.
Binary can be signed.
--
|
|
On Mon, Jan 18, 2021 at 10:17 PM wrote: > I see you have removed os.setlocale() from the standard library. > How to switch between C locale and national locale? LuaRT does not use the concept of C locale.
Does it mean that the "%w" pattern will always match national alphabet characters? In some projects I prefer to have "%w" as ASCII7-only. Do I have to use "[A-Za-z%d]" instead in LuaRT?
Char intervals are treated the same. An accentued character (for example
"à") is not in the interval [A-Z] (which includes letters, but not
accentued letters).
Is char interval interpreted from the point of view of the alphabet or from the point of view of codepoint numeric values? For example, "А" is the first letter of the Russian alphabet, "Я" is the last letter. The letter "Ё" is somewhere between them in the alphabet, but codepoint("Ё") is beyond the numeric range of codepoint("А")...codepoint("Я") So, what would be the result of string.find("Ё", "[А-Я]") in LuaRT?
|
|
1) Yes %w pattern will always match what you call "national alphabet characters". That maintains compatibility with standard Lua. 2) I have tested string.find("Ё", "[А-Я]") in LuaRT : it returns correctly 1,2 that means the Ё has been correctly found ? Regards, Samir 19 janvier 2021 07:28 "Egor Skriptunoff" < [hidden email]> a écrit: On Mon, Jan 18, 2021 at 10:17 PM wrote: > I see you have removed os.setlocale() from the standard library. > How to switch between C locale and national locale? LuaRT does not use the concept of C locale. Does it mean that the "%w" pattern will always match national alphabet characters? In some projects I prefer to have "%w" as ASCII7-only. Do I have to use "[A-Za-z%d]" instead in LuaRT? Char intervals are treated the same. An accentued character (for example "à") is not in the interval [A-Z] (which includes letters, but not accentued letters). Is char interval interpreted from the point of view of the alphabet or from the point of view of codepoint numeric values? For example, "А" is the first letter of the Russian alphabet, "Я" is the last letter. The letter "Ё" is somewhere between them in the alphabet, but codepoint("Ё") is beyond the numeric range of codepoint("А")...codepoint("Я") So, what would be the result of string.find("Ё", "[А-Я]") in LuaRT?
|
|
Le 2021-01-19 19:31, [hidden email] a écrit :
> 1) Yes %w pattern will always match what you call "national alphabet
> characters". That maintains compatibility with standard Lua.
>
> 2) I have tested string.find("Ё", "[А-Я]") in LuaRT : it returns
> correctly 1,2 that means the Ё has been correctly found ?
>
> Regards,
>
> Samir
>
> 19 janvier 2021 07:28 "Egor Skriptunoff" < [hidden email]>
> a écrit:
>
>> On Mon, Jan 18, 2021 at 10:17 PM wrote:
>>
>>>> I see you have removed os.setlocale() from the standard library.
>>>> How to switch between C locale and national locale?
>>> LuaRT does not use the concept of C locale.
>>
>> Does it mean that the "%w" pattern will always match national
>> alphabet characters?
>> In some projects I prefer to have "%w" as ASCII7-only.
>> Do I have to use "[A-Za-z%d]" instead in LuaRT?
>>
>>> Char intervals are treated the same. An accentued character (for
>>> example
>>> "à") is not in the interval [A-Z] (which includes letters, but
>>> not
>>> accentued letters).
>>
>> Is char interval interpreted from the point of view of the alphabet
>> or from the point of view of codepoint numeric values?
>> For example, "А" is the first letter of the Russian alphabet, "Я"
>> is the last letter.
>> The letter "Ё" is somewhere between them in the alphabet,
>> but codepoint("Ё") is beyond the numeric range of
>> codepoint("А")...codepoint("Я")
>> So, what would be the result of string.find("Ё", "[А-Я]") in
>> LuaRT?
In fact, it returns 1, 1 (matching the right character).
A bug consisting in a miscalculation of the end of the match was found
with your help :)
Thank you !
|
|
On 1/17/2021 10:35 AM, [hidden email] wrote:
> Dear Lua community,
>
> I'm proud to announce the initial public release of LuaRT, a
> comprehensive framework for Windows to develop in Lua.
>
> Please visit the project home page for more info: https://www.luart.org> (Documentation is still a work in progress)
>
> LuaRT is based on Lua 5.4.1.
> Disclaimer : LuaRT is beta material as bugs, caveats may occur...
>
> Any feedback will be appreciated !
>
> Samir
>
>
>
I've been testing this and LuaRT is excellent. Lots of work to do before
version 1.0, particularly writing documentation for the LuaRT standard
library (but the part that is documented is documented excellently).
There are some bugs to be squashed, I've found and reported one on the
LuaRT list. Samir responded promptly and courteously. I would urge
anyone interested in Lua in a Windows environment to follow the link and
download LuaRT. Installation is dead easy and won't interfere with
existing Lua installations as LuaRT is entirely self contained. If you
are so inclined, join the LuaRT list and request features/report bugs.
The list is very new and Samir and I would enjoy the company.
Mike
|
|
> 2) I have tested string.find("Ё", "[А-Я]") in LuaRT : it returns
> correctly 1,2 that means the Ё has been correctly found ?
In fact, it returns 1, 1 (matching the right character).
OK, it's good.
What does #str (the string length operator) return? - a number of bytes in a string - a number of UTF16 words (a symbol above U+FFFF is encoded as a surrogate pair and therefore has length of 2)
- a number of UTF-8 codepoints - a number of symbols (a symbol may consist of several codepoints)
|
|
Le 2021-01-21 08:51, Egor Skriptunoff a écrit :
>>> 2) I have tested string.find("Ё", "[А-Я]") in LuaRT : it
>> returns
>>> correctly 1,2 that means the Ё has been correctly found ?
>>
>> In fact, it returns 1, 1 (matching the right character).
>
> OK, it's good.
>
> What does #str (the string length operator) return?
> - a number of bytes in a string
> - a number of UTF16 words (a symbol above U+FFFF is encoded as a
> surrogate pair and therefore has length of 2)
>
> - a number of UTF-8 codepoints
> - a number of symbols (a symbol may consist of several codepoints)
#str means the size of the string on bytes.
Use string.length to get the length in characters.
Regards,
Samir
|
|
LuaRT? What's short for "RT"?
On Thu, Jan 21, 2021 at 6:32 PM < [hidden email]> wrote:
>
> Le 2021-01-21 08:51, Egor Skriptunoff a écrit :
> >>> 2) I have tested string.find("Ё", "[А-Я]") in LuaRT : it
> >> returns
> >>> correctly 1,2 that means the Ё has been correctly found ?
> >>
> >> In fact, it returns 1, 1 (matching the right character).
> >
> > OK, it's good.
> >
> > What does #str (the string length operator) return?
> > - a number of bytes in a string
> > - a number of UTF16 words (a symbol above U+FFFF is encoded as a
> > surrogate pair and therefore has length of 2)
> >
> > - a number of UTF-8 codepoints
> > - a number of symbols (a symbol may consist of several codepoints)
>
> #str means the size of the string on bytes.
> Use string.length to get the length in characters.
>
> Regards,
>
> Samir
>
>
>
|
|
> What does #str (the string length operator) return?
#str means the size of the string on bytes.
Use string.length to get the length in characters.
What does "character" mean in Lua RT? Does string.length() return the number of unicode codepoints or the number of UTF-16 words? I'm asking because Windows internally works with UTF16-encoded strings.
What about positions (pos1...pos4) in
string.sub(str, pos1, pos1) pos2 = string.find(str, "()%w", pos3) string.byte(str, pos4) Are they byte positions or character positions?
|
12
|