Здравствуйте, Sinclair, Вы писали:
S>И в реальной битве "софт для бюджетирования" вдруг выиграет не коробочное решение от Оракл, не С++ код от бородачей в свитерах, не "расширение к 1С:предприятие" от интеграторов, и даже не кусочек кода на бейсике, написанный внуком финдира — а тот самый "Excel с ВПР".
"коробочное решение от Оракл"
Как оно бывает, приходишь куда-нибудь, тебе говорят: "У нас работает суперпупермега коробочное решение от Оракл/САП", — ты такой — "Покажи". "Ну вот открываем Excel, вот тут кнопочка, запускаем макрос, его Вася написал, уволился 15 лет назад, никто не знает как он работает, поэтому вот тут Петя написал еще 2 макроса, Петя уволился 10 лет назад, эти макросы вообще загадка, поэтому Коля и Маша еще с десяток наваяли, главное не перепутать, а вот это уже я, но с уже забыл как они работают". "Стоп-стоп-стоп, а где же решение от Оракл/САП", — спрашиваю я. "Ааааа, ща всё будет", — далее заход в терминал, там запуск виртуалки, из нее подрубаемся к еще одному терминалу, там чего-то запускаем, наконец Ctrl+P, твой виз-а-ви куда-то убегает, минут через 15 возвращается с бумажкой, на которой напечатан отчет в колонтитуле которого красуется "Oracle E-Buisness Suite". А на вопрос: "Куда ты бегал?", — тебе отвечают — "Принтер, который печатает отчеты находится в другом корпусе, надо идти через улицу, на 8 этаже"
Здравствуйте, Tai, Вы писали:
Tai>Можно ли на нем писать серьёзный софт?
Не вижу, чем бейсик принципиально отличается от любого другого популярного ЯП. Думаю, писать серьёзный софт можно на чём угодно, включая ассемблер.
На мой взгляд минимальный язык, на котором можно писать софт любой сложности без особых затруднений, выглядит примерно так:
function get_full_name(person) {
name_components[0] = person.surname;
name_components[1] = person.name;
name_components[2] = person.patronymic;
full_name = '';
i = 0;
for {
if (i >= name_components.length) {
break;
}
name_component = name_components[i];
if (name_component != '') {
if (full_name != '') {
full_name += ' ';
}
full_name += name_component;
}
i += 1;
}
return full_name;
}
Иными словами в языке должны быть функции, в языке должны быть изменяемые локальные переменные, в языке должны быть структуры данных "список" и "таблица со строковыми ключами", в языке должны быть управляющие структуры "условие" и "цикл", в языке должны быть типы данных "строка" и "число с плавающей точкой". Может быть это даже можно ещё упростить, но я сходу не придумал как. Ну понятно должен быть какой-то джентльменский набор операторов — математических, строковых и тд.
Здравствуйте, Osaka, Вы писали:
Tai>>Можно ли на нем писать серьёзный софт? O>На Excel и Access + VBA (ещё до вейперов-гироскутерщиков со всякими луа и питонами) писали автоматизацию учёта предприятий с очень серьёзными деньгами. Причём даже бухгалтеры.
Плюс какие-нить соронние ActiveX-контролы гридов, чтобы пиктограммы в строках отображать, бо гриды MS Access не позволяют этого.
В MS Access можно выкрутиться через т.н. "ленточные формы" которые позволяют картинки, но для них надо однажды написать контрол-заголовок, типа шапки грида.
Здравствуйте, vsb, Вы писали:
vsb>Не вижу, чем бейсик принципиально отличается от любого другого популярного ЯП. Думаю, писать серьёзный софт можно на чём угодно, включая ассемблер.
Здравствуйте, Bill Baklushi, Вы писали:
BB>Серьёзный нет. Можно писать смешной.
Мне пару раз с таким смешным софтом разбираться пришлось. Достался мне по наследству. Именно тогда я в полной мере ощутил, что такое on error resume next. Все жалуются, что ничего не работает, а я не вижу причину. Обхохочешься.
Здравствуйте, _AND, Вы писали:
_AN>Да, сразу украинцев выдает.
Вот шоп да так нет!
_AN>Может быть это не только украинское, а вообще южно-русское, но у нас тут только украинцы так говорят.
... << RSDN@Home 1.3.110 alpha 5 rev. 62>>
Забанили по IP, значит пора закрыть эту страницу.
Всем пока
vsb>в языке должны быть изменяемые локальные переменные
вы не поверите.
В Erlang следует отметить одну ключевую вещь: переменные являются неизменяемыми, что означает, что для изменения значения переменной ее необходимо уничтожить и заново создать.
Здравствуйте, kov_serg, Вы писали:
vsb>>в языке должны быть изменяемые локальные переменные _>вы не поверите. _>
В Erlang следует отметить одну ключевую вещь: переменные являются неизменяемыми, что означает, что для изменения значения переменной ее необходимо уничтожить и заново создать.
P>Мне пару раз с таким смешным софтом разбираться пришлось. Достался мне по наследству. Именно тогда я в полной мере ощутил, что такое on error resume next. Все жалуются, что ничего не работает, а я не вижу причину. Обхохочешься.
Обычный язык. Маловыразительный конечно, корявенький, но зачастую большего и не надо. А насчет "on error" в любом языке можно сделать игнор исключений.
Жизнь не обязана доставлять удовольствие. Достаточно отсутствия страданий.
Здравствуйте, Tai, Вы писали:
Tai>Можно ли на нем писать серьёзный софт?
только анекдоты. когда начинал, довольно хитрый отчет на VBA + EXCEL + ACESS запилил.
и не смущало, что IDE нет по сути.
а сейчас в vs 22 приятно как ии иногда делает подсказки.
Здравствуйте, s_aa, Вы писали:
_>Обычный язык. Маловыразительный конечно, корявенький, но зачастую большего и не надо. А насчет "on error" в любом языке можно сделать игнор исключений.
Вообще-то я не против Бейсика. Я однажды участвтвал в проекте на нем, в котором не было ни строчки говнокода. Причем это был Бейсик на Искре-226, который сам по себе был редким УГ.
А вот on error увидеть намного сложнее, чем игнорирование исключений. Оно прячется в похожих строках кода.