Почему [1..5] в Rascal возвращает [1,2,3,4]?

Я ожидаю, что он вернется [1,2,3,4,5], как в Haskell.

1 ответ

Решение

Краткий ответ: левый указатель является эксклюзивным, а правый - эксклюзивным.

Длинный ответ: причина короткого ответа в том, что списки индексируются нулем, и мы заметили, что все должны писать (или забывают писать) [0..size(myList) - 1], Теперь мы можем написать [0..size(myList)] вместо. Это не похоже на Haskell, но похоже на Python.

Другие вопросы по тегам