1186
Vývoj / Re:Typový system versus unittesty
« kdy: 19. 08. 2018, 21:17:05 »kde byste vzal dobu trvání fragmentu kódu?Já tam vidím "ms", takže na frekvenci CPU nezáleží.překladač nezná frekvenci hodin cílového CPU, ta se navíc může za běhu měnit, to nemusí až tak moc vadit, pokud bychom se zabývali jenom nejhorším možným případemPřípadně by se mohl ten požadavek změnit a formalizovat na „trvání funkce musí být v rozmezí x až y ms“. Což se třeba dá zapsat formálně, ale překladač to nemůže zkontrolovat, protože netuší, na jaké cílové platformě ten kód poběží.
Jak nemůže? Proč by nemohl? Ať je platforma jakákoliv, tak čas bude všude stejný ne? Této argumentaci nerozumím.
Ostatně, to, že rychlost funkce závisela na rychlosti procesoru je pradávná historie. Dneska když se píše hra, tak se určitě nebude opírat o frekvenci CPU, ale o hodiny.
Jen si to představ. Vezmeš nějakou hru a dáš ji přeložit pod 486kou, a ono ti to odmítne, protože nejde zaručit potřebnou rychlost. Horní mez je sranda, to stačí jen oříznout.
Tak samozřejmě se můžeme bavit o tom, jak to zjistit, jak moc to jde zaručit, ale je třeba myslet na kontext tohoto vlákna. Porovnáváme to s testy. Pokud to nezvládneš ani testy, tak není nutné řešit jak to udělat typy.