Как скопировать этот код C ++ в ML, используя замыкания - PullRequest
0 голосов
/ 22 февраля 2020

Этот класс в C ++ задан:

class Counter {
    private: int n;
    public: 
        Counter():n(0) {}
        int val() { return n; }
        void inc() { ++n; }
};

Используйте замыкания в ML для создания функции с именем makeCounter, которая будет возвращать нечто, действующее как объект класса Counter.

Я хочу сделать что-то вроде этого:

fun makeCounter n=(n,fn()=>(makeCounter (n+1)));

Но очевидно, что это не работает из-за округлости. У кого-нибудь есть идея?

...