macroevolution: (anomalocaris)
[personal profile] macroevolution
Я всю жизнь программировал только на бейсике, на разных его версиях.  Так получилось. Когда писал кандидатскую, набралось очень много таблиц с данными (это были морфологические признаки морских ежей), и я задолбался обсчитывать их на калькуляторе. Поэтому быстренько освоил бейсик (тогда персональные компьютеры IBM только начали появляться, и к ним прилагался язык GW-Basic). Освоил - и сразу почувствовал себя человеком. С тех пор не переучивался, сейчас пишу все свои программки на VBA в MS Access. То есть в программировании я дилетант, но опытный. Программированием пользуюсь сейчас для имитационного моделирования эволюционных процессов в популяциях. Подумываю об одной новой модели, но понимаю, что на VBA она будет работать невыносимо медленно. Насколько я понимаю, программа, написанная почти на любом другом языке, компилируемом, будет работать в разы быстрее. Вопрос такой: какой из этих языков мне будет быстрее и проще всего освоить? Времени, сил и желания преодолевать трудности и вникать в программистские проблемы - не имеется. Мне бы этот язык просто скачать (можно купить, если не слишком дорого), освоить за пару-тройку дней - и вперед. Т.е. главное, чтобы он был максимально простым в освоении для того, кто знает бейсик, без всяких интеллектуальных "понтов", но работал хотя бы раз в 10 быстрее.

Date: 2015-01-11 04:25 pm (UTC)
From: [identity profile] psilogic.livejournal.com
да это понятно, но тогда два языка учить придецца

Date: 2015-01-11 04:26 pm (UTC)
From: [identity profile] kotomord82.livejournal.com
Невыносимо - это насколько невыносимо? (Какие именно "разы" Вам нужны?)
Есть вариант "писать на чем привыкли, а запустить на мощной машине где-нибудь в облаках" - выигрыш в скорости за счет железа.

Date: 2015-01-11 04:27 pm (UTC)
From: [identity profile] lvqcl.livejournal.com
> А что за модель, можно узнать?

Тогда уж лучше небольшую модельную программу, этак на 2 экрана кода, выложить.

И посмотреть, как желающие помочь перепишут её на питон или С#.

(Если, конечно, такие желающие найдутся, в чём я не очень уверен. Всё-таки мешки ворочать труднее, чем советы давать.)

Date: 2015-01-11 04:27 pm (UTC)
From: [identity profile] guga50.livejournal.com
>>если вы математику считаете на графической карте - важна компилируемость/интерпретируемость языка или нет?
шейдерами? (ну да про КУДА слыхал, но чё и как не знаю)

>> где вы нонче видели интерпретируемый язык без прекомпиляции
дык о том и речь.

>>опрос номер три - квейк на жабаскрипте видели?
я квейк вообще никак не видел, если честно.

после того как вы меня в незнании приоритетов операций уличили, я вам всё прощаю :)))
Edited Date: 2015-01-11 04:29 pm (UTC)

Date: 2015-01-11 04:27 pm (UTC)
From: [identity profile] photo pro (from livejournal.com)
>> Конечно, если вы из тех делфи-программистов, которые встретив задачу идут на форум искать "библиотеку",
Я вообще не программист - я биолог-систематик.
Но при этом умудрился шесть лет проработать на факультете прикладной математики и кибернетики. именно по причине склонности к системному подходу к алгоритмизации.

>> Загрузить ваш процессор можно каким-нибудь видеоредактором типа AE, там эффектов много
Вы ошибаетесь. У меня на нынешней работе сосед-видеодизайнер как раз просчитывает свои видеоэффекты в 3D и АЕ. Так вот моя нагрузка на процессор матричной дебаеризации фотографий несравнимо (на порядки выше) чем при пересчете его видео и памяти оно тоже жрет просто страшно.


Edited Date: 2015-01-11 04:28 pm (UTC)

Date: 2015-01-11 04:28 pm (UTC)
From: [identity profile] pssshik.livejournal.com
ну вы то сишарп-моно мне показали. я вот смотрю на него и не понимаю - к чему это.

