Современный мир > Общие вопросы современного мира
Значимые события текущего времени
Клим:
--- Цитировать --- Думаю, логически-декларативные ядра реализуют скоро уже на уровне железа и БИОС. Следственно, не придется программизмом вообще заниматься...
--- Конец цитаты ---
А в чем суть, принцип устройства, логически-декларативного ядра?
avl:
--- Цитировать ---
--- Цитировать --- Думаю, логически-декларативные ядра реализуют скоро уже на уровне железа и БИОС. Следственно, не придется программизмом вообще заниматься...
--- Конец цитаты ---
А в чем суть, принцип устройства, логически-декларативного ядра?
--- Конец цитаты ---
Думаю, наибольший эффект даст не сколько изменения в архитектуре процов, сколько оптимизация работы с памятью. У декларативных языков есть такое свойство - запись в память идет не как изменение (перезапись уже существующих данных), а как добавление (новой инфы). Т.е. постоянно создаются новые структуры, а старые и не нужные (так называемый мусор) необходимо очищать. Тут больше подходят так называемые персистентные структуры данных. Если работу с памятью в таком стиле оптимизировать на уровне железа (т.е. разработать чипы памяти, интерфейс с процом и соответствующие блоки работы с паятью в проце, кеши), то декларативка уже существенно ускорится. Далее на уровне самого проца достаточно сделать много простых быстропереключающихся ядер - делкаративка хорошо параллелится. Ну можно и специальные инструкции реализовать, если нужда будет.
goshas:
--- Цитировать ---
--- Цитировать ---
--- Цитировать --- Думаю, логически-декларативные ядра реализуют скоро уже на уровне железа и БИОС. Следственно, не придется программизмом вообще заниматься...
--- Конец цитаты ---
А в чем суть, принцип устройства, логически-декларативного ядра?
--- Конец цитаты ---
Думаю, наибольший эффект даст не сколько изменения в архитектуре процов, сколько оптимизация работы с памятью. У декларативных языков есть такое свойство - запись в память идет не как изменение (перезапись уже существующих данных), а как добавление (новой инфы). Т.е. постоянно создаются новые структуры, а старые и не нужные (так называемый мусор) необходимо очищать. Тут больше подходят так называемые персистентные структуры данных. Если работу с памятью в таком стиле оптимизировать на уровне железа (т.е. разработать чипы памяти, интерфейс с процом и соответствующие блоки работы с паятью в проце, кеши), то декларативка уже существенно ускорится. Далее на уровне самого проца достаточно сделать много простых быстропереключающихся ядер - делкаративка хорошо параллелится. Ну можно и специальные инструкции реализовать, если нужда будет.
--- Конец цитаты ---
извини конечно, кто о чём а вшивый о бане :)
Flammar:
--- Цитировать ---
--- Цитировать ---
--- Цитировать --- Думаю, логически-декларативные ядра реализуют скоро уже на уровне железа и БИОС. Следственно, не придется программизмом вообще заниматься...
--- Конец цитаты ---
А в чем суть, принцип устройства, логически-декларативного ядра?
--- Конец цитаты ---
Думаю, наибольший эффект даст не сколько изменения в архитектуре процов, сколько оптимизация работы с памятью. У декларативных языков есть такое свойство - запись в память идет не как изменение (перезапись уже существующих данных), а как добавление (новой инфы). Т.е. постоянно создаются новые структуры, а старые и не нужные (так называемый мусор) необходимо очищать. Тут больше подходят так называемые персистентные структуры данных. Если работу с памятью в таком стиле оптимизировать на уровне железа (т.е. разработать чипы памяти, интерфейс с процом и соответствующие блоки работы с паятью в проце, кеши), то декларативка уже существенно ускорится. Далее на уровне самого проца достаточно сделать много простых быстропереключающихся ядер - делкаративка хорошо параллелится. Ну можно и специальные инструкции реализовать, если нужда будет.
--- Конец цитаты ---
У функциональных языков нет переменных, есть только "байндинги". Если написать x=x+1, то новый байндинг скрывает старый, и старое значение "переменной" можно "вскрыть". В функциональных ЯП не существует времени - система тождественна самой себе, взятой за любой предыдущий момент времени вплоть до момента вызова самой внешней функции из ОС (="запуск программы"). Когда мы выполняем x=x+1 в императивном языке, мы теряем старое значение x, система до выполнения x=x+1 не тождественна себе после выполнения x=x+1. Отсутствие понятия времени упрощает параллелизацию и оптимизацию.
Традиционный подход вроде бы экономит место, но дает большой источник потенциальных ошибок... правда делать циклы через рекурсию - тормозно, но тексты получаются короче и логичнее, а развертку рекурсии в циклы можно и поручить исполняющей системе (алгоритмы довольно стандартные).
Flammar:
--- Цитировать ---
--- Цитировать ---
--- Цитировать --- Думаю, логически-декларативные ядра реализуют скоро уже на уровне железа и БИОС. Следственно, не придется программизмом вообще заниматься...
--- Конец цитаты ---
А в чем суть, принцип устройства, логически-декларативного ядра?
--- Конец цитаты ---
Думаю, наибольший эффект даст не сколько изменения в архитектуре процов, сколько оптимизация работы с памятью. У декларативных языков есть такое свойство - запись в память идет не как изменение (перезапись уже существующих данных), а как добавление (новой инфы). Т.е. постоянно создаются новые структуры, а старые и не нужные (так называемый мусор) необходимо очищать. Тут больше подходят так называемые персистентные структуры данных. Если работу с памятью в таком стиле оптимизировать на уровне железа (т.е. разработать чипы памяти, интерфейс с процом и соответствующие блоки работы с паятью в проце, кеши), то декларативка уже существенно ускорится. Далее на уровне самого проца достаточно сделать много простых быстропереключающихся ядер - делкаративка хорошо параллелится. Ну можно и специальные инструкции реализовать, если нужда будет.
--- Конец цитаты ---
Для стека не нужна память с произвольном доступом. Можно заточить под стековые операции традиционную RAM путем оптимизации конвейерного доступа.
Навигация
Перейти к полной версии