mboost-dp1

Linux kernel "kætteri"


Gå til bund
Gravatar #1 - arne_v
10. jan. 2024 14:01
Det er blevet foreslået at starte et skift fra C til C++ (20).

Nogen kan lide funktionaliteten i C++ (20). Og det er mere C kompatibelt end Rust.

https://www.phoronix.com/news/CPP-Linux-Kernel-202...

Gravatar #2 - larsp
13. jan. 2024 08:13
Both C and C++ has had a lot of development since 1999, and C++ has in fact, in my personal opinion, finally "grown up" to be a better C for the kind of embedded programming that an OS kernel epitomizes

C++ er endelig vokset op, angiveligt. Der henvises til C++20 concepts: https://www.educative.io/blog/learn-concept-cpp-20 som handler om at lave krav til templates på en mere fornuftig måde.

Tja. Ligesom der findes MISRA-C som er et paranoidt subset af C, tænker jeg at man kunne definere et "sane-CPP" subset af C++ der kun tillader de moderne måder at gøre tingene på. Jeg er sikker på at det findes allerede.
Gravatar #3 - arne_v
13. jan. 2024 13:38
#2

Kan du lide Misra C så var Misra C++ vel oplagt.

https://misra.org.uk/misra-cpp2023-released-includ...
Gravatar #4 - larsp
14. jan. 2024 08:38
#3 Jeg var bestemt ikke fan af MISRA C, da jeg var udsat for det i et projekt. Det virkede helt overdrevet restriktivt. Nu er Misra C++ umiddelbart en købestandard så jeg ved ikke hvad den specificerer, men mon ikke det igen er ekstremt restriktivt.

Jeg tænkte mere på fænomenet at man kan gøre de samme ting på 117 forskellige måder i C++, hvor de oprindelige teknikker er forældede og bug-prone, mens nyere teknikker er mere fornuftige takket være adskillige revisioner af sproget.

Hvis man ville starte et nyt projekt i C++, kunne man ikke sætte et linting system op til at tvinge koden til at bruge nyere best practices?
Gravatar #5 - arne_v
18. jan. 2024 16:45
#4

Der er mange forskellige standarder for den slags.

En anden er AUTOSAR - en standard for C++ brugt i biler.

Jeg nævner den fordi der lige er frigivet et værktøj til at checke for compliance som open source.

https://github.com/syrmia/autocheck
Gå til top

Opret dig som bruger i dag

Det er gratis, og du binder dig ikke til noget.

Når du er oprettet som bruger, får du adgang til en lang række af sidens andre muligheder, såsom at udforme siden efter eget ønske og deltage i diskussionerne.

Opret Bruger Login