«interpreters» etiketlenmiş sorular

1
Farklılıkları anlama: geleneksel tercüman, JIT derleyicisi, JIT tercümanı ve AOT derleyicisi
Geleneksel bir tercüman, bir JIT derleyici, bir JIT tercüman ve bir AOT derleyici arasındaki farkları anlamaya çalışıyorum. Tercüman, bazı bilgisayar dillerinde talimatlar veren sadece bir makinedir (sanal veya fiziksel). Bu anlamda JVM bir tercüman ve fiziksel CPU'lar tercümandır. Önceden Zamanlı derleme, kodu çalıştırmadan (yorumlamadan) önce bazı dillere kodlamak anlamına gelir. …

5
Python Yorumlanıyor mu veya Derlendi mi?
Bu sadece yorumlanmış ve derlenmiş diller hakkında okurken bir merak ediyorum. Kaynak kod yürütme noktasında bir tercüman tarafından işlendiğinden, Ruby'nin bir tercüman dili olduğuna şüphe yok. Aksine, C derlenmiş bir dildir, çünkü ilk önce kaynak kodunu makineye göre derlemek ve daha sonra çalıştırmak gerekir. Bu sonuç çok daha hızlı işlemdir. …


14
Derlenmiş kod ve yorumlanmış kodun performansı hakkında genel açıklamalar yapabilir miyiz?
Bir şirket tarafından kullanılması gereken bir öneriye ulaşmak için iki teknolojiyi karşılaştırıyorum. Teknoloji A'nın kodu, teknoloji B'nin kodu makine koduyla derlenirken yorumlanır. Karşılaştırmada, genel olarak teknoloji B'nin yorumlama sürecinin ek yükü olmadığı için daha iyi performans göstereceğini belirtiyorum. Ayrıca, bir programın birçok şekilde yazılabileceğinden, A teknolojisinde yazılmış bir programın B …

6
Tercüman makine kodu üretiyor mu?
Derleyici ve tercüman konularını yoğun olarak çalışıyorum. Temel anlayışımın doğru olup olmadığını kontrol etmek istiyorum, öyleyse şunu kabul edelim: "Foobish" adında bir dilim var ve anahtar kelimeleri <OUTPUT> 'TEXT', <Number_of_Repeats>; Yani konsola 10 defa yazdırmak istersem, yazarım OUTPUT 'Hello World', 10; Merhaba World.foobish dosyası. Şimdi kendi seçimim olan bir tercüman …

5
Lisp'te lisp tercümanı çalışmak neden bu kadar önemli?
Özellikle lisp dilinde yazılmış bir lisp tercümanı incelemek isteyen yeni programcılar için birçok CS müfredatı ve öğrenme önerileri gördüm. Bütün bu siteler “entelektüel bir vahiy”, “her ciddi programcının sahip olması gereken bir aydınlanma deneyimidir” veya “size donanım / yazılım ilişkilerini gösterir” ve diğer belirsiz ifadelere, özellikle de bu makaleden alınan …

5
Yorumlanan vs Derlenmiş: Yararlı bir ayrım?
Burada, derlenmiş dilin uyguladığı yorumlanmış ve yorumlanmış birçok soru var. Ayrımın gerçekten bir anlam ifade edip etmediğini merak ediyorum. (Aslında sorular genellikle dillerle ilgilidir, ancak gerçekten bu dillerin en popüler uygulamaları hakkında düşünüyorlar). Bugün neredeyse hiçbir uygulama kesinlikle yorumlanmıyor. yani hemen hemen hiç kimse kodu bir seferde bir satır ayrıştırmaz …


