Hacker Newsnew | past | comments | ask | show | jobs | submitlogin

< is a function in Common Lisp and similar dialects, so that is moot.

A reason to make it an operator is that short circuiting is a possibility. If (< 1 x) in (< 1 x y z), y and z need not be evaluated.

A compiler which understands the semantics of < can do that anyway for the function, provided that no necessary side effects are elided. Like if evaluating y and z has no side effect other than preparing the operand (which still has a cost), that can be elided at least.



Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: