{"action":"created","issue":{"url":"https://api.github.com/repos/dbuenzli/fmt/issues/4","labels_url":"https://api.github.com/repos/dbuenzli/fmt/issues/4/labels{/name}","comments_url":"https://api.github.com/repos/dbuenzli/fmt/issues/4/comments","events_url":"https://api.github.com/repos/dbuenzli/fmt/issues/4/events","html_url":"https://github.com/dbuenzli/fmt/issues/4","id":99526010,"number":4,"title":"Change the name `Fmt.pp`","user":{"login":"Drup","id":801124,"avatar_url":"https://avatars.githubusercontent.com/u/801124?v=3","gravatar_id":"","url":"https://api.github.com/users/Drup","html_url":"https://github.com/Drup","followers_url":"https://api.github.com/users/Drup/followers","following_url":"https://api.github.com/users/Drup/following{/other_user}","gists_url":"https://api.github.com/users/Drup/gists{/gist_id}","starred_url":"https://api.github.com/users/Drup/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/Drup/subscriptions","organizations_url":"https://api.github.com/users/Drup/orgs","repos_url":"https://api.github.com/users/Drup/repos","events_url":"https://api.github.com/users/Drup/events{/privacy}","received_events_url":"https://api.github.com/users/Drup/received_events","type":"User","site_admin":false},"labels":[],"state":"open","locked":false,"assignee":null,"milestone":null,"comments":4,"created_at":"2015-08-06T21:12:26Z","updated_at":"2015-08-06T22:10:20Z","closed_at":null,"body":"When you have a recursive datastructure and you want to define a pretty printer for it (that you naturally call 'pp'), you end up with code like that:\r\n\r\n```ocaml\r\nlet rec pp : t Fmt.t = fun fmt -> function\r\n  | Mod d          -> Fmt.string fmt d#module_name\r\n  | List (f, args) ->\r\n    Fmt.pp fmt \"%s%a\"\r\n      f#module_name\r\n      Fmt.(parens @@ list pp) args\r\n```\r\nand then the last line is wrong, because of the local open.\r\n\r\nI'm afraid the situation is going to be quite frequent. A name different than `pp` would probably be better ..."},"comment":{"url":"https://api.github.com/repos/dbuenzli/fmt/issues/comments/128523609","html_url":"https://github.com/dbuenzli/fmt/issues/4#issuecomment-128523609","issue_url":"https://api.github.com/repos/dbuenzli/fmt/issues/4","id":128523609,"user":{"login":"Drup","id":801124,"avatar_url":"https://avatars.githubusercontent.com/u/801124?v=3","gravatar_id":"","url":"https://api.github.com/users/Drup","html_url":"https://github.com/Drup","followers_url":"https://api.github.com/users/Drup/followers","following_url":"https://api.github.com/users/Drup/following{/other_user}","gists_url":"https://api.github.com/users/Drup/gists{/gist_id}","starred_url":"https://api.github.com/users/Drup/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/Drup/subscriptions","organizations_url":"https://api.github.com/users/Drup/orgs","repos_url":"https://api.github.com/users/Drup/repos","events_url":"https://api.github.com/users/Drup/events{/privacy}","received_events_url":"https://api.github.com/users/Drup/received_events","type":"User","site_admin":false},"created_at":"2015-08-06T22:10:20Z","updated_at":"2015-08-06T22:10:20Z","body":"It might seems very audacious and novel, but why not `fprint` ? :]\r\n\r\nIt's not like we don't have tabcompletion."}}