Створіть власний тип множини.
Іноді виникає потреба визначити власну структуру даних певного типу, наприклад множину. У цій вправі ми визначимо власну множину. Неважливо, як вона влаштована всередині, аби лише поводилася як множина унікальних елементів.
Визначте кортеж custom-set та оголосіть його екземпляром міксину set за допомогою INSTANCE: custom-set set.
<custom-set> ( -- set ) - створює порожню множину.>custom-set ( seq -- set ) - будує множину з послідовності, мовчки відкидаючи дублікати.Потім надайте методи M: (з sets) для members, in?, adjoin та set-like у custom-set. Коли оголошення INSTANCE: і ці чотири методи на місці, null?, union, intersect, diff, subset?, set= та intersects? зі словника sets працюють із нашою множиною через типові реалізації протоколу - тести викликають ці слова напряму.
adjoin ( elt set -- ) змінює свій аргумент: він додає elt до set на місці, якщо його там ще немає.
Зареєструйтеся на Exercism, щоб вивчати й опановувати Factor, а також 47 концепцій163 вправи та справжнє наставництво від людей, і все це безкоштовно.