LINUX.ORG.RU

Проект elk развивает компактный движок JavaScript для микроконтроллеров

 ,


0

0

На данный момент доступна версия движка JavaScript elk 2.0.9. Проект нацелен на создание прошивок для платформ с ограниченными ресурсами, таких как ESP32 и Arduino Nano. Сам движок потребляет малое количество ресурсов: 100 Б ОЗУ и 20 КБ флеш-памяти. JS-код выполняется в изолированном от основного кода окружении. Используется интерпретатор, а байткод не генерируется.

>>> Подробности



Проверено: Shaman007 ()
Последнее исправление: sudopacman (всего исправлений: 2)

нахейфуа? история джавы з джазелью на армах ничему не научила.

anonymous
()
Ответ на: комментарий от PPP328

Ах, вы из 2005. Скажу по секрету, что в задачах, при современной разработке, где нужен скриптовый язык, а уж тем более ethernet, никто не будет использовать atmega328. Там будет Cortex M7 на 300МГц, так что не переживай.

SL_RU ★★★★
()
Ответ на: комментарий от SL_RU

Они выложили под него бенчмарк - значит подразумевается работа под ним.

PPP328 ★★★★★
()

Правильной дорогой идем товарищи!

Сам себя stm32H7 в attiny13a не превратит. Ему надо помочь.

bga_ ★★★★
()
Ответ на: комментарий от SL_RU

Там будет Cortex M7 на 300МГц, так что не переживай.

// 2 milliseconds on a 240Mhz ESP32

А теперь посчитай сам, сколько времени займет валидация поля login на 128 символов, если 100 сложений (!) будут выполняться 240 * 2 / 300 = 1.6 мс. МИЛЛИсекунд, не микро.

PPP328 ★★★★★
()
Ответ на: комментарий от BLOBster

это полумеры: и рудников столько нет, и фаны-js-в-каждом-утюге в массе своей вне юрисдикции ГосДумы.

anonymous
()

Dual license: GPLv2 or commercial. For commercial licensing, technical support and integration help, please contact us at https://cesanta.com/contact.html

Ну его нах, лучше quickjs!

anonymous
()

100 Б ОЗУ и 20 КБ флеш-памяти.

Окей, на авр взлетит даже, но вот производительность будет просто «потрясающая».

ncrmnt ★★★★★
()
Ответ на: комментарий от pihter

cython генерит сишный код. Можно собрать в бинарь, можно so-шку.

bug
()
Ответ на: комментарий от mydibyje

Такой прогресс лучше остановить. Код для контроллеров должен быть четким, ясным и понимаемым хотя бы самим кодером, а с этим он превратится в адскую лапшу.

anonymous
()
Ответ на: комментарий от futurama

ECL на ESP32 1) ненамного медленнее плюсов, в лучшем случае на уровне компилятора Си из тулчейна xtensa-esp32 (в инете можно найти версию под g++ ардуиновский, но это не предел) 2) позволяет писать высокоуровневый код в любой парадигме 3) интероп с Си/плюсами из коробки 4) несмотря на отсутствие образов, можно перезагружать код без перезагрузки контроллера. По сравнению с ним все еще нужно?

mazdai ★★★
()

Лютое ненужно.

Пора отстреливать таких энтузиастов.

Oberstserj ★★
()
Ответ на: комментарий от le_poisson

Шутки про ядро на яваскрипте постепенно становятся пугающе близкими к реальности.

Я вроде уже видел ссылку здесь на уже существующий такой проект.

Oberstserj ★★
()
Ответ на: комментарий от anonymous

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

Не просто выучить новый язык, а всего-навсего освоить долбанный С.

Oberstserj ★★
()
Ответ на: комментарий от sudopacman

Боюсь, это наше светлое концлагерное будущее.

hobbit ★★★★★
()
Ответ на: комментарий от apt_install_lrzsz

Под микроконтроллеры петон есть, джава есть, голанг тоже вроде был. Теперь вот жс. Но вот вышли ли все они за рамки «пара человек пилит ради интереса» в продакшон…

Ой, лять! Я уже затрахал здесь всех своим примером про знакомого питониста, который не смог в 13тиньку впихнуть сраный 1-wire, потому что, суко, не влез. Не влез, понимаешь? 20 строчек сишного кода у него на питоне заняло всю память тиньки. Вот такой он, сцуко, твой продакшон.

Oberstserj ★★
()
Последнее исправление: Oberstserj (всего исправлений: 1)
Ответ на: комментарий от th3m3

Пишите в Роскомнадзор, пусть запретят.

А куда написать, чтоб роскомпозор запретили?

Oberstserj ★★
()
Ответ на: комментарий от menangen

Нам нужен срочно гугл хром на микроконтроллере! Чтобы сразу монитор шёл со встроенным гуглобраузером!

А ведь здравая мысль!

А захотел расширение поставить - перепрошей монитор!

Oberstserj ★★
()
Ответ на: комментарий от futurama

Чего раскудахтались? Насильно вам его на МК никто не ставит.

Не ставит. А потом поллора бухтит, что на работу брать некого. Одни смузихлебы питонисты с жабоскрипистами с полным отсутствием мозгов.

И Atmel с Microchip начнут выпуск специализированной партии своих древних контроллеров с увеличенной в сотню раз памятью. А то прошивки перестали влезать…

Oberstserj ★★
()
Ответ на: комментарий от fernandos

Время кухарки дешевле времени разработчика.

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

Не мне, а тому, кто кухарку нанимает.

