XSLT bazı desen eşleştirme ile fonksiyonel bir dildeki olduğunu.
Sen belki bir anda geçerli olan tüm desenler verimli bir şekilde ele emin olun metamatching ile, desen-yönettiği bir dizi kural olarak derlemek olabilir.
Desen-yönettiği kuralları langauges derlemek oldukça iyi anlaşılmış olup; son yirmi yılda erken 80s ve türevleri Charles kırk en Rete ağları üzerinde çalışmaya bakın.
Biri bunu yapmak istedim Yani, onlar olabilir. Nerede ekonomik teşvik bulunuyor?
If you did want to do this, you want a tool that can process XSLT as a set of patterns
rather than using an XML processor to treat it asdumb XML document at it otherwise appears to be. And you'd want to be able to manipulate/compose the patterns and generate target machine code. You'd need a tool that is designed to manipulate symbolic structures.
LISP iyi olabilir, ama özellikle iyi değil XML (ter ile düzeltilebilir) ayrıştırma, ve oluşturulan C + + kodu (sadece bu olası ter büyük bir miktarı ile düzeltilebilir) manipüle özellikle iyi değil istiyorum.
Our DMS Software Reengineering Toolkit is a system designed to treat formal documents as parts in essentially the same way a compiler treats source code as a set of langauge structures.
It has XML parsers, and can manipulate C++ code fragments in parts, in composition, and can optimize the result by applying C++ optimization source-to-source program transformation rules. (Vast amount of sweat already invested in the C++ manipulation).
Sizlere XSLT için, DMS kullanarak model-yönettiği kuralı derleyiciler yaptık, ama yerine meta-eşleştirme desenleri ve bağlı değişikliklerin durumunu takip ederek, bu kaynak-kaynak programı dönüşüm kurallarını derlemek. Sen çeviri uygulamak gerçekten büyük otomata (LR ayrıştırma tablolar büyük olsun aynı şekilde sıralama) olsun.
Olsa da, XSLT için bu yapmadım.