kika: (Default)
[personal profile] kika
Не так все шоколадно в неразрушаемом мире.

It's the same reason so many other fundamental datastructures are missing: they just aren't practical in immutable languages.  Skew trees, splay trees, judy trees, julia trees, Knuth's Algorithm X container, Zobrist hashing, basically any ply tree strategy, basically every tree culling algorithm, et cetera - half of the stuff you find in NIST DADS - are casualties.  Erlang can't have real mtd(f).  Erlang can't have real A*.  Erlang can't have real negascout.  Erlang can't have real stochastic octrees.  Erlang can't have half the stuff you want for caching.  You'd do well to just write an interface for a tree or hash to get the expected API behavior and call it a day.  If you can't, it's time to write a port.

http://www.erlang.org/cgi-bin/ezmlm-cgi?4:mss:44582:200906:fheihgcibcpkcjpgfmbj

Текст срезонировал потому что я сейчас делаю IP address longest match lookup (как в таблице маршрутизации) и подумал что мою таблицу в реальный роутер не засунешь. Ибо у меня таблица никогда не перестраивается, поэтому я могу себе позволить ее создавать сколь угодно долго, а в реальном роутере она динамическая. У Ерланга куча наверное очень эффективная, но тем не менее.

Date: 2009-08-27 02:51 pm (UTC)
From: [identity profile] cp-poster.livejournal.com
> а эффективный ввод-вывод не придумали ни на чем кроме винды
А можно немного поподробней об этом? Не флейма ради, а расширения кругозора для.

Date: 2009-08-27 07:16 pm (UTC)
From: [identity profile] kika.livejournal.com
Ну вот есть например асинхронный ввод вывод. Скажем, для дисков или там сокетов. В нынешнем мире сплошной мультимедии и тотального труHD без этого никуда и никак. И как это реализовано в юниксе? Универсальный ответ - никак. Можно призвать сюда дух и плоть юзера [livejournal.com profile] pzz и он расскажет, но, боюсь что текст будет существенно 18+.
А в винде есть overlapped I/O, который там да, кривой и местами не продуманный, но он работает и выжимает с дисков столько, сколько можно, пока ПСП не кончится.
А в линухе есть O_DIRECT, который как следует работает только на XFS, которая в свою очередь падает на томах объемом больше чем сколько-то там терабайт, которая отстутствует в стабильных дистрибутивах, а если ты хочешь портировать свой варез на, скажем, FreeBSD, то тебе проще пойти и убить себя нах об стенку.
Короче, давайте не начинать. (а то я пойду и убью себя ап стенку, а семья будет грустить)

Profile

kika: (Default)
kika

January 2017

S M T W T F S
1234567
89 1011121314
151617181920 21
22232425262728
293031    

Most Popular Tags

Style Credit

Expand Cut Tags

No cut tags
Page generated Feb. 18th, 2026 03:33 pm
Powered by Dreamwidth Studios