Програмування Arduino в Pascal?

Моє питання просте: є мова програмування Pascal або Pascal (FPC, Delphi, mikroPascal) для Arduino?

Бажано (я сподіваюся, що я не надто багато прошу), що мова не повинна бути старше 10 років.


Оновлення:
Давайте не розпочнемо війну полум'я про те, "чому мова програмування xxx набагато краще Паскаль" і тримаємо фокус на суті цього питання. Я знаю, що Паскаль має недоліки (нічого не ідеального, чи не так?). Я приймаю їх, і я все ще хочу його використовувати :)
Дуже дякую.

0
Оскільки звичайне середовище Arduino засноване на C ++, найкраще шукати на "Pascal for AVR", який використовується мікроконтролером, і, схоже, є кілька варіантів.
додано Автор Assaf Lavie, джерело

3 Відповіді

Не Паскаль, але Ада, який є набагато менш обмежувальним, ніж Паскаль, але має ті ж переваги, що й у порівнянні з програмою низького рівня. роботи.

Будь-який процесор, який підтримує gcc, може потенційно підтримувати Ada, чий компілятор Gnat повністю є частиною gcc.

Це не вся історія, тому що вам також потрібна підтримка під час роботи системи Ada, але для процесора AVR у Arduino є добре зарекомендувала себе середовище у вигляді Проект AVR-Ada .

Він генерує хороші тісні маленькі виконувані файли, ви будете вражені тим, наскільки менше простору виконуються виконувані файли Gnat порівняно з Arduino - якщо ви вже не зробили такого ж порівняння між Arduino і C ... який, зрештою, використовує той же компілятор gcc.

Для Arduinos на базі ARM (принаймні, Arduino Due) те ж саме можливо, хоча підтримка є більш новою і, можливо, менш добре встановлена, див. source = directory "> проект Cortex-GNAT .

Вийшовши з Arduino, Ada також продемонстрували на своєму процесорі MSP430 - мій власний проект, на жаль, нехтуючий .

5
додано
Прочитайте власне запитання. Ви ЧАСТО запитали про "... або мови, подібні до Паскаля". Наскільки дивовижною може бути Ада? Найкращий спосіб дізнатися - це вчитися. Можна використовувати підмножину, подібну до Pascal, і, якщо хочете, ігнорувати розширені функції; деякі з них не підходять для MCU. А повторно: мовні зміни, останнім стандартом для Pascal є ISO7185: 1990, можливо, ви заплутуєте версії компіляторів з мовними стандартами? Звичайно Gnat оновлюється набагато частіше, ніж сама мова.
додано Автор brenth, джерело
Я в порядку з вами не "приймати" його, до речі. Один або два коментарі вказують на можливі альтернативні джерела: якщо ви будете стежити, і вони виявляться корисними, ви завжди можете додати свою власну відповідь. В іншому випадку для gcc використовувався якийсь передній кінець Pa. Отже, якщо ви відчуваєте сильний вплив на Pascal, чому б не спробувати побудувати це для AVR back-end, у цьому випадку проект AVR-Ada (система виконання) і моя документація MSP430-Ada можуть надати корисні підказки про деякі кроки на цьому шляху . (Робота над gcc не тривіальна!)
додано Автор brenth, джерело
@Kenny Я чую вас про застарілі критики Паскаля. Ада страждає від того ж нерозумного небажання розглядати його і це вплинуло на мене протягом багатьох років. Я почав програмувати на першій великій мові Вірта (Algol-W), також використовував Turbo Pascal (фантастичний для своєї епохи), потім його третій (Modula-2 - великий, але з її межами). Потім C і C ++ протягом десятиліття або близько того завдяки їхній комерційній неминучості, незважаючи на їх проектні невдачі. Шукаєте більш пристойну альтернативу, спробували Ada (не раніше). Після C ++, відчував себе більше як зцілення, ніж навчання. Не рекомендація, просто розповідь про подорож.
додано Автор brenth, джерело
Пояснення: 1. Я маю на увазі похідні Паскаля (mikroPascal, FPC, Delphi і т.д.). 2. Я говорю про те, що ви встановлюєте і використовуєте на комп'ютері не про ISO. Коли я зроблю програму для Arduino, я буду використовувати справжній програмний продукт (сподіваюся, Pascal), а не ISO.
додано Автор user19209, джерело
Так чи інакше, поки хтось не дасть іншу відповідь (якщо взагалі коли-небудь), Ада дійсно близька до Паскаля. Я прийму вашу відповідь не кращою альтернативою. Все одно, дякую. Upvoted.
додано Автор user19209, джерело
@ BrianDrummond- Добре, я постараюся. Я шукаю, щоб купити мою фріст Arduino борту.
додано Автор user19209, джерело

інтерфейс Pascal для колекції компіляторів Gnu (gcc, майже всі програми AVR засновані) вже існує. Таким чином, компілятор Pascal для AVR існує в принципі, якщо не в дійсності (і я не знаю, що це не так). Я почав би контактувати з людьми, які працюють на GPC, щоб дізнатися, що вже зроблено.

1
додано

Чи можна програмувати Arduino на Pascal?

Відповідь «так» і «ні». Відповідь: так, тому що можна портувати віртуальну машину p-code до Arduino компілювати для цього.

Відповідь ні, якщо розширення питання з "Чи підтримується відкритий вихідний код Arduino/AVR IDE для Pascal?"

Є кілька комерційних продуктів AVR/Pascal. Ви можете легко їх шукати в Інтернеті.

Нарешті, можливим скороченням є використання p2c , перекладача Pascal до C, як попереднього процесор в IDE Arduino. У складі Arduino є гачки для додавання додаткових інструментів.

Привітання!

1
додано
Завдяки @MikaelPatel. Чесно кажучи, я не проти платити (до) 100 баксів за комерційний інструмент Паскаля. Я плачу на один порядок більше для моєї ліцензії Delphi так, 100 не так вже й багато. P2C здається гідною альтернативою. Я розгляну P2C проти Ada (як рекомендував Брайан). Upvote (але я залишу відповідь Брайана на цей момент). Ще раз спасибі.
додано Автор user19209, джерело