Eclipse Langium Dil Geliştirme Çerçevesi'nin (LDF) 3.0 Versiyonu, yeni dillerin analizini ve geliştirme araçlarına entegrasyonunu ele alan bir dizi önemli iyileştirme sunar. Büyük projelerde, eşzamansız analiz yoluyla artan hız belirgindir ve Langium paketleri, geliştiricilerin hedefe yönelik seçimler yapabilmesi için daha ayrıntılı olarak bölünmüştür.
Duyuru
Eşzamansız ayrıştırmayla artık ayrıştırma görevlerini farklı düğüm çalışan iş parçacıklarına bölerek ayrıştırıcının bağımsız olarak durdurulmasına olanak tanıyabilirsiniz. Entegrasyon arayüz üzerinden gerçekleşir WorkerThreadAsyncParserLangium ekibi paralelleştirmenin başlatma ve yükleme sürelerini geciktirebileceğini ve yalnızca daha büyük kod miktarları için hız üzerinde olumlu bir etkiye sahip olduğunu belirtiyor.
Langium paketlerinin daha farklılaştırılmış bölümü sayesinde, geliştiriciler artık uygulamaları için ihtiyaç duydukları işlevleri (örneğin, Dil Hizmet Protokolü (LSP) ile veya olmadan) bir araya getirebilirler. Bu aynı zamanda son kullanıcılar için önyükleme hızını da artırır. Yeni alt paketler örneğin /generate jeneratör mantığı için, /grammer Langium'un dilsel yapısı için o /lsp LSP için. Ağaç sarsıntısı nedeniyle genel paket boyutu da küçüldü.
Belgelerin sunucuyla iletişimine yönelik yeni hizmet
Geliştirme ekibi ayrıca son kullanıcılar tarafından değiştirilen dosyaların bağımsız bir hizmet olan Belge Güncelleştirme İşleyicisi aracılığıyla işlenmesini de iyileştirdi (DocuemetUpdateHandler). Küçük değişiklikler JSONSerializer'ı ve hata raporlamayı etkiler.
Yeniliklerin çoğu LSP'yi gerektiriyor, bu nedenle geliştiriciler giderek yeniye uyum sağlıyor /langium/lspLangium ekibi genel API'yi önceki sürüme benzer, ancak daha da farklı tutmaya çalıştı.
Az kodlu bir ortamda basit diller oluşturma
Eclipse Langium projesi, düşük kodlu ortama atfedilen bir kavram olan, özel amaçlı programlama dilleri olan Etki Alanına Özel Diller (DSL'ler) oluşturmak için kullanılır. Uzmanlaşmış son kullanıcılar, diyagram oluşturma, modelleme, bilgi istemi oluşturma veya finans sektörü gibi basit görevleri gerçekleştirmek için tasarlanmış basit bir dil kullanmalıdır. Örnekler SirenaJS, ZenStack veya Jayvee'dir. DSL komut dosyaları bir JavaScript yorumlayıcısında çalışır veya yürütülebilir dosyalar olarak oluşturulabilir.
Etki alanına özgü bir dil, söz dizimini kontrol eder (burada büyük harf kullanımı) ve vurgulamayla daha iyi kodlanabilir.
(Resim: Langyum)
Langium, TypeScript'i temel alır ve Node.js veya tarayıcı ortamında çalışır. Editör ekibiyle iletişim LSP aracılığıyla gerçekleşir. Yeni diller, Eclipse veya VS Code gibi geliştirme ortamlarına entegre edilerek sözdizimi denetimi veya vurgulama gibi işlevler alır.
Şirket blogunda Langium'un özellikleri ve sürüm 3.0'daki yenilikler hakkında daha fazla bilgi bulabilirsiniz. MIT lisansı altındaki kaynaklar GitHub'da mevcuttur.
(DSÖ)
Haberin Sonu
Duyuru
Eşzamansız ayrıştırmayla artık ayrıştırma görevlerini farklı düğüm çalışan iş parçacıklarına bölerek ayrıştırıcının bağımsız olarak durdurulmasına olanak tanıyabilirsiniz. Entegrasyon arayüz üzerinden gerçekleşir WorkerThreadAsyncParserLangium ekibi paralelleştirmenin başlatma ve yükleme sürelerini geciktirebileceğini ve yalnızca daha büyük kod miktarları için hız üzerinde olumlu bir etkiye sahip olduğunu belirtiyor.
Langium paketlerinin daha farklılaştırılmış bölümü sayesinde, geliştiriciler artık uygulamaları için ihtiyaç duydukları işlevleri (örneğin, Dil Hizmet Protokolü (LSP) ile veya olmadan) bir araya getirebilirler. Bu aynı zamanda son kullanıcılar için önyükleme hızını da artırır. Yeni alt paketler örneğin /generate jeneratör mantığı için, /grammer Langium'un dilsel yapısı için o /lsp LSP için. Ağaç sarsıntısı nedeniyle genel paket boyutu da küçüldü.
Belgelerin sunucuyla iletişimine yönelik yeni hizmet
Geliştirme ekibi ayrıca son kullanıcılar tarafından değiştirilen dosyaların bağımsız bir hizmet olan Belge Güncelleştirme İşleyicisi aracılığıyla işlenmesini de iyileştirdi (DocuemetUpdateHandler). Küçük değişiklikler JSONSerializer'ı ve hata raporlamayı etkiler.
Yeniliklerin çoğu LSP'yi gerektiriyor, bu nedenle geliştiriciler giderek yeniye uyum sağlıyor /langium/lspLangium ekibi genel API'yi önceki sürüme benzer, ancak daha da farklı tutmaya çalıştı.
Az kodlu bir ortamda basit diller oluşturma
Eclipse Langium projesi, düşük kodlu ortama atfedilen bir kavram olan, özel amaçlı programlama dilleri olan Etki Alanına Özel Diller (DSL'ler) oluşturmak için kullanılır. Uzmanlaşmış son kullanıcılar, diyagram oluşturma, modelleme, bilgi istemi oluşturma veya finans sektörü gibi basit görevleri gerçekleştirmek için tasarlanmış basit bir dil kullanmalıdır. Örnekler SirenaJS, ZenStack veya Jayvee'dir. DSL komut dosyaları bir JavaScript yorumlayıcısında çalışır veya yürütülebilir dosyalar olarak oluşturulabilir.
Etki alanına özgü bir dil, söz dizimini kontrol eder (burada büyük harf kullanımı) ve vurgulamayla daha iyi kodlanabilir.
(Resim: Langyum)
Langium, TypeScript'i temel alır ve Node.js veya tarayıcı ortamında çalışır. Editör ekibiyle iletişim LSP aracılığıyla gerçekleşir. Yeni diller, Eclipse veya VS Code gibi geliştirme ortamlarına entegre edilerek sözdizimi denetimi veya vurgulama gibi işlevler alır.
Şirket blogunda Langium'un özellikleri ve sürüm 3.0'daki yenilikler hakkında daha fazla bilgi bulabilirsiniz. MIT lisansı altındaki kaynaklar GitHub'da mevcuttur.
(DSÖ)
Haberin Sonu