История изменений
Исправление tailgunner, (текущая версия) :
Но через 40 лет ясно, что тупик.
Кому ясно и почему?
Чуть менее, чем всем (посчитай проекты процессоров, ориентированных на ЯВУ). Потому что понятно, что ошибки нужно искать на этапе трансляции, а не как в Эль-76. Потому что компиляторы (и JIT, и AOT) умеют сами проверять границы и типы, и, даже иногда гарантировать их корректность (что исключает необходимость в аппаратных проверках)
Компиляторы за 40 лет кое-чему научились.
Да не ужели?
Ужели. Собственно, во времена Эльбруса была развилка - делать умное железо или умные компиляторы. Эль-76 (и Lisp-машины) - это поворот в сторону умного железа, RISC-революция - в сторону умных компиляторов.
Не нужно только тебе или вообще всем?
Не нужно никому, кто готов платить (характерно, что теги есть только в RISC-V).
Проверять доступ к памяти? И часто это используется в боевых версиях?
Смотря что ты называешь «боевыми версиями». Если реальные боевые программы (управление оружием) - наверное, не часто. А в коммерции - постоянно. В Java и .NET - практически всегда.
Исправление tailgunner, :
Но через 40 лет ясно, что тупик.
Кому ясно и почему?
Чуть менее, чем всем (посчитай проекты процессоров, ориентированных на ЯВУ). Потому что понятно, что ошибки нужно искать на этапе трансляции, а не как в Эль-76. Потому что компиляторы (и JIT, и AOT) умеют сами проверять границы и типы, и, даже иногда гарантировать их корректность (что исключает необходимость в аппаратных проверках)
Компиляторы за 40 лет кое-чему научились.
Да не ужели?
Ужели. Собственно, во времена Эльбруса была развилка - делать умное железо или умные компиляторы. Эль-76 (и Lisp-машины) - это поворот в сторону умного железа, RISC-революция - в сторону умных компиляторов.
Не нужно только тебе или вообще всем?
Не нужно никому, кто готов платить.
Проверять доступ к памяти? И часто это используется в боевых версиях?
Смотря что ты называешь «боевыми версиями». Если реальные боевые программы (управление оружием) - наверное, не часто. А в коммерции - постоянно. В Java и .NET - практически всегда.
Исходная версия tailgunner, :
Но через 40 лет ясно, что тупик.
Кому ясно и почему?
Чуть менее, чем всем (посчитай проекты процессоров, ориентированных на ЯВУ). Потому что понятно, что ошибки нужно искать на этапе трансляции, а не как в Эль-76. Потому что компиляторы (и JIT, и AOT) умеют сами проверять границы и типы, и, даже иногда гарантировать их корректность (что исключает необходимость в аппаратных проверках)
Компиляторы за 40 лет кое-чему научились.
Да не ужели?
Ужели.
Не нужно только тебе или вообще всем?
Не нужно никому, кто готов платить.
Проверять доступ к памяти? И часто это используется в боевых версиях?
Смотря что ты называешь «боевыми версиями». Если реальные боевые программы (управление оружием) - наверное, не часто. А в коммерции - постоянно. В Java и .NET - практически всегда.