Top 1,000 Features Creators Resources Blog Explorer Download
GitHub icon

AutoIt

< >

AutoIt is an open source programming language created in 1999 by Jonathan Bennett.

#114on PLDB 25Years Old 5kRepos

AutoIt is a freeware automation language for Microsoft Windows. In its earliest release, the software was primarily intended to create automation scripts (sometimes called macros) for Microsoft Windows programs but has since grown to include enhancements in both programming language design and overall functionality. While the scripting language in AutoIt 1 and 2 was statement-driven, designed primarily for simulating user interaction, from version 3 onwards the AutoIt syntax is similar to that found in the BASIC family of languages. Read more on Wikipedia...


Example from hello-world:
MsgBox(0, "Message Box", "Hello World")
Example from Wikipedia:
; Find Average by JohnOne, modified by czardas #include <MsgBoxConstants.au3> _Example() ; Run the example. Func _Example() ; Display an input box and ask the user to enter some numbers separated by commas. Local $sInput = InputBox("Find Average", "Enter some numbers separated by commas: 1,2,42,100,3") ; If an error occurred then exit the script. If @error Then Exit ; Populate an array with the user's input. Local $aSplit = StringSplit($sInput, ",") ; Pass the array to the function _Find_Average() and then check for errors. Local $fAverage = _Find_Average($aSplit) If @error Then Exit ; Display the result in a message box. MsgBox($MB_OK, "Find Average", "Result: " & $fAverage) EndFunc ;==>_Example Func _Find_Average($aArray) ; If the input is not of the correct type (an array), then return an error along with the details. If Not IsArray($aArray) Then Return SetError(1, 0, VarGetType($aArray)) ; More detailed checks are possible, but for brevity just one is performed here. ; Declare a variable to store the sum of the numbers. Local $iArraySum = 0 ; Loop through the array. For $i = 1 To $aArray[0] ; Increment the sum by the number in each array element. $iArraySum += Number($aArray[$i]) Next ; Return the average rounded to 2 decimal places. Return Round($iArraySum / $aArray[0], 2) EndFunc ;==>_Find_Average
AutoIt Keywords
#include-once #include #endregion #forcedef #forceref #region and byref case continueloop dim do else elseif endfunc endif endselect exit exitloop for func global if local next not or return select step then to until wend while exit

Language features

Feature Supported Token Example
MultiLine Comments โœ“
Integers โœ“
; \d+
Floats โœ“
; (\d+\.\d*|\d*\.\d+)([eE][+-]?[0-9]+)?
Hexadecimals โœ“
; 0[xX][a-fA-F0-9]+
Octals โœ“
; 0\d+
Conditionals โœ“
While Loops โœ“
Strings โœ“ "
"Hello world"
Print() Debugging โœ“ MsgBox
Line Comments โœ“ ;
; A comment
Comments โœ“
Semantic Indentation X

View source

- Build the next great programming language ยท About ยท Acknowledgements ยท Extensions ยท Day 626 ยท feedback@pldb.io