Taigi šia prasme reikalingas automatinis dinaminis atminties paskirstymas, o praktiškai tai reiškia: taip, „Haskell“reikalingas šiukšlių surinkėjas, nes šiukšlių surinkimas yra našiausias automatinis dinaminės atminties tvarkyklė.
Ar Haskell turi šiukšlių surinkėją?
Haskell vykdymo sistemoje naudojamas kartos šiukšlių surinkėjas (GC) su dviejų kartų 2. Kartos skaičiuojamos pradedant nuo jauniausios kartos nuliu. Vertybės visada paskirstomos specialioje jauniausios kartos dalyje, vadinamoje darželiu.
Kokia kalba nerenkama šiukšlių?
Pavyzdžiai: Ada, C, Fortran, Modula-2, Pascal. Bjarne'as Stroustrupas mano, kad geriau kalbant apie visas išlaidas aiškiai išdėstyti ir „nemokėti už funkcijas, kurių nenaudojate“. (Žr. jo pranešimus 2-oje ir 3-ioje ACM konferencijose apie programavimo kalbų istoriją.) Todėl C++ nerenka šiukšlių.
Kas atlieka šiukšlių išvežimą?
Java šiukšlių surinkimas yra procesas, kurio metu Java programos atlieka automatinį atminties valdymą. „Java“programos kompiliuojamos į baitinį kodą, kurį galima paleisti „Java“virtualiojoje mašinoje arba trumpiau JVM. Kai Java programos veikia JVM, objektai sukuriami krūvoje, kuri yra programai skirta atminties dalis.
Ar C kalba surenka šiukšles?
C neturi automatiniošiukšlių išvežimas. Jei pametate objekto pėdsaką, atsiranda vadinamasis „atminties nutekėjimas“. Atmintis vis tiek bus skirta visai programai, bet niekas negalės ja naudotis, jei pametėte paskutinę jos žymeklį. Atminties išteklių valdymas yra pagrindinis C programų reikalavimas.