Добро пожаловать в форум, Guest  >>   Войти | Регистрация | Поиск | Правила | В избранное | Подписаться
Все форумы / Delphi Новый топик    Ответить
Топик располагается на нескольких страницах: 1 2 3      [все]
 Delphi + Python + Linux  [new]
Janex
Member

Откуда: Латвия
Сообщений: 984
Привет всем.
С появлением версии 10.2 можем шас создовать сервиси под Linux, если подключить
CrossVCL или FMXLinux то и апликации с GUI-ом.
А есть кокая то возможность к всему етому ешё подключить Python ?
Тоесть под Linux-ом в сервисе или в GUI апликацие работать с Python скриптами?
Вроде как бы есть такои "Python for Delphi (P4D)", но он вроде для VCL ...
Кто небудь копался в ету сторону ?

WBR
Janex
8 янв 18, 13:29    [21087512]     Ответить | Цитировать Сообщить модератору
 Re: Delphi + Python + Linux  [new]
Dimitry Sibiryakov
Member

Откуда:
Сообщений: 44070

В Линуксе нет сервисов, там только демоны. Демонам не нужны ни VCL, ни FMX, так что без
разницы на что заточена какая-то библиотека.

Posted via ActualForum NNTP Server 1.5

8 янв 18, 13:31    [21087517]     Ответить | Цитировать Сообщить модератору
 Re: Delphi + Python + Linux  [new]
Janex
Member

Откуда: Латвия
Сообщений: 984
Dimitry Sibiryakov
В Линуксе нет сервисов, там только демоны. Демонам не нужны ни VCL, ни FMX, так что без
разницы на что заточена какая-то библиотека.

Да, демоны, знаю, не так назвал :)
И к стати, вопрос снимается, написал непосмотрев что в коде етого "Python for Delphi (P4D)",
там сразу видно что код и для Линукса написан ...
8 янв 18, 13:44    [21087535]     Ответить | Цитировать Сообщить модератору
 Re: Delphi + Python + Linux  [new]
kealon(Ruslan)
Member

Откуда: Нижневартовск
Сообщений: 2524
Janex,

в api питона буквально несколько функций, можно и движок подцеплять и самому модуль писать, ничего особо сложного

единственное у дельфей с ccall какие-то проблемы были (Py_BuildValue, на версиях старше 7-ки не проверял), потому использовал fpc
8 янв 18, 16:35    [21087767]     Ответить | Цитировать Сообщить модератору
 Re: Delphi + Python + Linux  [new]
Vizit0r
Member

Откуда:
Сообщений: 463
ушел я в итоге от это P4D.
Очень много проблем, большая часть которых нерешаема в принципе.
8 янв 18, 17:57    [21087870]     Ответить | Цитировать Сообщить модератору
 Re: Delphi + Python + Linux  [new]
SOFT FOR YOU
Member

Откуда:
Сообщений: 2461
Есть опыт связывания Lua и Delphi
Сейчас работаю над связыванием функций по RTTI. То есть каждый reference, TMethod, метод интерфейса и просто методы класса - имеют RTTI, где описано имя функции, каждый параметр, соглашение о вызове. Всё это можно дёргать из скриптового языка. Аналогичный функционал для свойств.

К чему я это говорю. Будет воля - можно объединить усилия и сделать аналог P4D.
8 янв 18, 19:26    [21088020]     Ответить | Цитировать Сообщить модератору
 Re: Delphi + Python + Linux  [new]
Janex
Member

Откуда: Латвия
Сообщений: 984
kealon(Ruslan)
Janex,

в api питона буквально несколько функций, можно и движок подцеплять и самому модуль писать, ничего особо сложного

единственное у дельфей с ccall какие-то проблемы были (Py_BuildValue, на версиях старше 7-ки не проверял), потому использовал fpc


Да ну ...
Посмотрел python.dll и python36.dll, там каждому пара сотен експортируемых функции ...
9 янв 18, 09:33    [21088829]     Ответить | Цитировать Сообщить модератору
 Re: Delphi + Python + Linux  [new]
kealon(Ruslan)
Member

Откуда: Нижневартовск
Сообщений: 2524
Janex
kealon(Ruslan)
Janex,

в api питона буквально несколько функций, можно и движок подцеплять и самому модуль писать, ничего особо сложного

единственное у дельфей с ccall какие-то проблемы были (Py_BuildValue, на версиях старше 7-ки не проверял), потому использовал fpc


