• ing. kat, katman

    örneğin selpak 2 plydır.
  • poligon yüzeylerle oluşturulmuş grafik bir nesneye ait bilgilerin kolayca aktarılmak üzere tutulduğu dosya formatı. ismi polygon file format'tan gelir ve bu alanda oluşturulmuş dosya formatlarına bir standart getirme amacı da taşır. ilk versiyonları stanford üniversitesi ve unc chapel hill'de oluşturulmuştur (bkz: stanford bunny). taranmış üç boyutlu bir nesnenin bilgileri bu formatta bir dosya ile aktarılabileceği gibi, bilgisayarda oluşturulmuş bir grafik nesne de bir ply dosyası ile tanımlanabilir.

    ply dosyaları bir başlık (header), poligonları oluşturan noktaların üç boyutlu uzaydaki koordinatları ile bu poligonların hangi noktalardan oluştuğu bilgisini içerir. başlıkta, nesnenin kaç poligondan oluştuğu, rengi, ışık geçirgenliği, yüzey normalleri gibi bilgiler, hatta bazen nesneye ait ışık bilgileri de bulunur. her ply dosyası yalnızca bir nesneye ait bilgileri içerir.
  • satranc programlarinda kullanilan bir terim. bir "hamle"nin (move) yarisi demektir, ornegin beyazin piyonunu bir kare ileri goturmesi.
    bu terminolojide " hamle" bir beyaz ve bir siyah hamlesinden olusur.
    programin kac ply derinlikte hesap yaptigi, bir olcevdir. ornegin "6-ply depth" dendiginde bu, bilgisayar oyunda 3-hamle ilerisini hesapliyor demek oluyor.
  • multiply'in da koku sayilir (coklu katman).
    (bkz: #21813262)
  • açılımı python lex-yacc olan bir lexer/parser kütüphanesi. 2001 yılında david beazley tarafından geliştirilmeye başlanmış .*. 2018 yılından beri de herhangi bir güncelleme almıyor. ply nin biraz daha modernleşmiş versiyonu da, python 3.5 ve üstünü destekleyen sly lex-yacc.

    bu kütüphane ile yolumun kesişimi, semantik kod analizi ile alakalı python da lexer/parser kütüphaneleri araştırırken oldu. özellikle git ya da github gibi version kontrol sistemlerinde her bir dosya revizyonunda değiştirilen kodları anlamlandırmaya ve onların analizi yapmaya yönelik projemden dolayı bu kütüphaneyi de denemek istedim.

    temelde lex ve yacc dosyaları işinizi görse de bu kütüphane özelinde benim en çok zorlandığım konu, çok fazla örnek proje bulamayışım oldu. doküman olarak şöyle bir şey var, ama benim aldığım bazı hatalar için yeterli olmadı. o yüzden bazı hataları kendim deneye yanıla çözmek zorunda kaldım.

    bunun haricinde özellikle yacc dosyasında dili parse etmek için regular expression'ları docstring kullanmak bana biraz tuhaf geldi. sanırım sly de bu regex'leri python decorator olarak yazıyoruz ki böylesi daha okunaklı.

    lexer dosyasında her bir token 'lextoken' class ı ile encapsulate edilmiş. lextoken içinde type, value, lineno ve lexpos olarak 4 farklı değer tutuluyor ve parser da da bu değerleri kullanarak parser kurallarını tanımlıyorsunuz. bu kurallar da tabi ki context-free grammer formattında yazılıyor.

    eğer parser ı düzgün yazabilirseniz ply aslında güzel bir parse tree oluşturuyor. bu noktadan sonra da abstract syntax tree çıkarması çok da zor değil.

    özetle benim gibi compiler design ve code analysis/optimization işlerini anlamak istiyorsanız deneyebileceğiniz, ama şahsen daha güncel ve örneği bol olan kütüphaneleri önerdiğim lex/yacc kütüphanesi.
hesabın var mı? giriş yap