Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Прочее";
Текущий архив: 2013.03.22;
Скачать: [xml.tar.bz2];

Вниз

Если тебе интересен Lua в Delphi   Найти похожие ветки 

 
DevilDevil ©   (2012-09-11 17:47) [0]

Привет, уважаемый форумчанин

Я являюсь разработчиком дорогой для меня библиотеки CrystalLUA(http://www.gamedev.ru/projects/forum/?id=140784). Цель проекта - избавить Delphi программиста от рутины связывания нативного кода и кода Lua. Кто не знает, Lua - самый распространённый скриптовый язык в мире.

Пишу это сообщение не только, чтобы на мой проект обратили внимание. Сейчас актуален другой вопрос. В середине октября я планирую приступить к большой переработке проекта. Среди ключевых нововведений - полная поддержка Unicode, события, и конечно же автобиндинг – механизм, благодаря которому необходимость в регистрации промежуточных калбеков может просто отпасть. Файл документации будет переведён на английский. Так вот мне как воздух сейчас нужны люди. Энтузиасты, способные не только использовать чужие наработки, но и участвовать в развитии проектов "зоны свободного ПО". Если ты посмотришь хотя бы в опубликованную Mind-карту - увидишь, что работы много и дело найдётся каждому. Заявленные фичи и так будут реализованы, просто со сторонней помощью они будут разработаны комфортнее; + можно реализовать вещи за пределами заявленного списка. Поэтому если ты считаешь, что можешь быть или хотел бы быть в чём-то полезен - жду сообщение в личку или по любому из контактов, указанных в ветке.

p.s. такое сообщение я оставляю на многих русскоязычных форумах. Потому что аудитория Delphi-программистов не велика. Lua используют ещё меньше. А для продуктивной работы с иностранцами не хватит моего знания языка.

в любом случае спасибо за внимание!


 
уважаемый форумчанин   (2012-09-11 17:54) [1]

Удалено модератором


 
DevilDevil ©   (2012-09-11 18:39) [2]

Удалено модератором


 
уважаемый форумчанин   (2012-09-11 18:42) [3]

Удалено модератором


 
Kerk ©   (2012-09-11 18:42) [4]

Чем лучше/хуже по сравнению с Lua4Delphi ?


 
Anatoly Podgoretsky ©   (2012-09-11 18:44) [5]


> Кто не знает, Lua - самый распространённый скриптовый язык
> в мире.

И на нем пишут боевые вирусы, типа Flamer.


 
DevilDevil ©   (2012-09-11 18:49) [6]

> Чем лучше/хуже по сравнению с Lua4Delphi ?

принципиально разные подходы
Lua4Delphi использует кодогенерацию и врапперство над LuaAPI

CrystalLUA работает с RTTI, избавляет пользователя от рутины, + ряд фишек (например общее глобальное пространство, точки вместо двоеточий и др.). Я сильно не углублялся в Lua4Delphi, то что я видел - мне не понравилось

> Anatoly Podgoretsky ©   (11.09.12 18:44) [5]
не понял смысла сообщения


 
KSergey ©   (2012-09-11 19:24) [7]

> DevilDevil ©   (11.09.12 17:47)
>  Так вот мне как воздух сейчас нужны люди. Энтузиасты, способные
> не только использовать чужие наработки, но и участвовать
> в развитии проектов "зоны свободного ПО".

Спешу вас разочаровать:  "зона свободного ПО" - чушь собачья. Равно как и энтузиасты. Ну в смысле ПО "свободное" (а вернее - free, а это другое) - оно есть, но вовсе не потому, что его делают энтузиасты.

Правда я не знаю как обстоят дела в забугорье, но точно могу сказать, что у нас - никак. Знаю конкретные примеры. В самом лучшем случае найдутся три калеки, которые добавят до зарезу нужные им 5 строк (если повезет, то еще и в общей струе проекта, не сломав его), на этом исчезнут.

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

Попробуй направить усилия и в самом деле за бугор, может там ты сумеешь при достаточной само-рекламе заинтересовать китайца, который хочет как-то пробиться и хватается за разные разности; хотя с Дельфи там ловить нечего, дельфи там практически нет.

Для начала сформулируй кратко и по пунктам в чем преимущества твоего проекта. Сделай это так, чтобы захотелось хотябы на него глянуть.

Такая вот фигня.


 
KSergey ©   (2012-09-11 19:33) [8]

И еще вопрос, если можно.
А нафига это вообще все надо? Есть рекрасный язык дельфи, делай все что хочешь.
Посмотрел приводимые примеры по ссылке - и что? нафига?
Или суть лишь в подключении интерпретируемого скриптового языка?
По-моему проще тогда на .NET все сваять, там оно волшебно встроено. Ну если в этом именно задача и проект пишется с нуля.


 
DevilDevil ©   (2012-09-11 19:33) [9]

> KSergey ©   (11.09.12 19:24) [7]

Спасибо за отзыв
я в общем то на многое и не рассчитываю
просто лишние руки не помешают. Поэтому создал сообщение. Почему нет.

Найдётся кто-то - круто. Не найдётся - справимся.
В целом, уже есть несколько человек, которые не прочь чуть-чуть помочь проекту.
Мне именно это и нужно


 
DevilDevil ©   (2012-09-11 19:35) [10]

> А нафига это вообще все надо? Есть рекрасный язык дельфи,
>  делай все что хочешь.


Всё верно
только существуют задачи, которые при помощи скриптов с удовольствием решаются

> По-моему проще тогда на .NET все сваять, там оно волшебно
> встроено. Ну если в этом именно задача и проект пишется
> с нуля.


Lua для скриптов значительно распространённей
да и простой он, удобный. Почему нет


 
Inovet ©   (2012-09-11 20:08) [11]

Удалено модератором


 
брат Птибурдукова   (2012-09-11 20:17) [12]

Удалено модератором


 
TREEDWDFEGEDWDDD_GEN   (2012-09-12 16:13) [13]

Удалено модератором


 
брат Птибурдокова   (2012-09-12 16:33) [14]

Удалено модератором


 
Цукор5   (2012-09-13 23:07) [15]


> Всё вернотолько существуют задачи, которые при помощи скриптов
> с удовольствием решаются


Пару примеров можно? Чтобы понятней стало.


 
Jeer ©   (2012-09-13 23:10) [16]


> да и простой он, удобный. Почему нет


Только при чем тут Delphi :)
Вот я им пользуюсь в FEMM и просто счастлив.


 
DevilDevil ©   (2012-09-14 10:57) [17]

