2014 dxdy logo

Научный форум dxdy

Математика, Физика, Computer Science, Machine Learning, LaTeX, Механика и Техника, Химия,
Биология и Медицина, Экономика и Финансовая Математика, Гуманитарные науки




Начать новую тему Ответить на тему На страницу Пред.  1, 2, 3
 
 Re: Влияние бейсика на языки программирования
Сообщение24.10.2016, 11:31 
Заслуженный участник
Аватара пользователя


06/10/08
6422
upgrade в сообщении #1162489 писал(а):
Можете эксперимент провести - определить "порог вхождения" для бейсика и для любого другого языка. У бейсика самый низкий. Это азбука программирования по сути. Очень высокая адаптация под мышление среднего европейского человека (не знаю как с китайцами) - это именно прерогатива бейсика. Можно написать простейшую программу непрограммисту, яснее синтаксиса нет. Мануалы понимаются большинством сходу. В паскале это невозможно, в си это невозможно, и вообще ни в каком другом языке это невозможно.
Есть ссылки на уже проведенные эксперименты? Известные мне примеры либо одинаково хорошо усваивали бейсик и паскаль, либо одинаково не усваивали. Но для статистики их маловато.

 Профиль  
                  
 
 Re: Влияние бейсика на языки программирования
Сообщение24.10.2016, 11:48 


07/08/14
4231
Xaositect в сообщении #1162495 писал(а):
upgrade в сообщении #1162489 писал(а):
Можете эксперимент провести - определить "порог вхождения" для бейсика и для любого другого языка. У бейсика самый низкий. Это азбука программирования по сути. Очень высокая адаптация под мышление среднего европейского человека (не знаю как с китайцами) - это именно прерогатива бейсика. Можно написать простейшую программу непрограммисту, яснее синтаксиса нет. Мануалы понимаются большинством сходу. В паскале это невозможно, в си это невозможно, и вообще ни в каком другом языке это невозможно.
Есть ссылки на уже проведенные эксперименты? Известные мне примеры либо одинаково хорошо усваивали бейсик и паскаль, либо одинаково не усваивали. Но для статистики их маловато.

Студенты - возможно. Я говорю о среднестатистическом жителе планеты Земля, ну, в крайнем случае России. Бейсик не требователен к программисту вообще. Можно написать
Код:
x=2
y=3
z=x+y
?z

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

 Профиль  
                  
 
 Re: Влияние бейсика на языки программирования
Сообщение24.10.2016, 12:04 
Заслуженный участник


02/08/11
6874
upgrade в сообщении #1162507 писал(а):
Бейсик не требователен к программисту вообще.
Что-то пошла путаница. Сначала кто-то говорит что-то про Visual Basic, ему отвечают с примерами из просто Basic. Что ж, продолжу в том же духе. По моим наблюдениям, Visual Basic довольно требователен к программисту. Именно, он требует, чтобы программист был не слишком высокого уровня. Знакомые мне неплохие программисты от VB плюются и с большим трудом запоминают его адски нагромождённые конструкции. Не вызывает серьёзных проблем он только у тех, кто когда-то был вынужден его использовать как основной язык программирования. Но при этом судя по некоторым другим данным, многим так-себе-программистам он действительно проще.

 Профиль  
                  
 
 Re: Влияние бейсика на языки программирования
Сообщение24.10.2016, 12:13 


07/08/14
4231
warlock66613 в сообщении #1162512 писал(а):
Знакомые мне неплохие программисты
Все правильно. И я об этом. Когда начинается специализация берут специальные инструменты. Когда надо просто забить гвоздь большинство берет молоток и забивает, не заморачиваясь квантовой механикой процесса забивания гвоздя.

 Профиль  
                  
 
 Re: Влияние бейсика на языки программирования
Сообщение24.10.2016, 13:04 


11/12/14
893
whitefox в сообщении #1162491 писал(а):
Оригинальный BASIC
уж точно не был диалектом, по определению.


