effekt-lang / effekt-lang/effekt

Unexpected stack overflow with mutually recursive local definitions in object

Open
#1,149 0 comments 0 reactions 0 assignees View on GitHub
area:js bug
Dominant language
Scala
Stars
469
Forks
41
Avg merge
1d 16h
Merged PRs (30d)
23

Description

As Effekt being a language with tail calls, I would expect the following to reduce infinitely in JS instead of having its stack overflow.

Found while working on #801, probably related.

``` scala
interface Foo {
def a(): Int
def b(): Int
}

def main() = {
def o = new Foo {
def a() = o.b()
def b() = o.a()
}
println(o.a())
}
```

Contributor guide

No contributing guide indexed for this repository

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.