Fügen Sie EIP hinzu: Calldata-Lauflängencodierungsschema Für EVM L1s (z. B. Tempo) ist die Effizienz von Calldata wieder wichtig. OP-Stack-L2s komprimieren automatisch Calldata und geben die Einsparungen an die Benutzer weiter. Aber wenn Sie ein L1 sind, müssen Sie das optimieren. Technische Erklärung (für Fantasy Top-Fans): In Ethereum-Calldata kosten Null-Bytes 1/4 des Preises von Nicht-Null-Bytes. Aber das ist irgendwie willkürlich, denn Calldata wird immer noch unverändert übertragen und gespeichert, ohne auch nur eine einfache RLE-Kompression. Diese 1/4 Kosten sollen die Kompression anreizen, aber tatsächlich macht das niemand. Wenn es sogar eine einfache RLE implementiert gäbe, würden Null-Bytes 1/100 der Kosten von Nicht-Null-Bytes kosten. Um die Ausrichtung von Ethereum zu verbessern und zurück zu kreuzen, dachte ich, warum nicht ein neues EIP dafür erstellen. Das ist auch aus praktischen Gründen, denn ich möchte die bestehenden Smart-Contract-Standards wie ERC-7821 nicht ändern, um einen für Calldata optimierten Modus nur dafür einzuführen. Eine Optimierung auf Transaktionsebene wäre besser (denn die gesamte Transaktions-Calldata würde profitieren). Es gibt zwei Möglichkeiten, dies zu tun: - Implementierung eines RLE-Kompressionsschemas auf Transaktionsebene (EIP-Ebene). - Implementierung von Precompiles für Calldata-Kompression / -Dekompression (RIP-Stil). Solady's LibZip.cdCompress ist ziemlich effizient, aber warum nicht in Precompiles umwandeln? So oder so müssen wir zuerst das Codierungsschema formalisieren, und damit besteht die Notwendigkeit, dies zu schreiben.