А, ну кстати, оттуда же можно выйти на общую картину.
Многочисленные диалекты бейсика можно поделить на 3 поколения, в каждом из которых сильно трепались основы и ломалась совместимость (при том что совместимость и в одном поколении часто ломалась на раз).
Первое поколение - "неструктурированный бейсик". В его основу легла пятая версия Dartmouth Basic. Нумерация строк, GOSUB, строковые переменные через доллар.
Второе поколение - "структурированный бейсик". Если вратце, то DECLARE SUB и IF ... THEN ... END IF во все поля. Типичный представитель - Quick Basic.
Третье поколение - "объектно-ориентированный бейсик", второе поколение + объекты. Типичный представитель - Visual Basic.

Вот 1С как и VBA заимствует где то между вторым и третьим поколением.

 Профиль  
                  
 
 Re: Влияние бейсика на языки программирования
Сообщение24.10.2016, 17:56 
Заслуженный участник


27/04/09
28128
aa_dav, да, неплохая классификация. Интересно заодно, о каком же из поколений говорит upgrade. Он так до сих пор точно и не сказал, хотя этот вопрос у меня в оффтопе и упоминался. Хотя я и не в восторге от захвата темы. Но так как исходный вопрос, кажется, уже почти ясен, лично мне по барабану, будет отделение или всё останется здесь. Я только хочу напомнить upgrade, что языки программирования не все влезают в аффинную оболочку паскаля, C и бейсиков. Включая документацию и поддержку.

 Профиль  
                  
 
 Re: Влияние бейсика на языки программирования
Сообщение24.10.2016, 18:11 


07/08/14
4231
arseniiv в сообщении #1162589 писал(а):
Интересно заодно, о каком же из поколений говорит upgrade.

О самых что ни на есть первых (QB, TB, B и т.п.). Современные языки явно двигаются в сторону снижения порога вхождения и применения - они все пытаются в этом смысле быть бейсиками. Объекто-ориентированность - развитие этого подхода, хотя он явно и не обозначен нигде. "Надо, чтобы дистанция между созданием сложных штук и среднестатистическим индивидуумом конкретной социальной группы не росла так быстро, иначе их просто некому будет делать (количество и частота появления гениев эволюцию не устраивают - их слишком мало и слишком редко, а время то идет)"

 Профиль  
                  
 
 Re: Влияние бейсика на языки программирования
Сообщение24.10.2016, 18:31 
Заслуженный участник


27/04/09
28128
upgrade в сообщении #1162594 писал(а):
они все пытаются в этом смысле быть бейсиками
Напоминает высказывания нашей учительницы литературы «в каждом из нас есть Обломов». Почто такая персонификация?

Количество необоснованных утверждений всё растёт.

 Профиль  
                  
 
 Re: Влияние бейсика на языки программирования
Сообщение24.10.2016, 18:50 


07/08/14
4231
Чтобы нажималась и обрабатывалась "кнопка" в языках до "визуал" эпохи, надо писать много много строк. Теперь программистом просто мышкой рисуется квадратик и по нажатию выбирается процедура обработки. Это упрощение. У бейсика точно такая же была задача - наиболее быстро и просто получить результат. Встроенный бейсик для того и встраивался в биос, чтобы заставить работать машину максимально просто - ввел строчку на понятном языке, ентер нажал получил результат. Альтернатива - побайтный ввод данных с клавиатуры с последующей расшифровкой побайтных же результатов.
Если вы видите влияние бейсика исключительно в распространении и модификации синтаксиса бейсика, то такого влияния, естественно нет, ибо синтаксис следует за задачами, а не впереди них. Надо цикл организовать - применяется конструкция "начало/конец + условие выхода" в бейсике это фор условие некст, в другом языке другие элементы управления. Какое именно влияние вы хотите увидеть - чтобы везде применялся именно фор некст?

 Профиль  
                  
 
 Re: Влияние бейсика на языки программирования
Сообщение24.10.2016, 18:59 
Заслуженный участник


27/04/09
28128
upgrade в сообщении #1162611 писал(а):
Теперь программистом просто мышкой рисуется квадратик и по нажатию выбирается процедура обработки. Это упрощение.
Вообще-то, иногда это усложнение. Когда надо генерировать много похожих UI, от всех конкретных видов которых можно абстрагироваться, просто лепление контролов на формочку разве что позволит разобрать пример.

