powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Delphi [игнор отключен] [закрыт для гостей] / Если тебе интересен Lua в Delphi
25 сообщений из 77, страница 3 из 4
Если тебе интересен Lua в Delphi
    #37965879
Alexsalog
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
AriochВот тут шитый код вроде: http://code.google.com/p/dwscript/wiki/FAQ

Не компилятор, но тоже должен относительно быстро работать.

Ага... Пока искал информацию про PaxCompiler нашел заодно и сравнение производительности DWScript, Pascal Script и PaxCompiler

тут: http://delphitools.info/2010/08/20/informal-delphiwebscript-performance-tests/

Delphi: <1 msec (using 32bit integers), 1.5 msec (using 64bit integers)
DWS2 revival: 150 60 msec in D2009 (using 64bit integers)
DWS2 vanilla: 420 msec in D7 (using 32bit integers)
PascalScript: 1860 msec in D2009, 1490 msec in D7 (using 32bit integers)

Внизу в комментах указано что PaxCompiler выполнил тест за 31mc.

Как я понял, выяснив путем транзитивного сопоставления (PascalScript <-> JavaScript <-> Lua) Lua сравнима с PaxCompiler. Где то в тех же порядках скорость.
...
Рейтинг: 0 / 0
Если тебе интересен Lua в Delphi
    #37968322
Alexsalog
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Щас думаю дальше про использование библиотеки.

Как быть если мне нужно в скрипте взаимодействовать со свойствами объектов в Delphi? Маппер какой нибудь нужен ?
...
Рейтинг: 0 / 0
Если тебе интересен Lua в Delphi
    #37968373
Alexsalog
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Все нашел. В Lua это если и возможно, то надо сильно курить мануал. А в PaxCompiler просто одной строчкой регистрируешь хост-класс и делов шляпе. Намана.
...
Рейтинг: 0 / 0
Если тебе интересен Lua в Delphi
    #37968374
Фотография iscrafm
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
SOFT FOR YOU LSV

если ты только что узнал о Lua - я рекомендую тебе чаще познавать современное программирование
это как преподаватели по программированию в университете, заставляющие своих студентов сидеть перед синими экранами Turbo Pascal или Borland C++ :)
студент отжигает
...
Рейтинг: 0 / 0
Если тебе интересен Lua в Delphi
    #37969466
SOFT FOR YOU
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Alexsalog

используя Lua API правда сложно
а в CrystalLUA глобальные переменные, классы, свойства - регистрируются просто. См. раздел документации "Published и авторегистраторы"

Но для методов пока нужно писать калбеки
...
Рейтинг: 0 / 0
Если тебе интересен Lua в Delphi
    #38040657
vvm
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Сегодня разбирал с 12-летним сыном примеры постоения мобильных игр в Gideros Studio ...
Луа как скриптовая система - это хорошо. Очень быстрая, язык изучается мгновенно.

Смешной метод доступа к свойствам объектов: чтобы описать свойство, к нему нужно обратиться...

К примеру, создал объект-спрайт (с именем ball) из файла "ball.png":

Код: sql
1.
local ball = Bitmap.new(Texture.new("ball.png"))



... а теперь решил, что перед изменением текущих координат спрайта,
неплохо бы в самом объекте сохранить его предудущие координаты. Запросто:

Код: sql
1.
2.
ball.prevX = старое значение Х
ball.prevY = старое значение Y


- и никакого тебе описания свойств prevX в определении класса!

Просто небывалый простор для говнокодинга!
...
Рейтинг: 0 / 0
Если тебе интересен Lua в Delphi
    #38040661
vvm
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
...в действительности, это не свойства объекта, а просто альтернативная форма записи обращения к ассоциативному массиву:

Код: sql
1.
2.
ball.prevX = старое значение Х
ball.prevY = старое значение Y



- это то же самое, что и:

Код: sql
1.
2.
ball["prevX"] = старое значение Х
ball["prevY"] = старое значение Y



- но для непривычного глаза сбивает с ног....
...
Рейтинг: 0 / 0
Если тебе интересен Lua в Delphi
    #38040688
Фотография _Vasilisk_
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
vvmПросто небывалый простор для говнокодинга!Это называется "счастливой отладки" В PHP подобный бардак с переменными. Когда-то час убил на поиск ошибки в коде такого типа
Код: php
1.
2.
3.
4.
$object = 0;
if (....)
  $objec = 1;
echo $object;


Долго искал почему $object не принимает значение 1
...
Рейтинг: 0 / 0
Если тебе интересен Lua в Delphi
    #38040691
vvm
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
_Vasilisk_,

зато как быстро ко'дится!
...
Рейтинг: 0 / 0
Если тебе интересен Lua в Delphi
    #38040693
vvm
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
С отладкой там, кстати, более-менее: интроспекция на уровне языка ко всему, что можно.
...
Рейтинг: 0 / 0
Если тебе интересен Lua в Delphi
    #38040763
vvm
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
А самое главное - в Lua паскалеподобный синтаксис!
Каждый дельфист сразу догадается, что здесь:


Код: pascal
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
function FlipPageView:onMouseDown(event)
    if not self.isFlipping then
        self.oldX = event.x
        self.oldY = event.y
        if self.oldX <= 40 and self.page1 > 1 then			
            self.xTouch = self.width
            self.yTouch = 20
            self.isNext = false
            self.flip = true
            self:swapPage(-1)
        elseif self.oldX >= self.width - 50 and self.oldY >= self.height - 50 and self.currentPage < #self.imgPath - 1 then			
            self.xTouch = 20
            self.yTouch = 20
            self.isNext = true
            self.flip = true
        end
    end
