You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Most primitives (see builtin.clj) got their names from the Python version of metaprob. I was hesitant to change them lest we lose python compatibility. But now, having dropped that requirement, we could rename them.
For example, the arithemetic primitives are add, sub, mul, div, le, gte and so on. They could be + - * / < >= and so on.
A few other clojure inconsistencies are: length/count, tuple/vector.
More generally, there has been no overall review of the language design now that we are dropping the Python compatibility requirement.
The text was updated successfully, but these errors were encountered:
This is mostly done. New names are available and instituted through much of the code. Old names preserved temporarily. Left infer.clj alone pending merge of #25.
I'm going to close this. length is not really the same as count because count of a nonempty list has to always return 1 (only 1 subtrace key) while length has to return its length. Changing tuple to vector is a big pervasive change and should be done separately. block vs. do is discussed in #59. We talked about doing a comprehensive review and this will come again then.
Most primitives (see builtin.clj) got their names from the Python version of metaprob. I was hesitant to change them lest we lose python compatibility. But now, having dropped that requirement, we could rename them.
For example, the arithemetic primitives are
add, sub, mul, div, le, gte
and so on. They could be+ - * / < >=
and so on.A few other clojure inconsistencies are:
length
/count
,tuple
/vector
.More generally, there has been no overall review of the language design now that we are dropping the Python compatibility requirement.
The text was updated successfully, but these errors were encountered: