OSDev

для всех
Текущее время: 24 апр 2018, 13:37

Часовой пояс: UTC + 3 часа




Начать новую тему Ответить на тему  [ Сообщений: 37 ]  На страницу Пред.  1, 2, 3, 4
Автор Сообщение
 Заголовок сообщения: Re: kakie yaziki programirovaniya luche podhodyat dlua os?
СообщениеДобавлено: 22 июл 2014, 18:11 
Аватара пользователя

Зарегистрирован: 28 май 2012, 23:44
Сообщения: 237
Откуда: Санкт-Петербург
Эффективность нужно рассматривать в разрезе поставленных целей (эффективность разработки программ, эффективность развертывания/обслуживания, переносимость, реальное время, статический анализ и поиск уязвимостей и т. д.), поэтому однозначного ответа тут быть не может.

А вот предсказуемость работы могут обеспечить именно функциональные языки: благодаря чистоте функций необходимые затраты (памяти, времени и пр.) теоретически могут быть подсчитаны ДО запуска программы, если ядро поддерживает функциональную парадигму, а не просто запускает любой код, который ему подсунут.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: kakie yaziki programirovaniya luche podhodyat dlua os?
СообщениеДобавлено: 22 июл 2014, 18:18 

Зарегистрирован: 18 июл 2014, 09:57
Сообщения: 20
согласен с фрименом .Хаскел не сильно популярен из за того что он использует непревычные всем принципы програмирования. http://dir.osrc.info/ObshhijjSpisokOS вот еще полезоне список ос полный болемение


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: kakie yaziki programirovaniya luche podhodyat dlua os?
СообщениеДобавлено: 22 июл 2014, 18:20 
Аватара пользователя

Зарегистрирован: 16 май 2007, 23:46
Сообщения: 1084
Дело в том что ОС на функциональном языке написать нельзя. А то что в примере выше так там функциональный язык модифицирован до императивного.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: kakie yaziki programirovaniya luche podhodyat dlua os?
СообщениеДобавлено: 22 июл 2014, 23:31 

Зарегистрирован: 26 мар 2012, 17:32
Сообщения: 208
pavia писал(а):
Дело в том что ОС на функциональном языке написать нельзя. А то что в примере выше так там функциональный язык модифицирован до императивного.
1. Слишком сильно мнение что парадигма - огромное свойство языка, а не подхода к делу. Зря, имхо.
2. Тот же лисп нередко считают функциональным. Пореже, но тоже часто - объектно-ориентированным. В любом случае, в системном программировании в целом и в ОСеписании в частности он весьма так используется и поныне. Или он типа такой единственный на фоне других языков программирования?
3. Тема выглядит как тролльский^W холиварный вброс. Ведь если не флудить, а дело делать, то расклад такой: 1) чтобы использовать язык для написания ОС, нужно им очень хорошо владеть 2) нужно быть способным реализовать для него библиотеку времени выполнения со всеми нужными функциями, либо хотя бы быть способным прикрутить одну из кем-то уже реализованных (при наличии таковых) 3)* использование GC (сборки мусора), языков где переменная может менять тип, языков где переменные немутабельны и прочих модных вещей может усложнить жизнь, порой очень сильно и без заметного профита.
Всё это заметно сужает выбор здравомыслящего человека. Иногда, правда, у него при этом остаётся вариант "разрабатывать свои средства разработки" (специально использовал тавтологию) и иногда человек и правда может сделать это хорошо. Но это слишком редкий случай.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: kakie yaziki programirovaniya luche podhodyat dlua os?
СообщениеДобавлено: 23 июл 2014, 00:38 

Зарегистрирован: 21 сен 2007, 17:24
Сообщения: 1039
Откуда: Балаково
pavia писал(а):
Дело в том что ОС на функциональном языке написать нельзя. А то что в примере выше так там функциональный язык модифицирован до императивного.

