Ring (programming language)

From Wikipedia, the free encyclopedia
Jump to navigation Jump to search
Ring
Ringlogo transparent.png
ParadigmMulti-paradigm: object-oriented, imperative, functional, procedural, reflective, declarative, natural language programming
Designed byMahmoud Fayed
DeveloperThe Ring Development Team
First appearedJanuary 25, 2016; 3 years ago (2016-01-25)
Stable release
1.10 / January 25, 2019; 2 months ago (2019-01-25)
Typing disciplineDynamic, weak
Implementation languageC (primarily; some components C++)
OSLinux, macOS and Microsoft Windows
LicenseMIT License
Filename extensions.ring, .rh, .rform
Websitehttp://ring-lang.net
Influenced by
Lua, Python, Ruby, C, C#, BASIC, QML, xBase, Supernova[1]

Ring is a dynamically typed, general-purpose programming language. It can be embedded in C/C++ projects, extended using C/C++ code and/or used as a standalone language. The supported programming paradigms are imperative, procedural, object-oriented, functional, meta, declarative using nested structures, and natural programming. The language is portable (Windows, Linux, macOS, Android, etc.) and can be used to create console, GUI, web, game and mobile applications.[2][3][4]

History[edit]

  • In November 2011, the idea of the new language was conceived.
  • In Sept. 2013, the design and the implementation was started.
  • In April 2015, the language name was selected.
  • In May 2015, the compiler was implemented.
  • In Sept. 2015, the documentation was done.
  • In January 25, 2016 , Ring 1.0 was released.
  • In October 6, 2016, Ring 1.1 was released.
  • In January 25, 2017, Ring 1.2 was released.
  • In May 15, 2017, Ring 1.3 was released.
  • In June 29, 2017, Ring 1.4 was released.
  • In August 21, 2017, Ring 1.5 was released.
  • In November 30, 2017, Ring 1.6 was released.
  • In January 25, 2018, Ring 1.7 was released.
  • In June 25, 2018, Ring 1.8 was released.
  • In October 6, 2018, Ring 1.9 was released.
  • In January 25, 2019, Ring 1.10 was released.

[5] [6]

Goals[edit]

  • Applications programming language.
  • Productivity and developing high quality solutions that can scale.
  • Small and fast language that can be embedded in C/C++ projects.
  • Simple language that can be used in education and introducing Compiler/VM concepts.
  • General-Purpose language that can be used for creating domain-specific libraries, frameworks and tools.
  • Practical language designed for creating the next version of the Programming Without Coding Technology software.

[7]

Hello World program[edit]

The same program can be written using different styles. Here is an example of the standard "Hello, World!" program using three different styles.

The first style:

See "Hello, World!"

The second style:

Put "Hello, World!"

The third style:

Load "stdlib.ring"
Print("Hello, World!")

[8] [9] [10]

References[edit]

  1. ^ Ring Team (3 December 2017). "Ring and other languages". ring-lang.net.
  2. ^ Hany Salah (11 January 2016). "Ring: A New programming language". youm7.com. youm7.
  3. ^ Ilya Bubnov (12 December 2017). "5 languages for 5 years". geekbrains.
  4. ^ Ciklum (12 December 2017). "New Programming Languages – A Hype Or Reality?". ciklum.com. Ciklum.
  5. ^ G link Solutions Team (28 January 2019). "The evolution of the Ring programming language". glinksolutions.vn. GlinkSolution.
  6. ^ Ring Team (28 January 2019). "Ring Reference". ring-lang.net.
  7. ^ Ring Team (18 January 2017). "Ring Reference". ring-lang.net.
  8. ^ Rubin Liu (28 December 2017). "Different styles for writing Hello World program in the Ring programming language". codeproject.com. Code_Project.
  9. ^ Fayed, Mahmoud (18 January 2017). "Syntax Flexibility in Ring (Article)". Code_Project.
  10. ^ Roshan Ali (4 June 2018). "Ring programming tutorial". YouTube.

External links[edit]