2
Python'un (ve diğer dinamik dillerin) hangi anlamsal özellikleri yavaşlığına katkıda bulunur?
Çok iyi tanımıyorum Python. Dinamik dillerin (à la Python, Lua, Scheme, Perl, Ruby, ...) tam özelliklerinin uygulamalarını yavaşlatmaya zorladığını daha kesin olarak anlamaya çalışıyorum. Bir nokta olarak, Lua 5.3 metatable makineleri sezgisel olarak Lua'yı yavaşlatır, ancak pratikte Lua'nın oldukça hızlı olduğu söylenir (ve Python'dan daha hızlıdır). Ayrıca, şimdiki işlemciler üzerinde …

3
Neden yerel makine kodunda bir python derleyicisi yok?
Anladığım kadarıyla, derlenmiş diller ve python arasındaki hız farkının nedeni, ilk önce yerel makinenin kodunu tümüyle derler, python ise python byte kodunu derler ve PVM tarafından yorumlanır. Bu şekilde python kodlarının çoklu işletim sisteminde (en azından çoğu durumda) kullanılabildiğini görüyorum, ancak neden anlamıyorum, neden geleneksel derleyicilerle aynı şekilde derleyen python …

3
Hangi süreçte sözdizimi hatası oluşuyor? (tokenizing veya ayrıştırma)
Derleme ve yorumlamayı anlamaya çalışıyorum, adım adım toplam bir görüntü bulmaya çalışıyorum. Bu yüzden http://www.cs.man.ac.uk/~pjj/farrell/comp3.html bu makaleyi okurken bir soru sordum. Diyor ki : Derleyicinin bir sonraki aşamasına Ayrıştırıcı denir. Derleyicinin bu kısmı dilin gramerini anlıyor. Sözdizimi hatalarının tanımlanmasından ve hatasız bir programın başka bir dilde yorumlanabilen veya yazılabilen iç …

2
Orijinal tercümandan bağımsız bir “önyükleme” tercümanı oluşturmak mümkün mü?
Wikipedia'ya göre , derleyici yazma bağlamında "önyükleme" terimi şu anlama gelir : Bilgisayar bilimlerinde önyükleme, derlemek istediği kaynak programlama dilinde bir derleyici (veya bir derleyici) yazma işlemidir. Bu tekniğin uygulanması, kendi kendini barındıran bir derleyiciye yol açar. Ve bunun nasıl işe yarayacağını anlayabiliyorum. Ancak, hikaye tercümanlar için biraz farklı görünüyor. …

4
Chrome V8 nasıl çalışır? Peki neden JavaScript JIT-Derlemedi?
Tercümanları / Derleyicileri araştırıyorum, sonra JIT-Derleme'yi, özellikle de Google Chrome'un V8 Javascript Motorunu gördüm. Sorularım - Standart Yorumlamadan nasıl daha hızlı olabilir ? JIT-Compilation neden ilk etapta kullanılmadı? Mevcut Anlayışım Her Javascript Programı kaynak kodu olarak başlar , ardından yürütme yöntemine bakılmaksızın, nihayetinde makine koduna çevrilir . Hem JIT-Derleme hem …

3
İf () tembel değerlendirmesi nasıl yapılır
Şu anda aşağıdakilere dayalı bir ifade değerlendiricisini (formül gibi tek satır ifadeleri) kullanıyorum: girilen ifade, değişmez booleanları, tam sayıları, ondalıkları, dizeleri, işlevleri, tanımlayıcıları (değişkenleri) ayırmak için tokenleştirilir Parantezden kurtulmak ve operatörleri iyi bir önceliğe sahip bir şekilde sipariş vermek için Shunting-yard algoritmasını (değişken değişkenli fonksiyonları işlemek için hafifçe değiştirildi) uyguladım …

8
C'nin derlenmesini / yorumlanmasını / JIT'lenmesini engelleyen nedir?
Java genellikle JVM'den kaynaklandığını düşündüğüm inanılmaz taşınabilirliği nedeniyle övülür. Benim sorum, C'nin derlenmesini / yorumlanmasını / JIT'lenmesini engelleyen şeydir, eğer öyleyse, C bir kez yazılabilir ve sahip olduğunuz cihaz üzerinde çalışmasını sağlayabilir. ancak bu bir C programının işlenmesi için popüler bir mekanizma değildir. C'yi bu şekilde işlemenin dezavantajları nelerdir, ayrıca …

Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.