ինչպէս է մայքրոսոֆթը խաղից հանել ոչ իր կոմպիլյատորները՝

մենք շատ նպատակաուղղուած էինք որպէսզի մեր Delphi եւ C++ կոմպիլյատորներով ստանանք WinRT֊ի համար կոդ։ Այս պահին խնդիրն այն է, որ այն ՕՀ API֊ները, որ անհրաժեշտ են քո լեզուի RTL֊ն իրականացնելու համար թոյլատրուած չեն։ Գիտէք, ասենք RtlUnwind֊ը բացառութիւնների մշակման կամ VirtualAlloc֊ն յիշողութեան կառաւարման համար… Այդ եւ նման ֆունկցիաներին դիմելը աւտոմատ որակազրկում է ձեր ծրագիրը․ այն չի կարող լինել «պաշտօնական» WinRT ծրագիր եւ տեղակայւել մայքրոսոֆթի խանութից։

աղբիւր (անգլերէն)

երբ նման բաներ եմ կարդում, զգում եմ, ինչքան չեմ ուզում գործ ունենալ այդ փակ էկոհամակարգերի հետ, ու ինչ հաւէս է ծրագիր գրել ազատ միջավայրերում՝ ազատ հարթակների համար։

#ծրագրաւորում #մայքրոսոֆթ #կոմպիլյատորներ #ծրագրաւորման_լեզուներ #մրցակցութիւն

բնօրինակ սփիւռքում(եւ մեկնաբանութիւննե՞ր)

ասք կլորացնելու մասին

փաստորեն, ինտել x87 նատիվ անում է հաշվապահական (Round half to even), ու բնավ ոչ մաթեմատիկական կլորացում։

Դա նաեւ ցույց է տալիս ում համար են առաջին հերթին պրոցեսորները արտադրվում՝ բիզնեսի, ոչ թե գիտնականների։

Ալսը, տարիներ առաջ ես գրել եմ MOD (կամ %) գործողության մասին։

այնպես որ զգոն եղեք կլորացնելիս։

ու տենց

ասք երազանքներ կատարող մեքենաների մասին

այս փոսթի մոծիվներով։

Քոմփայլերը, ընկերներ, դա մտքերի եւ ցանկությունների իրականացման գործիք է։

Սովորաբար միտքը, որը տալիս են քոմփայլերին, որոշակի ստանդարտ ձեւով արտահայտված է՝ գրավոր, այս կամ այն լեզվով։

Այդ լեզուները երբեմն անվանում են համակարգչային լեզուներ, որը սխալ է։ Որովհետեւ համակարգիչները այդ լեզուներով չեն մտածում։

Երբեմն անվանում են ծրագրավորման լեզուներ, որը այդքան էլ արտահայտիչ չէ։

Իրականում դրանք միտք արտահայտելու լեզուներ են։

Այսպիսով, քոմփայլերը վերցնում է գրավոր արտահայտված միտքը, եւ այն հասկանալով ստեղծում է, քոմփիլիացիա է անում ելաքյին արտադրանք՝ օրինակ կիրառելի ծրագիր։

ՏՏ ոլորտի մասնագետների գործը դեռ հեշտ է։

Որովհետեւ սխալները միշտ կարելի է ուղղել եւ ռեքոմփայլ անել միտքը։ Դա բերում է անպատասխան կոդագործների առաջացմանը, ովքեր գրելիս չեն մտածում, իսկ հետո, երբ սխալները հայտնաբերվում են, փորձում են ուղղումներ ավելացնել։ Դրանք, ինչ խոսք, լավ ծրագրամիստներ չեն բնավ։

Պատկերացնու՞մ եք եթե ճարտարապետները նախագիծ պատրաստելիս չմտածեին, իսկ հետո տարբեր ձեւի հենարաններ ավելացնեին, որ կառույցը չփլվի։ Ոչ, ճարտարապետները ստիպված են ուշադիր լինել մտքերը մտածելիս եւ արտահայտելիս, որովհետեւ քոմփայլ անելու պրոցեսը շատ ավելի բարդ է իրենց դեպքում։

Օրինակ, ՕփենՕֆիսը իմ կոմպի վրա կոմպիլիացիա է լինում վեցը ժամում։ Շենք կառուցում են անհամեմատ ավելի երկար։

Իսկ հոմո սափիենս տեսակի կենդանիները գենետիկ կոդից քոմփայլ են լինում գրեթե մեկ տարի։ Ի դեպ, հոմո սափիենս նշանակում է «բանական մարդ»։ Ի նկատի ունենալով որ օրինակ շիմպանզեները այդքան էլ բանական մարդ չեն, սակայն մարդ են։

Կան նաեւ ֆունկցիոնալ լեզուներ, որոնք մի կողմից մաթեմին շատ մոտ են, սակայն մյուս կողմից դրանք օգտագործելիս անհնար կամ շատ դժվար է լինում նախագծի սխալները գտնել դեռ գրելու ընթացքում։ Այդ լեզուների երկրպագուները սովոր են արդեն իսկ կառուցված շենքեր փոփոխել։

