Martin Oderskys Antwort (True Scala complexity | Hacker News) auf die neue Scala Kritik (True Scala complexity | @yaaang's blog).
Im Endeffekt geht es doch darum, dass ein Programmierer nicht in seiner eigenen Utopia lebt, sondern es gewisse Grenzen/Gesetze geben muss, um ein pragmatisches Programmieren im Team zu ermöglichen.
Wozu Java (statt C/C++), wieso ist Python so beliebt, Coding Conventions, usw.? Eine Programmiersprache ist in erster Linie für den Menschen da, sonst könnten wir alle in Assembler programmieren. Komplexität die nicht pragmatisch ist (außer im akadem. Umfeld ist schädlich, siehe Beitrag zur Komplexität)
Das tolle ist, dass Odersky wirklich hintendran ist versucht die Scala pragmatisch zu machen (und auch auf die Community hört). Ihm geht es also wirklich darum Scala als Ersatz zu Java zu etablieren.
Die Frage ist, ob es genügt, gewisse Features, nur als bei Compiler-Flag zur Verfügung zu stellen, oder ob man sie nicht eventuell ganz abschaffen sollte.
Ich persönlich halte es für sehr sinnvoll, die Komplexität (die nicht mehr pragmatisch ist) zu entfernen. Die missbräuchliche Möglichkeit ist einfach zu hoch. Bspw. kann ein Team genau festlegen: Mit diesen Kompiler-Flags wird kompiliert und somit wird die Verantwortung auf den Entscheider übertragen. Die Programmierer müssen sich daran halten.
Was denkt ihr über das bewusste "Beschneiden" einer Sprache?
Im Endeffekt geht es doch darum, dass ein Programmierer nicht in seiner eigenen Utopia lebt, sondern es gewisse Grenzen/Gesetze geben muss, um ein pragmatisches Programmieren im Team zu ermöglichen.
Wozu Java (statt C/C++), wieso ist Python so beliebt, Coding Conventions, usw.? Eine Programmiersprache ist in erster Linie für den Menschen da, sonst könnten wir alle in Assembler programmieren. Komplexität die nicht pragmatisch ist (außer im akadem. Umfeld ist schädlich, siehe Beitrag zur Komplexität)
Das tolle ist, dass Odersky wirklich hintendran ist versucht die Scala pragmatisch zu machen (und auch auf die Community hört). Ihm geht es also wirklich darum Scala als Ersatz zu Java zu etablieren.
Die Frage ist, ob es genügt, gewisse Features, nur als bei Compiler-Flag zur Verfügung zu stellen, oder ob man sie nicht eventuell ganz abschaffen sollte.
Ich persönlich halte es für sehr sinnvoll, die Komplexität (die nicht mehr pragmatisch ist) zu entfernen. Die missbräuchliche Möglichkeit ist einfach zu hoch. Bspw. kann ein Team genau festlegen: Mit diesen Kompiler-Flags wird kompiliert und somit wird die Verantwortung auf den Entscheider übertragen. Die Programmierer müssen sich daran halten.
Was denkt ihr über das bewusste "Beschneiden" einer Sprache?