Использование языка JavaScript в микроконтроллерах???
Re: Использование языка JavaScript в микроконтроллерах???
Мне отчего-то кажется, что, если начать писать компилятор JS для МК, JS плавно превратится в С (ибо прежде всего надо будет чутка скорректировать синтаксис)... 
Разница между теорией и практикой на практике гораздо больше, чем в теории.
- Реклама
Re: Использование языка JavaScript в микроконтроллерах???
YS писал(а):Мне отчего-то кажется, что, если начать писать компилятор JS для МК, JS плавно превратится в С (ибо прежде всего надо будет чутка скорректировать синтаксис)...
Зачем корректировать? VM его прекрасно транслирует в байт-код. Да и в синтаксисе JS куда больше фич, чем в том же brainfuck =) Только компилятор будет по сложности аналогичен компилятору С++.
Я вот до сих пор не догоняю, чем сложнее писать прошивку МК на сях? Основная фича JS - это событийная организация программы. Вешаешь кучу callback'ов и сидишь, попиваешь кофе
Re: Использование языка JavaScript в микроконтроллерах???
"Бейсекисты" не поколотят, если умеют программировать - значит ум есть
Тем более здесь все такие коты умные (собутыльники, электрические...), приятно почитать - но нет согласия. Давайте определимся:
1. На МК компилятор писать глупо (это как гвоздем вышивать:) Т.е. компиляцию(прекомпиляцию) делаем на "нормальном" компьютере. Кто-то не согласен?
Значит дальше поехали
2. Исполнять скомпилированный код надо где? - на МК. Значит там должен быть исполнительный механизм - назовем это дело виртуальная машина (ВМ).
Компилировать для ВМ можно с какого языка? Ответ простой - практически с любого.
О чем спор? Простой вопрос - простой ответ.
ЗЫ1: Теперь для любителей С (щас скажу - точно побьют). С - язык который легко компилировать и не очень трудно программировать, но трудно читать. Придуман он был когда это было важно. Так уж получилось, что прижился он (как и процессор Intel). Ну... «Мыши плакали, кололись, но продолжали жрать кактус!..»
PS2: Кстати, BrainFuck - это почти байт код.
PS3: Не язык программирования определяет задачу - все наоборот
Тем более здесь все такие коты умные (собутыльники, электрические...), приятно почитать - но нет согласия. Давайте определимся:
1. На МК компилятор писать глупо (это как гвоздем вышивать:) Т.е. компиляцию(прекомпиляцию) делаем на "нормальном" компьютере. Кто-то не согласен?
Значит дальше поехали
2. Исполнять скомпилированный код надо где? - на МК. Значит там должен быть исполнительный механизм - назовем это дело виртуальная машина (ВМ).
Компилировать для ВМ можно с какого языка? Ответ простой - практически с любого.
О чем спор? Простой вопрос - простой ответ.
ЗЫ1: Теперь для любителей С (щас скажу - точно побьют). С - язык который легко компилировать и не очень трудно программировать, но трудно читать. Придуман он был когда это было важно. Так уж получилось, что прижился он (как и процессор Intel). Ну... «Мыши плакали, кололись, но продолжали жрать кактус!..»
PS2: Кстати, BrainFuck - это почти байт код.
PS3: Не язык программирования определяет задачу - все наоборот
[size=70]Жадность порождает бедность[/size]
Re: Использование языка JavaScript в микроконтроллерах???
UL7AAjr писал(а):ЗЫ1: Теперь для любителей С (щас скажу - точно побьют). С - язык который легко компилировать и не очень трудно программировать, но трудно читать. Придуман он был когда это было важно. Так уж получилось, что прижился он (как и процессор Intel). Ну... «Мыши плакали, кололись, но продолжали жрать кактус!..»
Вы на 90% perl-скриптов поглядите.
Си покажется раем.. Или Java, в которой, пока нарисуешь диалоговое окно, столько классов и интерфейсов понаписываешь и отнаследуешься, покажется что ты пишешь ПО для космического корабля.ИМХО, говнокодить можно на любом языке. Точно также на любом языке можно писать читаемый код. И если он настолько непонятен, то почему же синтаксис большинства скриптовых языков так похож на си?
PS: я бы, например, в жизни не взялся бы писать на паскале. В жопу его begin & end. Это ж убийство какое-то. Хватило мне этого.
Re: Использование языка JavaScript в микроконтроллерах???
hybroid писал(а): я бы, например, в жизни не взялся бы писать на паскале. В жопу его begin & end. Это ж убийство какое-то. Хватило мне этого.
begin & end - "тяжелое наследие" Алгол-60 и PL-1 . Ничуть не лучше и не хуже, чем Сишные{ } . Я когда пис`ал на Си, в этих фигурках путался, чтоб помочь себе, написал незамысловатую прогу {}.c , которая эти фигурки расписывала по уровням вложенности, помогая найти багу.
Если писать на Дельфи, в обработчиках эти операторные скобки генерируются автоматически и совсем не утомляют. Вот попервоначалу меня злило, что string и char[] - две больших разницы, но потом привык.
- Реклама
Re: Использование языка JavaScript в микроконтроллерах???
Зачем корректировать? VM его прекрасно транслирует в байт-код.
Придуман он был когда это было важно.
Отвечу сразу почему и зачем.
Зачем модифицировать синтаксис? Чтобы привести его к возможностям МК. Да, эмулировать можно что угодно, но сколько это съест ресурсов? Кроме того необходима четкая типизация ([u]intN_t и т.п.). Стоит запретить компилятору использовать плавающую точку без явного на то указания и т.п. Плюс убрать объектный подход однозначно.
А на С пишут потому, что в нем все вышеперечисленное нативно есть.
Разница между теорией и практикой на практике гораздо больше, чем в теории.
Re: Использование языка JavaScript в микроконтроллерах???
hybroid писал(а):...Точно также на любом языке можно писать читаемый код.
Неужели? На любом прямо?
hybroid писал(а): И если он настолько непонятен, то почему же синтаксис большинства скриптовых языков так похож на си?...
Потому что легко интерпретировать. Как будто трудно догадаться.
Что-то автор топика молчит. Вроде ответ уже был.
YS писал(а): Да, эмулировать можно что угодно, но сколько это съест ресурсов?
Вот и собутыльники подтверждают:)
А языками меряться в другой теме может быть будем?
PS: Правда... кто нибудь из старожил, создайте тему про языки в подобающем месте. Только с указом не ругать языки которых не знаешь. А то мастеров тут понаехало (скобки считать неудобно, begin-end напрягает:)
Ссылку не забудьте сюда кинуть

[size=70]Жадность порождает бедность[/size]
Re: Использование языка JavaScript в микроконтроллерах???
Jack_A писал(а):Ничуть не лучше и не хуже, чем Сишные{ }
Лучше. Их быстрее набирать и зрительно они выделяются.
А авторасстановкой и вложенностью с автотабуляцией занимается любая уважающая себя IDE.
PS: равели холивар блин
- BCluster
- Собутыльник Кота
- Сообщения: 2512
- Зарегистрирован: Пн апр 06, 2009 19:33:29
- Откуда: Молдова, Кишинев
- Контактная информация:
Re: Использование языка JavaScript в микроконтроллерах???
Скриптовой язык, с весьма узкой направленностью. Например предлагаю поработать с памятью в нем
Инструментов заменяющих работу с памятью как в шарпе и яве тож нет.
А по сути можно хоть свой язык придумать и на нем писать если перед этим написать компилятор.
Насчет файрфокса и яваскрипта, дайте линк если не сложно, мне интересно чтож там аж на 70% можно было написать на яваскрипте
А по сути можно хоть свой язык придумать и на нем писать если перед этим написать компилятор.
Насчет файрфокса и яваскрипта, дайте линк если не сложно, мне интересно чтож там аж на 70% можно было написать на яваскрипте
Re: Использование языка JavaScript в микроконтроллерах???
BCluster писал(а):Насчет файрфокса и яваскрипта, дайте линк если не сложно, мне интересно чтож там аж на 70% можно было написать на яваскрипте
ЕМНИП, сорцы файрфокс ещё никто не закрывал.