Ես այդ ոճին սովոր չեմ, սակայն։ Ինձ թվում է որ մաթեմից ավելի հեռու, իմպերատիվ լեզուները իմ իմացած մակրո աշխարհի մոդելները նկարագրելու համար ավելի պիտանի են։

Այնպես որ, ինչպես ուսուցանում է հին չինական իմաստությունը՝ զգոն եղեք մտքերը ձեւավորելիս, նրանք կարող են քոմփայլ լինել իրագործվել։

ու տենց

ասք Հանսենի գրքի մասին

Շատ բարդ էր այս գիրքը գտնել։

Ու վերջապես գտա, օգտագործածը։

Իրան խորհուրդ էր տվել Creenshaw-ն իրա քոմփայլերների գրքում։

POINTER TO սինտաքսը հայտնվեց Մոդուլայում։

Նախկին գրքի տերը հաստատ փորձում էր թարգմանել ծրագրի տեքստը Պասկալից Մոդուլա, կամ Օբերոն։

Մոդուլայում և Օբերոնում արդեն չկա function բառը, կան միայն PROCEDURE ներ։ ։Ճ

ու տենց

ասք Ադայի մասին

Նոր Ադայի քմփայլեր ա դուրս եկել։

Սա էլ Ադա-ով գրված վեհ ԾԱ-ի ցանկը։ Նենց բարձր ցանկ ա, բառացիորեն բարձր աշխատող սարքերի համար։

Սակայն, ես մի քիչ շփվել եմ էյր դեֆենս բաներ ադա-ով գրող տղեքի հետ։ Ասում են նույնիսկ Ադա95 չեն օգտագործում, ոչ մի օբյեկտներ։ Դե լավ դրանք ռադիկալ էին ու ինձ պարզ ա ինչի, բայց իրականում, վստահ չեի որ Ադա2005-ն ա առանձնապես անհրաժեշտ, ուր մնաց Ադա2012: Լավ, Ադա2005-ը ֆուլ ջեներիկ սափորթ ուներ, լինում էր թիթիզանալ պիպիսկաները համեմատելուց։ Է՞լ ինչ են ավելացնելու։ Գնամ կարդամ այդ մասին։

ու տենց

ասք զուգահեռներ տանելու մասին

Այդպես է ստացվել, որ իմ աշխատանքները մի հիմնական ընդհանուր գիծ ունեն։

Օրինակ․

System programming-ը դա թերմ է որը նկարագրում է այն գործունեությունը, երբ ստեղծված ծրագրերը «նորմալ» մարդուն պետք չեն բնավ։ Եթե ես գրում եմ փաքաջ մենեջմենթի ծրագիր, կամ ինսթալեր, կամ քմփայլեր, կամ ասեմբլեր, կամ դեֆրագմենտեր – այդ գործիքները պետք չեն էնդ-յուզերին։ Դրանք պետք են նրա համար որ համակարգը աշխատի։ Ինսթալերի կամ փաքաջ մենեջմենթի շնորհիվ նա կունենա իր ուզած Տետրիսը կամ տեքստի խմբագրիչը։

Այդ իսկ պատճառով բարդ է լինում բացատրել ինչ եմ ես գրում։ Եթե ասեի խաղ կամ տեքստի խմբագրիչ – պարզ կլիներ։ Իմ դեպքում ես պարզապես չեմ խորանում սովորաբար, որովհետև արի ու բացատրի ինչ է փաքաջ մենեջմենթը կամ քմեայլերը։

IT բաժին – սովորաբար ընկերություններում վերջնական պրոդուկտը տալիս են այլ դեպարտամենտներ։ Նրանք տալիս են ասենք սոֆթ, կամ չիպերի նախագծեր։ Իմ գործը այնտեղ այն է ինչ քասթմերին պետք չէ բնավ, այլ անհրաժեշտ է նախագծման պրոցեսը ապահովելու համար։

Այսինքն սա այսպես ասած ինտերֆեյսային մասը չէ այլ իմպլեմենտացիայի։

Հետագայում, իհարկե նույն չիպը որպես մի քառակուսի նկարելով որևէ մի ինժեներ իրանով կսարքի ասենք հեռախոս։ Ու իրա համար չիպը հումք է։

Իսկ մարդու համար ինտերֆեյսը՝ խանութ է։ Որտեղ նա ձեռք կբերի այս հեռախոսը։

Ու նեսթեդ իմփլեմենթեյշնների մասին նա ոչ պետք է իմանա ոչ էլ գաղափար ունի։

ու տենց

ասք չգրագետ աշխատելու մասին

էս քոդվիժն սի քմփայլերը ինչ ախմախ բան դուրս եկավ։

նեսթդ քոմենթը ինչ էր որ չկարողացան անել։ էդ որպես մասնագետ եմ ասում, երեք տող բան էր ավելանալու որ կարողանա պարս անել։

ու տենց