Как стать автором
Обновить

Комментарии 25

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

@Laax привет ;)

Моя эпопея с попыткой работы с OpenCV в Delphi завершилась как только мне понадобилось собрать программу под разные встраиваемые решения, под которые компилятора Object Pascal увы нет и не будет. Поэтому немного погоревав я достал с полки толстую книгу по Си, освежил память и начал писать на Си. Ну а Delphi... он хорошо там где нужно.

"под разные встраиваемые решения"
А что за решения, например? Lazarus имеет компиляторы под разное всякое

Потрясно в наши дня видеть последователей клуба Delphi. Но время идет, одни инструменты умирают, другие рождаются. Почему бы не попробовать решить свою задачу на Python или на C# .NET? Там не потребуется делать обертки. Все работает из коробки и посты есть на Хабре. Я начинал программировать с QBasic и Visual Basic 6.0 из далекого 98`. Недавно вышел .NET 6, теперь буду переводить проекты на новую версию. Никакого нет желания использовать древние инструменты. Раскачайте свой мозг, перейдите на современные инструментальные средства, а Object Pascal поставьте в рамочку для истории, детям рассказывать про истоки программирования в Древней Руси.

Для питона и шарпа тоже кто-то делал обёртки. Так в чем же проблема и преимущество?

В том что не нужно изобретать велосипед. Текущие обертки поддерживаются сообществом и своевременно обновляются. Так же под Python и C# есть готовый код, который можно просто взять и использовать в своем проекте. Если вы свой проект опубликуете на GitHub, то он будет более полезен сообществу в отличие от проекта на Pascal, т.к. количество людей пишущих под Pascal стремится к нулю.

Так всё же в чем отличие? И по какой причине я не могу опубликовать свой код на Pascal не гите?

Чем отличается проект, поддерживающийся сторонним разработчиками на шарпе и питоне, от проекта поддерживающегося сторонними разработчиками на Паскале?

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

Эта нейросеть будет работать в разы быстрее на Паскале чем на питоне и даже легко может обойти шарп. А удобство использования примерно одинаковое.

На Паскале есть обёртки ко многим вещам, например для работы с CUDA или Vulkan и успешно используются разработчиками.

Читаю такие комменты и поражаюсь... ЗАЧЕМ в МОЕМ мечете твои исповеди???
Тут мужики стараются, делают, а кто-то, который нефиг тут делать приходить и начинает учить уму разуму....

Поздравляю Вас с Вашим первым комментарием. Мужики молодцы, но почему бы не сфокусировать свое внимание на "Что-то похожее на робототехническую систему, с двумя подвижными камерами, способностью отслеживать (направлять «взгляд» на) заданный объект". Сдается, что целью не является реализация робототехнической системы так таковой. Нет никакой постановки задачи. Про эту систему ровным счетом ничего не написано. Безусловное право автора заниматься в данном направление, но разве не хотелось сделать более значимый проект?

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

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

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

В Delphi порог вхождения определяется наличием или отсутствием компонент.

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

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

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

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

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

Декораторы? Были и до питона

Динамическая типизация - до питона

Именованные параметры - до питона

Сборщик мусора? Не смешите

Интерпретируемый?

Не указывать типы параметров - теперь моветон

Так может уже начнёте аргументировать свою позицию?

Так Вы с себя и начните. Пруфлинки на научные статьи на паскале не завезли. Требуете от других, а сами свою позицию не подтвердили. И как к Вам проявлять уважение после этого? Если хотите аргументов, вот пожалуйста. На текущий момент Python находится на первой позиции в индексе TIOBE, а Delphi/Object Pascal на 17 месте. Ну давайте, порасказывайте что Python ничего не стоит и никому не нужен, чего не скажешь конечно же про Pascal. На питоне не пишу, использую C#. Еще важный момент, автор поста не указал архитектуру исполнения. Его робот будет работать на x86 или на ARM? Просто я тоже подготавливаю систему распознавания на .NET с использованием OpenCV на Linux. Система будет работать на одноплатном компьютере banana pi m64, процессор ARM. Датчики, GPIO уже умею подключать. Данные с Web-камеры из .NET кода забираю, по сути осталось прикрутить OpenCV, причем все это работает в Docker контейнерах. И что фантастического в использования OpenCV из паскаля?

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

И да, Delphi собирается с нативной компиляцией под ARM, x86, arm64, m1 и так далее

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

Ясно: "Я не я, и лошадь не моя".

К вашему сведению, Delphi, о котором идёт речь в посте 1986 года, а питон 1991 года. Т.е. разница в 5 лет.

Последняя версия Delphi (как спецификации языка, так и среды разработки) была выпущена в сентябре этого года. До этого, четверть года тому назад и так далее.

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

Это лишь говорит о том, что на Delphi кто то еще пишет, но это не делает его лидером. Вот когда в индексе TIOBE Delphi/Object Pascal хотя бы войдет в десятку, перейдет с жалкого 17 места, вот тогда и появится основание для пересмотра точки зрения. Я как вспомню что объявление переменных только в блоке VAR, так брр аж холодок по коже идет. Поверьте, я не считаю Delphi/Object Pascal плохим инструментом. В свое время на Delphi написал несколько программ для автоматизации медицинского сектора. Программы на Delphi меня кормили в прямом смысле этого слова, и я благодарен за это разработчикам. Но нужно вспомнить время шалтай-болтая когда часть разработчиков стали активно переходить на .NET. Время было потеряно, доверие сообщества было подорвано, и это привело к стагнации. Вы сравните стоимость IDE RAD Studio и MS Visual Studio, и вспомните когда появилась редакция Community Edition. Delphi/Object Pascal исторически устарел, сообщество в основном состоит из людей преклонного возраста, что тут еще добавить?

RAD Studio Community Edition появилась несколько лет назад.

begin
--var Number: float := GetFloat;
--var Value := GetValue;
--var Func := function: integer
--------------begin
----------------Result := 1;
--------------end;
--var GetNum := Func();
end;

Уже несколько лет как нормальный код.

И это только верхушка айсберга.

RAD Studio Community Edition появилась несколько лет назад

Ха-ха, Вы уточните год первого выпуска и приведите ограничения лицензии для этой редакции

И как лицензия говорит о возможностях языка? Больше похоже на уход от темы.

Зарегистрируйтесь на Хабре, чтобы оставить комментарий

Публикации

Истории