# The Future of Programming: AI and Interface-Oriented Languages

DevFeed: [The Future of Programming: AI and Interface-Oriented Languages](<https://devfeed.tech/articles/the-future-of-programming-ai-and-interface-oriented-languages-20718.md>)

Original publisher: [Read original article](<https://medium.com/javascript-scene/the-future-of-programming-ai-and-interface-oriented-languages-119f155466ef?source=rss----c0aeac5284ad---4>)

Author: Eric Elliott

Published: 2023-07-24T18:59:09Z

Content type: tutorial

Language: en

Sources: [Eric Elliot](<https://devfeed.tech/sources/eric-elliot.md>)

Topics: [Programming language](<https://devfeed.tech/topics/programming-language.md>), [interfaces](<https://devfeed.tech/topics/interfaces.md>), [Programming](<https://devfeed.tech/topics/programming.md>), [Language models](<https://devfeed.tech/topics/language-models.md>), [Code](<https://devfeed.tech/topics/code.md>), [JavaScript](<https://devfeed.tech/topics/javascript.md>)

Tags: [ai](<https://devfeed.tech/tags/ai.md>), [c](<https://devfeed.tech/tags/c.md>), [chatgpt](<https://devfeed.tech/tags/chatgpt.md>), [code](<https://devfeed.tech/tags/code.md>), [future](<https://devfeed.tech/tags/future.md>), [interfaces](<https://devfeed.tech/tags/interfaces.md>), [javascript](<https://devfeed.tech/tags/javascript.md>), [language-models](<https://devfeed.tech/tags/language-models.md>), [languages](<https://devfeed.tech/tags/languages.md>), [programming](<https://devfeed.tech/tags/programming.md>), [python](<https://devfeed.tech/tags/python.md>), [rust](<https://devfeed.tech/tags/rust.md>), [software-development](<https://devfeed.tech/tags/software-development.md>), [technology](<https://devfeed.tech/tags/technology.md>)

## AI overview

This article introduces SudoLang, a programming language designed for collaboration with AI language models. It explains how interface-oriented programming can organize state, constraints, commands, and functions, and notes that SudoLang programs can be transpiled to languages including JavaScript, Python, Rust, and C.

## Source excerpt

AI language models, such as ChatGPT and Claude, empower anyone to create software. These models can intelligently understand problems, create solutions, and explain the solutions. But natural language isn't always the best way to communicate with AI. If you need to keep track of complex data and define how you interact with that data in specific ways, SudoLang can help. If you think this is only going to help with AI code, think again. You can author any program in SudoLang and then transpile it to other languages, like JavaScript, Python, Rust, or C -- so you can take advantage of these features no matter what kind of software you're building. What is SudoLang? SudoLang is a programming language designed to collaborate with AI language models including ChatGPT, Bing Chat, Anthropic Claude, and Google Bard. It is designed to be easy to learn and use. It is also very expressive and powerful. All advanced language models understand it without any special prompting. You do not need to paste the SudoLang specification before using SudoLang with your favorite AI. Please read the SudoLang documentation for more information about the language. Interfaces in SudoLang Interface-oriented programming lets you structure your program and easily declare what you want the AI to keep track of and how you want to interact with it. Interfaces are a powerful tool to encapsulate related state, constraints, commands, and functions. They organize the code in a clear, understandable, and reusable way. The key features of interfaces in SudoLang include: State: This represents the data associated with the interface. Constraints: These are rules or requirements defined in natural language that the AI maintains automatically. /Commands and methods: These are operations that can be performed on or by the interface. Here's a simple example: HelloCounter { message: "Hello, World!" count: 0 Constraints { count <= 10 } /increment - Increment count by 1. /say hello - Display the message. } HelloCoun