Einmal schreiben, überall kompilieren - Write once, compile anywhere

Einmal schreiben, überall kompilieren ( WOCA ) ist eine Philosophie, die von einem Compiler und den zugehörigen Softwarebibliotheken oder von einer Softwarebibliothek / einem Software-Framework übernommen wurde und sich auf die Fähigkeit bezieht, ein Computerprogramm zu schreiben , das auf allen Plattformen kompiliert werden kann, ohne dass Änderungen erforderlich sind seinen Quellcode . Im Gegensatz zu Suns Slogan " Einmal schreiben, überall ausführen" wird die plattformübergreifende Kompatibilität nur auf der Ebene des Quellcodes und nicht auch auf der Ebene des kompilierten Binärcodes implementiert .

Es gibt viele Sprachen, die der WOCA-Philosophie folgen, wie C ++ , Pascal (siehe Free Pascal ), Ada oder C , sofern sie keine Funktionen verwenden, die über die in der Standardbibliothek bereitgestellten Funktionen hinausgehen . Sprachen wie Go gehen noch weiter, da keine systemspezifischen Dinge verwendet werden, sondern nur funktionieren sollten und für systemspezifische Elemente ein System plattformspezifischer Dateien verwendet wird. Ein Computerprogramm kann auch plattformübergreifende Bibliotheken verwenden, die eine Abstraktionsschicht bereitstellen, die die Unterschiede zwischen verschiedenen Plattformen für Dinge wie Sockets und GUI verbirgt und die Portabilität des geschriebenen Quellcodes sicherstellt. Dies wird beispielsweise von Qt (C ++) oder der Lazarus (Pascal) -IDE über ihre LCL und die entsprechenden Widgetsets unterstützt .

Siehe auch