konecne poriadny piatkovy flame na temu "to C or nottoC"Was:Vyctovy typ v C

Ales Prochaska prochaska@alsoft.cz
Pátek Srpen 31 17:07:55 CEST 2007


Rozdil je v tom, ze ceckovej linker ty objekty splaca dohromady a pak
resi co je cim volano, pascalskej linker si je postupne vybira z
modulu, protoze je presne znamo kde se musi nachazet a jakeho jsou
typu. Tim padem i odstraneni dead code u Pascalu neni prace linkeru ale
kompilatoru (pokud se v programu procedura nevola, proste chybi
pozadavek na prilinkovani a linker ji tudiz ani nemuze prilinkovat).

Ales Prochaska

> At 16:44 31.8.2007, Ales Prochaska wrote:
>>Ono nejde jen o ten preklad headeru ale tez o jimi indukovany problem
>>linkovani modulu. Ceckovsky linker je velka veda, slozity jak orloj a
>>bezi casto dyl nez cely prekladac. V jazycich jako Pascal (=Borland
>>Pascal) nebo Ada kde je dodrzena pomerne jednoducha a v praxi
>>neomezujici podminka, ze objekt musi byt definovan drive nez je pouzit
>>vlastne linker neni vubec potreba, protoze se kod jen jednoznacne (!)
>>posklada ze stromu objektu vygenerovanych prekladacem (nebo nactenych
>>z prekompilovanych modulu). Linker tak jen prepocita relokace a u
>>projektu s milionem radku trva linkovani jen par vterin.

> A co dela probuh 'normalni' linker na objekty (schvalne nepisu C-ckovej,
> protoze nezavisi na jazyce)?

> Nekdy si pripadam, ze je vsechno uplne jinak, ze uz X let pouzivam (a 
> funguje mi to) ;-)))

> Proste se bere jeden objekt za druhym a lepej se k sobe, pripadne se 
> vytahnou z knihoven a udelaj se relokace. Lepsi kombinace 
> kompilatoru+linkeru umej i nejaky optimizace a vyhazovani dead code.


> Jindroush (kubecj@avast.com)
> http://www.kostky.org - Pro fany stavebnic LEGO.

> _______________________________________________
> HW-list mailing list  -  sponsored by www.HW.cz
> Hw-list@list.hw.cz
> http://list.hw.cz/mailman/listinfo/hw-list





Další informace o konferenci Hw-list