Да ну ...
Посмотрел python.dll и python36.dll, там каждому пара сотен експортируемых функции ...
это сервисные для базовых типов в основном. Ни разу весь этот массив не пригодился, да и проблема добавить одну две функции?

вот, например, запуск движка
+
program TestAPI;

{$mode objfpc}{$H+}

uses
  Classes, SLEParser, SolverDef, SolverLib, MyPyEngine
  { you can add units after this };
var SL:TStringList;
begin
  Py_SetProgramName(PChar(ParamStr(0)));  //* optional but recommended */
  Py_Initialize();


  initMyLibs;

  SL:=TStringList.Create;
  try
    SL.LoadFromFile('SolverTest.py');
    //PyRun_SimpleString('from time import time,ctime'#13#10'print ''Today is'',ctime(time())'#13#10);
    PyRun_SimpleString(PChar(SL.Text));
  finally
    SL.Free;
  end;
  Py_Finalize();
end.
9 янв 18, 11:35    [21089265]     Ответить | Цитировать Сообщить модератору
 Re: Delphi + Python + Linux  [new]
Janex
Member

Откуда: Латвия
Сообщений: 984
kealon(Ruslan),

А от куда етот тестовыи пример?
Можно где то скачать по больше примеров, а то с одним примером врядли въеду
в ету кухню, а то мне ешё надо чтоб из скрипта можно было бы контролы дёргать, типо
чтото такое:

MyDelphiLabelOnForm.Text = 'blabla'

Или даже загрузить скрипт в движок и выполнить какую то одну функцию ...
9 янв 18, 12:15    [21089525]     Ответить | Цитировать Сообщить модератору
 Re: Delphi + Python + Linux  [new]
Alexander A. Sak
Member

Откуда: Омск
Сообщений: 918
Мне кажется, я такие примеры с дерганьем контролов видел лет 15 назад в той же P4D или что там тогда было.

У меня вопрос, типичный для русских форумов. А зачем именно Питон нужен? Мне кажется, есть более подходящие варианты. Типа FastScript или та же Lua. У меня почему-то осталось впечатление некоторой кривоватости этой связки. Причем отдельно ни к Питону ни к Дельфи претензий нет, а вот в связке -- ерунда какая-то.
9 янв 18, 12:42    [21089657]     Ответить | Цитировать Сообщить модератору
 Re: Delphi + Python + Linux  [new]
kealon(Ruslan)
Member

Откуда: Нижневартовск
Сообщений: 2524
Janex,

тынц

заголовки можно из того же PFD4 брать
9 янв 18, 12:45    [21089667]     Ответить | Цитировать Сообщить модератору
 Re: Delphi + Python + Linux  [new]
Janex
Member

Откуда: Латвия
Сообщений: 984
Alexander A. Sak,
Почему питон ...
Дело в том, что то что я делаю, ка надеюсь (все програмисти так надеюстся :)), будет широко использоватся по всему шару :)
И если шас посмотреть на популярность язиков, то дельфи/паскаль крупно уступает питону, к тому ешё, как говорят,
он лёгкии в обучение.
Я бы с удовольствием делал бы на FastScript-е или PaxCompiler-e, но боюсь многих ето отпугнёт.
Скорее сего буду делать проект чтоб работал и на питоне и на FastScript, пока только нерешил с чем начать ...
9 янв 18, 13:52    [21089967]     Ответить | Цитировать Сообщить модератору
 Re: Delphi + Python + Linux  [new]
rgreat
Member

Откуда:
Сообщений: 3860
Если плясать от популярности тебе на Java плагины делать надо. :)
9 янв 18, 14:04    [21090014]     Ответить | Цитировать Сообщить модератору
 Re: Delphi + Python + Linux  [new]
Alexander A. Sak
Member

Откуда: Омск
Сообщений: 918
Я бы сказал, на JavaScript.
Кстати, где-то видел реализацию JS на Дельфи (или FPC).
9 янв 18, 14:12    [21090035]     Ответить | Цитировать Сообщить модератору
 Re: Delphi + Python + Linux  [new]
rgreat
Member

Откуда:
Сообщений: 3860
Alexander A. Sak
Я бы сказал, на JavaScript.
Кстати, где-то видел реализацию JS на Дельфи (или FPC).
У меня у самого подобная реализация в ПО есть.