end
...
Рейтинг: 0 / 0
Если тебе интересен Lua в Delphi
    #38040784
DimaBr
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
if/elseif, присвоение без двоеточия - это скорее VBA
...
Рейтинг: 0 / 0
Если тебе интересен Lua в Delphi
    #38041084
ДжекНепотрошитель
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
DimaBrif/elseif, присвоение без двоеточия - это скорее VBA
да, и бегинов нет
...
Рейтинг: 0 / 0
Если тебе интересен Lua в Delphi
    #38041159
Фотография Maxim Rusov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
А каждый ли дельфист догадается, что это значит:

Current = APanel.SelCount == 0 and APanel.Current or APanel.SelCount

?
...
Рейтинг: 0 / 0
Если тебе интересен Lua в Delphi
    #38041216
ДжекНепотрошитель
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Maxim RusovА каждый ли дельфист догадается, что это значит:

Current = APanel.SelCount == 0 and APanel.Current or APanel.SelCount

?
Те, которые в Delphi вместо
if A = B then C:= true else C:= false
пишут
C:= A = B,
те догадаются.
...
Рейтинг: 0 / 0
Если тебе интересен Lua в Delphi
    #38042241
ultima
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Maxim RusovА каждый ли дельфист догадается, что это значит:

Current = APanel.SelCount == 0 and APanel.Current or APanel.SelCount

?
я догадался, но хочется кому-то что-нибудь оторвать
Current = APanel.SelCount == (0 and APanel.Current) or APanel.SelCount
...
Рейтинг: 0 / 0
Если тебе интересен Lua в Delphi
    #38042257
vvm
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ultimaMaxim RusovА каждый ли дельфист догадается, что это значит:

Current = APanel.SelCount == 0 and APanel.Current or APanel.SelCount

?
я догадался, но хочется кому-то что-нибудь оторвать
Current = APanel.SelCount == (0 and APanel.Current) or APanel.SelCount

1. Да вы с Lua просто рождены друг для друга!

2. Видишь ли, а Lua значения false и nil рассматриваются как Ложь, а все остальные - как истина. В том числе 0. Кроме того, результатом логических операций будет не обязательно булево значение: http://www.lua.ru/doc/2.5.3.html
Очень похоже на Python.

В данном случае - логическое значение Current
...
Рейтинг: 0 / 0
Если тебе интересен Lua в Delphi
    #38042258
Фотография defecator
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Модератор форума
vvmultimaпропущено...

я догадался, но хочется кому-то что-нибудь оторвать
Current = APanel.SelCount == (0 and APanel.Current) or APanel.SelCount

1. Да вы с Lua просто рождены друг для друга!

2. Видишь ли, а Lua значения false и nil рассматриваются как Ложь, а все остальные - как истина. В том числе 0. Кроме того, результатом логических операций будет не обязательно булево значение: http://www.lua.ru/doc/2.5.3.html
Очень похоже на Python.

В данном случае - логическое значение Current

Какой простор для говнокодинга !
...
Рейтинг: 0 / 0
Если тебе интересен Lua в Delphi
    #38042265
Фотография Maxim Rusov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Ни хрена вы не знаете LUA. Это означает

Current = if( APanel.SelCount = 0, APanel.Current, APanel.SelCount )
...
Рейтинг: 0 / 0
Если тебе интересен Lua в Delphi
    #38042273
Фотография defecator
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Модератор форума
Maxim RusovНи хрена вы не знаете LUA. Это означает

Current = if( APanel.SelCount = 0, APanel.Current, APanel.SelCount )

А можно перевести с идиотского Lua на русский Pascal
...
Рейтинг: 0 / 0
Если тебе интересен Lua в Delphi
    #38042307
Фотография Maxim Rusov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Это и был перевод, глупый. IfThen.
...
Рейтинг: 0 / 0
Если тебе интересен Lua в Delphi
    #38050908
Alexsalog
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Автор Crystal Lua - оценил вашу работу по мере того как проектировал участие скрипта в своих программах. Сделано точно то что нужно.
Может помощь нужна ?
...
Рейтинг: 0 / 0
Если тебе интересен Lua в Delphi
    #38050947
vvm
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Alexsalog,

может, лучше здесь спросить?
...
Рейтинг: 0 / 0
Период между сообщениями больше года.
Если тебе интересен Lua в Delphi
    #39632488
Cobalt747
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
попробовал воспользоваться этой библиотекой.

Загрузил файл
файл
Код: plaintext
1.
2.
3.
4.
5.
VExRT = {
	["Attendance"] = {
		["enabled"] = 3,
		["ModuleViewed3580"] = true,
	}
}

Lua.VariableExists('VExRT') возвращает True
а при обращении
Код: pascal
1.
2.
3.
4.
5.
var
  ExRT: TLuaArg;
...
Lua.LoadScript('ExRT.lua');
Lua.Variable['VExRT'];


получаю:
Exception class ELua with message 'Can't get global variable "VExRT" of type "LUA_TTABLE"'.
...
Рейтинг: 0 / 0
Если тебе интересен Lua в Delphi
    #39633280
SOFT FOR YOU
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Cobalt747,

Для таблицы нет геттера
...
Рейтинг: 0 / 0
25 сообщений из 77, страница 3 из 4
Форумы / Delphi [игнор отключен] [закрыт для гостей] / Если тебе интересен Lua в Delphi
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]