Здравствуйте, aka50, Вы писали:
A>Здравствуйте, FDSC, Вы писали:
A>>>Ну вроде как ничего особо сложного...
FDS>>Это не так: можно по разному их программировать. Для РТК нужно учитывать погрешности установки манипулятора, деформацию моста, на котором он подвешен (если он конечно подвешен) и т.п.
A>Дык это понятно... но что мешает данные абстракции (если они конечно могут ими быть) вынести на уровень языка? Или даже A>более того создать свой язык (благо лисп это позволяет легко делать)?
То, что это очень трудно и неудобно. Нужен имеенно специализированный язык или инструмент.
A>Не очень понятно тогда к чему был вопрос "Интересно, как ты на "ЛИСП" робот запрограммируешь?"
К тому, что ЛИСП для этого подходит не больше, чем C++.
FDS>>Это сложные манипуляции, расчёт которых осуществляется дорогими САПР с соотв. надстройками (например, Сatia). Я уж не говорю про инверсную кинематику, избыточные степени подвижности, работа с препятствиями, контроль точности обработки фасонных поверхностей, работа нескольких роботов в одном рабочем пространстве и т.п.
A>И? Тот же AutoCAD вполне неплохо себя с лиспом чувствует (там правда не совсем лисп, но это уже ньюансы).
Сравнил, Catia и AutoCAD — это системы САПР совершенно разного уровня!
В чем проблема в такого монстра как коти засунуть лисп? A>(сейчас конечно уже не засунешь, но в момент начала ее разработки например).
В AutoCAD да, в Catia не проблема. Да и не нужно туда ничего засовывать, надстройку просто написать.
A>Вообще не очень понятно к чему эти сложности тут приведены. Они решаются на любом языке A>в той или иной степени и имеется определенные плюсы/минусы в реализации.
Я привёл эти сложности для того, что бы было понятно, что нужно адаптировать инструмент и язык непосредственно к ним. И ЛИСП и C++ (Java не предназначена для промышленного применения) одинаково неприспособленны для этого.
Высокоуровневость спец. языка или инструмента в данном случае нужно понимать, как удобство решения конкретной задачи (об этом уже писал
). В том числе и не специалистом по программированию, а спец. по конкретной области.
В каждом случае исходные данные для задачи свои, для их решения для каждого робота производителем пишутся свои надстройки над Catia (точнее над ещё одной надстройкой).
В итоге мы получаем программный комплекс интегрированно хранящий данные и алгоритмы по определённому РТК. И смысл этого приложения заключается в том, что оно позволяет на высоком уровне работать (как разработчику, так и программисту) в определённой области знаний.
ЛИСП не содержит конкретной информации по расчёту и проектированию РТК и не может предоставить этих удобств.
В общем, я хотел сказать, что высокоуровневость разработки — это не только язык, но и вся среда разработки, адаптированная под конкретную отрасль науки и техники.
Re[7]: Программирование стало более высокоуровневым?
Здравствуйте, FDSC, Вы писали:
FDS>Здравствуйте, aka50, Вы писали:
A>>И? Тот же AutoCAD вполне неплохо себя с лиспом чувствует (там правда не совсем лисп, но это уже ньюансы). FDS>Сравнил, Catia и AutoCAD — это системы САПР совершенно разного уровня!
Неудачно выразился
<<<skip>>>
FDS>В общем, я хотел сказать, что высокоуровневость разработки — это не только язык, но и вся среда разработки, адаптированная под конкретную отрасль науки и техники.
В этом ключе согласен.
Re[3]: Программирование стало более высокоуровневым?
Maxim S. Shatskih wrote:
> sch>даже сделать следующий опыт. Зайти на форум по C++ и спросить: как > парсить > sch>CSV-файлы. Вам тут же начнут предлагать варианты типа > Boost.Tokenizer, еще > sch>какие-то библиотеки, предложут воспользоваться генераторами > парсеров и > Вот на мой скромный взгляд, когда девелопер в ответ на такие вопросы с > ходу говорит "давайте возьмем готовую библиотеку такую-то" — это двойка.
Двойка такому работодателю. За ненужное изобретение велосипедов.
Я работал в проекте, где было ЗАПРЕЩЕНО использование сторонних
библиотек вообще. И ладно бы, если бы там был какой-то супернадежный
код, для которого надо построчный делать аудит с доказательством
корректности — так ведь там было вполне обычное приложение. В результате
после пары лет развития там изобрели кучу велосипедов (свой парсер
конфигов, свой аналог XPath, своя кривая система O/R-mapping'а) проект
стал просто неподдерживаемым. А самым главным недостатком была скорость
— приложение было написано без учета масштабируемости и при нагрузках
больше проектных безбожно тормозило.
Ну и мы это уродство переписали за пару месяцев (взяли ANTLR, xml4j,
Hibernate и т.п.). Проект без особых проблем развивается и по сей день.
Проблему со скоростью решили с помощью кластеризации и Tangasol
Coherence — получилась почти неограниченная масштабируемость. В
результате заказчик даже с учетом коммерческих лицензий на Coherence
заплатил НА ПОРЯДОК меньше, чем за предидущий велосипед.
--
С уважением,
Alex Besogonov (alexy@izh.com)
Posted via RSDN NNTP Server 1.9
Sapienti sat!
Re[5]: Программирование стало более высокоуровневым?
Здравствуйте, FDSC, Вы писали:
FDS>Я собственно про то же. И вообще, вопрос как глубоко надо знать всё, что используешь.
Тут можно привести хорошую аналогию с телевизором. Когда они были еще эксперементальными, нужно было не просто понимать как они работают, но и понимать как работает передающая часть. Ну, а сейчас достаточно знать как включить телевизор и переключить каналы. Для настройки еще прийдется изучить меню. Знание же того как работает лучевая трубка возможно и полезны, но совершенно не нужны для ползования телевизором.
FDS>приблизительно знаю Хорошее выражение. Надо взять на заметку.
Дык!
... << RSDN@Home 1.2.0 alpha rev. 606>>
Есть логика намерений и логика обстоятельств, последняя всегда сильнее.
Re[4]: Программирование стало более высокоуровневым?
Здравствуйте, ON, Вы писали:
>> Интересно, как ты на "ЛИСП" робот запрограммируешь?
ON>Странный вопрос, как на "языке искусственного интеллекта" запрограммировать робота... ON>я так понимаю это будет "Быстро"...
Здравствуйте, sch, Вы писали:
sch>Общее sch>впечетление -- мастерство программистов снизилось, причем вероятно этот sch>процесс глобален.
Ты абсолютно прав — и это с точки зренияитосри вполне нормальный процесс. По мере того, как программирование охватыаае твсе боле широкие сферы деятельности нужны люди, педалящие именно для этой сферы. А так как у нас далеко не все программеры педалят для Наса, а вокруг сплошной е-коммерц и корпоративные бизнесссс-решения, то и получается, что никому этот уровень нафиг не нужен. Нужные кодеры для объемных и алгоритмически не очень сложных задач. Эти кодеры, так как их большенство, и создают общую картину "упадка культуры" в программинге.
Удачи тебе, браток!
Re[5]: Программирование стало более высокоуровневым?
Вот это? >В общем, я хотел сказать, что высокоуровневость разработки — это не только язык, но и вся среда разработки, адаптированная под конкретную отрасль науки и техники.
1. Может не следует это называть программированием? Например Word очень адаптированная среда разработки, скажем человек там пишет кулинарные рецепты. Тоже среда и тоже программы, но как-то уже не то.
2. Речь шла о высокоуровневости. Тут однозначно никакой высоты нет, поскольку качественно разные вещи на больше-меньше не сравниваются. А самое удачная среда для написания и выполнения интерпретаторов выражений какого-то совершенно нового вида это Лисп.
Posted via RSDN NNTP Server 1.9
Re[2]: Программирование стало более высокоуровневым?
> Ты абсолютно прав — и это с точки зренияитосри вполне нормальный > процесс. По мере того, как программирование охватыаае твсе боле широкие > сферы деятельности нужны люди, педалящие именно для этой сферы. А так > как у нас далеко не все программеры педалят для Наса, а вокруг сплошной > е-коммерц и корпоративные бизнесссс-решения, то и получается, что никому > этот уровень нафиг не нужен. Нужные кодеры для объемных и алгоритмически > не очень сложных задач. Эти кодеры, так как их большенство, и создают > общую картину "упадка культуры" в программинге.
Ты затронул очень животрепещащую для меня тему Дело в том, что я
патологически
неспособен разбираться в таких "объемных и алгоритмически несложных
задачах" -- очень быстро становится неинтересно, исчезает внимание, в
результате я пишу простые вещи долго и некачественно=) Когда у меня встал
вопрос о месте работы, то я не смог придумать ничего лучше разработки
компьютерных игрушек: тут и симуляция физики, и искусственный интеллект, и
графика, и звук, и вообще игровая логика -- пока не жалуюсь. Все же есть
довольно наивный вопрос: есть ли на данный момент в России (в Москве)
спрос на людей, которые любят и хотят заниматься алгоритмически-сложными
задачами или все же базы данных "склад" уже подмяли все под себя?
Posted via RSDN NNTP Server 1.9
Re[3]: Программирование стало более высокоуровневым?
Здравствуйте, sch, Вы писали:
>> Ты абсолютно прав — и это с точки зренияитосри вполне нормальный >> процесс. По мере того, как программирование охватыаае твсе боле широкие >> сферы деятельности нужны люди, педалящие именно для этой сферы. А так >> как у нас далеко не все программеры педалят для Наса, а вокруг сплошной >> е-коммерц и корпоративные бизнесссс-решения, то и получается, что никому >> этот уровень нафиг не нужен. Нужные кодеры для объемных и алгоритмически >> не очень сложных задач. Эти кодеры, так как их большенство, и создают >> общую картину "упадка культуры" в программинге.
sch>Все же есть sch>довольно наивный вопрос: есть ли на данный момент в России (в Москве) sch>спрос на людей, которые любят и хотят заниматься алгоритмически-сложными sch>задачами или все же базы данных "склад" уже подмяли все под себя?
Очень трудно судить о Москве, находясь в другом городе знаешь ли А касательно спроса — он всегда есть. Только пока что базы данных "склад" доминируют.
Удачи тебе, браток!
Re[3]: Программирование стало более высокоуровневым?
Здравствуйте, sch, Вы писали:
sch>Ты затронул очень животрепещащую для меня тему Дело в том, что я sch>патологически sch>неспособен разбираться в таких "объемных и алгоритмически несложных sch>задачах" -- очень быстро становится неинтересно, исчезает внимание, в sch>результате я пишу простые вещи долго и некачественно=) Когда у меня встал sch>вопрос о месте работы, то я не смог придумать ничего лучше разработки sch>компьютерных игрушек: тут и симуляция физики, и искусственный интеллект, и sch>графика, и звук, и вообще игровая логика -- пока не жалуюсь. Все же есть sch>довольно наивный вопрос: есть ли на данный момент в России (в Москве) sch>спрос на людей, которые любят и хотят заниматься алгоритмически-сложными sch>задачами или все же базы данных "склад" уже подмяли все под себя?
Мне кажется, что твой вопрос в чем-то перекликается с тем, что обсуждалось вот в этой ветке: Re[5]: Джоэл снова зажигает
Здравствуйте, ON, Вы писали:
>> Интересно, как ты на "ЛИСП" робот запрограммируешь?
ON>Странный вопрос, как на "языке искусственного интеллекта" запрограммировать робота... ON>я так понимаю это будет "Быстро"...
Посмотри наш спор выше. Роботы-игрушки с исскуственными интелектом, и высокоточные промышленные
роботы это разные вещи. "язык искусственного интеллекта" тут немного не тот термин, в данном
случае больше нужен "математический язык". Так что на счет "Быстро" думаю не совсем так.
Скорее можно сказать "Возможно".
Re[6]: Программирование стало более высокоуровневым?
Здравствуйте, ON, Вы писали:
ON>1. Может не следует это называть программированием? Например Word очень адаптированная среда разработки, скажем человек там пишет кулинарные рецепты. Тоже среда и тоже программы, но как-то уже не то. ON>2. Речь шла о высокоуровневости. Тут однозначно никакой высоты нет, поскольку качественно разные вещи на больше-меньше не сравниваются. А самое удачная среда для написания и выполнения интерпретаторов выражений какого-то совершенно нового вида это Лисп.
Чем написание интерпретаторов более "программирование", чем решение сложных математических задач?
Я не сравниваю принципиально разных вещей, я говорил только про программирование с определённой специализацией. Я не говорю про пользователя-проектировщика системы Catia, про наборщика тексов в Word. Я говорю про окружение, в котором работает программист: сам язык, подключаемые библиотеки и модули других программ.
Если в Word только текст набирать — это не программирование. Но, в Delphi, например, даже классы есть для взаимодействия с MS Word. Написать программу для автоматической генерации отчётов в Word — это уже программирование.
Сначала человек программировал на машинных кодах и был вынужден реализовывать самые простейшие операции. В DOS каждый программист заботился сам о графическом интерфейсе. В Windows этого уже нет, при программировании с MFC прогр. заботился о создании форм сам, с VCL или .NET — нет и т.д. Всё это — повышение уровня абстракции при разработки GUI приложений.
Каждый язык имеет свою специализацию, выражающуюся как в синтаксисе, так и в наличии стандартных подпрограмм или множества сторонних библиотек. Такие специализации повышают высооуровневость программирования.
В этом смысле, функции Catia и её надстроек, MS Word и т.п. есть для программиста специализированная библиотека, повышающая уровень абстракции ПРОГРАММИРОВАНИЯ приложений-надстроек, решающих конкретные задачи конкретной области.
Например, вместо написания функций разбиения документа на слова, орфографической проверки и т.п. пользователь (то есть программист, пишущий своё приложение) уже работает на уровне понятий слова, абзаца, их свойств, выполнения проверки орфографии и грамматики, а не на уровне отдельных символов, к тому же закодированных в определённый формат.
Re[4]: Программирование стало более высокоуровневым?
Спосибо большое за ссылку.
Идеи конечно у него не блещут новизной -- то что хорошие специалисты
делают хорший софт по-моему не требует доказательств. Но стиль изложения!
"Анджелина Джолли -- такая лапочка" Джоэл стал моим третьим любимым
автором после Кнута и пары K&R