Но самый популярный язык якобы простая Java.
9 янв 18, 14:16    [21090046]     Ответить | Цитировать Сообщить модератору
 Re: Delphi + Python + Linux  [new]
alekcvp
Member

Откуда:
Сообщений: 606
rgreat
Но самый популярный язык якобы простая Java.

Покупаешь тут, панимаешь, супернавороченый SAN-Switch от HP... за полмиллиона деревянных.... а там конфигуратор сделан в виде Java-апплета, который запустить можно только из под Internet Explorer'а, причём не старше 6й версии, для чего приходится поднимать отдельную виртуалку на Windows XP... Да шла бы она лесом, такая популярность!
9 янв 18, 14:32    [21090109]     Ответить | Цитировать Сообщить модератору
 Re: Delphi + Python + Linux  [new]
rgreat
Member

Откуда:
Сообщений: 3860
Я не сказал что Java - самый лучший язык. Я сказал что он самый популярный.
9 янв 18, 14:41    [21090153]     Ответить | Цитировать Сообщить модератору
 Re: Delphi + Python + Linux  [new]
makhaon
Member

Откуда: A galaxy far far away
Сообщений: 2193
alekcvp,

зато java и tiobe греет

Janex'у: зачем Delphi вообще понадобился? Писал бы сразу на питоне, если уж сердцу так мил?
9 янв 18, 15:37    [21090446]     Ответить | Цитировать Сообщить модератору
 Re: Delphi + Python + Linux  [new]
Kazantsev Alexey
Member

Откуда:
Сообщений: 2754
Janex
там сразу видно что код и для Линукса написан ...

Только он для кайликса и фпц, а для delphi for linux он не пойдёт.
9 янв 18, 15:41    [21090470]     Ответить | Цитировать Сообщить модератору
 Re: Delphi + Python + Linux  [new]
Janex
Member

Откуда: Латвия
Сообщений: 984
Kazantsev Alexey
Janex
там сразу видно что код и для Линукса написан ...

Только он для кайликса и фпц, а для delphi for linux он не пойдёт.

Ну да ... шас уже заметил :(
9 янв 18, 16:05    [21090594]     Ответить | Цитировать Сообщить модератору
 Re: Delphi + Python + Linux  [new]
Janex
Member

Откуда: Латвия
Сообщений: 984
makhaon
alekcvp,

зато java и tiobe греет

Janex'у: зачем Delphi вообще понадобился? Писал бы сразу на питоне, если уж сердцу так мил?


На дельфе пишу уже лет 20, а самыи лучшии язык тот которого лучше знаеш, а на
питона для скриптов смотрю изза того что популярнее чем дельфа
9 янв 18, 16:07    [21090607]     Ответить | Цитировать Сообщить модератору
 Re: Delphi + Python + Linux  [new]
Vladimir Baskakov
Member

Откуда:
Сообщений: 1739
Janex
на питона для скриптов смотрю из за того, что популярнее чем дельфа


если программа полезная, ее будут скриптовать хоть на чем. А если не очень полезная, то ни на чем не будут. Если приложить толковые примеры скриптования, как часть документации - люди разберутся.
9 янв 18, 17:30    [21091074]     Ответить | Цитировать Сообщить модератору
 Re: Delphi + Python + Linux  [new]
Vizit0r
Member

Откуда:
Сообщений: 463
Janex
Я бы с удовольствием делал бы на FastScript-е или PaxCompiler-e, но боюсь многих ето отпугнёт.
Скорее сего буду делать проект чтоб работал и на питоне и на FastScript, пока только нерешил с чем начать ...


PaxCompiler категорически лесом, ибо глючное. Если его доведут до ума и A-Pax будет нормальным...но то когда еще будет.

FastScript - не юзал.

Из 10+ практики PascalScript показал себя как стабильный и вылизанный донельзя. Много чего не умеет, но то, что есть - работает на отлично.
9 янв 18, 17:41    [21091112]     Ответить | Цитировать Сообщить модератору
 Re: Delphi + Python + Linux  [new]
alekcvp
Member

Откуда:
Сообщений: 606
Vizit0r
Из 10+ практики PascalScript показал себя как стабильный и вылизанный донельзя. Много чего не умеет, но то, что есть - работает на отлично.

Некоторые его решения меня ставят в тупик, как и некоторые моменты исходного кода. Если вы про RemObjects.
Из того что быстро вспоминается: зачем-то сделали так, что для классов, которые экспортируются в скрипт, можно сеттер для свойства назначить напрямую, а для геттера - обязательно нужно сделать обёртку, т.к. он по-умолчанию сделан в виде процедуры. Почему не сделать в виде функции, как в дельфи - непонятно.
9 янв 18, 17:54    [21091163]     Ответить | Цитировать Сообщить модератору
 Re: Delphi + Python + Linux  [new]
Vizit0r
Member

Откуда:
Сообщений: 463
alekcvp
Vizit0r
Из 10+ практики PascalScript показал себя как стабильный и вылизанный донельзя. Много чего не умеет, но то, что есть - работает на отлично.

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

угу.
9 янв 18, 17:59    [21091179]     Ответить | Цитировать Сообщить модератору
 Re: Delphi + Python + Linux  [new]
Vizit0r
Member

Откуда:
Сообщений: 463
Vizit0r
угу.


отправилось сильно быстро.

Мне лично очень жаль, что они так и не сделали поддержку мультиплатформенности на дельфы, только для FPC.
9 янв 18, 18:01    [21091184]     Ответить | Цитировать Сообщить модератору
 Re: Delphi + Python + Linux  [new]
asviridenkov
Member

Откуда:
Сообщений: 3741
alekcvp
Vizit0r
Из 10+ практики PascalScript показал себя как стабильный и вылизанный донельзя. Много чего не умеет, но то, что есть - работает на отлично.

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


Нормальный скриптер должен на входе получать только ссылку на класс, остальное брать по RTTI. Все специальные обертки в пекло.
9 янв 18, 19:55    [21091394]     Ответить | Цитировать Сообщить модератору
 Re: Delphi + Python + Linux  [new]
alekcvp
Member

Откуда:
Сообщений: 606
asviridenkov
Нормальный скриптер должен на входе получать только ссылку на класс, остальное брать по RTTI. Все специальные обертки в пекло.

И много есть таких нормальных скриптеров? Желательно ещё бесплатных? :)
9 янв 18, 19:59    [21091400]     Ответить | Цитировать Сообщить модератору
 Re: Delphi + Python + Linux  [new]
