Mogens Hansen

Rss
Personligt feed med nye kommentarer i tråde, du overvåger:
https://www.version2.dk/mit/0/kommentarer?token=HPnHcLYhJ8jCXC_UoTnfzqY2R9xpwMBmKONAZAek0jk

Kommentarer

Kommentar til Swift: Apples nye programmeringssprog

Re: Reference counting

Det er i principet ligegyldigt. Nej Det er stadig dig der skal huske at lave scopes, så at ressourcerne frigives effektivt. Netop - det er manuel resurse styring. Det er ikke anderledes end for garbage collected sprog, hvor en reference enten skal gå ophøre med at eksistere elle...
Kommentar til Swift: Apples nye programmeringssprog

Re: Reference counting

Og hvis man gav helt frie tøjler udfra en kravspec, ville det også kunne vise andre egenskaber ved sprog/platforme. Jeg ville dog foreslå at man som minimum indførte et "kun brug af core sprog/library funktionaliteter" krav. I den omtalte undersøgelse krav specifikation stod der...
Kommentar til Swift: Apples nye programmeringssprog

Re: Reference counting

Dit C++ program holder referencerne længere end højest nødvendigt. Det gælder både hukommelse og io handles. Kan du være mere specifik ? Jeg kan ikke se at det skulle være tilfældet Filen med ordene åbnes i starten af funktionen "read_dictionary" og lukkes ved udgangen,...
Kommentar til Swift: Apples nye programmeringssprog

Re: Reference counting

Nej, jeg tror ikke, at der er lavet nogen statistik over antallet af memorymanagementfejl, programmører laver. Ok - så er det afklaret. Jeg har set tal om, at ca. 10% af alle fejl i Windowsprogrammer skyldes heap corruption, som typisk betyder, at man følger pointere til deallokeret da...
Kommentar til Swift: Apples nye programmeringssprog

Re: Reference counting

Nu var spørgsmålet manuelle versus automatiske metoder til lagerhåndtering, så jeg vil mene, at brug af Valgrind eller lignende automatiske værktøjer vil være snyd, hvis man som forsøgsperson repræsenterer de manuelle metoder. Den præmis forstår jeg ikke, medmindre formålet med forsøget e...
Kommentar til Swift: Apples nye programmeringssprog

Re: Reference counting

99.9% af alle programmører er dårligere til lagerhåndtering end selv en simpel automatisk metode, og risikoen for at lave fejl ved manuel lagerhåndtering eksploderer, når en anden programmør end den oprindelige skal rette i et program. Det lyder som en helt urimeligt påstand. Har du noget...
Kommentar til Swift: Apples nye programmeringssprog

Re: Reference counting

Det kræver at man forøger referencetælleren hver gang man overgiver/opgiver en reference til objektet. Det kan være ganske ineffektivt, hvis det medfører cache misses. Ja - men det er værd at bemærke at det netop er når man overgiver/opgiver en reference. Det er f.eks. ikke nødvendigt blo...
Kommentar til Swift: Apples nye programmeringssprog

Reference counting

... og her har Apple truffet det lidt usædvanlige valg at bruge reference counting, som dels ikke er specielt effektiv ... Såvel Microsoft (med WinRT - oktober 2012) som Apple (Garbage colection deprecated i OS X 10.8 - juli 2012) er skiftet til reference counting. Det er mit indtryk at perfo...
Kommentar til Programmøren bag historisk sikkerhedshul taler ud om nytårsbrøler

Re: Øhhhh.... problem for Open Source?

Jeg synes på den anden side at det er naivt at tro at sproget og øvrige værktøjer ingen betydning har for din evne til at skrive sikkert software. Det har jeg bestemt heller ikke hævdet. Du nævner JVM'en, som jo er skrevet i C og fyldt med den slags. Det er veldokumenteret...
Kommentar til Programmøren bag historisk sikkerhedshul taler ud om nytårsbrøler

Re: Øhhhh.... problem for Open Source?

Rigtigt, man kan allokere en buffer og på uklog vis genbruge den uden at cleare den. Men det er i praksis bare ikke en klasse fejl du ser i f.eks. java programmer. Og selv hvis du har fejlen, så er det rigtigt usandsynligt at man pludselig finder den private nøgle til serverens certifikat i en ...
Kommentar til Programmøren bag historisk sikkerhedshul taler ud om nytårsbrøler

Re: Øhhhh.... problem for Open Source?

1) C++ C++ har et standardbibliotek hvor alt hukommelsestilgang bliver boundary checket og som derfor ville have stoppet heartbleed-buggen. Det er ikke korrekt. Faktisk er det mere undtagelsen end reglen. C++ har i høj grad samme filosofi som C med "trust the programmer" og fokus...
Kommentar til Programmøren bag historisk sikkerhedshul taler ud om nytårsbrøler

uallokeret/uinitialiseret hukommelse ?

Hvis de mener at en vis malloc() implementation er for dyr i drift, så skulle de stadig afvikle tests på deres kode med denne dyre malloc(), hvorefter alle mulige advarselslamper ville fortælle dem at de læste uallokeret/uinitialiseret hukommelse. Jeg kan ikke af det kode, som er checket ...
Kommentar til Dansk softwarefirma går efter sjældent super-certifikat

...matematisk bevis for software ikke kan crashe...

Hvis jeg forstod artiklen rigtigt, er der i bund og grund blevet ført matematisk bevis for at Windows 7 og OS X 10.6 ikke kan crashe... Det er alligevel noget - men stemmer det med erfaringen i praksis ?
Kommentar til Kald af C/C++ kode fra Python

Re: Sammenligninger

Til gengæld er det en gang grundig vrøvl at C-programmer kan JIT optimeres. JIT kan kun gøres i en VM. (Som PyPy, Java og CLR) Hvad i C (eller C++) gør at det ikke kan JIT compileres ? Det står ikke i sprog specifikationerne at programmerne skal oversættes til platform specifik assembler...
Kommentar til Kald af C/C++ kode fra Python

Re: Boost.Python

Boost.Python kan netop bruges til at stille egne funktioner og klasser skrevet i enten C++ eller Python til rådighed for det andet sprog. Boost.Python er ikke en publicering af Boost klasser til Python.
Kommentar til Debugging af software - en fin kunstart, men hvor lærer man det?

Debugging af software

Arbejdet med at debugge starter mens softwaren designes og udvikles. Hav et klart design, tænk i invarians, pre- og post-condition. I C og C++ kan det ofte udtrykkes ved assert. Brug en kodestil der er effektiv og samtidig undgår fejl som er nemme at lave. Det vil i C++ sige undgå normalt brug af...