Должен ли я использовать Python или C для переводчика языка?

317
user3242139

Я планирую написать переводчика для моего собственного языка. Язык будет работать аналогично PHP в том смысле, что он будет работать без веб-сервера, а код будет выполняться в браузере.

Я знаю, что C, очевидно, быстрее, чем Python, но я хотел бы знать, насколько заметна разница в скорости с точки зрения конечного пользователя? Мне нравится Python, потому что он позволил бы мне быстро создавать свой язык, а также есть ли способ написать его часть на Python и оставить генерацию кода для чего-то другого, например LLVM или C?

Спасибо френсис

0
Этот вопрос, кажется, не по теме. Мы не можем сказать вам, какой из них вы должны использовать. Только вы знаете, каковы ваши требования. Ramhound 10 лет назад 0
Как общее правило, вы бы использовали C или Python? user3242139 10 лет назад 0
Я бы использовал лучший язык для работы, учитывая мои требования. Реализация любого из них была бы тривиальной на моем уровне квалификации. Я не согласен с тем, что решение C будет «очевидно» быстрее, чем решение Python. Ramhound 10 лет назад 1
Если ваши ресурсы не очень ограничены, конечный пользователь, вероятно, не увидит большой разницы между этими двумя вариантами. Во всяком случае, не так. nerdwaller 10 лет назад 0
Должно быть на Programmers.SE, но это не вариант для переезда. Scott 10 лет назад 0

1 ответ на вопрос

1
headkase

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