asviridenkov
Member

Откуда:
Сообщений: 3741
alekcvp
asviridenkov
Нормальный скриптер должен на входе получать только ссылку на класс, остальное брать по RTTI. Все специальные обертки в пекло.

И много есть таких нормальных скриптеров? Желательно ещё бесплатных? :)


Понятия не имею. Но возможность очевидная и удобная, и не использовать ее странно.
Насчет бесплатности - осуждаемые здесь Pax и Fast - платные. Почти все приличные остальные - тоже. Откуда взяться бесплатному?
9 янв 18, 20:20    [21091428]     Ответить | Цитировать Сообщить модератору
 Re: Delphi + Python + Linux  [new]
alekcvp
Member

Откуда:
Сообщений: 606
asviridenkov
Насчет бесплатности - осуждаемые здесь Pax и Fast - платные. Почти все приличные остальные - тоже. Откуда взяться бесплатному?

Не знаю насчёт RTTI, но когда-то давно, когда я смотрел на FastScript, я так и не понял как там (и можно ли вообще) вызвать на исполнение только определённую процедуру из сценария и прочитать значение переменной после этого.
А, кстати, DWS2 вроде умеет в RTTI.
9 янв 18, 20:38    [21091487]     Ответить | Цитировать Сообщить модератору
 Re: Delphi + Python + Linux  [new]
asviridenkov
Member

Откуда:
Сообщений: 3741
alekcvp
asviridenkov
Насчет бесплатности - осуждаемые здесь Pax и Fast - платные. Почти все приличные остальные - тоже. Откуда взяться бесплатному?

Не знаю насчёт RTTI, но когда-то давно, когда я смотрел на FastScript, я так и не понял как там (и можно ли вообще) вызвать на исполнение только определённую процедуру из сценария и прочитать значение переменной после этого.
А, кстати, DWS2 вроде умеет в RTTI.


Не знаю насчет фаста, но вызов отдельной процедуры с параметрами, мне кажется входит в минимальный минимум скриптеров. Вот асинхронный вызов (одновременно из разных потоков), это уже более интересная возможность.
В принципе нормальный скриптер должен позволять:
+ Выполнить тело скрипта
+ Выполнить функцию с параметрами и вернуть значение
+ Выполнить функцию с var/out параметрами
+ Вычислить произвольное выражение.

