Hi Jaap,
Is your basic concern the
[function: arity]
notation as opposed to the
function/arity
notation used in other places? I mean are you basically asking for the
notation to be unified? If so, would [function/arity, function/arity]
suffice assuming it were supportable? Something like
import Record, only: [defrecord/2, extract/2]
Just trying to understand the basis of your proposal.
oc
On Tuesday, September 13, 2016 at 12:30:37 AM UTC-4, Jaap Frolich wrote:
>
> Hi,
>
> Currently when we import a single or a few functions from a module this is
> the syntax to do it:
>
> import Record, only: [defrecord: 2, extract: 2]
>
> As this is something that is something quite common to do in a module, the
> syntax can be more user-friendly in my opinion.
>
> 1. The notation for a function is captured in data, while normally we
> describe functions with the function/arity notation
> 2. By default it imports *everything*, as this is often not what you
> want, it might be better to make it more explicit
> 3. Aesthetics, but that might be personal, I think it does not read as
> nice
>
> So how about having something like below syntax in the language:
>
> import defrecord/2, extract/2 from Record
>
> import * from Record
>
> This might be hard to implement, other candidates could be:
>
> import {defrecord/2, extract/2}, from: Record
>
> import {*}, from: Record
>
> As it might be easier to implement in the language using macros.
>
> (while we keep the existing import macro around.)
>
> Let me know what you think!
>
> Cheers,
>
> Jaap
>
--
You received this message because you are subscribed to the Google Groups
"elixir-lang-core" group.
To unsubscribe from this group and stop receiving emails from it, send an email
to [email protected].
To view this discussion on the web visit
https://groups.google.com/d/msgid/elixir-lang-core/d094c92b-f703-4ea7-974b-7ddd49be5b79%40googlegroups.com.
For more options, visit https://groups.google.com/d/optout.