Projekt Darling, ki razvija sloj podoben Wine za zagon macOS aplikacij v Linuxu, je potrdil možnost uporabe AI orodij pri razvoju. V sestavu Darling je zdaj uradno dovoljeno sprejemati kodo, ustvarjeno s pomočjo AI, pod določenimi pogoji. Odločitev je bila sprejeta v razmerah pomanjkanja razvijalcev in virov pri projektu, kot tudi v luči nenehnega povečanja števila lastniških okvirjev Apple (če je bilo v macOS 10.14 273 javnih in 878 zasebnih okvirjev, je bilo v macOS 27 464 in 2754 ustrezno).
Nove smernice naj bi preprečile stagnacijo razvoja in fragmentacijo skupnosti ter omogočile združevanje prizadevanj z razvijalci forkov, ki aktivno uporabljajo AI. Takšni forkovi so napredovali in kažejo visoko hitrost razvoja; na primer, fork darling-lol je dosegel zagon macOS zbirke igre League of Legends, medtem ko je VibeDarling uspešen pri podpori arhitekture ARM64 in izvajanju mnogih izvirnih macOS aplikacij.
V naslednjih dveh mesecih nameravajo v glavno sestavo Darling integrirati dosežke iz zunanjih forkov, pri čemer bodo za združevanje sprememb uporabljali AI orodja. Prav tako je načrtovana uradna podpora za arhitekture i386, x86-64 in ARM64 (aarch64) ter delo na omogočanju zagona ARM64 zbirk aplikacij na sistemih x86-64, pri čemer bodo uporabili recompiler Dynarmic. Na dolgi rok je cilj stabilizacija sloja združljivosti z AppKit in ustvarjanje lastnih grafičnih pripomočkov za upravljanje okolja Darling (na primer, pregledovalnika dnevnikov v slogu Console.app), ki bodo prav tako delovali kot referenčne testne aplikacije.
Kar zadeva sprejem pull zahtevkov s kodo, pripravljeno s pomočjo AI, bodo ti sprejeti le, če se razvijalec, ki je posredoval spremembo, zaveže odgovornosti za vsako vrstico kode, je sposoben razložiti spremembe s svojimi besedami in ne uporablja AI pri komunikaciji s vzdrževalci. Prav tako se uvajajo stroga pravila 'čiste sobe', ki dovoljujejo ponovno implementacijo funkcionalnosti samo na podlagi dokumentacije API, glavnih datotek, standardov, RFC, javnih virov in analize obnašanja, brez uporabe lastniške kode Apple, uhajanja informacij in razstavljanja za neposredno ponovna ustvarjanje kode.
Projekt Darling se razvija od 2012. godine i usmjeren je na omogućavanje pokretanja Linux aplikacija koje su izgrađene za macOS, bez korištenja virtualizacije. Uključuje učitavač izvršnih datoteka u Mach-O formatu i jezgru darlingserver koja radi u korisničkom prostoru, implementirajući Mach IPC, POSIX sučelja i sistemske pozive Darwin-a na Linuxu. Razvijaju se alternativne implementacije različitih Appleovih okvira, poput Foundation, AppKit, CoreAudio i CoreFoundation. Niskorazinski komponents su bazirani na odgovarajućim otvorenim komponentama koje je objavila Apple. Visokorazinski komponents su implementirani pomoću postojećih analoga i dostupnih biblioteka. Podrška za grafički API Metal osigurana je kroz prevođenje u API Vulkan.
Izvor: opennet.ru
