Dinfio 3.1 is on the Way.

Your beloved language is about to come with 10x faster performance.
And... Welcome, Linux and macOS!

Coming this Fall  Try Online

What is Dinfio?

Dinfio is a high-level, general-purpose, interpreted, minimalist, and simple programming language. Dinfio's design philosophy is "code simple!". Here is an example of "Hello world" program in Dinfio:

    writeln("Hello world!")

Or just:

writeln("Hello world!")

Dinfio supports multiple paradigms, including imperative, procedural, object-oriented, and event-driven programming. Dinfio comes with great built-in modules, like Standard I/O, String functions, Mathematical functions, File I/O, and Graphical User Interface (GUI).

So, let's get started!

  1. Download and install the Dinfio Programming Language
  2. Launch your favourite text editor and code this:
    ' My first program
        for i, 1, 5
            writeln("Hello, I'm Dinfio")

  3. Save your code with .fio extension, for example we'll save it as D:\Greeting.fio
  4. Launch command prompt and type dinfio-console "D:\Greeting.fio". You'll see the greeting:
    Hello, I'm Dinfio
    Hello, I'm Dinfio
    Hello, I'm Dinfio
    Hello, I'm Dinfio
    Hello, I'm Dinfio

  5. Viola! You have created your first program using Dinfio.


You can download the latest version of Dinfio and Dinfio IDE[?] here:

Download Dinfio + Dinfio IDE Download Dinfio Only Download Dinfio IDE Only

Current Dinfio version: 3.0.12, current Dinfio IDE version: 3.0.22.
For this time, Dinfio only supports Windows operating system.

See Release Notes


The Dinfio IDE[?] comes with many great Dinfio program examples. You can find them on <Dinfio IDE installation path>\examples\ folder. And here is an example of great GUI Programming in Dinfio with very simple code lines:

' GUI Programming

import gui
function create_gui()
    global gui_window: window
    global gui_label: label
    global gui_textbox: textbox
    global gui_button: button
    window = gui_window("Hello!", gui_window_sizable, 260, 130)
    label = gui_label("Your name: ", window, 20, 20)
    textbox = gui_textbox("", window, 100, 17)
    button = gui_button("OK", window, 99, 50, 60)
    button.addevent(gui_onclick, "button_click()")
function button_click()

It's very simple, isn't it? You can even find more great and fun Dinfio program examples on the Dinfio Playground.

Dinfio 3.0. A Big Upgrade

Dinfio has been upgraded with a big change in version 3.0! A reference variable and function is now like a primitive variable and function as well. No more @ in front of a reference. It makes your beloved language is now even simpler. Here is the difference:

' Dinfio 3.0

a = array()
window = gui_window("Hello")
' Dinfio 2.0

@a = @array()
@window = @gui_window("Hello")

Declaration of a function is also simplified:

' Dinfio 3.0

function get_adjacent(vertex: v, max)
' Dinfio 2.0

function @get_adjacent(vertex @v, max)

And many more changes and additions! See Release Notes for the complete changes and additions.


Dinfio IDE is the default Integrated Development Environment (IDE) for creating your Dinfio programs. You can directly run your programs from the IDE. Dinfio IDE comes with so many features, including Syntax highlighting, Auto completion, Code hint, Editor theming, and many more.

Here are some of Dinfio IDE screenshots:

The overview


Run program


Auto completion


Dark theme


Editor style customisation