Подтвердить что ты не робот

Языки программирования с синтаксисом, подобным питону, но генерирование собственного кода

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

4b9b3361

Ответ 1

Cython мог бы сделать - созданный им код C предназначен для расширений Python, но все это можно упаковать, Будем использовать собственный код (после "import"; -).

Ответ 2

Должен признать, что я не совсем понимаю ваш вопрос по двум причинам:

  1. Вы запрашиваете язык с генерацией собственного кода, но генерация кода не имеет ничего общего с языком, это особенность реализации. Каждый язык может иметь реализацию с генерацией собственного кода. Несколько реализаций Python имеют генерацию собственного кода. Существуют компиляторы C, которые компилируют в байт-код JVM, байт-код CIL или даже исходный код ECMAScript. Есть даже интерпретаторы Си. Существуют также компиляторы, которые компилируют исходный код Java или байт-код JVM в собственный код.

  2. Почему вы заботитесь о синтаксисе? Вероятно, это наименее важный фактор при выборе языка программирования.

В любом случае, Nim - это язык программирования, в котором есть реализация, которая поддерживает генерацию собственного кода (или, точнее, реализацию, которая поддерживает генерацию исходного кода на C), и чей синтаксис представляет собой гибрид между стилем Wirthian (по-видимому, наиболее важные влияния - это Oberon и Delphi) и Python.

Однако тот факт, что он имеет синтаксис Pythonic, совсем не поможет, если вам не нравится дизайн в стиле европейского языка или ООП в виртском стиле.

Ответ 3

Также найдено сегодня Delight, применяя синтаксис Python на back-end D.

И Converge тоже.

Ответ 4

Отъезд Cobra

На него сильно влияют Python, С#, Eiffel, Objective-C и другие языки программирования. Он поддерживает как статическую, так и динамическую типизацию. Он имеет первоклассную поддержку для модульных тестов и контрактов. Cobra обеспечивает быстрое развитие и производительность на одном языке.

Ответ 5

shedskin компилирует Python в С++

Из страницы проекта shedskin

Shed Skin - экспериментальный компилятор, которые могут переводить чисто, но неявно статически типизированный Python программ в оптимизированный С++. Оно может создавать автономные программы или модули расширения, которые можно импортировать и используется в больших программах Python.

Ответ 6

Genie, который является частью проекта gnome: http://live.gnome.org/Genie

Я думаю, это именно то, что вы ищете.

Ответ 7

Если вы довольны тем, что компилируется до байт-кода Java, вы можете посмотреть Jython. Цитата из их FAQ:

JPython - это реализация языка программирования Python, который предназначен для работы на платформе Java (tm). Он состоит из компилятора для компиляции исходного кода Python вплоть до Java-байт-кодов, которые могут запускаться непосредственно на JVM, наборе библиотек поддержки, которые используются скомпилированными байт-кодами Java, и дополнительной поддержке, чтобы сделать тривиальным использование пакетов Java из JPython.

Я еще не использовал его, но рассматриваю его в некоторых проектах, где мне нужно интегрироваться с существующей кодовой базой Java.

НТН

Ответ 8

PyPy - это проект для повторной реализации Python в Python. Одна из его целей - разрешить использование нескольких back-end, включая C. Таким образом, вы можете взять чистую программу Python, преобразовать ее в C и скомпилировать ее в собственный код. Он по-прежнему работает, поэтому, вероятно, не подходит для производственного кода.

Ответ 10

Вы также можете исследовать IronPython - реализация python на платформе .NET