Да нет, именно тебе. Потому что при растущей проблеме нехватки погромистов кроме кухарок тебе некого будет нанимать. И виноват в этом именно ты.

Oberstserj ★★
()
Последнее исправление: Oberstserj (всего исправлений: 1)
Ответ на: комментарий от menangen

будто это поможет массовым реализациям js не тормозить на кучах говна и палочек в браузерах.

Shadow ★★★★★
()
Ответ на: комментарий от SL_RU

Ах, вы из 2005. Скажу по секрету, что в задачах, при современной разработке, где нужен скриптовый язык, а уж тем более ethernet, никто не будет использовать atmega328. Там будет Cortex M7 на 300МГц, так что не переживай.

Удачи тебе и таким как ты внедрить ваши кортексы в промку. Так что ни он, ни я даже не переживаем.

Oberstserj ★★
()
Ответ на: комментарий от mydibyje

Пусть будет. Прогресс не остановить.

Точно прогресс?

Кто вам вбил в голову, что высокоуровневый язык - это прогресс. Тут люди иногда бьются за возможность впихнуть асм туда, куда уже не впихнешь без костылей, а тут…

Вы вот мне ответьте, что вы все такого увидели в микроконтроллерах, что Си для вас недостаточно высокоуровневый? Куда выше-то? Зачем?

Oberstserj ★★
()
Ответ на: комментарий от Oberstserj

С-код качественно написать гораздо труднее, чем налабать скрипт на джава-скрипте.
он не будет тебе канифолить мозги чегойто ты стринги как трусы int используешь.

pfg ★★★★★
()
Последнее исправление: pfg (всего исправлений: 1)
Ответ на: комментарий от pfg

В какой-то степени да. Точнее как только встает вопрос о резервировании, отказоустойчивости и т.д. все кортексы сливаются.

Фигня в том, что как только в промке возникает необходимость в чем-то серьезнее тиньки, то смотрят в сторону специализированных контроллеров. Это просто на ЛОРе нихера кроме стм32, пиков и авр не знают. Заикнись тут про контроллеры от Honeywell, так еще и помидорами закидают. А меж тем боинги с арбузами управляются ими. И никакие кортексы там на пушечный выстрел никогда не подойдут.

Oberstserj ★★
()
Ответ на: комментарий от pfg

С-код качественно написать гораздо труднее, чем налабать скрипт на джава-скрипте. он не будет тебе канифолить мозги чегойто ты стринги как трусы int используешь.

Я уже выше привел пример. Удачи вам, белоручки, которые не могут аналог 20ти строчек с-кода впихнуть в тиньку. Зато мозги не канифолить.

Oberstserj ★★
()
Ответ на: комментарий от Oberstserj

мнэээ в пиках атмегах что-то есть особеннное с резевированием/отказоустойчивостью ??
я их давно конечно пинал но чегойто не припомню какхи либо заворотов с резервированием. все также, через хитроумности кода.
есть куча китайских контроллеров, на которых нередко документация только на китайском и ничего - мильены устройств на них прекрасно воркают.

pfg ★★★★★
()
Ответ на: комментарий от Oberstserj

Удачи вам, белоручки, которые не могут аналог 20ти строчек с-кода впихнуть в тиньку.

Это как если бы уборщица сказала «удачи вам, белоручки, которые даже тряпку нормально отжать не умеют».
У белоручек всё довольно хорошо.

thesis ★★★★★
()
Ответ на: комментарий от vM

sh используется для администрирования системы, а не для вычислений или низкоуровневой настройки аппаратуры. Зачем админить систему на си, если в этой самой системе есть sh? И зачем использовать sh для операций вида «поменять бит в регистре» городить командную оболочку, если это запросто делается на си (если кодер не полный овощ конечно)? Всякому инструменту своё место.

apt_install_lrzsz ★★★
()
Ответ на: комментарий от pfg

не будет тебе канифолить мозги чегойто ты стринги как трусы int используешь.

А у кого-то в таком примитивном языке, как си, до сих пор проблемы с этим?

apt_install_lrzsz ★★★
()
Ответ на: комментарий от apt_install_lrzsz

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

pfg ★★★★★
()
Ответ на: комментарий от pfg

Ну, если речь о разделении труда вида: «ИнженерЪ Петрович пишет настройку ethernet и web-сервер, а стажёр Вася поверх этого наворачивает вебморду», то да, понятно, зачем интерпретатор js.

Но инициатива по полному фреймворку на базе интерпретатора js всё равно сомнительна. Как, например, обрабатывать прерывания без оверхеда. Хотя, в исходном посте об этом речь и не идёт.

apt_install_lrzsz ★★★
()
Ответ на: комментарий от apt_install_lrzsz

ну к примеру, целевой прогер ничего не будет знать о прерываниях. его это не заботит - он хуожник…

pfg ★★★★★
()
Ответ на: комментарий от kmeaw

Регулярные выражения такая штука называется, её давно придумали

anonymous
()
Ответ на: комментарий от apt_install_lrzsz

sh используется для администрирования системы, а не для вычислений или низкоуровневой настройки аппаратуры. Зачем админить систему на си, если в этой самой системе есть sh?

В том числе и для администрирования. А можно было на каждый администраторский чих писать на Си, компилировать, загружать и выполнять отдельную программульку.

vM ★★
()
Последнее исправление: vM (всего исправлений: 1)

Лютое ненужно.

Если в проекте так уж необходим JS (в чем я сомневаюсь) - лучше взять какой-нибудь православный AR9331.

А вообще микроконтроллеры это про реалтайм, а не про юзабилити и человеко-удобство.

windows10 ★★★★★
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.