В настоящее время я в первую очередь программист D и хочу добавить еще один язык в свой набор инструментов, желательно тот, который поддерживает метапрограммирование хаков, которые просто невозможно сделать на статически скомпилированном языке, таком как D. Я читал Lisp немного, и мне бы хотелось найти язык, который позволяет некоторым из классных вещей, которые Lisp делает, но без странного синтаксиса и т.д. из Lisp. Я не хочу начинать языческую пламенную войну, и я уверен, что у Ruby и Python есть свои компромиссы, поэтому я перечислил то, что важно для меня лично. Пожалуйста, скажите мне, будет ли лучше для меня Ruby, Python или какой-то другой язык.
Важно:
- Хорошее метапрограммирование. Возможность создания классов, методов, функций и т.д. Во время выполнения. Предпочтительно, минимальное различие между кодом и данными, стиль Lisp.
- Хороший, чистый, здравый синтаксис и последовательная, интуитивная семантика. В основном хорошо продуманный, забавный в использовании, современный язык.
- Несколько парадигм. Ни одна парадигма не подходит для каждого проекта или даже для каждой небольшой подзадачи в рамках проекта.
- Интересный язык, который фактически влияет на то, как вы думаете о программировании.
В некоторой степени важно:
- Производительность. Было бы неплохо, если бы производительность была приличной, но когда производительность является реальным приоритетом, я буду использовать D вместо.
- Хорошо документированы.
Не важно:
- Размер сообщества, доступность библиотеки и т.д. Ни один из них не является характеристикой самого языка, и все может очень быстро измениться.
- Доступность работы. Я не полный рабочий день, профессиональный программист. Я студент-градир, и программирование косвенно связано с моими исследованиями.
- Любые функции, которые в основном разработаны с очень большими проектами, на которых работает миллион кодовых обезьян.