DWS умеет RTTI, но он вроде напрямую не работает, только в JS компилирует, не?
9 янв 18, 21:06    [21091560]     Ответить | Цитировать Сообщить модератору
 Re: Delphi + Python + Linux  [new]
Kazantsev Alexey
Member

Откуда:
Сообщений: 2754
asviridenkov
DWS умеет RTTI, но он вроде напрямую не работает, только в JS компилирует, не?

Работает. Компиляция в JS там как приятный бонус.
9 янв 18, 21:11    [21091572]     Ответить | Цитировать Сообщить модератору
 Re: Delphi + Python + Linux  [new]
Vizit0r
Member

Откуда:
Сообщений: 463
asviridenkov
alekcvp
пропущено...

И много есть таких нормальных скриптеров? Желательно ещё бесплатных? :)


Понятия не имею. Но возможность очевидная и удобная, и не использовать ее странно.
Насчет бесплатности - осуждаемые здесь Pax и Fast - платные. Почти все приличные остальные - тоже. Откуда взяться бесплатному?


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

Так что теория и практика - это совсем разные вещи.
9 янв 18, 21:22    [21091600]     Ответить | Цитировать Сообщить модератору
 Re: Delphi + Python + Linux  [new]
kealon(Ruslan)
Member

Откуда: Нижневартовск
Сообщений: 2524
asviridenkov
Нормальный скриптер должен на входе получать только ссылку на класс, остальное брать по RTTI. Все специальные обертки в пекло.

ИМХО: в корне неверно. Нормальный скриптер должен выполнять скрипт (компиляция, исполнение), иметь минимальную билиотеку (базовые типы и их поддержка, основная математика) и предоставлять "прозрачный контракт" на добавление своей библиотеки.

А вот всякие излишества вроде RTTI и прочей рефлексии должны быть в базовой библиотеке языка, который их предоставляет.
9 янв 18, 22:34    [21091746]     Ответить | Цитировать Сообщить модератору
 Re: Delphi + Python + Linux  [new]
asviridenkov
Member

Откуда:
Сообщений: 3741
kealon(Ruslan)
А вот всякие излишества вроде RTTI и прочей рефлексии должны быть в базовой библиотеке языка, который их предоставляет.

И как без поддержки RTTI внутри, сделать ее снаружи? То же самое каждому самому писать?

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

ЗЫ Некоторые еще и функции не умеют регистрировать без прослойки, вместо того чтобы написать что-то вроде
AddFunction('Cos(X: Extended): Extended', @Cos);


нужно еще функцию городить.
9 янв 18, 22:49    [21091781]     Ответить | Цитировать Сообщить модератору
 Re: Delphi + Python + Linux  [new]
kealon(Ruslan)
Member

Откуда: Нижневартовск
Сообщений: 2524
asviridenkov
И как без поддержки RTTI внутри, сделать ее снаружи? То же самое каждому самому писать?

