TL;DR: Difference between revisions
J draft |
|||
Line 87:
=={{header|J}}==
J is a dialect of
=={{header|Java}}==
|
Revision as of 21:46, 22 September 2023
"TL;DR" stands for "Too Long; Didn't Read." It's a summary or abbreviation used to provide a brief overview of a longer piece of content, making it easier for readers to quickly grasp the main points without going into details.
- Task
Give a brief overview of a programming language. Brief means a hundred words or fewer, preferably fewer.
Focus on the language's key features, design principles, and typical use cases without making direct comparisons or using negative language. Aim to provide an informative and neutral introduction to the language.
APL
APL (A Programming Language) is an array-oriented programming language developed by Kenneth E. Iverson in the 1960s. Its central datatype is the multidimensional array. APL uses a large range of special graphic symbols to represent most functions and operators, leading to very concise code. It has been influential in the development of concept modeling, spreadsheets, functional programming, and computer math packages. APL is known for its powerful and concise syntax, enabling developers to think more about the problem they’re trying to solve than how to express it to a computer. It’s particularly well-suited for working with arrays and matrices, making it an excellent choice for numerical analysis and scientific computing.
Asymptote
Asymptote is a powerful descriptive vector graphics language that provides a natural coordinate-based framework for technical drawing. Labels and equations are typeset with LaTeX, the de-facto standard for typesetting mathematics. A major advantage of Asymptote over other graphics packages is that it is a programming language, as opposed to just a graphics program. You can even run it in your browser without installing it, using the Asymptote Web Application.
BASIC256
BASIC-256 is an easy to use version of BASIC designed to teach anybody (especially middle and high-school students) the basics of computer programming. It uses traditional control structures like gosub, for/next, and goto, which helps kids easily see how program flow-control works. It has a built-in graphics mode which lets them draw pictures on screen in minutes, and a set of detailed, easy-to-follow tutorials that introduce programming concepts through fun exercises.
Brainf***
Brainf*** is an esoteric programming language created by Urban Müller in 1993. It is notable for its extreme minimalism, consisting of only eight simple commands, a data pointer, and an instruction pointer. While it is fully Turing complete, it is not intended for practical use but rather to challenge and amuse programmers. Brainf*** requires breaking commands into microscopic steps and is known for its complexity and difficulty to understand. The language’s name is a reference to the slang term “mindf***,” which refers to things so complicated or unusual that they exceed the limits of one’s understanding.
C
C is a powerful and widely used programming language known for its efficiency and control over computer hardware. It's often used in systems programming, embedded systems, and developing low-level software. C provides direct memory manipulation and hardware access, making it suitable for tasks where performance and control are critical. However, it requires careful management of memory and lacks some modern abstractions found in higher-level languages.
C++
C++ is an extension of C, adding object-oriented features. It's used for a wide range of applications, including game development, systems programming, and high-performance software.
Chipmunk Basic
Chipmunk Basic is an interpreter for the BASIC Programming Language. It runs on multiple OS platforms, and is reasonably fast for a pure interpreter. Chipmunk Basic presents a traditional (vintage) terminal-command-line programming environment, and supports a simple, old-fashioned, and easy-to-learn dialect of the Basic Programming Language. (Line numbers are required when using the built-in command-line console, but are not required in Basic programs written using an external text editor.)
COBOL
COBOL (Common Business-Oriented Language) is one of the oldest programming language still in use today. Originally intended primarily for business and finance applications it was designed to be as English-like as possible. Since its beginning, it has evolved whilst still retaining its flavour. The latest standard is COBOL 2023. It's known for its readability and suitability for large-scale data processing tasks.
Dart
Dart is a modern, cross-platform, object-oriented programming language. It can be used to create web, mobile and desktop applications with a single source code. Dart has a clear and concise syntax, a static and dynamic type system, and supports functional and reactive programming. Dart runs in a virtual machine that optimizes code performance and security. Additionally, Dart can be compiled to JavaScript or native code to take advantage of each platform's capabilities.
F#
A language avoiding iffy and loopy code by concentrating on the functional in a universe of programmers only too keen to objectify.
Factor
Factor is a stack-based, concatenative programming language designed for efficient and concise code. It emphasizes code reuse through composition of functions and is used for tasks like symbolic math, data analysis, and compiler development.
Forth
Forth is a stack-based, minimalistic programming language designed for embedded systems and low-level control. It uses a Reverse Polish Notation (RPN) syntax and relies heavily on a stack for data manipulation. Forth is known for its efficiency and suitability for tasks that require precise hardware control and real-time processing, such as microcontroller programming. It's known for being compact, simple, and highly adaptable to various hardware architectures.
Fortran
Fortran (formerly FORTRAN) is a general-purpose, compiled imperative programming language that is especially suited to numeric computation and scientific computing. It was developed by IBM in the 1950s for scientific and engineering applications and has since become a dominant language in scientific computing. Fortran is known for its speed and is used in computationally intensive areas such as numerical weather prediction, finite element analysis, computational fluid dynamics, geophysics, computational physics, crystallography, and computational chemistry. It has evolved over the years, adding support for structured programming, array programming, modular programming, object-oriented programming, concurrent programming, and native parallel computing capabilities.
FreeBASIC
FreeBASIC is a high-level programming language that supports procedural, object-oriented and metaprogramming paradigms, with a syntax compatible with Microsoft QuickBASIC but expanding its capabilities.
FreeBASIC is a free/open source (GPL) BASIC compiler for Microsoft Windows, DOS, and Linux. It is also a self-hosted compiler that uses the GNU binutils programming tools as a backend and can produce console executables, graphics/GUIs, dynamic and static libraries. FreeBASIC fully supports the use of C libraries and partially supports C++ libraries.
Fōrmulæ
Fōrmulæ is a free, open source, symbolic, visual, homoiconic, high-level, multi-paradigm, arbitrary-precision programming language for scripting in academic and research environments. The main objectives of the language are: to create programs with a notation closer to algorithms and mathematics; to minimize the requirements for the programmer (only a web browser is needed) and; to have modularity of the language, packages incorporating new elements to the language can be created and dinamically/selectively added.
Gambas
Gambas is the name of an object-oriented dialect of the BASIC programming language, as well as the integrated development environment that accompanies it. Designed to run on Linux and other Unix-like computer operating systems, its name is a recursive acronym for Gambas Almost Means Basic.
Go
Go is a statically typed, compiled language developed by Google. It's designed for simplicity and efficiency and is often used for web servers and system-level programming.
Haskell
Haskell is a functional programming language known for its strong type system and pure functional paradigm. It's used in academia and industry for research in programming language theory, as well as for building high-assurance and critical systems.
J
J is a dialect of APL, specifically of SHARP, which limits itself to the ASCII character set (where APL was originally based on a specialized extension of the EBCDIC character set), with some academically oriented features.
Java
Java is a widely used, platform-independent programming language known for its "Write Once, Run Anywhere" capability. It's commonly used for building cross-platform applications, including web, mobile, and enterprise software.
JavaScript
JavaScript is a popular scripting language primarily used for web development. It enables interactive and dynamic web pages and is supported by all major web browsers.
Julia
Julia is a high-level, open-source programming language built for scientific and technical computing. It excels at numerical and data-intensive tasks, offering performance comparable to low-level languages like C and Fortran. Julia's key features include a just-in-time (JIT) compiler, multiple dispatch, and a rich ecosystem of packages for math, data analysis, and machine learning. Its design focuses on ease of use and speed, making it a popular choice for researchers, engineers, and data scientists working on computationally intensive projects. Julia is versatile, enabling seamless integration with other languages like Python and C, making it a valuable tool in scientific computing and data analysis.
Logo
Logo is a programming language designed for educational purposes, particularly for teaching concepts of computer programming to children and beginners. Developed in the late 1960s, Logo is known for its simplicity and the use of a turtle graphics system, where a graphical "turtle" can be directed to move and draw on the screen using simple commands. Logo's key features include an easy-to-understand syntax, an interactive environment, and a focus on procedural and recursive programming. It encourages problem-solving and creativity, making it a valuable tool for introducing programming concepts, logic, and geometry to learners of all ages.
Lua
Lua is an open-source scripting language designed for ease of learning, portability and ease of embedding in applications. Lua is particularly popular in the gaming industry but is widely used in other spheres and as a stand-alone programming language. Noted for simplicity and speed (even without luaJIT and other JIT compilers). Programs can be run from source or pre-compiled to byte code.
Mathematica
Mathematica is a general multi-paradigm programming language developed by Wolfram Research. It is the programming language of Wolfram Mathematica and the Wolfram Programming Cloud. Mathematica is designed to be as general as possible and emphasizes symbolic computation, functional programming, and rule-based programming. It has been widely used in scientific, engineering, mathematical, and computing fields. The language is known for its powerful capabilities in symbolic computation, making it suitable for a wide range of mathematical tasks.
Openscad
OpenSCAD is software for creating a 2D/3D and solid modeling that is based on a Functional programming language used to create models that are previewed on the screen, and rendered into 3D mesh which allows the model to be exported in a variety of 2D/3D file formats. Is free software and available for Linux/UNIX, MS Windows and Mac OS X.
Perl
Perl is a versatile and expressive scripting language known for its text processing capabilities. It's used in web development, system administration, and network programming.
Phix
Phix is an entirely self-hosted interpreter/compiler1 that runs on Windows and Linux desktops2, and can be transpiled to JavaScript3 and run in a browser.
It is designed for simplicity and ease of use while offering powerful features. Phix is used for a wide range of applications, including general-purpose programming, scripting, and game development. It's known for its clean and concise syntax.
1 best of both: super-fast dev cycle, and hassle-free standalone shipping.
2 currently limited to x86/x64, but (long-term) plans are in motion to target ARM.
3 a significant subset, including GUI apps (examples here) but obviously not inline assembly or cffi.
PHP
PHP is a server-side scripting language commonly used for web development. It's known for its ability to generate dynamic web content and interact with databases.
Prolog
Prolog is a logic programming language. It has an important role in artificial intelligence. It is primarily a declarative programming language. In Prolog, logic is expressed as relationships (called Facts and Rules). The heart of Prolog lies in the logic that is applied. The formulation or calculation is carried out by executing a query on these relationships.
PureBasic
PureBasic is a programming language that combines the simplicity of BASIC with the power and speed of C. The key features of PureBasic are portability (Windows, Linux, OS Very fast and optimized 32 or 64-bit natives. It is an ideal language for beginners and experts who want to create fast and efficient programs.
Python
Python is a versatile and easy-to-read programming language known for its simplicity and readability. It's widely used for web development, data analysis, artificial intelligence, and more, thanks to a vast ecosystem of libraries and frameworks. Python uses indentation for code structure and is beginner-friendly, making it a popular choice for both beginners and experienced developers.
Quackery
Quackery is a lightweight, open-source, homoiconic (treats code as data) programming language designed for recreational and educational purposes. It's inspired by Lisp and Forth and runs on a virtual processor. It uses stacks extensively and supports dynamic memory management. The language is simple and not designed for high-performance tasks, making it suitable for learning and experimentation. It's implemented as a Python function and can be easily implemented in other languages that support bignums, dynamic arrays, first-class functions, and automatic memory management.
Quite BASIC
Quite BASIC is a simple and fun programming language that can be used to create games and applications. It is based on the BASIC language, which was one of the first popular programming languages. It has an easy-to-learn syntax that allows you to use graphics, sounds, and keyboard and mouse events. It allows programming directly in the web browser, without the need to install anything.
R
R is a language and environment for statistical computing and graphics. It's widely used in data analysis, machine learning, and scientific research.
RPL
RPL is a proprietary stack-based interpreted language created in the 1980s for pocket calculators used by STEM students and engineers. It aims at automating complex calculations and problem-solving involving numbers, matrices and algebraic expressions.
Ruby
Ruby is a dynamic, high-level scripting language known for its elegant and concise syntax. It's used for web development (Ruby on Rails) and various scripting tasks.
Rust
Rust is a modern systems programming language that combines high performance with strong safety guarantees. It's designed to prevent memory-related bugs like null pointer dereferences and buffer overflows, making it a safer choice for system-level programming. Rust also offers modern language features like pattern matching and functional programming constructs. It's gaining popularity for its ability to provide both performance and safety, making it suitable for tasks ranging from system programming to web development.
Scala
Scala is a hybrid programming language that combines functional and object-oriented programming features. It's designed to be concise and expressive, and it runs on the Java Virtual Machine (JVM). Scala is used for web development, data processing, and building scalable applications.
Scheme
Scheme is a simple and minimalist programming language known for its elegant and expressive syntax. It's a dialect of Lisp and is used in teaching computer science concepts. Scheme promotes functional programming and features first-class functions, lexical scoping, and powerful macros. Despite its simplicity, it's a Turing-complete language capable of handling a wide range of programming tasks.
SQL
SQL (Structured Query Language) is not a general-purpose programming language but a domain-specific language for managing and querying relational databases. It's used for data manipulation and retrieval.
Swift
Swift is a modern, open-source programming language developed by Apple. It's used for building iOS, macOS, watchOS, and tvOS applications, known for its safety features and performance.
True BASIC
The Original BASIC since 1964. Simple to use, with the full complement of functions and statements in every version, it is widely used in education and by individual programmers. Allows you to write and run structured code as well as line-numbered legacy code, and even compile/bind your own standalone applications.
Verilog
Verilog is a formal language to describe and implement electronic circuits. It is similar to a programming language imperative: formed by a set of sentences that indicate how to perform a task. Some differences:
- Most statements are executed concurrently
- Each statement corresponds to a circuit block
Wren
Wren is a lightweight, dynamically typed scripting language designed for embedding in applications and game engines. It focuses on simplicity, performance, and ease of integration, making it suitable for extending the functionality of other software or for game scripting.
X10
X10 is a statically-typed object-oriented language, extending a sequential core language with places, activities, clocks, (distributed, multi-dimensional) arrays and struct types. All these changes are motivated by the desire to use the new language for high-end, high-performance, high-productivity computing.
Yabasic
Yabasic is a traditional basic-interpreter. It comes with goto and various loops and allows to define subroutines and libraries. It does simple graphics and printing. Yabasic can call out to libraries written in C and allows to create standalone programs. Yabasic runs under Unix and Windows and has a comprehensive documentation; it is small, simple, open-source and free.
Yacas
Yacas is an easy to use, general purpose Computer Algebra System, a program for symbolic manipulation of mathematical expressions. It uses its own programming language designed for symbolic as well as arbitrary-precision numerical computations. The system has a library of scripts that implement many of the symbolic algebra operations; new algorithms can be easily added to the library.