On Thu, Nov 21, 2019 at 11:27 PM Micah Kornfield <emkornfi...@gmail.com> wrote: > > > > > I think we should mostly be careful about public APIs. With public > > APIs we should write out the types and avoid aliases. With > > implementation details and private/protected class members, I think it > > is fine to use aliases. > > My concern with this is that in general if the types are in the header > files they have a way of leaking out (whether intentional or not).
Yes, after looking at the PR that motivated this e-mail thread, I am concerned about having aliases in public header files > > > On Thu, Nov 21, 2019 at 12:06 PM Wes McKinney <wesmck...@gmail.com> wrote: > > > I think we should mostly be careful about public APIs. With public > > APIs we should write out the types and avoid aliases. With > > implementation details and private/protected class members, I think it > > is fine to use aliases. > > > > On Thu, Nov 21, 2019 at 11:06 AM Antoine Pitrou <solip...@pitrou.net> > > wrote: > > > > > > On Thu, 21 Nov 2019 08:40:10 -0500 > > > Francois Saint-Jacques <fsaintjacq...@gmail.com> wrote: > > > > This notation is already used in some parts of the codebase [1]. I > > > > think it was introduced when absorbing gandiva and then in a draft of > > > > the logical operations in the compute module. I have no strong opinion > > > > for/against. I find it convenient to reduce typing, but the style > > > > guide argue against this. > > > > > > > > What about other aliases (Vector & Iterator)? If we revert this > > > > change, we should do it uniformly, e.g. in gandiva and compute. > > > > > > Vector and Iterator sound ok to me (though Iterator could yield some > > > confusion with STL iterators, and Iterator<T> isn't really longer to > > > type than TIterator). > > > > > > Regards > > > > > > Antoine. > > > > > > > >