>>...и предоставлять "прозрачный контракт" на добавление своей библиотеки.
например, ActiveScripting (VBScript, JScript)
  • создал движок
  • добавил свои главные объекты (IDispatch), методы которых будут видны
  • запустил

    Контрактом здесь является IDispatch, и в принципе под виндой довольно удобно, так как всё пляшет вокруг него. Обёрток к нему даже в базовой поставке дельфи, минимум 2 класса. Фактически выходит строчек на 100 для подцепки.

    asviridenkov
    Сферический скриптер в вакууме не нужен, людям нужно то что максимально соответствует принципу "воткнул и работает".
    А писать по строчке на каждое свойство каждого класса - увольте. Автоматический импорт частично спасает ситуацию, но ставит вопрос синхронизации.
    Как раз полностью абстрактный и нужен, который полностью подчиняется главному приложению. Что бы оно не полезло куда не нужно. А такой навороченный - хз куда с помощью него можно полезть, хорошо если только в Math.


    PS: + ещё очень желательно иметь возможность отладки, н-р те же движки ActiveScripting её поддерживают
  • 10 янв 18, 07:07    [21092009]     Ответить | Цитировать Сообщить модератору
     Re: Delphi + Python + Linux  [new]
    SOFT FOR YOU
    Member

    Откуда:
    Сообщений: 2461
    В новых Delphi RTTI действительно мощный
    Например, у формы или какого угодно компонента есть событие. Так вот благодаря RTTI ты можешь получить не только имя, сеттер, геттер, но и параметры вызова, с учётом var, const и array of. А из скрипта всё это богатство можно вызвать. Я как раз бьюсь над этим последние пару месяцев.
    10 янв 18, 12:50    [21093060]     Ответить | Цитировать Сообщить модератору
     Re: Delphi + Python + Linux  [new]
    Kazantsev Alexey
    Member

    Откуда:
    Сообщений: 2754
    SOFT FOR YOU,

    Вообще, вся эта информация была доступна с Delphi 6, просто удобных обёрток для неё небыло. А вот попробуй получить свойства advanced records и... обломись.
    10 янв 18, 13:55    [21093318]     Ответить | Цитировать Сообщить модератору
     Re: Delphi + Python + Linux  [new]
    asviridenkov
    Member

    Откуда:
    Сообщений: 3741
    kealon(Ruslan)
    Что бы оно не полезло куда не нужно. А такой навороченный - хз куда с помощью него можно полезть, хорошо если только в Math.

    PS: + ещё очень желательно иметь возможность отладки, н-р те же движки ActiveScripting её поддерживают


    Что мешает добавлять только те классы которые нужно, плюс задавать видимость методов (public/protected)?

    Отладка само собой, это не обсуждается. Интересна возможность удаленной отладки, чтобы можно было, скажем, скрипт внутри сервиса отлаживать, или на другой машине. Но такого у дельфовых скриптеров не видел.
    10 янв 18, 14:16    [21093436]     Ответить | Цитировать Сообщить модератору
     Re: Delphi + Python + Linux  [new]
    под ван
    Guest
    SOFT FOR YOU
    В новых Delphi RTTI действительно мощный
    Например, у формы или какого угодно компонента есть событие. Так вот благодаря RTTI ты можешь получить не только имя, сеттер, геттер, но и параметры вызова, с учётом var, const и array of. А из скрипта всё это богатство можно вызвать. Я как раз бьюсь над этим последние пару месяцев.

    Так в чём его мощь, ежели ты бьёшься уже последние пару месяцев? Была бы реально мощь - ты бы сделал за неделю. Вот это мощь, понимаю
    10 янв 18, 15:45    [21093871]     Ответить | Цитировать Сообщить модератору
     Re: Delphi + Python + Linux  [new]
    asviridenkov
    Member

    Откуда:
    Сообщений: 3741
    под ван
    SOFT FOR YOU
    В новых Delphi RTTI действительно мощный
    Например, у формы или какого угодно компонента есть событие. Так вот благодаря RTTI ты можешь получить не только имя, сеттер, геттер, но и параметры вызова, с учётом var, const и array of. А из скрипта всё это богатство можно вызвать. Я как раз бьюсь над этим последние пару месяцев.

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


    Скорее всего он пытается сделать прямой вызов методов, без использования довольно тормознутых Invoke, а там возни хватает, особенно если не только x32 поддерживать.
    10 янв 18, 15:57    [21093932]     Ответить | Цитировать Сообщить модератору
     Re: Delphi + Python + Linux  [new]
    SOFT FOR YOU
    Member

    Откуда:
    Сообщений: 2461
    asviridenkov,

    Именно
    10 янв 18, 16:12    [21093978]     Ответить | Цитировать Сообщить модератору
     Re: Delphi + Python + Linux  [new]
    asviridenkov
    Member

    Откуда:
    Сообщений: 3741
    Ждем самого быстрого в мире скриптового языка))
    10 янв 18, 16:14    [21093988]     Ответить | Цитировать Сообщить модератору
     Re: Delphi + Python + Linux  [new]
    SOFT FOR YOU
    Member

    Откуда:
    Сообщений: 2461
    Kazantsev Alexey,

    Если я ничего не путаю, то в Delphi 6 ты не видишь TypeInfo аргументов функции. Или я заблуждаюсь? Накатай примерчик.

    Насчёт свойств структур не помню. Но поля находятся без проблем
    10 янв 18, 16:15    [21093992]     Ответить | Цитировать Сообщить модератору
     Re: Delphi + Python + Linux  [new]
    SOFT FOR YOU
    Member

    Откуда:
    Сообщений: 2461
    asviridenkov,

    Для самого быстрого нужен JIT
    Ну и потом, скорее всего я CrystalLUA отложу в пользу менеджера памяти. Слишком много я отдал скриптовику, и слишком давно не посвящал времени менеджеру :)
    10 янв 18, 16:17    [21094004]     Ответить | Цитировать Сообщить модератору
     Re: Delphi + Python + Linux  [new]
    Kazantsev Alexey
    Member

    Откуда:
    Сообщений: 2754
    asviridenkov
    без использования довольно тормознутых Invoke

    Если я правильно помню, там основные тормоза от TValue. Но даже в таком виде Invoke быстрее мамонтового ObjectInvoke раз в семь :)

    SOFT FOR YOU
    Именно

    Опять на фигню время тратишь...

    SOFT FOR YOU
    Если я ничего не путаю, то в Delphi 6 ты не видишь TypeInfo аргументов функции. Или я заблуждаюсь?

    C Delphi 7 всё это можно получить.

    SOFT FOR YOU
    Накатай примерчик.

    http://hallvards.blogspot.ru/2006/09/extended-class-rtti.html

    SOFT FOR YOU
    Но поля находятся без проблем

    Поля не свойства.
    10 янв 18, 16:29    [21094072]     Ответить | Цитировать Сообщить модератору
     Re: Delphi + Python + Linux  [new]
    Kazantsev Alexey
    Member

    Откуда:
    Сообщений: 2754
    SOFT FOR YOU
    Для самого быстрого нужен JIT

    И он есть в DWS.
    10 янв 18, 16:29    [21094075]     Ответить | Цитировать Сообщить модератору
     Re: Delphi + Python + Linux  [new]
    Kazantsev Alexey
    Member

    Откуда:
    Сообщений: 2754
    Кстати, есть ещё один быстрый скриптер, и даже с поддержкой указателей.
    10 янв 18, 16:31    [21094092]     Ответить | Цитировать Сообщить модератору
     Re: Delphi + Python + Linux  [new]
    SOFT FOR YOU
    Member

    Откуда:
    Сообщений: 2461
    Kazantsev Alexey,

    Интересная статейка, но это методы, а не события. Ты попробуй TypeInfo параметров события получить.
    А что до фигни... ну каждый программирует что хочет :)

    Мне всегда был интересен механизм вызова функций на разных платформах. Не думал, что там столько нюансов! Ну и потом на старых Delphi нет TValue, мне нужно было что-то своё. Это даже если не учитывать его тормознутость :)
    10 янв 18, 16:43    [21094157]     Ответить | Цитировать Сообщить модератору
     Re: Delphi + Python + Linux  [new]
    Kazantsev Alexey
    Member

    Откуда:
    Сообщений: 2754
    SOFT FOR YOU
    А что до фигни... ну каждый программирует что хочет :)

    Не, если тут дело в поддержке старых версий, то вопросов нет ;)
    10 янв 18, 16:56    [21094217]     Ответить | Цитировать Сообщить модератору
     Re: Delphi + Python + Linux  [new]
    .чччД
    Guest
    Что здесь? Оптимизатор грозится создать самый быстрый язык программирования?
    10 янв 18, 17:10    [21094278]     Ответить | Цитировать Сообщить модератору
     Re: Delphi + Python + Linux  [new]
    SOFT FOR YOU
    Member

    Откуда:
    Сообщений: 2461
    .чччД,

    Оптимизатор трезво оценивает свои возможности. Я всегда говорил, что хорошие идеи требуют рук энтузиастов :)
    10 янв 18, 17:39    [21094377]     Ответить | Цитировать Сообщить модератору
     Re: Delphi + Python + Linux  [new]
    StarikPro
    Guest
    Недавно наткнулся
    14 янв 18, 10:19    [21105234]     Ответить | Цитировать Сообщить модератору
     Re: Delphi + Python + Linux  [new]
    StarikPro
    Guest
    StarikPro,

    а это тот же python4delphi
    уже было
    14 янв 18, 10:22    [21105236]     Ответить | Цитировать Сообщить модератору
     Re: Delphi + Python + Linux  [new]
    SOFT FOR YOU
    Member

    Откуда:
    Сообщений: 2461
    В общем была такая мысль. Сделать универсальный скриптовый движок поверх LLVM. И сделать универсальную обёртку над RTTI и типами Delphi. А промежуточное звено, лексический анализатор под конкретный язык и дебаггер - это можно зафигачить для нескольких языков.

    В общем у кого есть желание заняться подобным проектом - милости прошу писать.
    14 янв 18, 16:44    [21105668]     Ответить | Цитировать Сообщить модератору
    Топик располагается на нескольких страницах: 1 2 3      [все]
    Все форумы / Delphi Ответить