Write once, compile anywhere (WOCA、「一度(プログラムを)書けば、どこでもコンパイルできる」) は、どのようなプラットフォームでもコンパイルでき、利用できるようなソフトウェアを書くことをいう。サン・マイクロシステムズによるJavaスローガンWrite once, run anywhere(「一度(プログラムを)書けば、どこでも実行できる」)>に対抗した表現であり、コンパイルされたバイナリコードレベルではなく、ソースコードレベルでプラットフォーム間の互換性を実装することである。WOCAの精神に則れば、AdaCのような多くの言語を用いてプラットフォーム間の互換性を実現することができる。互換性の実現にはソケットGUIといったライブラリをクロスプラットホームにしなければならないという問題がつきまとう。

LazarusはクロスプラットホームのFree Pascal Compilerをコンパイラに使い、Write once, compile anywareを掲げているクロスプラットホームGUIライブラリ+IDEプロジェクトである。いくつかのクロスプラットホームで、ウインドウベースのRAD-GUIを実現しつつある。