You’re right. Going back to my physics example, all the variables in a physics problem are actually of the same type, float. So you’d need more specific types, but that would be infeasible-the whole point of types in a general purpose language is that they’re general enough for any use case.
This makes me wonder: what if there was a language where variable names are determined according to the type, with the option of overriding with a custom name. So a variable of type http.Request would automatically be named “req”, the next one in scope would be “req2”, etc.
If you think about it, when you solve a physics problem, for instance, you call every mass “m1”, “m2”, etc. Maybe this would be another step in Go’s direction of conforming style to make code more standard and readable.
As a graduating senior in CS who is super interested in working in BCI, may I ask how you got into the field? I would love to work somewhere like Neuralink but it seems that most of these companies are not hiring new grads (understandably, perhaps). I might just get this or openbci and do a project on my own, to start.