Hacker Newsnew | past | comments | ask | show | jobs | submit | rcharles's commentslogin

Some(all?) compilers transform your code into something like this internally. Its called static single assignment form. https://en.wikipedia.org/wiki/Static_single_assignment_form


Though it's true that compilers usually turn assignments into SSA, that's not really the same as what parent was referring to. Static single assignment has the same semantics as normal C-style assignments. The parent was referring to assignments that have (Erlang's) pattern match semantics.

Also, there's a simple counterexample. You can have static single assignment that has dynamic multiple assignment (e.g. within a loop construct). Under the pattern-matching semantics, evaluating the assignment (or rather the pattern match) a second time could fail, whereas an assignment always succeeds.


>"Though it's true that compilers usually turn assignments into SSA"

What is SSA here?


Static single assignment (see Wikipedia link in grandparent).


Oh I hope NVIDIA/AMD start mining themselves to end this abomination.


Flash flooding? Fill the bathtub!


I wouldn't mind 100% now dead if it means GPUs are affordable again.


Professionally - Ruby and JavaScript.

I have some experience with other languages such as C, C++, Java(Java seems to be my school's favorite language), Python and a few other more obscure languages(Common Lisp, Haskell), but I have not been paid to write anything in those yet.

I realize potential future employers will probably only give me credit for Ruby and JavaScript unless I create some amazing open source projects in one of the other languages and that employer considers open source projects in their hiring decision.


You're probably in good shape then. Some languages can pigeon hole you into bad roles, but with Ruby specifically you can have a lot of mobility.


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

Search: