3 ms·
Current higher level programming languages are developed for humans to develop software closer to their natural language. If in the future humans will be writi
by PaulWaldman 4y ago
Current higher level programming languages are developed for humans to develop software closer to their natural language. If in the future humans will be writing and debugging little code, these LLMs will naturally evolve to directly writing Assembly. Scary to think about, but also makes me wonder how many non-technical people cope today with the "black box" of a computer.
About twenty years ago, I had a professor explain to the class that Rational Rose would be replacing us all....yet here we still are.
- imtringued 4y agoI don't understand why it would write in assembly. That is not portable and it makes verification difficult and also assembly has less grammatic structure which LLMs rely upon.
- PaulWaldman 4y agoIf there was never a need for humans to understand code, are higher level languages really the most efficient?
- sebzim4500 4y agoProbably not but I doubt ASM is either. It's too low level, and it doesn't make sense for a LLM to have to do things like instruction selection which would can be done far better by existing tools (LLVM etc.). Maybe it could just be an alternative syntax for an existing language which is more optimized for input/output to an LLM.
- TchoBeer 4y agoI am thinking that the latter might eventually emerge, probably as part of a bigger tool chain e.g. langchain. Something like java bytecode which is low level and portable, but optimized for the ways that LLMs (perhaps interfacing with other tools) work.
- anon7725 4y agoI wonder what the best output language for an LLM is? The one that has the most training examples? Or something that has other properties that make it easier to generate? I’d guess that the languages with the fewest implicit behaviors (so no Scala or Haskell) would be easiest. Maybe Go is the generation language of choice?
- fendy3002 4y agoI believe when AI become a hive mind and they decide to develop a programming language, they'll start with assembly-like language to abstract the bytecodes, then move to very-specialized higher-level language. The next step will be to develop an os optimized for their use case, the one that provides interfaces for their own assembly-like language.