взяти означення мавка/машина;
простір мавка {
дія покласти_спробу(
М: адреса<Машина>,
спроби: адреса<Спроби>,
назва_зловити: адреса<ПредметТексту>,
позиція_вказівки_зловити: природне
) -> адреса<Спроба> {
спроби.дані = перевиділити_памʼять<Спроба>(М, спроби.дані, спроби.розмір + 1);
спроби.дані[спроби.розмір] = Спроба {
назва_зловити = назва_зловити,
позиція_вказівки_зловити = позиція_вказівки_зловити,
розмір_історії_здійснення = М.історія_здійснення.розмір,
розмір_накопичувача_значень = М.накопичувач_значень.розмір
};
спроби.розмір += 1;
вернути спроби.дані[спроби.розмір - 1]::адреса;
}
дія видалити_останню_спробу(
М: адреса<Машина>,
спроби: адреса<Спроби>
) {
якщо спроби.розмір == 0 {
ЗАПАНІКУВАТИ(М, "Немає спроб для видалення.");
вернути;
}
спроби.розмір -= 1;
}
}