Erik Meijer | KotlinConf 2024, May 22–24, Copenhagen
all speakers

Erik Meijer

Erik Meijer

Think like a fundamentalist, code like a hacker.

Virtual Machinations: Leveraging the Linguistic Bytecode of Large Language Models to Emulate Program

If AI is the new embodiment of computing, we need to adjust the way we as humans communicate with and instruct AIs to perform desired tasks. However, natural language is inefficient for expressing ideas and instructions precisely. This is why computer scientists create programming languages. All programming languages share the design principles of , naming arbirtrary things, and refering to these things by their names; and , leaving named holes for things that can be filled in by actual things via application.

We will demonstrate the design of a natural language based programming language that is also based the prinples of abstraction and parametrization. Moreover, we will show how we can implement this language by using a large language model as its virtual machine on top of an instruction set implemented in KotlinScript. This approach leverages the LLM's capacity as a general sequence predictor, transforming it into a tool for generating sequences of instructions for our newly designed language.

The correspondence between LLMs and VMs enables the transfer of numerous techniques and insights from the programming language domain to the realm of LLMs. This cross-pollination of concepts opens up new avenues for utilizing LLMs to effectively execute complex computational tasks. By leveraging the strengths of both natural language and programming languages, we can bridge the communication gap between humans and AI systems, paving the way for a future of seamless and intuitive AI interaction.