> Цукор5   (13.09.12 23:07) [15]
> Пару примеров можно? Чтобы понятней стало.


Компьютерные игры.
Графический движок, физический движок, взаимодействие с окнами и устройствами ввода, сама игра как система - реализована на нативном языке. А все миссии, диалоги, логика взаимодействия - прописывается скриптами геймдизайнерами в свободном режиме, без перекомпиляции проекта.

> Jeer ©   (13.09.12 23:10) [16]
> > да и простой он, удобный. Почему нет
> Только при чем тут Delphi :)


Программирование скриптами - особая часть программирования. Которая нужна не всем. Но если Вы решили использовать скрипты в своём продукте, и решили выбрать Lua - то нужно будет связать нативное приложение со скриптами. Вот для этого как раз и существуют библиотеки-связки. Самая удобная для Delphi - скорее всего CrystalLUA.


 
Цукор5   (2012-09-14 13:24) [18]

При чем здесь игры? Пару примеров при связки с Delphi. Я не пойму. Где, как и для чего это нужно?


 
Kerk ©   (2012-09-14 13:26) [19]


> Цукор5   (14.09.12 13:24) [18]
> Где, как и для чего это нужно?

Где угодно, где пользователь может писать свои скрипты. В чем вопрос-то?


 
DevilDevil ©   (2012-09-14 22:04) [20]

> Цукор5   (14.09.12 13:24) [18]

> Где угодно, где пользователь может писать свои скрипты. В чем вопрос-то?
+1

я к примеру на работе завидев несколько однотипных проектов, создал платформу, а каждый "проект" представлял собой exe-шник, внутри которого вшиты управляющие скрипты. Пример с играми просто самый показательный. Как и где его применять - ответ индивидуальный.


 
Джобер   (2012-09-14 22:27) [21]


> При чем здесь игры?

Помнится, еще в старенькой игрушке Blobby Volley можно было программировать ботов на Lua.
http://constant-m.narod.ru/images/3volley.jpg


 
DevilDevil ©   (2012-09-14 22:35) [22]

> Джобер   (14.09.12 22:27) [21]

дьявольская конечно игрушка )


 
KSergey ©   (2012-09-15 19:30) [23]

Я понял!
Пример: 1С


 
Jeer ©   (2012-09-15 22:58) [24]


> Пример: 1С


Это даже не пример - адынсы это отврат.

Я уже приводил пример с FEMM. Отличный продукт, мощный аналитический движок + возможность автоматизации геометрических построений и вычислений через Lua.


 
Rouse_ ©   (2012-09-15 23:34) [25]

