Arc Forumnew | comments | leaders | submitlogin
1 point by akkartik 5317 days ago | link | parent

Yeah that was the one. scar/scdr don't have to make more sense than car/cdr. And they're kinda internal details, same as assign. Most of the time we'll just use (= (car ..) ..). That'll do, no?


1 point by evanrmurphy 5317 days ago | link

I guess so, but changing 'set to 'assign would seem to indicate some sensitivity about the internal details on the language designer's part, and I think they are more important in code-as-spec languages like Arc. Granted you're right the naming of 'scar etc. isn't as important as the naming of commonly used forms like '=.

-----

1 point by akkartik 5317 days ago | link

I believe set was renamed to assign to free up the name for a better use.

The way I think about it: code as spec implies the implementation should be concise and easy to read, and externally exposed names should be approximately hamming encoded. Internal names can be longer without compromising conciseness (which is measured in tokens) or readability.

It's not black and white, just relative priorities.

-----