upgrade в сообщении #1162611 писал(а):
Это упрощение. У бейсика точно такая же была задача - наиболее быстро и просто получить результат.
Это не прерогатива бейсика. Суть языка полностью не может определяться одной такой абстрактной идеей. Даже взяв манифест Python’а и создав язык, по-вашему отвечающий его требованиям, вы получите, скорее всего, что-то довольно отличающееся. Так что нельзя называть какую-то общую идею («чтобы было просто и быстро» — да при желании это можно натянуть на что угодно!) собственностью одного языка, и что она вошла в мир языков программирования только вместе с ним.

upgrade в сообщении #1162611 писал(а):
Какое именно влияние вы хотите увидеть - чтобы везде применялся именно фор некст?
Пока вы собирались, я уже всё выяснил. Можете почитать посты остальных участников, чтобы составить впечатление, как и что. :mrgreen:

 Профиль  
                  
 
 Re: Влияние бейсика на языки программирования
Сообщение24.10.2016, 20:27 
Заслуженный участник
Аватара пользователя


30/01/06
72407
aa_dav в сообщении #1162480 писал(а):
А существовал ли вообще некий "каноничный" Basic?
Сколько помню - всегда диалекты.

Как бы это ни называть, Visual Basic - уже ни в каком смысле не диалект Basic, это новый язык.

upgrade в сообщении #1162489 писал(а):
Можете эксперимент провести - определить "порог вхождения" для бейсика и для любого другого языка. У бейсика самый низкий. Это азбука программирования по сути... Можно написать простейшую программу непрограммисту, яснее синтаксиса нет. Мануалы понимаются большинством сходу. В паскале это невозможно, в си это невозможно, и вообще ни в каком другом языке это невозможно.

Вопрос спорный, существуют и другие языки, подходящие под это описание: Scratch, Logo, Python, PHP, Squeak, Lua и так далее.

-- 24.10.2016 20:35:01 --

aa_dav в сообщении #1162526 писал(а):
Второе поколение - "структурированный бейсик". Если вратце, то DECLARE SUB и IF ... THEN ... END IF во все поля. Типичный представитель - Quick Basic.

Ах да, был же ещё Quick Basic, который уже ни в каком смысле не являлся бейсиком! (Бейсиком является только то, что у вас названо "первым поколением".)

 Профиль  
                  
 
 Re: Влияние бейсика на языки программирования
Сообщение25.10.2016, 05:40 


11/12/14
893
Munin в сообщении #1162652 писал(а):
Ах да, был же ещё Quick Basic, который уже ни в каком смысле не являлся бейсиком!


И не он единственный, более того, забавно, но к этому поколению относится так же реализация с название True Basic.
P.S.
Вообще надо еще не забывать, что обратная совместимость всё таки была.
В тот же Quick Basic можно было загнать программу из неструктурированного бейсика и если в ней не применялись какие либо странности какого либо диалекта, то оно бы заработало.
Т.е. можно было в начале строки написать число (и далее писать по нарастающей, хотя можно делать пропуски) и будут нумерованные строки, на которые можно переходить по GOTO и GOSUB.
Если написать IF ... THEN ... на одной строке, то это будет IF ... THEN ... именно из неструктурированного бейсика - т.е. не будет ожидать END IF, а ветка закончится в то же строке. Для END IF нужен перевод строки сразу после THEN.
Просто NEXT работает, но от NEXT i ему тоже не поплохеет.
И т.п. и т.д. Даже не знаю способен ли такое переваривать Visual Basic, скорее всего нет, но точно помню что Quick Basic еще мог.

 Профиль  
                  
 
 Re: Влияние бейсика на языки программирования
Сообщение27.10.2016, 14:27 
Заслуженный участник
Аватара пользователя


11/03/08
9490
Москва
В Visual Basic классический Бейсик играл роль топора в солдатском супе. То есть точно был, но навару от него немного...

 Профиль  
                  
Показать сообщения за:  Поле сортировки  
Начать новую тему Ответить на тему  [ Сообщений: 43 ]  На страницу Пред.  1, 2, 3

Модераторы: Karan, Toucan, PAV, maxal, Супермодераторы



Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей


Вы не можете начинать темы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете добавлять вложения

Найти:
Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group