Выглядит не плохо, возможно присоединюсь к проекту чуть попозже, мне как раз необходимо поддержка внешних скриптов для ядра отладчика дабы им можно было управлять без системы плагинов обычными скриптами.


 
Rouse_ ©   (2012-09-15 23:58) [26]

И еще вопрос - библиотека, это что-то сторонее или твое (я просто дома без инструментария, даже список экпорта не могу глянуть, а ставить лениво).
Если не твое - то кто автор, если же твое, то получу ли я доступ к ее исходному коду, ибо боюсь скорее всего потребуется добавить некоторый функционал если потребуется для собственного проекта...


 
Джобер   (2012-09-16 00:16) [27]

Имхо, автор чрезмерно увлекается ассемблерными вставками. Мало кто захочет в таком коде разбираться.


 
Rouse_ ©   (2012-09-16 00:22) [28]


> Джобер   (16.09.12 00:16) [27]
> Имхо, автор чрезмерно увлекается ассемблерными вставками. Мало кто захочет в таком коде разбираться.

Нужно писать так - я не знаю ассемблер, мне не понятен ваш код :)


 
Pavia ©   (2012-09-16 00:26) [29]


>
> Выглядит не плохо, возможно присоединюсь к проекту чуть
> попозже, мне как раз необходимо поддержка внешних скриптов
> для ядра отладчика дабы им можно было управлять без системы
> плагинов обычными скриптами.

Не знаю зачем вам это понадобилось. Но что-бы себя комфортно чувствовать надо что-бы циклы в скрипте автоматически парализовались и указатели 64 битные. И компьютер должен иметь не менее 16 ядер и RAM 64 ГБайта (или SSD со скоростью не менее 1ГБайта/с)


 
Rouse_ ©   (2012-09-16 00:29) [30]


> Но что-бы себя комфортно чувствовать надо что-бы циклы в
> скрипте автоматически парализовались и указатели 64 битные

неактуально для 32 битного отладчика

> И компьютер должен иметь не менее 16 ядер и RAM 64 ГБайта
> (или SSD со скоростью не менее 1ГБайта/с)

так-же не актуально, процесс отладки не то чтобы очень быстрый, лиштие миллисекунды роли не сыграют


 
Германн ©   (2012-09-16 02:24) [31]


> Нужно писать так - я не знаю ассемблер, мне не понятен ваш
> код :)

Вот тут +1
Знание ассемблера не обязательно, но для работы над некоторыми задачами - весьма желательно. Вплоть до отказа претенденту в приёме на работу.


 
DevilDevil ©   (2012-09-16 04:10) [32]

> Rouse_ ©   (15.09.12 23:34) [25]
> Выглядит не плохо, возможно присоединюсь к проекту чуть попозже


ok

> И еще вопрос - библиотека, это что-то сторонее или твое
> (я просто дома без инструментария, даже список экпорта не
> могу глянуть, а ставить лениво).Если не твое - то кто автор,
>  если же твое, то получу ли я доступ к ее исходному коду,
>  ибо боюсь скорее всего потребуется добавить некоторый функционал
> если потребуется для собственного проекта...


CrystalLUA - это один *.pas файл, который автоматизирует связку нативного Delphi кода с компилятором-интерпретатором Lua (в *.dll)
автор я

> Имхо, автор чрезмерно увлекается ассемблерными вставками.
>  Мало кто захочет в таком коде разбираться.


В это коде не нужно разбираться. Я даже скажу больше. В следующей версии ассемблера станет ещё больше, потому что максимум производительности - один из приоритетов. А по поводу какой именно помощи я жду, я тут на одном форуме достаточно хорошо выразился

Ожидаемую помощь я делю на три части: тестирование, проработка информации, разработка сторонних средств

Ну то что тестировать нужно будет на разных данных и платформах, думаю, объяснять не надо.
К части "проработка информации" как раз относится например изучение отличий RTTI, законов компиляции, отличия для платформ. Под "проработкой информации" подразумевается полное теоретическое изучение, а так же практические наработки кодом, которые я уже смогу использовать в библиотеке. Каждую "область проработки" я сопровождаю документом с чётким описанием: 1) почему такая проработка вообще нужна. 2) какие приоритеты. 3) какие шаги предлагаю. К примеру сейчас я пишу документ по interface, OLE, Variant. Если один чувак проработает эту информацию, то скорее всего в скриптах появится возможность использовать Excel, Word и другие Ole-контейнеры так же удобно, как бы это делаем в Delphi (наверно и в FPC). Если кто-то из посетителей этого форума проявит желание проработать вопрос полной совместимости с FreePascal и Linux, Mac OS - то я так же создам полный документ со всем описанием, что нужно проработать.