Date: 2015-01-11 04:29 pm (UTC)
romikchef: (глаза)
From: [personal profile] romikchef
Смущает коммент по ссылке
---
basic в названии не должен вводить в заблуждение, потому что purebasic — си-подобный язык, что и написано в статье

Date: 2015-01-11 04:31 pm (UTC)
From: [identity profile] provocateur-b.livejournal.com
>> Я вообще не программист - я биолог-систематик. Но при этом умудрился шесть лет проработать на факультете прикладной математики и кибернетики. именно по причине склонности к системному подходу к алгоритмизации.

Тогда помогите коллеге, но тоже, кажется с биологией связан.

>> Вы ошибаетесь. У меня на нынешней работе сосед-видеодизайнер как раз просчитывает свои видеоэффекты в 3D и АЕ. Так вот моя нагрузка на процессор матричной дебаеризации фотографий несравнимо (на порядки выше) чем при пересчете его видео.

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

Date: 2015-01-11 04:31 pm (UTC)
From: [identity profile] kallbasser.livejournal.com
при чем тут С++ и C#? Для сильно упоротых картинка на ночь из любимого гугла. Зацени какой чудный график Java и C++ пол линуксом
http://i.mivi.fr/013092c429a64dd39a55850d8467bad0869e5b35.gif

Date: 2015-01-11 04:35 pm (UTC)
From: [identity profile] meharher.livejournal.com
Я ж к тому, что питон меня напрягал ... :)

Date: 2015-01-11 04:36 pm (UTC)
From: [identity profile] Сергей Перовский (from livejournal.com)
За свою жизнь я освоил языков 20. И в 2-3 дня не верю.
Дело в том, что (кролики это не только ценный мех) язык это не только синтаксис, но и словарь.
Запомнить принципы и конструкции языка можно быстро. А найти в библиотеках нужные процедуры и научиться ими пользоваться - дело не быстрое. Больше всего ушло у меня времени на понимания того, как искать нужные функции в безбрежных библиотека С#.
Имитационное моделирование - искусство специфическое. Оно само породило несколько языков программирования.
Уже упоминавшийся в комментариях GPSS был первой попыткой. Потом выяснилось, что в нем удается моделировать только системы массового обслуживания, для которых существуют аналитические решения. Поддержка авторами была прекращена, но 30 лет спустя кто-то реализовал GPSS для персоналок. Печально, но им пользуются.
Первым серьезным успехом была SIMULA-67. Видимо, впервые был реализован объектный подход. На 20 лет раньше, чем он получил широкое распространение. Потому, что остальные задачи программирования дошли до очередного порога сложности позже, а имитационное моделирование по сути имеет смысл только для сложных систем.
Отсюда вывод: для того, чтобы в разумные сроки реализовать имитационную модель, необходимо понять суть ООП и освоить язык, поддерживающий эту парадигму. Я реализовывал механизм событийного имитационного моделирования на Дельфи. Сегодня, пожалуй, выбрал бы Яву. Но от мышления в последовательности команд придется отказаться в любом случае.
И еще. Может быть скорости не хватает из-за неправильного подхода к моделированию, а не из-за языка? Довольно частая ошибка - использование тактовой модели вместо событийной. При наличии большого количества процессов с принципиально разными характерными временами, "пустой" расход вычислительных ресурсов огромен.

Date: 2015-01-11 04:37 pm (UTC)
From: [identity profile] agalakhov.livejournal.com
"Неправильная" программа - это программа, которая НЕ ВСЕГДА дает правильный результат работы. Это бывает намного хуже, чем программа с очевидной ошибкой. Такой программой можно что-нибудь посчитать, получить неверное число и этому числу поверить. Отладке такое не поддается, вероятность заметить ошибку исключительно низка.

На Delphi и PHP вероятность написать такую программу очень велика. На языках вроде Ada она практически равна нулю. На C и Python она есть, но приемлемо низка.

