Way to add computed properties to a type?

question

#1

Let’s say you have a type:

struct User
    first_name::AbstractString
    last_name::AbstractString
end

Is there a way to have a computed property called name on User that calls a function (and maybe caches it) using the following syntax:

User.name

// User.name |= User.first_name * " " * User.last_name

#2

https://github.com/JuliaLang/julia/issues/1974