In "Rust and Other Interesting Things", Bryan Cantrill talks about the importance of a programming language's values.
Values, he says, are the things a language prioritizes--the things it chooses when difficult tradeoffs have to be made. For example: everyone agrees that both "safety" and "performance" are valuable, but when forced to choose, some languages (Java, Python) are willing to trade away some performance for additional safety, whereas others (C, C++) would rather give up safety to gain performance.
When we're choosing a programming language, Cantrill tells us, choosing one with the right values is just as important as choosing one with the right features and ecosystem--because values are what determine how those features and ecosystem will develop over time.
One slide in his presentation contains a list of things that a programming language might value:
Approachability Integrity Robustness
Availability Maintainability Safety
Compatibility Measurability Security
Composability Operability Simplicity
Debuggability Performance Stability
Expressiveness Portability Thoroughness
Extensibility Resiliency Transparency
Interoperability Rigor Velocity
I thought it might be fun to ask the D community: which of the above values do you think are the most important to D? Choose no more than 5, and reply with your answer!
I've put my answer below, encoded using ROT13. Try to come up with your own answer before you read mine, to avoid biasing yourself.
V guvax Q'f svir zbfg vzcbegnag inyhrf ner
-
Nccebnpunovyvgl - obgu Q'f flagnk naq ynathntr srngherf ner qrfvtarq gb or snzvyvne gb hfref bs bgure cbchyne ynathntrf (r.t., P, Wnin, Clguba, Wninfpevcg). gbhe.qynat.bet zragvbaf n "tenqhny yrneavat pheir" nf na rkcyvpvg qrfvta tbny.
-
Rkcerffvirarff - jvgu srngherf yvxr grzcyngrf, zvkvaf, naq bcrengbe bireybnqvat (vapyhqvat bcQvfcngpu), Q vf bar bs gur zbfg rkcerffvir ynathntrf guvf fvqr bs Yvfc.
-
Fnsrgl - abg whfg @fnsr, ohg nyfb qrsnhyg vavgvnyvmngvba bs inevnoyrf, obhaqf-purpxvat sbe neenlf, rkprcgvbaf sbe reebe unaqyvat, naq ybgf bs bgure yvggyr qrpvfvbaf.
-
Cresbeznapr - angvir pbzcvyngvba, bs pbhefr, cyhf ybj-yriry srngherf yvxr enj cbvagref, vayvar nfz, naq ohvyg-va FVZQ bcrengvbaf.
-
Vagrebcrenovyvgl - abg bayl qbrf Q unir orfg-va-pynff P vagrebc, naq gur qvfgvapgvba bs orvat bar bs gur bayl ynathntrf gb rira nggrzcg P++ vagrebc, vg nyfb unf fhccbeg sbe Bowrpgvir-P pynffrf naq PBZ vagresnprf.