Solidity-funktion lähettäjä on puu, jossa:
- Sisäiset solmut suorittavat binäärijakoja.
- Lehtisolmut sisältävät jopa 4 toimintovalitsinta, jotka on testattu lineaarisesti.
Vinkki 1: "vara"-funktion tavukoodi luodaan tavukoodissa kahdesti. Voit pienentää tavukoodin kokoa paketoimalla varalogiikan sisäiseen funktioon.
Vinkki 2: jos sinulla on hyvin usein käytetty funktio, tee alias 0x00000000-funktiovalitsimella, mikä tekee siitä halvimman etsiä.
- Yksi kirjaston suunnittelun haasteista on se, mitä algoa tulisi käyttää. Katso, miksi C++:n kartta on puu, unordered_map tuli vasta 15 vuotta myöhemmin.
- Geneerisiä kirjastoja sisältävät kirjastot riippuvat suuresti kääntäjän kyvystä tehdä nollakustannusabstrakti minimaalisella tönäisyllä. Soladyssa teemme joskus erittäin inhottavia juttuja tönäistääksemme kääntäjää. Miksi Rustin ja C++:n kirjoittaminen tuntuu hyvältä, johtuu siitä, että kääntäjä on tarpeeksi älykäs, jotta se ei tarvitse kaikkea tätä tönäisyä. Joten ydin Solidity tarvitsisi todella hyvän optimoijan mennäkseen syntaksisokerin yleisiä hienouksia pidemmälle.
- Varovainen mahdollisen Python 2 vs 3 -tilanteen suhteen. Toivottavasti ytimen opit voivat ja valuvat takaisin klassiseen.
- Klassisen ja ydinlujuuden maailmassa Solady aikoo ylläpitää ja kehittää molempia. Kielillä, joilla on hullu standardikirjasto, on edelleen kolmannen osapuolen kirjastoja (esim.