[ 
https://issues.apache.org/jira/browse/THRIFT-3582?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15122628#comment-15122628
 ] 

Steve Cohen commented on THRIFT-3582:
-------------------------------------

To be fair, it's unpleasant to use *in elixir*. It's just fine in Erlang. 

I think what's really needed is a full-fledged Elixir implementation, which is 
non-trivial, but something we've been intending on doing at some point. 
The main problems lie in how the Erlang library handles enums and constants: it 
puts them in a .hrl file and Elixir can't get access to them (they're actually 
compiled away). Additionally, it models structs as erlang records, while Elixir 
has a concept of a struct, which is a better fit here.

If I get some time, I would consider contributing back an elixir 
implementation. 

Thanks for merging.

> Erlang libraries should have service metadata
> ---------------------------------------------
>
>                 Key: THRIFT-3582
>                 URL: https://issues.apache.org/jira/browse/THRIFT-3582
>             Project: Thrift
>          Issue Type: Improvement
>          Components: Erlang - Compiler
>    Affects Versions: 0.9.3
>            Reporter: Steve Cohen
>            Assignee: Steve Cohen
>              Labels: patch
>             Fix For: 1.0
>
>         Attachments: thrift-3582_add_erlang_metadata.patch
>
>
> The generated erlang libraries make heavy use of service metadata to 
> function, but omit key aspects of the thrift service, such as the names of 
> the generated functions, enums and structs. 
> Not having these metadadata makes writing libraries much more difficult.  The 
> included patch adds these metadata. It will make projects like 
> http://github.com/pinterest/riffed/ much better. 



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)

Reply via email to