Обновить
5
0
Александр Грязнов@osdlab

Пользователь

Отправить сообщение

Спасибо за отзыв! Замечу что c помощью Blockly, что лежит в основе Scratch, собственно, реализуются все базовые элементы императивного программирования. При написании транслятора Блокли для uLisp все элементы императивного программирования для Блокли на uLisp были реализованы, практически, без проблем. Проблемы возникли только при реализации функций, поскольку там каждый полученный результат был из неё выходом, поэтому пришлось упаковывать содержимое функции в контейнер (progn) и в части определения временных переменных - (let) в функциях что-то не задалось. А так на uLsip получается что вся императивка поддерживается ;).

Имел ввиду в сравнении с Arduino Mega. Из AVR uLisp поддерживает ещё ATmega4809 и ATmega1284, а так же AVR128DA48 and AVR128DB48 - Curiosity Nano boards. uLisp достаточно "тяжёлый" - не для tiny точно!

По поводу выбора языка программирования. Тут долгая история.
Веду кружок по робототехнике. Пытаюсь научить детей программированию. С++ - самоцель. Но опыт показывает, что программирование на достаточно высоком уровне можно давать с 1-го класса. У меня школьник с 3-го класса "рвёт" олимпиады по программированию Ардуино за счёт того, что освоил Ardublok. Но перейти к С++ не может - не тот это инструментарий для этого возраста. microPython? Там тоже не легче!
Сын в четвёртый пошёл. У него нет таких способностей как у моего олимпиадника. Но задач для Arduino мне много выдумал. Я с ним договорился, что делаю ему комфортную среду для программирования, а дальше она сам делает свои придуманные проекты, ну с подсказками конечно ;). Ardublock сразу отмёл, поскольку интуиция и опыт работы с ним говорили о том, что потом всё равно придётся эти проекты самому допиливать. Короче перебрал всё что можно было бы упаковать в Blockly: microPython, Node MCU, Espruino. И остановился на uLisp, который изначально не воспринимал в серьёз. Однако это оказалось самым адекватным решением для ребёнка. В итоге Работаю над АрдуЛисп чуть больше года. Не всё там пока работает как надо, в процессе, но то что уже получилось самого меня впечатляет. uLisp залюбил и пытаюсь интегрировать его в другие проекты... А в скобочках есть особая магия, которую можно использовать для прокачки собственного NLP, но это уже совсем другая история ;)...
P.S. Мой олимпиадник уже в 5-м классе, а это означает, что он попадает уже в старшую группу, а тут нужно соревноваться, в том числе, с 11-классниками (со средней группой у нас не заморачиваются). Отучаю, помаленьку от Ardublock в сторону АрдуЛиспа, моя задача в том, чтобы к весне он смог тоже "порвать" эту категорию. Олимпиадные задачи для Ардуино достаточно простые из-за того что С++ тяжело даётся. Нужен адекватный инструментарий. Поэтому - всё реально!

Вот тут эту тему уже поднимали на профессиональном уровне. Вывод: АрдуБейсик - не очень приемлемое образовательное решение. Интересно использовать конструкцию goto, но в итоге автор перешёл к в выбору чистого ASMа. Возможно автору той статьи эта тема зайдёт, поскольку в uLsip, на некоторых микроконтроллерах, можно прям на ASMe в реальном режиме времени, извиняюсь, "фигачить"!

По поводу выбора LISP позвольте раскрою тему в следующем комментарии. Пока что отмечу, что, во-первых, мы имеем дело не с LISP, а с uLisp и, во-вторых, изначально я предлагаю работать не с uLisp а с АрдуЛисп - обёрткой Blockly для uLisp, а это довольно легко для начинающих.

Понятие script в английском языке имеет более широкую нотацию, чем в русском NLP.
Да, действительно С++ и Java не являются языками для написания скриптов. С другой стороны сказать, что все интерпретаторы - это только скриптовые языки программирования тоже неправильно.
В статье под скриптом понимается написание программы на любом ЯП на латинице, что очень проблематично для детей, например, дошкольного возраста.
Из этих соображений С++ и Java - скриптовые ЯП компиляторы, а Python, Javascript, PHP - скриптовые ЯП интерпретаторы.
К нескриптовым подходам в программировании тогда можно отнести Scratch(Blockly), XOD, FLProg, HiAsm и прочее.

Информация

В рейтинге
Не участвует
Откуда
Барнаул, Алтайский край, Россия
Зарегистрирован
Активность

Специализация

Разработчик приложений, Веб-разработчик