Здравствуйте, vaskir, Вы писали:
V>Какие я вижу проблемы в реализации расширяемого F#:
V>* Significant whitespace синтаксис (хотя Nemerle тоже его поддерживает и, возможно, здесь проблем не будет). V>* Глобальный вывод типов. V>* Однопроходный компилятор, поэтому последовательность объявлений типов/функций и порядок файлов важен. V>* Type Providers — генерят типы лениво и поддерживают так называемые erased types, которые стираются при компиляции.
F#, по описанным тобой причинам, плохо IDE-зируемый язык. Тайп провайдеры не проблема, а вот однопроходная схема и глобальный вывод типов — это приговор. При этом по возможностям от от Немерла мало чем отличается.
Что касается отступного парсер, то ясно как это дело реализовать, но это надо делать, а приоритет у этого дела не высокий.
C# же можно использовать как базу для Nemerle 2.0.
Есть логика намерений и логика обстоятельств, последняя всегда сильнее.