Martin'in işaret ettiği gibi , yamaların kategorik temsili üzerinde bazı çalışmalar var. Mimram ve Di Giusto'nun "Kategorik Yamalar Teorisi" tarafından kullanılan en kapsamlı kategorik yaklaşım UNIX diff
.
Onların anlamında, istediğiniz her şeye sahipsiniz. Nesneler, bir A alfabesi olarak görülen alfabesi üzerinde sonlu kelime dizileridir ; burada , elemanlı kümeyi belirtir . ve arasındaki ok , kısmi artan haritalamadır . Enjekte edilebilirlik ve artış, kopyaların asla birbirinin üzerinden geçmediğini göstermek için vardır . Tüm detayları kağıt üzerinde bulabilirsiniz .LA : [ n ] → L[ n ]nA : [ n ] → LB : [ m ] → Lf:[n]→[m]
Evet, birleştirme yukarıdaki kategorinin serbest tamamlanmasına itici olarak görülmektedir. Yapımımıza birleşme çatışmaları eklediğimizden emin olmak için tamamlanmaya ihtiyacımız var. Her zaman bir birleşme söz konusu değildir.
İkinci sorunuz üzerine, iki ana nedenden ötürü minimal düzenleme komut dosyası kategorik kavramı yoktur.
Düzenleme komut dosyaları tüm şekil ve formlarda gelir. Bazı yazarlar ekleme, silme ve kopyaları dikkate alırken, bazı yazarlar sübstitüsyonları da işlem olarak eklemeyi sever. İplerden ağaçlara kadar genelleme yaptığınızda, diğer işlemlerin bolluğu mümkün hale gelir.
Daha da önemlisi, minimum maliyetli düzenleme komut dosyaları benzersiz değildir. Dosyayı al dönüşümleri öyle içine bir yama, ve yazma . Bunu yapan minimal düzenleme komut dosyası nedir? İki tane! Bir kez daha, ağaçlara genelleme yaparken, "minimalite" kavramının kuşkulu olduğu daha da fazla durum bulunabilir.abba
Düzenleme komut dosyalarını ağaçlara genelleme konusunda çok çalışma yapıldı. Bu, iki ana çalışma organına bölünmüştür:
Türsüz Ağaçlar : Yalnızca s ifadelerini düşünün. İki ağaç arasındaki ağaç düzenleme mesafesi, adı geçen ağaçların ön siparişi geçişi arasındaki dize düzenleme mesafesidir. Bazı bibliyografyaları Demaine ve ark. veya Pawlik ve Augsten gibi.
Yazılan Ağaçlar : Soyut Sözdizimi Üzerindeki Yamalar Nesnenin iyi tipliğini koruyacağı garanti edilen ağaçlar, yani bir yama uygulamak her zaman geçerli bir AST verecektir. Yazılan şemsiyenin altında, dikkate alınabilecek daha az düzenleme işlemi vardır. Örneğin ikame mantıklı değil. Bununla birlikte, Lempsink ve ark. Tarafından ağaçların ön sipariş geçişi üzerinde bir fark vardır . daha sonra Vassena tarafından genişletildi . Şu anda, daha önce işaret ettiğim problemler için en son çalışmalarımız veya "yamalanmış" değerlerin yapısından faydalanmaya çalışan bazı önceki çalışmalar gibi düzenleme komut dosyalarından uzaklaşan yaklaşımlara odaklanıyorum .
Her iki durumda da, ağaç yapılı yamaların kategorik olarak dikkatli bir yorumunu görmedim.