Date: 2015-01-11 04:39 pm (UTC)
From: [identity profile] bear-bull.livejournal.com
Это как раз не значит, что запрос плохой. Ибо указанная вами задача имеет массу себе подобных с точки зрения языка программирования.

Date: 2015-01-11 04:39 pm (UTC)
From: [identity profile] kallbasser.livejournal.com
Всегда замечал, что поклонники C++ считают себя умнее других и склонны к откровенному хамству. При этом сами накосячив (кто там не может отличить C# от С++ ?), видно постоянная работа с указателями вызывают необратимые процессы в мозгу.

Date: 2015-01-11 04:39 pm (UTC)
From: [identity profile] guga50.livejournal.com
кстати по поводу событийной модели. вот тут ООП как раз будет вжилу.
Edited Date: 2015-01-11 04:42 pm (UTC)

Date: 2015-01-11 04:40 pm (UTC)
From: [identity profile] mifromru.livejournal.com
>Вы преувеличиваете порог вхождения.

Я не преувеличиваю, а говорю о его наличии

>Никак не в синтаксисе конкретного языка программирования.

А при чем тут синтаксис? И "овладении языком алгоритмов в общем виде"?

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

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

>Автору этого ЖЖ - точно нет.

Вы делаете выводы не владея информацией, необходимой для того, чтобы эти выводы сделать.

Date: 2015-01-11 04:42 pm (UTC)
From: [identity profile] guga50.livejournal.com
ALGOL короче.
НУИЧТО??? Зато вы будете такой один!!

Date: 2015-01-11 04:42 pm (UTC)
From: [identity profile] ordinary-joe-1.livejournal.com
можно еще скачать sql express примерно там же - и данные из акскса загнать в sql. Ну и vb.net конечно лучший вариант. Синтактически ближе всего к вба.

Date: 2015-01-11 04:43 pm (UTC)
From: [identity profile] shilliennv.livejournal.com
Опять же, все зависит от сложности вычислений. Вы же не будете утверждать, что написанный на Delphi калькулятор будет временами показывать, что 2+2 равно пяти? Поэтому я и уточнила в первом комментарии, что для более конкретных советов нужно иметь представление об уровне задачи. Не стоит усложнять простые вещи.

Date: 2015-01-11 04:44 pm (UTC)
From: [identity profile] maz-d.livejournal.com
так я ж и не говорю что он вас не напрягал =)

Date: 2015-01-11 04:45 pm (UTC)
From: [identity profile] dmut78.livejournal.com
Смена языка позволит вам ускориться максимум в 2 раза.
что бы ускориться в 10 раз - нужно пересматривать организацию входных данных и алгоритмы.

насчет языка с низким порогом вхождения я поддержу уже прозвучавшие советы - python, C#

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

Date: 2015-01-11 04:47 pm (UTC)
From: [identity profile] den-po.livejournal.com
на бэкашке транслятор был

Date: 2015-01-11 04:47 pm (UTC)
From: [identity profile] pssshik.livejournal.com
не, куда к графике уже никакого отношения не имеет. а вот матрицы 1000х1000 поперемножать - самое-то.

Date: 2015-01-11 04:48 pm (UTC)
From: [identity profile] photo pro (from livejournal.com)
>> Тогда помогите коллеге, но тоже, кажется с биологией связан.

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

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

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

Date: 2015-01-11 04:48 pm (UTC)
From: [identity profile] vlhart.livejournal.com
+1

Возможно, я чего-то не понимаю, но какой Basic, когда есть Mathcad? Мало ли, что я с 1967 г. еще в трехадресных машкодах считал. Это еще до сотворения мира было.
И иллюстрации для статьи из Mathcad'а вывести очень просто.

И уж в универе точно д.б. лицензионный для сотрудников.

January 2019

S M T W T F S
  12345
6789101112
1314 1516171819
20212223242526
2728293031  

Style Credit

Expand Cut Tags

No cut tags
Page generated Feb. 8th, 2026 03:49 pm
Powered by Dreamwidth Studios