Hi,

from the GUILE manual [0]:


    `eq?
' tests just for the same object (essentially a pointer comparison)
    `eqv?'
extends `eq?' to look at the value of numbers and characters.

this is what I get:

    scheme@(guile-user)> (eq? 3 (+ 1 2))
    $1 = #t

is this behavior intentional or some type of bug?

Best regards,
Alexandru Cojocaru

[0]: https://www.gnu.org/software/guile/manual/html_node/Equality.html