и ещё немного занимательного языкознания
"Есть языки
программирования, которые
никто не воспринимает
всерьёз" Вадим Станкевич, "КВ" №7/2007 |
Первый компьютер, который мне довелось увидеть, запомнился мне очень отчетливо. Это был украинский "Промiнь", представляющий собой некое подобие школьной парты. На "парте" размещалось несколько рядов прорезей. С краю было приделано табло, на котором высвечивался результат работы программы. В комплект ЭВМ входил ящик с довольно забавным реквизитом. Это был набор плоских металлических штырьков с пластмассовыми набалдашниками. Они чем-то были похожи на ключи. Каждый из штырьков имел определённую, только ему присущую комбинацию дырочек, а на пластмассовой головке была написана та или иная команда или элемент данных. Комбинация дырочек представляла собой код того, что было обозначено на набалдашнике. Штырьки вставлялись в прорези так, что знаки на их головках образовывали символьную запись текста программы, а дырочки внутри образовывали исполняемый двоичный код. После того, как набор программы был закончен, нужно было нажать кнопку и дождаться появления результата работы программы на цифровом светящемся табло. Вот такой забавный язык, чем-то напоминавший домино... Затем, уже во время учёбы в институте, мне довелось познакомиться с ЭВМ "МИР-2". Она программировалась специфическим и, между прочим, весьма занятным языком "АНАЛИТИК". Текст программы выглядел так же, как обычный текст, выровненный по обеим кромкам листа. Ключевые слова брались в кавычки и записывались на русском языке. Причём выглядело это вполне органично! Ещё одной особенностью языка было наличие в нём операторов символьного дифференцирования и интегрирования (!) и они очень сносно работали! АНАЛИТИК был моим первым языком. Именно благодаря ему и пришло моё увлечение программированием, которое продолжается до настоящего времени. Как это было, хорошо описал Билл Гейтс в своей книге. Однако, при всей своей схожести вначале, позднее наши судьбы разошлись :-). Его забросило в Гарвард, а меня - в Академию Наук. Там пришлось иметь дело с Фортраном (физики, насколько я знаю, любят его до сих пор). Там же произошло и первое знакомство с Бейсиком, который быстро завоевал мою симпатию. Я не вполне согласен с Вадимом Станкевичем, причислившим Паскаль и Бейсик к разряду языков-неудачников. Это, скорее, классические прародители огромных языковых семейств. Программист-профессионал должен знать в обязательном порядке и тот, и другой. Паскаль, например, чем-то схож с латынью. На латыни хоть никто и не разговаривает, но юристы, врачи, биологи используют его как базовый язык для наименования своих объектов. В программировании Паскаль выполняет такую же функцию классического языка для записи алгоритмов и межконфессионального общения. Бейсик, действительно, с давних пор и до настоящего времени является идеальным инструментом для обучения и быстрого облегчённого написания небольших программ. Он, собственно, для этого и был придуман. И раньше, и теперь я абсолютно убежден в необходимости повсеместного изучения основ программирования вне зависимости от будущих профессиональных устремлений. Занимательный и известный всему миру Бейсик подходит для этой цели гораздо лучше, чем все прочие. Кроме того, очень многие современные языки представляют собой в той или иной степени фактически потомков Бейсика и имеют с ним тесное синтаксическое родство. Бейсик - живой язык. Языковая семья Бейсика растёт и пополняется. На одном полюсе этой семьи находится минимальный, но вполне функциональный и очень удобный для обучения кросс-платформенный SmallBasic. В центре, если можно так выразиться, находится весьма широко используемый во всём мире (едва ли не самый распространенный) универсальный язык программирования - Visual Basic. На другом краю можно расположить Dark Basic, предназначенный для облегчённого программирования реалистичной трёхмерной графики и звука для написания настоящих компьютерных игр.
Особо хочется выделить SmallBasic как весьма удобное средство обучения азам программирования. Это очень маленький, современный, развивающийся (и, что очень важно, бесплатный) интерпретатор. Синтаксис SmallBasic очень близок к среднему классическому Бейсику. Существуют версии SmallBasic для Windows, Linux, Palm OS и т.д. Меня периодически посещает желание написать серию занимательных статеек по азам программирования на Бейсике, в том числе и с использованием мобильных устройств. Пока несколько вводных уроков по азам программирования на SmallBasic я выложил на smallbasic.narod.ru. Серьёзные дядьки действительно относятся к Бейсику презрительно (при этом обычно они его просто не знают). Но на счастье в мире полно людей несерьёзных! Помните Мюнхгаузена: "Серьёзное лицо, господа, ещё не признак ума - все величайшие глупости на свете делаются именно с этим выражением лица...". Впрочем, языки нужны всякие и разные. При этом каждому своя область применения. Но вряд ли найдётся другой такой язык программирования, чей мир был бы столь ярок и занимателен. Тут и первые любительские программы для больших ЭВМ, куча всяких забавных программулек для ZX-Spectrum, облегченное объектно-ориентированное программирование на VB, полноценные "серьёзные" трёхмерные игры в DarkBASIC, а теперь ещё и программирование "на расчёске" для мобильных устройств. Бейсик вывел в люди очень многих, включая самого... БГ :-). Он исправно выполнял свою функцию раньше и вполне справляется с ней и в наше время...
Андрей КОЛЕСНИКОВ,
[email protected]
Горячие темы