TreeDL - TreeDL

Ağaç Açıklama Dili (TreeDL) bir bilgisayar dili kesinlikle yazılı açıklama için ağaç veri yapıları ve üzerlerindeki işlemler. TreeDL'nin ana kullanımı, dil odaklı araçların geliştirilmesidir (derleyiciler, çevirmenler, vb.) bir yapının açıklaması için soyut sözdizimi ağaçları.

Ağaç açıklaması şu şekilde kullanılabilir:

  • arasındaki arayüzün dokümantasyonu ayrıştırıcı ve diğer alt sistemler;
  • hedef programlama dillerinde bir ağacı temsil eden veri türlerinin üretimi için bir kaynak;
  • çeşitli destek kodlarının oluşturulması için bir kaynak: Ziyaretçi yürüyüşçüler fabrikalar, vb.

TreeDL herhangi bir ayrıştırıcı oluşturucu ayrıştırma sırasında özel eylemlere izin veren (örneğin, ANTLR, JavaCC ).

Dile genel bakış

Ağaç açıklaması, bir ağaçta izin verilen düğüm türlerini listeler. Düğüm türleri desteği tek miras. Düğüm türlerinin alt öğeleri ve öznitelikleri vardır. Çocuklar, tanımlanmış düğüm türünde olmalıdır. Öznitelikler ilkel tipte (sayısal, dizge, mantıksal), enum tipinde veya düğüm tipinde olabilir. Öznitelikler, ağaç yapımı sırasında değişmez değerleri ve ağaç analizi sırasında toplanan ek bilgileri depolamak için kullanılır (örneğin, referans ve tanım arasındaki bağlantılar, temsil etmek için) üst düzey soyut sözdizimi ).

Bir ağaç üzerindeki işlemler şu şekilde tanımlanır: çoklu yöntemler. Bu yaklaşımın avantajları makalede anlatılmıştır. Treecc: Derleyici Yazmaya Yöne Dayalı Bir Yaklaşım

Ağaç açıklamaları, modülerliğe ve dil uzantıları için temel dil ağacı açıklamalarının yeniden kullanımına izin vermek için kalıtımı destekler.

Ayrıca bakınız

Dış bağlantılar