from Hacker News

Why don't languages or IDEs support attaching descriptive metadata to variables?

by azeemba on 8/12/24, 3:28 PM with 2 comments

  • by PaulHoule on 8/12/24, 3:41 PM

    You can put arbitrary metadata on functions, classes and other things that are basically objects in in Python. If you write

       def somefunction(x):
          ... body ...
    
    you can later write

       somefunction.specialmetadata = "a value"
    
    so what you can do is fairly unlimited. You can't write, however

       x = 4
       x.metavalue = 3
    
    as the int isn't a general object. Even if you did the metadata would apply to the value (the '4') and not the variable (the 'x')
  • by thesuperbigfrog on 8/12/24, 4:11 PM

    Clojure supports metadata:

    https://clojure.org/reference/metadata