{"action":"created","issue":{"url":"https://api.github.com/repos/elm-lang/elm-compiler/issues/873","labels_url":"https://api.github.com/repos/elm-lang/elm-compiler/issues/873/labels{/name}","comments_url":"https://api.github.com/repos/elm-lang/elm-compiler/issues/873/comments","events_url":"https://api.github.com/repos/elm-lang/elm-compiler/issues/873/events","html_url":"https://github.com/elm-lang/elm-compiler/issues/873","id":53375627,"number":873,"title":"Properly deal with recursively defined values","user":{"login":"evancz","id":1658058,"avatar_url":"https://avatars.githubusercontent.com/u/1658058?v=3","gravatar_id":"","url":"https://api.github.com/users/evancz","html_url":"https://github.com/evancz","followers_url":"https://api.github.com/users/evancz/followers","following_url":"https://api.github.com/users/evancz/following{/other_user}","gists_url":"https://api.github.com/users/evancz/gists{/gist_id}","starred_url":"https://api.github.com/users/evancz/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/evancz/subscriptions","organizations_url":"https://api.github.com/users/evancz/orgs","repos_url":"https://api.github.com/users/evancz/repos","events_url":"https://api.github.com/users/evancz/events{/privacy}","received_events_url":"https://api.github.com/users/evancz/received_events","type":"User","site_admin":false},"labels":[],"state":"open","locked":false,"assignee":null,"milestone":null,"comments":7,"created_at":"2015-01-05T08:52:45Z","updated_at":"2016-01-19T02:37:08Z","closed_at":null,"body":"Properly implement stuff like `let ones = 1 :: ones` and throw a compile-time error when an implementation cannot be given.\r\n\r\nSee Xavier's comments [here](https://groups.google.com/forum/m/#!msg/comp.lang.ml/4eK7ucslWRw/CDc9S5AGYSYJ) for more details.\r\n\r\nWhen this is implemented, definitely revisit these issues: https://github.com/elm-lang/core/issues/361"},"comment":{"url":"https://api.github.com/repos/elm-lang/elm-compiler/issues/comments/172715162","html_url":"https://github.com/elm-lang/elm-compiler/issues/873#issuecomment-172715162","issue_url":"https://api.github.com/repos/elm-lang/elm-compiler/issues/873","id":172715162,"user":{"login":"dan-tull","id":13667418,"avatar_url":"https://avatars.githubusercontent.com/u/13667418?v=3","gravatar_id":"","url":"https://api.github.com/users/dan-tull","html_url":"https://github.com/dan-tull","followers_url":"https://api.github.com/users/dan-tull/followers","following_url":"https://api.github.com/users/dan-tull/following{/other_user}","gists_url":"https://api.github.com/users/dan-tull/gists{/gist_id}","starred_url":"https://api.github.com/users/dan-tull/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/dan-tull/subscriptions","organizations_url":"https://api.github.com/users/dan-tull/orgs","repos_url":"https://api.github.com/users/dan-tull/repos","events_url":"https://api.github.com/users/dan-tull/events{/privacy}","received_events_url":"https://api.github.com/users/dan-tull/received_events","type":"User","site_admin":false},"created_at":"2016-01-19T02:37:08Z","updated_at":"2016-01-19T02:37:08Z","body":"I hit an issue today and when I followed the trail of issue breadcrumbs, I was led here. Boiled down to simplest form it looks like this:\r\n\r\n```foo = { bar = True }\r\ntest a b =\r\n  a\r\nres = test foo res.bar\r\n```\r\n\r\nWhich results in the error \"undefined is not an object (evaluating 'res.bar')\" which was fairly obvious in the more complex case I originally hit, but feels like it should be a compiler instead of a runtime error.\r\n\r\nIf there's only one parameter to test, there is a compiler error about an infinite/self-referential type. Some other similar variations also result in compiler errors, but this one hits a runtime problem, so I thought I'd included it in the thread for reference."}}