В даний час я в основному програміст D і прагну додати до мого набору інструментів ще одну мову, бажано таку, яка підтримує метапрограмування, які просто неможливо виконати на статично скомпільованій мові, як D.
Я трохи читав про Lisp, і я хотів би знайти мову, яка дозволить деякі цікаві речі, які робить Lisp, але без дивного синтаксису тощо Lisp. Я не хочу розпочинати мовну війну полум’я, і я впевнений, що і Ruby, і Python мають свої компроміси, тому я перелічу, що для мене особисто важливо. Скажіть, будь ласка, чи найкраще для мене буде Ruby, Python чи якась інша мова.
Важливо:
- Хороше метапрограмування. Можливість створення класів, методів, функцій тощо під час виконання. Переважно, мінімальна різниця між кодом і даними, стиль Lisp.
- Гарний, чистий, здоровий синтаксис та послідовна, інтуїтивна семантика. В основному добре продумана, цікава у використанні, сучасна мова.
- Кілька парадигм. Жодна парадигма не підходить для кожного проекту або навіть для кожної невеликої підзадачі в рамках проекту.
- Цікава мова, яка насправді впливає на те, як людина думає про програмування.
Дещо важливе:
- Продуктивність. Було б непогано, якби продуктивність була гідною, але коли продуктивність є справжнім пріоритетом, я замість цього буду використовувати D.
- Добре задокументовані.
Не важливо:
- Розмір спільноти, доступність бібліотеки тощо. Жодне з них не є характеристикою самої мови, і все може змінюватися дуже швидко.
- Вакансія. Я не штатний професійний програміст. Я студент, і програмування дотично стосується мого дослідження.
- Будь-які функції, які в першу чергу розроблені для дуже великих проектів, над якими працював мільйон кодових мавп.