{"action":"published","release":{"url":"https://api.github.com/repos/uujava/mirah/releases/4274343","assets_url":"https://api.github.com/repos/uujava/mirah/releases/4274343/assets","upload_url":"https://uploads.github.com/repos/uujava/mirah/releases/4274343/assets{?name,label}","html_url":"https://github.com/uujava/mirah/releases/tag/0.1.5.152","id":4274343,"tag_name":"0.1.5.152","target_commitish":"release","name":"Type hints support","draft":false,"author":{"login":"uujava","id":5691016,"avatar_url":"https://avatars.githubusercontent.com/u/5691016?v=3","gravatar_id":"","url":"https://api.github.com/users/uujava","html_url":"https://github.com/uujava","followers_url":"https://api.github.com/users/uujava/followers","following_url":"https://api.github.com/users/uujava/following{/other_user}","gists_url":"https://api.github.com/users/uujava/gists{/gist_id}","starred_url":"https://api.github.com/users/uujava/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/uujava/subscriptions","organizations_url":"https://api.github.com/users/uujava/orgs","repos_url":"https://api.github.com/users/uujava/repos","events_url":"https://api.github.com/users/uujava/events{/privacy}","received_events_url":"https://api.github.com/users/uujava/received_events","type":"User","site_admin":false},"prerelease":false,"created_at":"2016-09-29T15:23:36Z","published_at":"2016-09-30T14:50:44Z","assets":[{"url":"https://api.github.com/repos/uujava/mirah/releases/assets/2404204","id":2404204,"name":"mirahc-0.1.5.152-sources.jar","label":null,"uploader":{"login":"uujava","id":5691016,"avatar_url":"https://avatars.githubusercontent.com/u/5691016?v=3","gravatar_id":"","url":"https://api.github.com/users/uujava","html_url":"https://github.com/uujava","followers_url":"https://api.github.com/users/uujava/followers","following_url":"https://api.github.com/users/uujava/following{/other_user}","gists_url":"https://api.github.com/users/uujava/gists{/gist_id}","starred_url":"https://api.github.com/users/uujava/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/uujava/subscriptions","organizations_url":"https://api.github.com/users/uujava/orgs","repos_url":"https://api.github.com/users/uujava/repos","events_url":"https://api.github.com/users/uujava/events{/privacy}","received_events_url":"https://api.github.com/users/uujava/received_events","type":"User","site_admin":false},"content_type":"application/java-archive","state":"uploaded","size":247900,"download_count":0,"created_at":"2016-09-30T14:40:07Z","updated_at":"2016-09-30T14:41:12Z","browser_download_url":"https://github.com/uujava/mirah/releases/download/0.1.5.152/mirahc-0.1.5.152-sources.jar"},{"url":"https://api.github.com/repos/uujava/mirah/releases/assets/2404203","id":2404203,"name":"mirahc-0.1.5.152.jar","label":null,"uploader":{"login":"uujava","id":5691016,"avatar_url":"https://avatars.githubusercontent.com/u/5691016?v=3","gravatar_id":"","url":"https://api.github.com/users/uujava","html_url":"https://github.com/uujava","followers_url":"https://api.github.com/users/uujava/followers","following_url":"https://api.github.com/users/uujava/following{/other_user}","gists_url":"https://api.github.com/users/uujava/gists{/gist_id}","starred_url":"https://api.github.com/users/uujava/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/uujava/subscriptions","organizations_url":"https://api.github.com/users/uujava/orgs","repos_url":"https://api.github.com/users/uujava/repos","events_url":"https://api.github.com/users/uujava/events{/privacy}","received_events_url":"https://api.github.com/users/uujava/received_events","type":"User","site_admin":false},"content_type":"application/java-archive","state":"uploaded","size":1605406,"download_count":0,"created_at":"2016-09-30T14:40:06Z","updated_at":"2016-09-30T14:41:08Z","browser_download_url":"https://github.com/uujava/mirah/releases/download/0.1.5.152/mirahc-0.1.5.152.jar"}],"tarball_url":"https://api.github.com/repos/uujava/mirah/tarball/0.1.5.152","zipball_url":"https://api.github.com/repos/uujava/mirah/zipball/0.1.5.152","body":"The release of mirah with type hint support and a bunch of minor fixes not included in mainstream https://github.com/mirah/mirah/releases.\r\n\r\nChanges to name a few:\r\n- Type hints replaces casting via as! macros or functional cast style\r\n```\r\n x:Integer = 1\r\n def x(o:Object)\r\n   o.kind_of? String ?  o:String.toLowerCase : \"#{o}\"\r\n end\r\n```\r\n- Support for Object#synchronize\r\n- Fix abstract method validation\r\n- Closure over self (will be reimplemented \r\n- Unary minus without for parenthesis\r\n```\r\n  puts -1\r\n```\r\n- Better do blocks vs braces block handling\r\n```\r\n  \r\n```\r\n- Java doc support reimplemented as statements\r\n- Verify abstract methods implemented\r\n- Parameter annotation support could be used for writing jaxrs services:\r\n```\r\nimport javax.ws.rs.Path\r\nimport javax.ws.rs.Get\r\nimport javax.ws.rs.QueryParam\r\nimport  javax.ws.rs.DefaultValue\r\n\r\n$Path['root']\r\nclass Resource\r\n$Path['rest_call']\r\n$GET\r\n def  rest_call(\r\n      $DefaultValue[2]     $QueryParam['step']       step:int,\r\n      $DefaultValue[true] $QueryParam['min-m']   hasMin:boolean,\r\n      $DefaultValue[true] $QueryParam['max-m']  hasMax:boolean,\r\n      $DefaultValue[true] $QueryParam['last-m']   hasLast:boolean\r\n   ):String \r\n   System.out.println(\"step = \" + @step);\r\n   return \"#{step}:#{hasMin}:#{hasMax}:#{hasLast}\"\r\n end\r\n```\r\n- Better support for numeric autoboxing. So one could write: \r\n```\r\nx:Integer = 1\r\ny = 2\r\nz = x + y\r\nx = x + y > 3 ?  4 : 5\r\n```\r\n- Fix package support for dashE scripts\r\n- Priority for macros: ability to override system macros\r\n- Java stub generation  with preserved line number for debugging mirah code in IDE\r\n\r\n\r\nUsage:\r\n```\r\n java -jar mirac.jar -e \"puts 'Hello world!'\" && java DashETopLevel\r\n java -jar mirac.jar test.mirah \r\n java -jar mirac.jar -h\r\n```\r\n\r\nIt will also  be used as a default javalib/mirah-prev.jar for a build system with integrated mirah-parser source code"}}
{"actor":{"display_login":"uujava"}}