Язык не модифицирован - в этом и состоит вся суть лабораторной работы. К тому же такой необходимости нет, т.к. в языке уже имеется поддержка механизма "монад" для императивных действий. Просто в библиотеку добавили операции для работы с аппаратурой. Насколько я понимаю, в рантайме реализован в основном менеджер памяти со сборщиком мусора - это в общем-то и всё, а всё остальное делается в рукопашную на Haskell-е. Похоже, они хотели доказать, что при желании на любом ЯП можно написать ОС :)


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: kakie yaziki programirovaniya luche podhodyat dlua os?
СообщениеДобавлено: 23 июл 2014, 13:07 
Аватара пользователя

Зарегистрирован: 14 мар 2011, 12:31
Сообщения: 943
Откуда: Дагоба
Freeman писал(а):
Эффективность нужно рассматривать в разрезе поставленных целей

Безусловно. Если поставлена цель написать ОС на функциональном языке, то Haskell - хороший язык :D.

Freeman писал(а):
А вот предсказуемость работы могут обеспечить именно функциональные языки: благодаря чистоте функций необходимые затраты (памяти, времени и пр.) теоретически могут быть подсчитаны ДО запуска программы

Именно здесь вы сильно ошибаетесь. Предсказуемость на этапе выполнения - свойство НЕ функциональных языков, но императивных. Чистота функций ни при чём, затраты времени необходимо рассматривать в рамках анализа алгоритмов. Сбор мусора и ленивые вычисления (lazy evaluation) в значительной степени ставят под сомнение возможность точного прогнозирования времени выполнения.

pavia писал(а):
Дело в том что ОС на функциональном языке написать нельзя.

Небольшая поправочка: ОС на чистом функциональном языке написать нельзя.

pavia писал(а):
А то что в примере выше так там функциональный язык модифицирован до императивного.

Он не то, чтобы модифицирован до императивного. В него добавлены средства для получения "побочных эффектов", ибо программа без побочных эффектов совершенно бесполезна. Т.е. реальные функциональные языки вынуждены искать компромисс между недостижимой "голубой мечтой" отсутствия побочных эффектов и бесполезностью, и пользой, но с побочными эффектами.

Nable писал(а):
1. Слишком сильно мнение что парадигма - огромное свойство языка, а не подхода к делу. Зря, имхо.

Сами языки стимулируют к такому подходу.

Nable писал(а):
3. Тема выглядит как тролльский^W холиварный вброс. Ведь если не флудить, а дело делать, то расклад такой: 1) чтобы использовать язык для написания ОС, нужно им очень хорошо владеть 2) нужно быть способным реализовать для него библиотеку времени выполнения со всеми нужными функциями, либо хотя бы быть способным прикрутить одну из кем-то уже реализованных (при наличии таковых)

Очень на то похоже. Как говорится, рассуждать о вкусе устриц можно с тем, кто их ел.

Himik писал(а):
Похоже, они хотели доказать, что при желании на любом ЯП можно написать ОС :)

Вот! Я ведь о том же!

_________________
Yet Other Developer of Architecture.
The mistery of Yoda’s speech uncovered is:
Just an old Forth programmer Yoda was.

<<< OS Boot Tools. >>>


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: kakie yaziki programirovaniya luche podhodyat dlua os?
СообщениеДобавлено: 23 июл 2014, 16:55 
Аватара пользователя

Зарегистрирован: 28 май 2012, 23:44
Сообщения: 237
Откуда: Санкт-Петербург
Yoda писал(а):
Предсказуемость на этапе выполнения - свойство НЕ функциональных языков, но императивных.

Я говорил про предсказуемость ДО выполнения, а не когда уже поздно что-то менять. Декларативная целостность. Про монады Himik за меня уже ответил.

В целом с функциональными языками ситуация примерно та же, что и с микроядрами. В теории хорошо, но в реальности другого железа нет, поэтому приходится искать компромиссы. А вот без сборки мусора обойтись можно, и на таком гибридном языке вполне можно будет написать ОС.


Вернуться к началу
 Профиль  
 
Показать сообщения за:  Поле сортировки  
Начать новую тему Ответить на тему  [ Сообщений: 37 ]  На страницу Пред.  1, 2, 3, 4

Часовой пояс: UTC + 3 часа


Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 1


Вы не можете начинать темы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете добавлять вложения

Найти:
Перейти:  
cron
Создано на основе phpBB® Forum Software © phpBB Group
Русская поддержка phpBB