source-academy / sicp

XML sources of SICP and SICP JS, and support for generating Interactive SICP JS, PDF, e-book and comparison editions

Home Page:https://sourceacademy.org/sicpjs

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Solution to Exercise 2.79

clean99 opened this issue · comments

function install_javascript_number_package() {
    // ...
  
    put("is_equal", list("javascript_number", "javascript_number"), 
           (x, y) => x === y);
  
    // ...
}

function install_rational_package() {
    // ...
  
    function is_equal(x, y) {
        return numer(x) * denom(y) === numer(y) * denom(x);
    }
  
    put("is_equal", list("rational", "rational"), is_equal);
  
    // ...
}

function install_complex_package() {
    // ...
  
    function is_equal(z1, z2) {
        return real_part(z1) === real_part(z2)
               ? imag_part(z1) === imag_part(z2)
               : false;
    }
  
    put("is_equal", list("complex", "complex"),
            is_equal);
  
    //...
}