Я работаю на очень высокоуровневом предметно-ориентированном языке, который занимается анализом данных.Существует виртуальное единообразное соглашение о том, что однофакторная индексация - это путь с научной точки зрения.Конечно, программисты ненавидят это несоответствие, но практически все наши пользователи привыкли использовать x [i] для обозначения элемента i, а не элемента i-1.
Существуют ли какие-либо принципы проектирования, которые можно использовать для сохранения некоторого вменяемогоистория совместимости с CLR?Я чувствовал, что если мы автоматически переведем пространство System.Collections с вариантами на основе одного, вместе с нашими API на основе C #, то мы должны быть на 90%.Но я не уверен.Например, должны ли мы автоматически перебазировать интерфейс IList?Но что произойдет, если C # API реализует CustomRemove (zeroBasedIndex)?
Есть ли что-то еще, что мы можем сделать, чтобы ослабить это болезненное несоответствие?Как далеко мы должны пойти, чтобы сделать System.Collections one based.
Наконец, есть ли какие-нибудь примеры основанных на одном языке языков в CLR?