address taken. C# When executing a program written in C#, the CLR searches for a static method marked with the .entrypoint IL directive, which takes either no arguments, or a single argument of type string[], and has a return type of void or int, and executes it. static void Main(); static void Main(string[] args); static int Main(); static int Main(string[] args); Command-line arguments are passed in args, similar to how it is done in Java. For versions of Main() returning an integer, similar to both C and C++, it is passed back to the environment as the exit status of the process. Since C#7.1 there are four more possible signatures of the entry point, which allow asynchronous execution in the Main() Method. static async Task Main() static async Task<int> Main() static async Task Main(string[]) static async Task<int> Main(string[]) The Task and Task<int> types are the asynchronous equivalents of void and int. async is required to allow the use of asynchrony (the await keyword) inside the method. Clean Clean is a functional programming language based on graph rewriting. The initial node is named Start and is of type *World -> *World if it changes the world or some fixed type if the program only prints the result after reducing Start. Start :: *World -> *World Start world = startIO ... Or even simpler Start :: String Start = "Hello, world!" One tells the compiler which option to use to generate the executable file. Common Lisp ANSI Common Lisp does not define a main function; instead, the code is read and evaluated from top to bottom in a source file. However, the following code will emulate a main function. (defun hello-main () (format t "Hello World!~%")) (hello-main) D In D, the function prototype of the main function looks like one of the following: void main(); void main(string[] args); int main(); int main(string[] args); Command-line arguments are passed in args, similar to how it is done in C# or Java. For versions of main() returning an integer, similar to both C and C++, it is passed back to the environment as the exit status of the process. Dart Dart (programming language) is a General-purpose programming languagethat is often used for building web and mobile applications. Like many other programming languages, Dart has an entry point that serves as the starting point for a Dart program. The entry point is the first function that