Nā Polokalamu Unix Nui loa

ʻO ka mea kākau o ka ʻatikala, ʻo Douglas McIlroy, he kanaka makemakika ʻAmelika, ʻenekinia a mea papahana. ʻIke ʻia ʻo ia no ka hoʻomohala ʻana i ka pipeline i ka ʻōnaehana hana Unix, nā loina o ka hoʻonohonoho ʻana i ka ʻāpana a me kekahi mau pono pono: spell, diff, sort, join, speak, tr.

I kekahi manawa ʻike ʻoe i kekahi mau polokalamu maikaʻi loa. Ma hope o ka ʻeli ʻana i kaʻu hoʻomanaʻo, ua hōʻuluʻulu au i kahi papa inoa o kekahi o nā mea nani Unix maoli i nā makahiki. ʻO ke kumu, he mea kakaikahi kēia mau polokalamu a ʻaʻole pono. Akā ʻo ka mea i hoʻokaʻawale iā lākou ʻo kā lākou kumu. ʻAʻole hiki iaʻu ke noʻonoʻo ua loaʻa iaʻu ka manaʻo no kekahi o lākou iho.

Kaʻana like, he aha nā polokalamu i hoʻohauʻoli nui iā ʻoe?

PDP-7 Unix

No ka hoʻomaka, ʻo ka ʻōnaehana PDP-7 Unix ponoʻī. ʻO kona maʻalahi a me kona mana i hoʻololi iaʻu mai kahi pahu nui ikaika i kahi mīkini liʻiliʻi. ʻO ia ka quintessential hierarchical file system, kaʻawale shell, a me ka mea hoʻohana-level kaʻina kaʻina mana hiki ole ke hoʻokō ʻo Multics ma nā papa nui ma hope o nā haneli mau makahiki o ka hoʻomohala ʻana. ʻO nā hemahema o Unix (e like me ke ʻano hoʻopaʻa moʻolelo o ka ʻōnaehana waihona) i aʻo a hoʻokuʻu ʻia e like me kāna mau hana hou (e like me ka shell I/O redirection).

dc

Ua hoʻohana ʻo Robert Morris i ka helu helu helu helu ʻai pololei ʻokoʻa e hoʻoholo ai i ka pololei i koi ʻia i kēlā me kēia kaʻina e loaʻa ai kahi hopena pololei i kuhikuhi ʻia e ka mea hoʻohana. Ma ka 1968 NATO Software Engineering Conference, i loko o kaʻu pepa e pili ana i nā ʻāpana polokalamu, ua noi au i nā kaʻina hana e hiki ai ke hoʻopuka i nā hopena o ka pololei i makemake ʻia, akā ʻaʻole wau i ʻike pehea e hoʻokō ai i ka hana. ʻO dc wale nō ka papahana aʻu i ʻike ai hiki ke hana i kēia.

kuhi hewa

Hoʻonohonoho ʻo Typo i nā huaʻōlelo ma ke kikokikona ma muli o ko lākou ʻano like me ke koena o ka kikokikona. ʻO nā ʻōlelo kuhi hewa e like me 'hte' e pau ana ma ka hope o ka papa inoa. Ua ʻōlelo haʻaheo ʻo Robert Morris e hana maikaʻi ka papahana ma kekahi ʻōlelo. ʻOiai ʻaʻole kōkua ʻo typo iā ʻoe e ʻimi i nā hewa phonetic, he makana akua ia no nā typesetters āpau a he mea maikaʻi loa ia ma mua o ka hiki ʻana mai o ka nānā ʻana o ka puke wehewehe wehewehe ʻoi aku ka maikaʻi.

ʻAʻole i manaʻo ʻia ʻo Typo i loko e like me waho. Hoʻokumu ʻia ka algorithm ana like ʻana ma ke alapine o ka hiki ʻana mai o nā trigrams, i helu ʻia ma kahi pūʻulu 26x26x26. ʻAʻole lawa ka hakahaka i loko o ka hoʻomanaʻo liʻiliʻi no nā helu helu-byte hoʻokahi, no laila ua hoʻokō ʻia kahi hoʻolālā e kaomi i nā helu nui i nā helu liʻiliʻi. No ka pale ʻana i ka hoʻomāhuahua ʻana, ua hōʻano hou ʻia nā helu helu ma ke kumu probabilistic, e mālama ana i kahi kuhi o ka logarithm o ka waiwai counter.

eqn

Me ka hiki ʻana mai o ka phototypesetting, ua hiki ke hana i ka notation matematika maʻamau. Ua hoʻoholo ʻo Lorinda Cherry e hoʻomohala i kahi ʻōlelo wehewehe kiʻekiʻe, a ua hui pū ʻo Brian Kernighan me ia. ʻO kā lākou hana maikaʻi loa ʻo ia ka hōʻike ʻana i nā kuʻuna waha ma ke kākau ʻana, ʻo ia ke kumu i lilo ai ka eqn i mea maʻalahi loa ke aʻo ʻana. ʻO ka mea hoʻopuka huaʻōlelo makemakika mua o kona ʻano, ʻaʻole i ʻike iki ʻia ka eqn mai ia manawa.

mea kūkulu

Ua hoʻomaka ʻo Brenda Baker e hoʻomohala i kāna mea hoʻololi Fortan-to-Ratfor e kūʻē i ka ʻōlelo aʻo a kona haku, ʻo wau. Ua manaʻo wau e hopena paha kēia i kahi hoʻonohonoho hou kūikawā o ka kikokikona kumu. E kaʻawale ia i nā helu mea hoʻohana, akā inā ʻaʻole hiki ke heluhelu ʻia ma mua o ke code Fortran i kūkulu maikaʻi ʻia. Ua hōʻike hewa ʻo Brenda iaʻu. Ua ʻike ʻo ia aia kēlā me kēia papahana Fortran i kahi ʻano canonically structured. Ua makemake ka poʻe polokalamu polokalamu i ke ʻano canonical ma mua o ka mea a lākou i kākau mua ai.

pascal

ʻO nā syntax diagnostics i loko o ka mea hōʻuluʻulu i kūkulu ʻia e ka hui ʻo Sue Graham ma Berkeley ka mea pono loa aʻu i ʻike ai—a he ʻakomi lākou. Inā loaʻa kahi hewa syntax, koi ka mea hoʻopili iā ʻoe e hoʻokomo i kahi hōʻailona e hoʻomau i ka parsing. ʻAʻohe hoʻāʻo e wehewehe i ka hewa. Me kēia mea hōʻuluʻulu, ua aʻo wau iā Pascal i hoʻokahi ahiahi, me ka ʻole o kahi manual ma ka lima.

nā'āpana

Huna ʻia ka module i loko o ka pūʻolo WWB (Writer's Workbench). parts Hoʻoholo ʻo Lorinda Cherry i nā ʻāpana o ka haʻiʻōlelo no nā huaʻōlelo ma ka ʻōlelo Pelekania e pili ana i kahi puke wehewehe liʻiliʻi, ka ʻōlelo a me nā lula grammar. Ma muli o kēia hōʻike, hōʻike ka papahana WWB i nā hōʻailona stylometric o ka kikokikona, e like me ka laha o nā adjectives, subordinate clauses a me nā ʻōlelo paʻakikī. I ka wā i ninaninau ʻia ai ʻo Lorinda ma ka hōʻike NBC's Today a kamaʻilio e pili ana i ka nānā ʻana i ka grammar innovative WWB, ʻo ia ka ʻōlelo mua o Unix ma ke kīwī.

egrep

Manaʻolana ʻo Al Aho e ʻoi aku ka maikaʻi o kāna parser hōʻike maʻamau ma mua o ko Ken. ʻO ka mea pōʻino, ua hoʻopau mua ka mea hope i ka hele ʻana i nā ʻōlelo maʻamau paʻakikī a hiki i egrep ua kūkulu ʻo ia i kāna automation deterministic. No ka lanakila mau ʻana i kēia heihei, ua ʻalo ʻo Al Aho i ka hōʻino o ka ulu nui ʻana o ka papa mokuʻāina o ka automaton ma ka hana ʻana i kahi ala e kūkulu ai ma luna o ka lele wale ʻana i kēlā mau papa helu i kipa ʻia i ka wā e ʻike ʻia ai.

kūpaʻa

Ua hoʻokuʻu ʻo Luca Cardelli i ka polokalamu meta-mea hoʻonani no ka ʻōnaehana pukaaniani Blit i nā pāpaʻi maʻemaʻe e ʻauwana ana a puni ka hakahaka o ka pale, e ʻai ana i nā ʻaoʻao o nā puka makani ikaika.

ʻO kekahi mau manaʻo maʻamau

ʻOiai ʻaʻole ʻike ʻia ma waho, ua hoʻokō nui ka manaʻo a me nā algorithm i ka hana ʻana o ka hapa nui o kēia mau papahana: typo, dc, struct, pascal, egrep. ʻO ka ʻoiaʻiʻo, ʻo ka hoʻohana maʻamau o ka manaʻo ka mea kupanaha loa.

ʻO nā mea kākau mua o ka hapalua o ka papa inoa—pascal, struct, parts, eqn—he mau wāhine, i ʻoi aku ma mua o ka māhele demographic o nā wāhine i ka ʻepekema kamepiula.

Douglas McIlroy
Malaki, 2020


Source: www.habr.com

Pākuʻi i ka manaʻo hoʻopuka