Birkaç karaktere ulaşan kod-golf girişleri gördüğümde, kodu aşağı çekerken, yan yana bir fark için düzenleme geçmişine bakarım. Gör ve öğren :)
Bu zorluk en güzel animasyonlu farkları üreten bir program yapmaktır.
- Giriş, sipariş edilen herhangi bir metin sürümü serisi olacaktır.
- Program herhangi bir programlama dilinde yazılabilir.
- Programın bazı özel programlama dillerinde veri girişi yapmak için kendini sınırlamasına izin verilir.
- Program belirli girdi verilerine göre ayarlanmamalıdır; Program genel olmalı ve sıralı metin sürümleri dizisi için çalışmalıdır.
- Girdideki her sürüm için, sürümün tam metninin görüntülendiği çıktı animasyonunda karşılık gelen bir zaman olmalıdır. Sürüm aşamaları arasındaki farkı canlandırmalısınız ve tüm sürüm aşamaları çıktıda sırada bulunmalıdır. Bu ana karelerde, sürüm boyutu gösterilmeli ve izleyici bunun bu noktada gördükleri tam bir sürüm olduğunu anlamalıdır.
- Program, farklılıkları hesaplamak için herhangi bir üçüncü taraf kodunu kullanamaz.
- Sözdizimi vurgulama çıkışı isteğe bağlıdır. Programın sözdizimi renklendirirse, bunu yapmak için herhangi bir üçüncü taraf kodunu kullanmayabilir.
- Çıktı, animasyonlu bir GIF olacaktır.
- Program GIF'yi yazmak için üçüncü taraf bir kütüphane kullanabilir.
- Bu bir popülerlik yarışmasıdır , bu yüzden bu sitedeki popülerlik yarışması tanımına göre en çok oy alan giriş kazanır .
İşte basit bir örnek senaryo Python'un kullanır ndiff ve Pillow en ilkel animasyonlu GIF desteği ve her eklenti ve kaldır adımını animasyon uygulanmaktadır:
Şahsen ben bu oldukça zayıf bir iş olduğunu düşünüyorum. Sözdizimi vurgusu yapmaz, yeniden düzenlenmiş kod parçalarını denemez ve taşımaz, birisinin canlı düzenleme yaptığı gibi hissetmez, vb. Aynı zamanda, girdilerin bayt cinsinden anahtar karelerde gösterilmesiyle ilgili kuralları da ihlal eder ve farklılığı yapmak için üçüncü taraf bir kitaplık kullanır. İyileştirilmesi için oda bir sürü!
Ve umarım popüler girişler, codegolf.stackexchange.com topluluğu için de eğlenceli araçlar haline gelir. Bu nedenle, programların başkalarının çalıştırması ve kullanması kolay olduğu takdirde takdir edilir.