Сторонние средства - это программные продукты, которые каким либо образом помогают в развитии или использовании библиотеки. К примеру, если получится, один чувак реализует универсальную систему тестирования. И тогда возможно огромная гора проблем с тестированием отпадёт. Один человек, кстати с этого форума, возможно разработает IDE. И тогда разрабатывать Lua скрипты можно будет не только с подсветкой синтаксиса, но и всплывающими подсказками, управлениями проектами, дебагом - всё с учётом именно особенностей работы c CrystalLUA. Существует и ещё 1-2 сторонних средства, которые желательно было бы разработать.

Я пишу "возможно", "желательно", "может быть" - потому что проект не коммерческий и каждый участник может как реализовать, так и не реализовать. Ну а я их просто не потяну, потому что свою большую область работ я уже обрисовал. (можно посмотреть в Mind-карте на том форуме)


 
Джобер   (2012-09-16 14:43) [33]

Я не знаю ассемблер, мне не понятен ваш код.

А, кстати, под какой лицензией будет распространяться сей продукт из "зоны свободного ПО"?


 
DevilDevil ©   (2012-09-16 15:08) [34]

> Джобер   (16.09.12 14:43) [33]

> Я не знаю ассемблер, мне не понятен ваш код.
я ещё раз говорю. НЕ надо вдаваться в дебри внутренностей этой библиотеки. Она уже сейчас сложна (даже для меня), будет ещё сложнее (наверно), и в ней точно будет больше ассемблера.

Просто берёте и используете по документации. Всё сделано для того, чтобы "пользовательский" интерфейс библиотеки был крайне простым и понятным. Внутренние сложности - это уже на мне.

> А, кстати, под какой лицензией будет распространяться сей
> продукт из "зоны свободного ПО"?


По лицензии "берёшь и используешь где тебе самому хочется"


 
Джобер   (2012-09-16 15:23) [35]

> По лицензии "берёшь и используешь где тебе самому хочется"

А могу я, например, поменять название и начать продавать эту библиотеку от своего имени?


 
Inovet ©   (2012-09-16 16:45) [36]

> [29] Pavia ©   (16.09.12 00:26)
> что-бы циклы в скрипте автоматически парализовались

Это как? в летаргический sleep уходили?:)


 
DevilDevil ©   (2012-09-16 18:07) [37]

> А могу я, например, поменять название и начать продавать
> эту библиотеку от своего имени?


Да.


 
DVM ©   (2012-09-16 19:56) [38]


> DevilDevil ©   (16.09.12 04:10) [32]


> В это коде не нужно разбираться. Я даже скажу больше. В
> следующей версии ассемблера станет ещё больше, потому что
> максимум производительности - один из приоритетов.

Имхо, чем больше будет там ассемблера тем меньше будет желающих использовать эту библиотеку. Библиотека для Delphi - зачем там ассемблер? Если уж добавляете ассемблерные вставки, делайте директивы условной компиляции {$ifdef PURE_PASCAL} или что то в этом духе и вариант кода на паскале.


 
DevilDevil ©   (2012-09-16 21:13) [39]

> Имхо, чем больше будет там ассемблера тем меньше будет желающих
> использовать эту библиотеку.


у меня свои приоритеты
если кто-то не знает ассемблер или не хочет производительности - это не мои проблемы


 
DVM ©   (2012-09-16 23:12) [40]


> DevilDevil ©   (16.09.12 21:13) [39]


> у меня свои приоритеты

тогда не найдешь ты людей



Страницы: 1 2 3 вся ветка

Форум: "Прочее";
Текущий архив: 2013.03.22;
Скачать: [xml.tar.bz2];

Наверх




Память: 0.57 MB
Время: 0.08 c
2-1335777792
Vladolin7
2012-04-30 13:23
2013.03.22
Как ввести данные в поле Memo?


2-1338798568
leklerk
2012-06-04 12:29
2013.03.22
Программа висит в процессах


15-1330531768
Димка На
2012-02-29 20:09
2013.03.22
Gaussian blur


15-1338451685
TUser
2012-05-31 12:08
2013.03.22
Дошкольное программирование


2-1330168302
QuickReport 3.0
2012-02-25 15:11
2013.03.22
Сохранение QuickReport





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский