Највећи Уник програми

Аутор чланка, Доуглас МцИлрои, амерички је математичар, инжењер и програмер. Најпознатији је по развоју цевовода у оперативном систему Уник, принципима компонентно оријентисаног програмирања и неколико оригиналних услужних програма: спелл, дифф, сорт, јоин, спеак, тр.

Понекад наиђете на заиста дивне програме. Након што сам претурао по свом сећању, саставио сам листу правих Уникс драгуља током година. У суштини, ово су прилично ретки и не толико потребни програми. Али оно што их издваја је њихова оригиналност. Не могу ни да замислим да сам лично дошао на идеју неког од њих.

Поделите који програми сте такође импресионирани?

ПДП-7 Уник

За почетак, сам систем ПДП-7 Уник. Његова једноставност и снага натерали су ме да пређем са моћног главног рачунара на малу машину. То је суштински хијерархијски систем датотека, одвојена шкољка и контрола процеса на нивоу корисника коју Мултицс на главном рачунару није успео да постигне након стотина човек-година развоја. Уник-ови недостаци (као што је структура записа система датотека) били су једнако поучни и ослобађајући као и његове иновације (као што је љуска И/О преусмеравање).

dc

Математичка библиотека рачунарског калкулатора променљиве прецизности Роберта Мориса користила је анализу инверзне грешке да би одредила прецизност која је потребна у сваком кораку да би се постигла прецизност резултата коју је одредио корисник. На НАТО конференцији о софтверском инжењерству 1968. године, у свом извештају о софтверским компонентама, предложио сам референтне процедуре које би могле да произведу било коју жељену тачност, али нисам знао како да их применим у пракси. дц је и даље једини програм за који знам да може ово да уради.

штампар

Типска грешка распоређује речи у тексту према њиховој сличности са остатком текста. Правописне грешке попут 'хте' обично се налазе на крају листе. Роберт Морис је поносно рекао да ће програм функционисати подједнако добро за било који језик. Иако вам грешка у куцању не помаже да пронађете фонетске грешке, била је права благодат за све слагаче и учинила је много доброг пре него што се појавила много мање занимљива, али прецизнија речничка провера правописа.

Грешка у куцању је подједнако неочекивана изнутра као и споља. Алгоритам мерења сличности заснива се на учесталости појављивања триграма, који се броје у низу 26×26×26. Мала меморија једва је имала довољно простора за бројаче од једног бајта, па је имплементирана шема за компримовање великих бројева у мале бројаче. Да би се избегло преливање, бројачи су ажурирани на бази вероватноће, одржавајући процену логаритма вредности бројача.

екн

Са појавом фототипизације, постало је могуће, али ужасно заморно, штампати класичну математичку нотацију. Лоринда Чери је одлучила да развије језик описа вишег нивоа, а убрзо јој се придружио Брајан Керниган. Њихов бриљантан потез био је да усмену традицију пренесу у писање, тако да је екн био изузетно лак за учење. Први претпроцесор језика математичких израза те врсте, екн од тада није много побољшан.

струцт

Бренда Бејкер је почела да развија свој Фортан-то-Ратфор конвертор против савета свог шефа, мене. Мислио сам да би то могло довести до посебног преуређивања оригиналног текста. Биће без бројева исказа, али иначе неће бити читљивији од добро структурираног Фортран кода. Бренда је доказала да нисам у праву. Открила је да сваки Фортран програм има канонски структуриран облик. Програмери су преферирали канонску форму, а не оно што су сами првобитно написали.

паскал

Дијагностика синтаксе у компајлеру коју је креирала група Сју Грем на Берклију била је најкориснија коју сам икада видео — и то је урађено аутоматски. У случају синтаксичке грешке, компајлер од вас тражи да убаците токен да бисте наставили рашчлањивање. Без покушаја да се објасни шта није у реду. Са овим компајлером научио сам Пасцал за једно вече без икаквог приручника при руци.

делови

Скривен унутар ВВБ (Вритер'с Воркбенцх) модула parts Лоринда Цхерри одређује делове говора за речи у енглеском тексту на основу само малог речника, правописних и граматичких правила. На основу ове напомене, програм ВВБ приказује стилометријске индикаторе текста, као што су заступљеност придева, подређених реченица и сложених реченица. Када је Лоринда интервјуисана на НБЦ Тодаи и говорила о иновативној провери граматике у ВВБ текстовима, то је било прво помињање Уника на телевизији.

егреп

Ал Ахо је очекивао да ће његов детерминистички регуларни израз престићи Кенов класични недетерминистички разрешивач. Нажалост, овај други је већ завршавао пролаз кроз сложене регуларне изразе, док egrep изградио сопствену детерминистичку аутоматизацију. Да би ипак победио у овој трци, Ал Ахо је заобишао проклетство експоненцијалног раста табеле стања аутомата тако што је измислио начин да у ходу изгради само оне уносе у табели који се заиста посећују током препознавања.

ракови

Шармантни мета-програм Луке Карделија за Блит прозорски систем пустио је виртуелне ракове који су лутали празним простором на екрану, све више и више одгризајући ивице активних прозора.

Нека општа размишљања

Иако то није видљиво споља, теорија и алгоритми су одиграли одлучујућу улогу у креирању већине ових програма: типо, дц, струцт, пасцал, егреп. У ствари, необична примена теорије је оно што највише изненађује.

Скоро половину листе — пасцал, струцт, партс, екн — првобитно су написале жене, што је далеко више од демографског броја жена у рачунарским наукама.

Доуглас МцИлрои
Март, КСНУМКС


Извор: ввв.хабр.цом

Додај коментар