Использование языка JavaScript в микроконтроллерах???

Подключаем наши девайсы к компьютеру. Обсуждаются: порты, протоколы, драйвера, языки программирования и т.д.
Аватара пользователя
YS
Друг Кота
Сообщения: 7518
Зарегистрирован: Вс мар 29, 2009 22:09:05
Контактная информация:

Re: Использование языка JavaScript в микроконтроллерах???

Сообщение YS »

Мне отчего-то кажется, что, если начать писать компилятор JS для МК, JS плавно превратится в С (ибо прежде всего надо будет чутка скорректировать синтаксис)... :wink:
Разница между теорией и практикой на практике гораздо больше, чем в теории.
Реклама
Аватара пользователя
hybroid
Друг Кота
Сообщения: 8007
Зарегистрирован: Вс ноя 14, 2010 19:24:26
Откуда: Лукалэнд

Re: Использование языка JavaScript в микроконтроллерах???

Сообщение hybroid »

YS писал(а):Мне отчего-то кажется, что, если начать писать компилятор JS для МК, JS плавно превратится в С (ибо прежде всего надо будет чутка скорректировать синтаксис)... :wink:

Зачем корректировать? VM его прекрасно транслирует в байт-код. Да и в синтаксисе JS куда больше фич, чем в том же brainfuck =) Только компилятор будет по сложности аналогичен компилятору С++.

Я вот до сих пор не догоняю, чем сложнее писать прошивку МК на сях? Основная фича JS - это событийная организация программы. Вешаешь кучу callback'ов и сидишь, попиваешь кофе :) А это прекрасно уже "продумано за нас" в том же avr-gcc. Хочется ООП - C++, т.к. возможности ООП JavaScript сложно назвать "возможностями".
Реклама
Аватара пользователя
UL7AAjr
Встал на лапы
Сообщения: 94
Зарегистрирован: Чт май 26, 2011 09:28:25
Откуда: Алма-Ата

Re: Использование языка JavaScript в микроконтроллерах???

Сообщение UL7AAjr »

"Бейсекисты" не поколотят, если умеют программировать - значит ум есть :))
Тем более здесь все такие коты умные (собутыльники, электрические...), приятно почитать - но нет согласия. Давайте определимся:

1. На МК компилятор писать глупо (это как гвоздем вышивать:) Т.е. компиляцию(прекомпиляцию) делаем на "нормальном" компьютере. Кто-то не согласен?
Значит дальше поехали
2. Исполнять скомпилированный код надо где? - на МК. Значит там должен быть исполнительный механизм - назовем это дело виртуальная машина (ВМ).
Компилировать для ВМ можно с какого языка? Ответ простой - практически с любого.

О чем спор? Простой вопрос - простой ответ.

ЗЫ1: Теперь для любителей С (щас скажу - точно побьют). С - язык который легко компилировать и не очень трудно программировать, но трудно читать. Придуман он был когда это было важно. Так уж получилось, что прижился он (как и процессор Intel). Ну... «Мыши плакали, кололись, но продолжали жрать кактус!..»

PS2: Кстати, BrainFuck - это почти байт код.

PS3: Не язык программирования определяет задачу - все наоборот :)
[size=70]Жадность порождает бедность[/size]
Аватара пользователя
hybroid
Друг Кота
Сообщения: 8007
Зарегистрирован: Вс ноя 14, 2010 19:24:26
Откуда: Лукалэнд

Re: Использование языка JavaScript в микроконтроллерах???

Сообщение hybroid »

UL7AAjr писал(а):ЗЫ1: Теперь для любителей С (щас скажу - точно побьют). С - язык который легко компилировать и не очень трудно программировать, но трудно читать. Придуман он был когда это было важно. Так уж получилось, что прижился он (как и процессор Intel). Ну... «Мыши плакали, кололись, но продолжали жрать кактус!..»

Вы на 90% perl-скриптов поглядите. :facepalm: Си покажется раем.. Или Java, в которой, пока нарисуешь диалоговое окно, столько классов и интерфейсов понаписываешь и отнаследуешься, покажется что ты пишешь ПО для космического корабля.
ИМХО, говнокодить можно на любом языке. Точно также на любом языке можно писать читаемый код. И если он настолько непонятен, то почему же синтаксис большинства скриптовых языков так похож на си?

PS: я бы, например, в жизни не взялся бы писать на паскале. В жопу его begin & end. Это ж убийство какое-то. Хватило мне этого.
Реклама
Эиком - электронные компоненты и радиодетали
Аватара пользователя
Jack_A
Друг Кота
Сообщения: 6307
Зарегистрирован: Вт апр 24, 2007 07:45:40
Откуда: Minsk

Re: Использование языка JavaScript в микроконтроллерах???

