4 ポイント 投稿者 GN⁺ 2023-10-09 | 1件のコメント | WhatsAppで共有
  • この記事では、Berryという超軽量で動的型付けの組み込みスクリプト言語を紹介します。
  • Berryは、性能の低い組み込みデバイス向けに特別に設計されています。
  • Berryインタープリタコアのコードサイズは40KiB未満で、4KiBヒープ以下で動作できます。これはARM Cortex M4 CPUで、Thumb ISAとARMCCコンパイラを使用してテストされました。
  • Berryのインタープリタには、ワンパスコンパイラとレジスタベースの仮想マシン(VM)が含まれます。すべてのコードはANSI C99で書かれています。
  • Berryでは、すべての型がクラスオブジェクトというわけではありません。int、real、boolean、stringのような単純な値型はクラスオブジェクトではなく、list、map、rangeはクラスオブジェクトです。これは性能上の考慮によるものです。
  • Berryの文脈における「レジスタベースVM」という用語は、一般的なコンピューティングにおける意味と同じです.

1件のコメント

 
GN⁺ 2023-10-09
Hacker Newsの意見
  • Berryは、40KBのランタイムで驚くほど豊富な機能セットを備えた超軽量の動的型付け組み込みスクリプト言語です。
  • Python/Rubyに似た言語で、手続き型、オブジェクト指向、または関数型のスタイルをサポートします。
  • Berryは定数オブジェクトを事前生成してその大半をROMに配置し、MicroPythonやLuaには見られない、RAMを可変データ向けに節約する機能で際立っています。
  • Berryは、IoTデバイス向けプラットフォームであるTasmotaで使われています。
  • この言語のドキュメントは、包括的であることや、経験豊富な開発者向けの「短いマニュアル」が含まれている点が非常に高く評価されています。
  • 一部のユーザーは、設定言語として使うために、より少ないパラダイムと静的型付けを備えた類似言語を望む意向を示しました。
  • 他の言語へのバインディング提供に関する提案や、関数の再開やジェネレーターの可能性についての質問があります。
  • ユーザーは、BerryとLuaの性能およびメモリ使用量の比較や、信頼できないコードを実行するためのサンドボックス機能に関心を持っています。
  • ネイティブスタックトレースでスクリプト関数名を使ってスタックフレームを表示できる可能性についての質問があります。