Comment by jagged-chisel 14 days ago Pass-by-value is already a copy. 6 comments jagged-chisel Reply jcparkyn 14 days ago It's only semantically a pass-by-value, in reality a reference is passed and the data is only copied if needed (i.e. value is mutated while shared). zahlman 14 days ago So the language has reference semantics, and (per the edit) for every object (like in Python)?(Ah, no, your example elsewhere in the thread suggests that the referred-to structures get implicitly copied all over the place.) jcparkyn 14 days ago Nope, it's value semantics (unlike Python), the references are just an internal optimization. Implicit copies happen when a list/dict with more than one reference is mutated. 3 replies →
jcparkyn 14 days ago It's only semantically a pass-by-value, in reality a reference is passed and the data is only copied if needed (i.e. value is mutated while shared). zahlman 14 days ago So the language has reference semantics, and (per the edit) for every object (like in Python)?(Ah, no, your example elsewhere in the thread suggests that the referred-to structures get implicitly copied all over the place.) jcparkyn 14 days ago Nope, it's value semantics (unlike Python), the references are just an internal optimization. Implicit copies happen when a list/dict with more than one reference is mutated. 3 replies →
zahlman 14 days ago So the language has reference semantics, and (per the edit) for every object (like in Python)?(Ah, no, your example elsewhere in the thread suggests that the referred-to structures get implicitly copied all over the place.) jcparkyn 14 days ago Nope, it's value semantics (unlike Python), the references are just an internal optimization. Implicit copies happen when a list/dict with more than one reference is mutated. 3 replies →
jcparkyn 14 days ago Nope, it's value semantics (unlike Python), the references are just an internal optimization. Implicit copies happen when a list/dict with more than one reference is mutated. 3 replies →
It's only semantically a pass-by-value, in reality a reference is passed and the data is only copied if needed (i.e. value is mutated while shared).
So the language has reference semantics, and (per the edit) for every object (like in Python)?
(Ah, no, your example elsewhere in the thread suggests that the referred-to structures get implicitly copied all over the place.)
Nope, it's value semantics (unlike Python), the references are just an internal optimization. Implicit copies happen when a list/dict with more than one reference is mutated.
3 replies →