Motoko 2.0 na nowo kształtuje trwałość danych w Internet Computer
Motoko 2.0 wprowadza poważne, niekompatybilne wstecz zmiany dla deweloperów Internet Computer. Aktory są teraz domyślnie trwałe, zastępując klasyczną trwałość 32-bitową ulepszoną trwałością ortogonalną, pamięcią 64-bitową i przyrostowym odśmiecaniem pamięci.
Deweloperzy muszą oznaczać jako transient pola, które powinny zostać zresetowane po aktualizacji. ExperimentalStableMemory, powiązane starsze prymitywy oraz słowo kluczowe flexible zostały usunięte, a do obsługi stable memory wymagany jest teraz Region. Istniejące klasyczne canistery mogą podczas aktualizacji przejść na ulepszoną trwałość, ale zmiana ta jest nieodwracalna.
Kilka ostrzeżeń kompilatora stało się teraz błędami, w tym ostrzeżenia dotyczące niepełnych wzorców, ignorowanych wartości asynchronicznych, nieprawidłowych pól rekordów, niejawnych funkcji jednokierunkowych, porównań stałych, niejednoznacznego wnioskowania typów oraz pominiętych plików migracji. Motoko 2.0 dodaje również lżejszą składnię switch, ulepszoną kontekstową notację kropkową, rozwiązywanie zagnieżdżonych modułów, lepszą diagnostykę oraz automatyczne poprawki dla wybranych ostrzeżeń.
Zmiany w wierszu poleceń obejmują niezależne sprawdzanie plików przekazanych do moc --check, usunięcie przestarzałych flag i prymitywów oraz zmiany w Motoko.run, który nie ładuje już plików wstępnie. Wydawanie binariów dla komputerów Mac z procesorami Intel zostało zakończone, natomiast kompilacje dla systemów Linux i Apple Silicon pozostają dostępne.
Dla traderów ICP Motoko 2.0 jest przede wszystkim aktualizacją narzędzi deweloperskich i infrastruktury, a nie bezpośrednim katalizatorem dla tokena. Może w długim terminie zwiększyć niezawodność aplikacji i bezpieczeństwo migracji, jednak prace nad kompatybilnością mogą tymczasowo zwiększyć aktywność deweloperów. Krótkoterminowy wpływ na cenę będzie prawdopodobnie ograniczony i neutralny dla rynku.
Neutral
Motoko 2.0 nie zmienia bezpośrednio ekonomiki tokena ICP, podaży, stakingu ani opłat sieciowych, dlatego nie oferuje natychmiastowego fundamentalnego katalizatora wzrostu ceny. W krótkim terminie deweloperzy mogą zmierzyć się z pracami migracyjnymi, zmianami powodującymi niezgodność wsteczną oraz problemami z kompatybilnością, co może ograniczyć aktywność aplikacji lub wywołać przejściową niepewność. Bez dowodów na osłabienie wykorzystania sieci skutki te prawdopodobnie nie wpłyną istotnie na ICP.
W dłuższej perspektywie ulepszona persystencja ortogonalna, bardziej rygorystyczne kontrole kompilatora, pamięć 64-bitowa i inkrementalne odśmiecanie pamięci mogą poprawić niezawodność aplikacji oraz ograniczyć ryzyko aktualizacji w całym ekosystemie Internet Computer. Z czasem może to wspierać adopcję wśród deweloperów i popyt na ICP, ale wpływ będzie zależał od rzeczywistego wdrożenia, wzrostu liczby canisterów i aktywności użytkowników. Historycznie reakcje na aktualizacje kompilatora i infrastruktury są zwykle umiarkowane, chyba że prowadzą one do wyraźnego wzrostu wykorzystania lub przychodów. W związku z tym oczekuje się, że bezpośredni wpływ na ICP będzie neutralny.