Graph reduction system based on combinator
- Global styles
- Apa
- Bibtex
- Chicago Fullnote
- Help
Abstract
ÖZ KOMBİNATORE DAYALI GRAFİK AZALTMA SİSTEMLERİ NECLA VARDAL Bilgisayar Mühendisliği Anabilim Dalı Yüksek Lisans Tezi Ocak, 2001 Hantal fonksiyonel programlama için önemli bir uygulama stratejisi grafik azaltma konusudur. Bu tezin kapsamı kombinatör fonksiyonu tabanlı grafik azaltma algoritmalarını, test amacı ile geliştirilmiş olan minimum ifade dili ile analiz etmektir. SKİ kombinatör fonksiyonu tekniği ile Hughes'a ait olan süper- kombinatör fonksiyonu tekniğini analiz ettik. Daha sonra şablon tabanlı kombinatör fonksiyonu ile azaltma algoritması önerilmiştir. Kombinatör içinde serbest değişkenleri barındırmayan fonksiyondur. Temel düşünce program içerisindeki tüm değişkenlerin, ard arda gelen kombinatörlere dönüştürülerek kaldırılabilmesidir ki, bu işlem az sayıdaki önceden tanımlanmış kombinatör kümesi vasıtası ile, yada limitsiz sayıda olabilen önceden belirlenmemiş dinamik olarak oluşan süper-kombinatörler ile yapılabilir. Bu tezde mevcut olan SKİ kombinatör üretme algoritması ile Hughes'un süper-kombinatör üretme algoritması karşılaştırılmaktadır. Bu algoritmalar Icon programlama dili kullanılarak uygulanmıştır. Daha sonra şablon tabanlı algoritma önerilmiş ve bu algoritmanın gerçekleştirilmesindeki detaylar sunulmuştur. Tezde mevcut algoritma uygulamaları ve şablon tabanlıalgoritmalar test edilmiş ve 5 nolu bölümde bu testlerin karşılaştırılması sunulmuştur. Anahtar Kelimeler: Grafik azaltma, SKİ, kombinatör, fonksiyonel programlama, soyutlama. IV ABSTRACT GRAPH REDUCTION SYSTEM BASED ON COMBINATOR By NECLA VARDAL Department of Computer Engineering Master Thesis January, 2001 Graph reduction is one of the important evaluation strategy for lazy functional programming. The context of this thesis is analyzing combinator based graph reduction algorithms with a minimal expression language developed for test purposes. We analyzed SKI combinator technique and Hughes' super- combinator technique. Then template based combinator reduction algorithm is proposed. A combinator is function that contains no free variables. The idea is based on that all of the variables in the program can be removed by transforming it into sequence of combinators which would be drawn from a small pre-defined (fixed) set of combinators (SKI), or which would be drawn from an unlimited number of non-pre-defined set of dynamic super-combinators. In this thesis, existing SKI combinator generation and Hughes' super- combinator generation algorithms are compared. These algorithms have been implemented with Icon programming language. Then template based algorithm is proposed and implementation details of these algorithms are given. In thisthesis existing algorithms and template based algorithms have been tested and compared. Keywords: Graph reduction, SKI, combinator, functional programming, abstraction.
Collections