Позвольте мне сначала сказать, что я НЕ ищу здесь автоматических магических решений. Я хочу перевести код с Python на Smalltalk, потому что я заметил, что некоторые очень простые предложения могут быть переведены автоматически, примеры:
Присвоение переменной значения
Python
i = 1
Smalltalk
i := 1.
Создание нового экземпляра класс
Python
instance = module.ClassName()
Smalltalk
instance := ClassName new.
цикл for
Python
for a in [0,1,2]:
print (str(a)+str(a))
Smalltalk
#(0 1 2) do: [: a | Transcript show: a + a; cr ]
и т. д. (циклы while, условные операторы и т. д. ).Моя идея состоит в том, чтобы иметь инструмент, который переводит все эти чрезвычайно «простые» случаи, а затем я могу завершить или обучить систему правил вручную.
Знаете ли вы какой-нибудь инструмент перевода программирования или библиотеку, которая может мне помочь?
В случае, если вы не слышали ни о каком инструменте, какую технику/паттерн вы будете использовать для реализации такого перевода? Можете дать ссылку на пример?
Спасибо