Сообщение Jack_A »

hybroid писал(а): я бы, например, в жизни не взялся бы писать на паскале. В жопу его begin & end. Это ж убийство какое-то. Хватило мне этого.


begin & end - "тяжелое наследие" Алгол-60 и PL-1 . Ничуть не лучше и не хуже, чем Сишные{ } . Я когда пис`ал на Си, в этих фигурках путался, чтоб помочь себе, написал незамысловатую прогу {}.c , которая эти фигурки расписывала по уровням вложенности, помогая найти багу.
Если писать на Дельфи, в обработчиках эти операторные скобки генерируются автоматически и совсем не утомляют. Вот попервоначалу меня злило, что string и char[] - две больших разницы, но потом привык.
Реклама
Аватара пользователя
YS
Друг Кота
Сообщения: 7518
Зарегистрирован: Вс мар 29, 2009 22:09:05
Контактная информация:

Re: Использование языка JavaScript в микроконтроллерах???

Сообщение YS »

Зачем корректировать? VM его прекрасно транслирует в байт-код.

Придуман он был когда это было важно.


Отвечу сразу почему и зачем. :)

Зачем модифицировать синтаксис? Чтобы привести его к возможностям МК. Да, эмулировать можно что угодно, но сколько это съест ресурсов? Кроме того необходима четкая типизация ([u]intN_t и т.п.). Стоит запретить компилятору использовать плавающую точку без явного на то указания и т.п. Плюс убрать объектный подход однозначно.

А на С пишут потому, что в нем все вышеперечисленное нативно есть. :)))
Разница между теорией и практикой на практике гораздо больше, чем в теории.
Реклама
Аватара пользователя
UL7AAjr
Встал на лапы
Сообщения: 94
Зарегистрирован: Чт май 26, 2011 09:28:25
Откуда: Алма-Ата

Re: Использование языка JavaScript в микроконтроллерах???

Сообщение UL7AAjr »

hybroid писал(а):...Точно также на любом языке можно писать читаемый код.

Неужели? На любом прямо? :)))

hybroid писал(а): И если он настолько непонятен, то почему же синтаксис большинства скриптовых языков так похож на си?...

Потому что легко интерпретировать. Как будто трудно догадаться.

Что-то автор топика молчит. Вроде ответ уже был.

YS писал(а): Да, эмулировать можно что угодно, но сколько это съест ресурсов?

Вот и собутыльники подтверждают:)


А языками меряться в другой теме может быть будем?

PS: Правда... кто нибудь из старожил, создайте тему про языки в подобающем месте. Только с указом не ругать языки которых не знаешь. А то мастеров тут понаехало (скобки считать неудобно, begin-end напрягает:)

Ссылку не забудьте сюда кинуть :beer:
[size=70]Жадность порождает бедность[/size]
Аватара пользователя
hybroid
Друг Кота
Сообщения: 8007
Зарегистрирован: Вс ноя 14, 2010 19:24:26
Откуда: Лукалэнд

Re: Использование языка JavaScript в микроконтроллерах???

Сообщение hybroid »

Jack_A писал(а):Ничуть не лучше и не хуже, чем Сишные{ }

Лучше. Их быстрее набирать и зрительно они выделяются.
А авторасстановкой и вложенностью с автотабуляцией занимается любая уважающая себя IDE.

PS: равели холивар блин :) Надо прибить эту тему. Писать будет каждый на том, что ему удобнее. И _компилятор_ JS для AVR никто делать не будет, как и для x86.
Аватара пользователя
BCluster
Собутыльник Кота
Сообщения: 2512
Зарегистрирован: Пн апр 06, 2009 19:33:29
Откуда: Молдова, Кишинев
Контактная информация:

Re: Использование языка JavaScript в микроконтроллерах???

Сообщение BCluster »

Скриптовой язык, с весьма узкой направленностью. Например предлагаю поработать с памятью в нем :) Инструментов заменяющих работу с памятью как в шарпе и яве тож нет.
А по сути можно хоть свой язык придумать и на нем писать если перед этим написать компилятор.

Насчет файрфокса и яваскрипта, дайте линк если не сложно, мне интересно чтож там аж на 70% можно было написать на яваскрипте :)
Аватара пользователя
hybroid
Друг Кота
Сообщения: 8007
Зарегистрирован: Вс ноя 14, 2010 19:24:26
Откуда: Лукалэнд

Re: Использование языка JavaScript в микроконтроллерах???

Сообщение hybroid »

BCluster писал(а):Насчет файрфокса и яваскрипта, дайте линк если не сложно, мне интересно чтож там аж на 70% можно было написать на яваскрипте :)

ЕМНИП, сорцы файрфокс ещё никто не закрывал.
Ответить

Вернуться в «Интеграция с ПК»