Рубрика «Pascal» - 5

Работая над утилитой для собственного использования столкнулся с одной «волшебной» ошибкой. Изначально я намеревался сделать программу с возможностями квайна, но этого не получилось, так как даже от строки (из Википедии):

var s:string='var s:string=;begin insert(#39+s+#39,s,14);write(s)end.';begin insert(#39+s+#39,s,14);write(s)end.

мой мозг стремительно уходил в рекурсию. Что говорить про более сложные программы? Молчу про квайны на несколько языков. Поэтому я решил сделать квайн не напрямую, т.е. который выводит свой код, а через обходные пути, т.е. есть базовая программа, которую нужно вывести и программа, которая выводит. Получился псевдо-квайн. А дальше пошло самое настоящее волшебство, которое у программистов бывает часто.

В какой-то момент я перепутал код выводимой программы и код программы, которую нужно вывести (ошибся в названии файла). И получил настоящий квайн. Немного допилил до более лучшего вида и пришел сюда поделится своей историей.
Читать полностью »

На сцену выходил глава Tesla Илон Маск

nVidia показала платформу для беспилотных автомобилей и самый мощный GPU в мире - 1Во вторник компания nVidia показала новый мощнейший (среди систем с одним графическим процессором) видеоускоритель Titan X с 12 гигабайтами памяти. Розничная стоимость новинки составит от 999 долларов. Также в руках главы nVidia Жэнь-Сунь Хуана появился автомобильный компьютер Drive PX, который призван стать ядром автономных машин.

Новый Titan X показали ещё 4 марта, две недели назад, но то объявление выглядело скомкано и слишком бессодержательно. На тот момент проходила конференция GDC, и во время рассказа представителей Epic Games о своём игровом движке Unreal Engine и его требовательности к «железу» на сцене в качестве особого участника внезапно появился Хуан. Там исполнительный директор nVidia и рассказал о новой видеокарте, не слишком вдаваясь детали.
Читать полностью »

Введение

Давным давно, в далекой Галактике, когда жесткие диски были не более 100 Мб (а кое где их и не было вовсе), шина адреса всего 16 бит, о графических 3D-ускорителях никто, или почти никто даже не помышлял, а Интернет приходил в редкие дома, по мокрым бельевым веревкам через пищащие коробки…

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

Теплый и, в каком-то смысле, ламповый монитор прошлого...
Ностальгия по КУВТ: ретроспектива средств разработки для 8-битных компьютеров MSX. Часть 1 — языки, редакторы, трансляторы - 1

Читать полностью »

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

Если вы окончили школу в последние 5-7 лет или сейчас преподаете программирование школьникам или знаете со слов других, ответьте, пожалуйста, на опрос.

Читать полностью »

Если бы языки программирования были детскими конструкторами

Всем привет! Как то случайно года 3 назад представил язык Pascal как детский конструктор, и написал об этом заметку. Показал друзьям, они заценили. Позже добавил C#, C++, HTML и Ассемблер. Надеюсь,ам понравится. Приятного чтения!
Читать полностью »

imageВ предыдущем топике я обещал подробнее описать особенности программирования промышленных PLC, и почему такое программирование все больше напоминает разработку обычного софта. О языке IEC61131-3 (промышленном диалекте Паскаля) я уже писал, также хорошим вступлением можно считать вот этот хабратопик. Этот пост — о компиляторах PLC, средах разработки, особенностях программирования и эволюции языка и экосистемы.
Читать полностью »

Привет всем.

Начну с того, что на днях пришла рассылка по Delphi и RAD Studio XE4, в которой Delphi декларируется как мультиплатформенное средство для быстрой разработки для компьютеров, ноутбуков, планшетов и мобильных устройств, включая MAC, iPhone, iPAD, также у Embarcadero есть планы сделать поддержку мобильной платформы Android.

Delphi и FreePascal — это Паскаль сегодня. Один из моих любимейших языков программирования. Язык прошёл долгий путь от “игрушки для учёных” до мощнейшего универсального средства разработки, на котором сделаны великолепные проекты, например, Total Commander.

Построенное на здравых решениях, ядро языка Паскаль легко поддалось усовершенствованию и умощнению и пригодно для широчайшего класса практических задач. В России Delphi особенно популярен и всё ещё широко используется. Однако развитие языка идёт по принципу наращивания возможностей, и постепенно Delphi становится всё более громоздким, догоняя по сложности таких монстров как PL/1, C++ и Ada. С большой вероятностью мы можем предположить, что проще язык становиться не будет, ибо нужно поддерживать совместимость с накопившейся базой исходников и т.д. В конце концов такая стратегия развития неизбежно приведёт к трудностям, когда сложность уже невозможно будет контролировать.

В то же время есть язык программирования, получившийся за несколько десятилетий практического преподавания и решения различных задач путём методического и последовательного уточнения Паскаля. Это Оберон — самый красивый из всех минималистичных языков, о котором мало кто слышал. Я смело утверждаю: Паскаль сегодня — это не только Дельфи (полученный методом наращивания), но и Оберон-2 / Компонентный Паскаль (полученные методом отбрасывания, пересмотра и уточнения целесообразности тех или иных средств). Благодаря тому, что над автором языка не довлела необходимость совместимости, он особенно на эту тему и не парился. И получившийся в итоге язык — цельный, компактный, мощный, кроссплатформенный в широком смысле (включая не только современные платформы, но и Amiga, и даже Atari). На Компонентном Паскале я успешно разработал мидлет для Java micro edition, не предвижу трудностей и в разработке для Android. Кроме одной: отсутствие инфраструктуры, да и вообще о таком использовании Оберонов мало кто знает.

Оберон-2 и Компонентный Паскаль — мультипарадигменные языки для системного и прикладного программирования, они модульные, компонентные и объектно-ориентированные. Разработанные на диалектах Оберона операционные системы, компиляторы и другие программы — часто сами по себе произведения искусства. Они красивы, неординарны, компактны и достойны всяческих похвал. Оберон популярен в академической среде как способ записи алгоритмов (пришёл на смену Фортрану) и как минимальный язык для исследований (посмотрите, например, сколько вышло публикаций по Оберону на сайте издательства SpringerLink. Он идеально подходит для обучения программированию. В России есть проект Информатика-21, популяризующий применение Оберона для подготовки будущих программистов, ибо, помимо своих технических достоинств, Оберон даёт хорошее понимание технологий программирования и не зависит от коммерческих интересов крупных корпораций. Посмотрите чего наваяла моя малолетняя племянница после недели разговоров со мной о программировании. Благодаря простоте языка энтузиасты разработали много компиляторов Оберон-диалектов для различных платформ.

Вирт всегда считал правильным конструировать процессоры под языки, а не наоборот. Но, несмотря на это, Оберон-программы хорошо конвертируются в Си, Java, работают как на нативе, так и на .NET/JVM. Разрабатывается компилятор GPCP для LLVM. Мне принадлежит идея ZXDev — среды разработки на Обероне-2 для восьмибитного процессора Z80 и компьютера ZX Spectrum. Самая новая ревизия виртовского Оберона называется Oberon-07. Он ещё меньше по размеру, чем Оберон-2, и адаптирован для ARM-процессоров и архитектур большой разрядности. Вот такое направление развития Паскаля. Малоизвестное широким массам программистов, но красивое как произведение искусства. Уже более семи лет я активно применяю Оберон-технологии с пользой для своей деятельности, и программировать на чём-то другом уже мало хочется.
Читать полностью »

Предыстория: моя жена постоянно норовить как-нибудь мне напортачить: поставить будильник на 3 часа ночи, поменять мелодию звонка, снести настройки синхронизации, удалить свою смс и потом доказывать, что она этого не говорила.
Шутки шутками, но в какой-то момент я решил: “Довольно!” — и поставил графический пароль на свой Андройд.

Уязвимость графического пароля

Жена усмехнулась и сказала, что подберёт. Я посмеялся в ответ, на том и разошлись. Только теперь её волновал вопрос, как подобрать, а меня какова вероятность этого события.
Читать полностью »

Пост ностальгии по игрушкам, которые мы сами для себя писали в детстве.
Лазая по просторам App Store ища очередную игрушку для своего айпада, наткнулся на старинную игрушку “Братья Пилоты”. Сразу купил, поставил и прошёл на одном дыхании (уже наверное в 3 раз). Но более всего задержался на эпизоде с холодильником. Уж больно меня прёт эта головоломка.

Первая игра, которую я просто написал для себя

И внезапно вспомнил, что ещё в школьные годы, после прохождения холодильника, головоломка меня так накрыла, что я написал на паскале свою собственную игрушку — эмулятор головоломки. Но не просто повторяла исходную игру, а позволяла выбирать размер поля, имела хелп, возможность сохранения и продолжения игры с прошлого места после выхода.

Подняв старые бекапы я нашёл исходную игру. Запустил её в dosbox и пропал для внешнего мира на пару часов.
Читать полностью »

Баллада о Turbo Pascal или 20 лет без перемен

    Тихо и незаметно прошла первая неделя нового учебного года. Хоть я уже и давно закончил школу, а своих детей школьного возраста пока нет, я все равно волей-неволей задумываюсь о начале учебного года. И вызвано это отнюдь не засильем детей в школьной форме на улицах: я очень редко выхожу из дома.
    Причина, из-за которой я вспоминаю, что началась осень довольно необычна — я замечаю на форуме моей локальной сети свежую тему, кочующую из года в год, всплывающую порой в самых неожиданных разделах этого форума. Если сформулировать эту тему, то получится всего 4 слова, отражающих всю безысходность ситуации с компьютерным образованием на просторах бывшего СССР, звучит она так: «Где взять Turbo Pascal?»
Читать полностью »


https://ajax.googleapis.com/ajax/libs/jquery/3.4.1/jquery.min.js