LINUX.ORG.RU

История изменений

Исправление LINUX-ORG-RU, (текущая версия) :

Никакого отношения к владению это не имеет.
Это для автоматического вызова чего угодно при выходе за границы видимости. Таким образом ты можешь до прихода сборщика мусора вызвать явное закрытие ресурса, или наоборот сохранить ресурс. Это просто возможность повесить хук, каллбек, называй как тебе удобнее в метотаблю, который сработает так же как и другие хуки метатаблиц при своём условии.

Это сделано на запрос сообщества например для гарантированного закрытия файла при выходе из тела функции, без явного его закрытия в теле функции и без ожидания прихода сборщика мусора, который на момент вызова функции вообще может быть отключен в угоду скорости работы определённого промежутка кода.

Ты немножечко путаешь, тёплое и мягкое =) А именно, ты почитал про растовую модель памяти и почему то проецируешь её на всё остальное что как-то работает с памятью, но не так как в расте =)

Можешь например использовать это для логгирования, да для чего угодно, вешаешь на __close функцию которая сработает для переменной тогда, когда область её видимости исчезнет и всё, например, для файлов при выходе и перед его закрытием ты можешь сделать seek прочитать его снова и записать ещё один файл, сделав его бекап например и потом уже всё позакрывать. Тем самым ты можешь в теле функции делать основную работу, а boilerplate код, общий для таких файлов вынести в метатаблицу и он будет срабатывать автоматически для помеченных значений.

Единственный минус мне <> не нравятся, понятно что в угоду простоте и скорости сделали, с этой точки зрения подход хороший и красивый, просто к уголовым скобочкам предвзятое мнение, но это мне к психологу надо :D я так понял это теперь общий синтаксис тудет для квалификаторов переменных, в том числе и <const>

Вот так

local close f = io.open("file.txt","w");
local const x = 42;

Было бы красивее конечно, но у этой красивости есть далекоооо идущие последствия. К сожалению сделать так, не сломав много чего невозможно.

Исправление LINUX-ORG-RU, :

Никакого отношения к владению это не имеет.
Это для автоматического вызова чего угодно при выходе за границы видимости. Таким образом ты можешь до прихода сборщика мусора вызвать явное закрытие ресурса, или наоборот сохранить ресурс. Это просто возможность повесить хук, каллбек, называй как тебе удобнее в метотаблю, который сработает так же как и другие хуки метатаблиц при своём условии.

Это сделано на запрос сообщества например для гарантированного закрытия файла при выходе из тела функции, без явного его закрытия в теле функции и без ожидания прихода сборщика мусора, который на момент вызова функции вообще может быть отключен в угоду скорости работы определённого промежутка кода.

Ты немножечко путаешь, тёплое и мягкое =) А именно, ты почитал про растовую модель памяти и почему то проецируешь её на всё остальное что как-то работает с памятью, но не так как в расте =)

Можешь например использовать это для логгирования, да для чего угодно, вешаешь на __close функцию которая сработает для переменной тогда, когда область её видимости исчезнет и всё, например, для файлов при выходе и перед его закрытием ты можешь сделать seek прочитать его снова и записать ещё один файл, сделав его бекап например и потом уже всё позакрывать. Тем самым ты можешь в теле функции делать основную работу, а boilerplate код, общий для таких файлов вынести в метатаблицу и он будет срабатывать автоматически для помеченных значений.

Единственный минус мне <> не нравятся, понятно что в угоду простоте и скорости сделали, с этой точки зрения подход хороший и красивый, просто к уголовым скобочкам предвзятое мнение, но это мне к психологу надо :D я так понял это теперь общий синтаксис тудет для квалификаторов переменных, в том числе и <const>

Исправление LINUX-ORG-RU, :

Никакого отношения к владению это не имеет.
Это для автоматического вызова чего угодно при выходе за границы видимости. Таким образом ты можешь до прихода сборщика мусора вызвать явное закрытие ресурса, или наоборот сохранить ресурс. Это просто возможность повесить хук, каллбек, называй как тебе удобнее в метотаблю, который сработает так же как и другие хуки метатаблиц при своём условии.

Это сделано на запрос сообщества например для гарантированного закрытия файла при выходе из тела функции, без явного его закрытия в теле функции и без ожидания прихода сборщика мусора, который на момент вызова функции вообще может быть отключен в угоду скорости работы определённого промежутка кода.

Ты немножечко путаешь, тёплое и мягкое =)

Можешь например использовать это для логгирования, да для чего угодно, вешаешь на __close функцию которая сработает для переменной тогда, когда область её видимости исчезнет и всё, например, для файлов при выходе и перед его закрытием ты можешь сделать seek прочитать его снова и записать ещё один файл, сделав его бекап например и потом уже всё позакрывать. Тем самым ты можешь в теле функции делать основную работу, а boilerplate код, общий для таких файлов вынести в метатаблицу и он будет срабатывать автоматически для помеченных значений.

Единственный минус мне <> не нравятся, понятно что в угоду простоте и скорости сделали, с этой точки зрения подход хороший и красивый, просто к уголовым скобочкам предвзятое мнение, но это мне к психологу надо :D я так понял это теперь общий синтаксис тудет для квалификаторов переменных, в том числе и <const>

Исправление LINUX-ORG-RU, :

Никакого отношения к владению это не имеет.
Это для автоматического вызова чего угодно при выходе за границы видимости. Таким образом ты можешь до прихода сборщика мусора вызвать явное закрытие ресурса, или наоборот сохранить ресурс. Это просто возможность повесить хук, каллбек, называй как тебе удобнее в метотаблю, который сработает так же как и другие хуки метатаблиц при своём условии.

Это сделано на запрос сообщества например для гарантированного закрытия файла при выходе из тела функции, без явного его закрытия в теле функции и без ожидания прихода сборщика мусора, который на момент вызова функции вообще может быть отключен в угоду скорости работы определённого промежутка кода.

Ты немножечко путаешь, тёплое и мягкое =)

Можешь например использовать это для логгирования, да для чего угодно, вешаешь на __close функцию которая сработает для переменной тогда, когда область её видимости исчезнет и всё.

Единственный минус мне <> не нравятся, понятно что в угоду простоте и скорости сделали, с этой точки зрения подход хороший и красивый, просто к уголовым скобочкам предвзятое мнение, но это мне к психологу надо :D я так понял это теперь общий синтаксис тудет для квалификаторов переменных, в том числе и <const>

Исходная версия LINUX-ORG-RU, :

Никакого отношения к владению это не имеет.
Это для автоматического вызова чего угодно при выходе за границы видимости. Таким образом ты можешь до прихода сборщика мусора вызвать явное закрытие ресурса, или наоборот сохранить ресурс. Это просто возможность повесить хук, каллбек, называй как тебе удобнее в метотаблю, который сработает так же как и другие хуки метатаблиц при своём условии.

Это сделано на запрос сообщества например для гарантированного закрытия файла при выходе из тела функции, без явного его закрытия в теле функции и без ожидания прихода сборщика мусора, который на момент вызова функции вообще может быть отключен в угоду скорости работы определённого промежутка кода.

Ты немножечко путаешь, тёплое и мягкое =)