2010-11-19 12 views
-1

Benim gereksinimleri şunlardır:Uygulama ve kod boyutu önemli olduğunda hangi bayt kod tabanlı dil kullanılır?

  • bayt kod Sanal Makine
  • C benzeri sözdizimi

kullanılacak misiniz gerekli değildir

  • Küçük uygulama ve kod boyutu
  • Çöp Toplama kısıtlanmış ortamlar mikro-kontrol cihazları.

  • +2

    "x-like syntax" gibi bir gereksinimi her okuduğumda "küçük WTF" yi düşünüyorum. Sözdizimi sözdizimidir - çok belirsiz olmadığı sürece, bir dilin/altta yatan anlambiliminin (varsa, her halükarda kaybolur;), varsayarak, nispeten az zaman sonra okunabilir ve anlaşılabilir. – delnan

    cevap

    0

    Hemen akla gelen ikisi, her ikisi de bir programa gömülebilen Lua ve Mono'dur.

    • Bayt kod VM: Lua ve Mono her ikisi de bayt kodlarını derler. Mono ayrıca daha iyi performans için çalışma zamanında JITs yöntemlerini.
    • C benzeri sözdizimi: Lua'nın C benzeri bir sözdizimi vardır ve Mono C# dahil olmak üzere birçok dili desteklemektedir.
    • Küçük uygulama ve kod boyutu: Lua burada kazanır. Mono'nun çerçeve kitaplıklarının soyulmuş bir sürümü ile dağıtılabileceğini unutmayın. Örneğin, XML ayrıştırma işlemi gerçekleştirmeyecekseniz, System.Xml derlemesini atabilirsiniz.
    • GC: Hem Mono hem de Lua çöp toplama işlemini destekliyor. İhtiyaçlarınız için bu bir profesyonel ya da bir yardımcı olup olmadığından emin değilim.
    +0

    Gc'ye: gerçekten gerekli değil, bu yüzden de değil. Ayrıca, mono boyut ile ilgili ciddi ölçüde aşırı olacaktır. – metafex

    +0

    Tamam. Mono çalışma zamanı ve corlib'in gerçekten ihtiyacınız olan şey olduğunu unutmayın. Ayak izini sadece birkaç MB'ye indirebilirsin. (Tabii ki, eğer bu gömülü bir cihaz içinse, birkaç MB çok fazla, bu yüzden Mono'dan niçin kaçıldığını anlıyorum.) – cdhowie