I think "luan:Luan" is not the issue. It is the usage that matters. For example:
for i in Luan.range(1, 10) do
...
end
__________________________________
for i in Basic.range(1, 10) do
...
end
__________________________________
for i in Core.range(1, 10) do
...
end
__________________________________
for i in Lang.range(1, 10) do
...
end
I think Luan.range() makes more sense and it is the easiest to remember, so I prefer it. All other cases look very strange to me. Of course we could do:
local Luan = require "luan:Core"
but this is kind of cheating. What do you think?