Таки Wiring придерживается позиции, что он двуединый язык и фреймворк.> digitalWrite() \ Language (API) \ Wiring 1.0[1]
> Reference for the Wiring.org.co programming environment and language[1]
> The Wiring Language: A thin layer on top of C++[2]
И подобно антитринитариям в христианстве (интересно, что среди них был Ньютон), надо возразить, но, наверное, без повешения кого-либо за ересь.
В общем, там была такая история.
1. Processing
В 2001 художник и дизайнер в MIT решили сделать Processing: комплекс из Java-библиотеки и IDE для рисования-визуализации. От художников для художников, все OpenGL-кишки спрятаны. И даже Java-кишки немного спрятаны - пользователь пишет файл-скрипт с двумя функциями - setup() и вызываемым в цикле draw(), а в "public class ... extends" их заворачивает препроцессор[3], который и другие мелочи делает (свои hex-литералы в джавовские конвертирует, например). И из-за препроцессора авторы с натяжкой назвали Processing новым языком. Пользователь может не думать о настоящей точке входа, о том, что setup() и draw() откуда-то вызываются.
2. Wiring
Затем вышеупомянутый художник поехал учить в один итальянский институт. И под его руководством в 2004 появился Wiring как магистерская работа одного студента. Wiring - комплекс для обучения и прототипирования из отладочной платы, IDE и C++-библиотеки, который перенял принцип "пользователь определяет функции setup() и loop()". Снова кишки спрятаны - новичок не не узрит boilerplate-кода, а при желании плавно и безболезненно перейдёт на профессиональные инструменты, разберётся с точками входа в C/C++ (и именно во freestanding C/C++) и т.д. Нового языка нет и с натяжкой, поэтому такое "упрощение для учеников" стало ересью.
3. Arduino
Затем в 2005 другие студенты того же института форкнули вышеупомянутый программно-аппаратный комплекс и назвали Arduino. Больше разных плат, больше коммерции. Со временем Arduino показала себя в новом сомнительном качестве - как JavaScript в мире embedded. Родилась идея, что Arduino можно использовать не для прототипирования и обучения, а для серийных изделий. Что его библиотека - это полноценный, хоть и пованивающий Hardware Abstraction Layer, с которого не надо слезать и что Arduino может замкнуться в себе, а не быть обучающим шагом для плавного перехода к профессиональной разработке.
На ереси о новом языке команда Arduino не настаивает, но как наследие она местами встречается.
Вообще для микроконтроллеров AVR ещё есть компиляторы (или интерпретаторы) Ada, Basic, Forth, Java, Pascal и Python.
[1] view-source:http://wiring.org.co/reference/digitalWrite_.html
[2] https://github.com/WiringProject/Wiring
[3] https://github.com/processing/processing/blob/master/java/sr...