Alternatives to APL
Compare APL alternatives for your business or organization using the curated list below. SourceForge ranks the best alternatives to APL in 2024. Compare features, ratings, user reviews, pricing, and more from APL competitors and alternatives in order to make an informed decision for your business.
-
1
Odin
Odin Language
Odin is a general-purpose programming language with distinct typing built for high performance, modern systems and data-oriented programming. Odin is the C alternative for the Joy of Programming. Odin has been designed for readability, scalability, and orthogonality of concepts. Simplicity is complicated to get right, clear is better than clever. Odin allows for the highest performance through low-level control over the memory layout, memory management and custom allocators and so much more. Odin is designed from the bottom up for the modern computer, with built-in support for SOA data types, array programming, and other features. We go into programming because we love to solve problems. Why shouldn't our tools bring us joy whilst doing it? Enjoy programming again, with Odin!Starting Price: Free -
2
Scala
Scala
Scala combines object-oriented and functional programming in one concise, high-level language. Scala's static types help avoid bugs in complex applications, and its JVM and JavaScript runtimes let you build high-performance systems with easy access to huge ecosystems of libraries. The Scala compiler is smart about static types. Most of the time, you need not tell it the types of your variables. Instead, its powerful type inference will figure them out for you. In Scala, case classes are used to represent structural data types. They implicitly equip the class with meaningful toString, equals and hashCode methods, as well as the ability to be deconstructed with pattern matching. In Scala, functions are values, and can be defined as anonymous functions with a concise syntax.Starting Price: Free -
3
Apache Groovy
The Apache Software Foundation
Apache Groovy is a powerful, optionally typed and dynamic language, with static-typing and static compilation capabilities, for the Java platform aimed at improving developer productivity thanks to a concise, familiar and easy to learn syntax. It integrates smoothly with any Java program, and immediately delivers to your application powerful features, including scripting capabilities, Domain-Specific Language authoring, runtime and compile-time meta-programming and functional programming. Concise, readable and expressive syntax, easy to learn for Java developers. Closures, builders, runtime & compile-time meta-programming, functional programming, type inference, and static compilation. Flexible & malleable syntax, advanced integration & customization mechanisms, to integrate readable business rules in your applications. Great for writing concise and maintainable tests, and for all your build and automation tasks.Starting Price: Free -
4
Swift
Apple
Writing Swift code is interactive and fun, the syntax is concise yet expressive, and Swift includes modern features developers love. Swift code is safe by design and produces software that runs lightning-fast. Swift is the result of the latest research on programming languages, combined with decades of experience building Apple platforms. Named parameters are expressed in a clean syntax that makes APIs in Swift even easier to read and maintain. Even better, you don’t even need to type semi-colons. Inferred types make code cleaner and less prone to mistakes, while modules eliminate headers and provide namespaces. To best support international languages and emoji, Strings are Unicode-correct and use a UTF-8 based encoding to optimize performance for a wide-variety of use cases. You can even write concurrent code with simple, built-in keywords that define asynchronous behavior, making your code more readable and less error-prone.Starting Price: Free -
5
IronPython
IronPython
IronPython is an open-source implementation of the Python programming language which is tightly integrated with .NET. IronPython can use .NET and Python libraries, and other .NET languages can use Python code just as easily. Experience a more interactive .NET and Python development experience with Python Tools for Visual Studio. IronPython is an excellent addition to .NET, providing Python developers with the power of the .NET. Existing .NET developers can also use IronPython as a fast and expressive scripting language for embedding, testing, or writing a new application from scratch. The CLR is a great platform for creating programming languages, and the DLR makes it all the better for dynamic languages. Also, the .NET (base class library, presentation foundation, etc.) gives developers an amazing amount of functionality and power. IronPython uses Python syntax and standard libraries and so your Python code will need to be updated accordingly.Starting Price: Free -
6
MATLAB
The MathWorks
MATLAB® combines a desktop environment tuned for iterative analysis and design processes with a programming language that expresses matrix and array mathematics directly. It includes the Live Editor for creating scripts that combine code, output, and formatted text in an executable notebook. MATLAB toolboxes are professionally developed, rigorously tested, and fully documented. MATLAB apps let you see how different algorithms work with your data. Iterate until you’ve got the results you want, then automatically generate a MATLAB program to reproduce or automate your work. Scale your analyses to run on clusters, GPUs, and clouds with only minor code changes. There’s no need to rewrite your code or learn big data programming and out-of-memory techniques. Automatically convert MATLAB algorithms to C/C++, HDL, and CUDA code to run on your embedded processor or FPGA/ASIC. MATLAB works with Simulink to support Model-Based Design. -
7
Oxygene
RemObjects Software
Pascal is more relevant today than ever, and modern Pascal implementations such as Oxygene have a lot to bring to the table. Oxygene is a powerful general-purpose programming language, designed to let developers create all imaginable kinds of projects on a wide variety of platforms. To achieve this, it provides a combination of language features that ease the development processes, from basic object-oriented language concepts found in most modern languages (such as the concept of classes with methods, properties, and events) to sophisticated specialized language features that enable and ease specific development tasks (such as creating safe, multi-threaded applications), many of those unique to Oxygene. All of the provided features are based on the foundation of Object Pascal and stay true to the language design paradigms that make Pascal great, readable, and discoverable. As an object-oriented language, most code written in Oxygene lives in "classes".Starting Price: $199 one-time payment -
8
Lua
Lua
Lua is a powerful, efficient, lightweight, embeddable scripting language. It supports procedural programming, object-oriented programming, functional programming, data-driven programming, and data description. Lua combines simple procedural syntax with powerful data description constructs based on associative arrays and extensible semantics. Lua is dynamically typed, runs by interpreting bytecode with a register-based virtual machine, and has automatic memory management with incremental garbage collection, making it ideal for configuration, scripting, and rapid prototyping. Lua has a deserved reputation for performance. To claim to be "as fast as Lua" is an aspiration of other scripting languages. Several benchmarks show Lua as the fastest language in the realm of interpreted scripting languages. Lua is fast not only in fine-tuned benchmark programs, but in real life too. Substantial fractions of large applications have been written in Lua.Starting Price: Free -
9
PascalABC.NET
PascalABC.NET
The new generation Pascal programming language combines the simplicity of classic Pascal, a great number of modern extensions, and the broad capabilities of Microsoft .NET Framework. Free, simple, and powerful IDE. Built-in form designer for rapid development of Windows desktop applications. Download the latest version of PascalABC.NET with a build-in form designer. Several extensions of the Pascal language, including the foreach operator, in-block variable definitions, auto type deduction in variable definitions, simplified syntax of units, method implementations inside classes and records, a new operator for object construction, anonymous classes, auto-classes, BigIntegers, etc. The most modern features of programming languages like n-dimensional dynamic arrays, generics, interfaces, operator overloading, exceptions, garbage collection, and lambda expressions. IDE with integrated debugger, IntelliSense system, code templates, and code auto-formatting.Starting Price: Free -
10
Eclipse Ceylon
Eclipse Ceylon
Eclipse Ceylon is a language for writing large programs in teams. To learn more, read the 15 minute quick intro, before taking the tour of the language. The best way to try it out is to download the IDE and write some code. Then you can explore the modules in Ceylon Herd. Or you can try it online. This is a community project. Everything we produce is open source and all our work happens out in the open on GitHub and GitHub. Eclipse Ceylon's powerful flow-sensitive static type system catches many bugs while letting you express more, more easily: union and intersection types, tuples, function types, mixin inheritance, enumerated types, and reified generics. We spend more time reading other people's code than writing our own. Therefore, Eclipse Ceylon prioritizes readability, via a highly regular syntax, support for treelike structures, and elegant syntax sugar where appropriate.Starting Price: Free -
11
Cython
Cython
Cython is an optimizing static compiler for both the Python programming language and the extended Cython programming language (based on Pyrex). It makes writing C extensions for Python as easy as Python itself. Cython gives you the combined power of Python and C to let you write Python code that calls back and forth from and to C or C++ code natively at any point. Easily tune readable Python code into plain C performance by adding static type declarations, also in Python syntax. Use combined source code level debugging to find bugs in your Python, Cython, and C code. Interact efficiently with large data sets, e.g. using multi-dimensional NumPy arrays. Quickly build your applications within the large, mature, and widely used CPython ecosystem. The Cython language is a superset of the Python language that additionally supports calling C functions and declaring C types on variables and class attributes.Starting Price: Free -
12
AutoHotkey
AutoHotkey
Define hotkeys for the mouse and keyboard, remap keys or buttons and autocorrect-like replacements. Creating simple hotkeys has never been easier; you can do it in just a few lines or less! AutoHotkey is a free, open-source scripting language for Windows that allows users to easily create small to complex scripts for all kinds of tasks such as form fillers, auto-clicking, macros, etc. AutoHotkey has easy-to-learn built-in commands for beginners. Experienced developers will love this full-fledged scripting language for fast prototyping and small projects. AutoHotkey gives you the freedom to automate any desktop task. It's small, fast, and runs out of the box. Best of all, it's free, open-source (GNU GPLv2), and beginner-friendly. AutoHotkey provides a simple, flexible syntax allowing you to focus more on the task at hand rather than every single little technicality. It supports not only the popular imperative-procedural paradigm, but also object-oriented and command-based programming.Starting Price: Free -
13
C++
C++
C++ is a simple and clear language in its expressions. It is true that a piece of code written with C++ may be seen by a stranger of programming a bit more cryptic than some other languages due to the intensive use of special characters ({}[]*&!|...), but once one knows the meaning of such characters it can be even more schematic and clear than other languages that rely more on English words. Also, the simplification of the input/output interface of C++ in comparison to C and the incorporation of the standard template library in the language, makes the communication and manipulation of data in a program written in C++ as simple as in other languages, without losing the power it offers. It is a programming model that treats programming from a perspective where each component is considered an object, with its own properties and methods, replacing or complementing structured programming paradigm, where the focus was on procedures and parameters.Starting Price: Free -
14
Emojicode
Emojicode
Emojicode is an open-source, full-blown programming language, consisting of emojis. As a multi-paradigm language, Emojicode features object orientation, optionals, generics, closures, and protocols. Emojicode compiles native machine code using lots of optimizations that make your code fast. Emojicode comes with a comprehensive set of default packages. And you can easily write your own. We believe that Emojis have expressive force. Let’s use that to make programming more fun and accessible. Emojicode is a straightforward language to learn, whatever background you have. Our documentation is known to be excellent and stuffed with walk-through guides and examples. You can help Emojicode grow! Development takes place on GitHub and you’re invited to drop in. Before you install Emojicode make sure you have a C++ compiler and linker installed. clang++ or g++ is fine, for instance. The Emojicode compiler can only link binaries if such a compiler is available.Starting Price: Free -
15
PowerShell
Microsoft
PowerShell is a cross-platform task automation and configuration management framework, consisting of a command-line shell and scripting language. Unlike most shells, which accept and return text, PowerShell is built on top of the .NET Common Language Runtime (CLR), and accepts and returns .NET objects. This fundamental change brings entirely new tools and methods for automation. Unlike traditional command-line interfaces, PowerShell cmdlets are designed to deal with objects. An object is structured information that is more than just the string of characters appearing on the screen. Command output always carries extra information that you can use if you need it. If you've used text-processing tools to process data in the past, you'll find that they behave differently when used in PowerShell. In most cases, you don't need text-processing tools to extract specific information. You directly access portions of the data using standard PowerShell object syntax. -
16
Synergy DBL
Synergex
Synergy DBL is a proven, ANSI-standard business language with class libraries, a high-performance database, and .NET interoperability at the heart of the Synergy/DE product suite. Flexible and reliable, it gives you the power to create scalable, portable enterprise applications and supports both object-oriented and structured programming techniques. Synergy DBL comes in two forms: traditional Synergy DBL and Synergy DBL for .NET. Traditional Synergy DBL supports numerous open technologies (including XML, HTTPS, SSL, and ActiveX) that allow you to interface with third-party applications and data. The multi-pass Synergy DBL compiler supports strong prototyping and other strict error-detection features. Synergy DBL for .NET enables you to create Synergy libraries and applications that run natively in the .NET framework, then extend your applications by taking advantage of .NET Framework libraries and third-party controls and interoperating with applications written in other languages.Starting Price: Free -
17
ActionScript
ActionScript
The ActionScript® scripting language lets you add complex interactivity, playback control, and data display to your application. You can add ActionScript in the authoring environment by using the Actions panel, Script window, or an external editor. ActionScript follows its own rules of syntax, and reserved keywords, and lets you use variables to store and retrieve information. ActionScript includes a large library of built‑in classes that let you create objects to perform many useful tasks. You do not have to understand every ActionScript element to begin scripting. If you have a clear goal, you can start building scripts with simple actions. ActionScript and JavaScript are both rooted in the ECMA-262 standard, the international standard for the ECMAScript scripting language. For this reason, developers who are familiar with JavaScript can find ActionScript immediately familiar. Animate includes more than one version of ActionScript to meet the needs of different kinds of developers. -
18
Pine Script
TradingView
Pine Script® is TradingView’s programming language. It allows traders to create their own trading tools and run them on our servers. We designed Pine Script® as a lightweight, yet powerful, language for developing indicators and strategies that you can then backtest. Most of TradingView’s built-in indicators are written in Pine Script®, and our thriving community of Pine Script® programmers has published more than 100,000 community scripts. It’s our explicit goal to keep Pine Script® accessible and easy to understand for the broadest possible audience. Pine Script® is cloud-based and therefore different from client-side programming languages. While we likely won’t develop Pine Script® into a full-fledged language, we do constantly improve it and are always happy to consider requests for new features. Because each script uses computational resources in the cloud, we must impose limits in order to share these resources fairly among our users.Starting Price: Free -
19
GAUSS
Aptech Systems
An easy-to-use data analysis and visualization environment based on the powerful, fast and efficient GAUSS Matrix Programming Language. Prototype to production: Embed custom GAUSS analytics directly in enterprise or web-applications. Customizable programs that extend the GAUSS platform in the fields of econometrics, finance, risk analysis, statistics and more. You can code ideas and techniques straight from the latest journals in GAUSS as quickly as you can with a pen and paper. The GAUSS matrix language is the most natural way to bring cutting edge math, statistics and machine learning to life. GAUSS is the product of more than three decades of innovation and refinement of efficient, native code. This combined with our optimizing compiler and modern threading capabilities, allows you to get your answers before the competition. -
20
Forth
Forth
Forth, the computer language was created for programming embedded and real-time applications. Today, it is available for developing applications on Windows, DOS, and variants of Unix that include macOS. Additionally, commercial-grade Forth cross-compilers generate highly optimized code that runs on a variety of microprocessors and microcontrollers and proves themselves very capable in custom-hardware environments. Forth is a high-level programming language, although most versions include an assembler. Fourth-system providers often include software tools to help application code make good use of system resources. Forth is interactive. It is conducive to developing modular, well-tested code in shorter development times. It can also result in very concise code. Some programmers are not accustomed to languages with such brevity, directness, and (apparent) simplicity. Forth has a reputation for rapid development, lean code, and superb performance.Starting Price: $399 one-time payment -
21
Fortran
Fortran
Fortran has been designed from the ground up for computationally intensive applications in science and engineering. Mature and battle-tested compilers and libraries allow you to write code that runs close to the metal, fast. Fortran is statically and strongly typed, which allows the compiler to catch many programming errors early on for you. This also allows the compiler to generate efficient binary code. Fortran is a relatively small language that is surprisingly easy to learn and use. Expressing most mathematical and arithmetic operations over large arrays is as simple as writing them as equations on a whiteboard. Fortran is a natively parallel programming language with intuitive array-like syntax to communicate data between CPUs. You can run almost the same code on a single CPU, on a shared-memory multicore system, or on a distributed-memory HPC or cloud-based system.Starting Price: Free -
22
QML
Qt
QML is a declarative language that allows user interfaces to be described in terms of their visual components and how they interact and relate with one another. It is a highly readable language that was designed to enable components to be interconnected in a dynamic manner, and it allows components to be easily reused and customized within a user interface. Using the QtQuick module, designers and developers can easily build fluid animated user interfaces in QML, and have the option of connecting these user interfaces to any back-end C++ libraries. QML is a user interface specification and programming language. It allows developers and designers alike to create highly performant, fluidly animated and visually appealing applications. QML offers a highly readable, declarative, JSON-like syntax with support for imperative JavaScript expressions combined with dynamic property bindings.Starting Price: Free -
23
Common Lisp
Common Lisp
Common Lisp is the modern, multi-paradigm, high-performance, compiled, ANSI-standardized, most prominent (along with Scheme) descendant of the long-running family of Lisp programming languages. Common Lisp is known for being extremely flexible, having excellent support for object oriented programming, and fast prototyping capabilities. It also sports an extremely powerful macro system that allows you to tailor the language to your application, and a flexible run-time environment that allows modification and debugging of running applications (excellent for server-side development and long-running critical software). It is a multi-paradigm programming language that allows you to choose the approach and paradigm according to your application domain.Starting Price: Free -
24
Small Basic
Small Basic
Small Basic is the only programming language created especially to help students transition from block-based coding to text-based coding. By teaching the fundamental elements of syntax-based languages in an approachable manner, Small Basic gives students the skills and confidence to tackle more complex programming languages such as Java and C#. You can also build applications for Kinect, Lego Mindstorm, Raspberry Pi, Arduino, Oculus Rift, and more using Small Basic. Small Basic combines a friendly environment with a very simple language and a rich and engaging set of libraries to make your programs and games pop! In a matter of a few lines of code, you will be well on your way to creating your very own game! Share your programs with your friends and let them import your published programs and run them on their computers. Using the Silverlight player, you can even post your games on your own blogs and websites and play them in the browser.Starting Price: Free -
25
Eiffel
Eiffel Software
Eiffel is the most comprehensive approach to the construction of successful object-oriented software. You spend less on development, debugging, and maintenance. You get the bugs before they get you. You release quality products ahead of your competitors. Easier in every way, understanding, maintenance, reuse, and extension. Eiffel is the only approach that covers analysis, design, implementation, and maintenance in a single framework. Systems developed using Eiffel can be made portable across major industry platforms. Based on a small number of powerful ideas from computer science and software engineering. Products of all phases are recorded in a single document with multiple views. Exists to express the products of the Eiffel Method. Supports features not always available in competing technologies. Exception handling based on software specification (versus ad hoc try/catch). Widely recognized as simultaneously the simplest and most complete implementation of object-oriented concepts.Starting Price: Free -
26
Tcl
Tcl
Tcl is a very simple programming language. If you have programmed before, you can learn enough to write interesting Tcl programs within a few hours. This page provides a quick overview of the main features of Tcl. After reading this you'll probably be able to start writing simple Tcl scripts on your own; however, we recommend that you consult one of the many available Tcl books for more complete information. Each Tcl command consists of one or more words separated by spaces. In this example there are four words: expr, 20, +, and 10. The first word is the name of a command and the other words are arguments to that command. All Tcl commands consist of words, but different commands treat their arguments differently. The expr command treats all of its arguments together as an arithmetic expression, computes the result of that expression, and returns the result as a string. In the expr command the division into words isn't significant.Starting Price: Free -
27
FLooP
Ziring
FLooP was a very simple recursive block structured language invented by Douglas Hofstadter for his book Godel, Escher, Bach. It features a simple subroutine structure, very simple number and boolean handling, and recursion. Unlike its cousin BLooP, FLooP does support unbounded loops. This allows it to possess the full power of a Turing machine, thus making it fair game for various undecidability theorums. The syntax of FLooP is rather verbose but simple in structure. Though Hofstadter doesn't mention it in GEB, FLooP is similar to early exercises in exploring the computational model of "Random Access Machines". Note the use of 'CELL(0) <= 2' and similar constructs. Though FLooP was never intended to be more than an academic exercise, an implementation of FLooP in Perl was made. Unfortunately, I can't seem to find it. S - block-structured language type. -
28
BASIC
BASIC
BASIC (Beginners' All-purpose Symbolic Instruction Code) is a family of general-purpose, high-level programming languages designed for ease of use. Initially, BASIC concentrated on supporting straightforward mathematical work, with matrix arithmetic support from its initial implementation as a batch language, and character string functionality being added by 1965. The emergence of BASIC took place as part of a wider movement towards time-sharing systems. Some dialects of BASIC supported matrices and matrix operations, which can be used to solve sets of simultaneous linear algebraic equations. These dialects would directly support matrix operations such as assignment, addition, multiplication (of compatible matrix types), and evaluation of a determinant. BASIC declined in popularity in the 1990s, as more powerful microcomputers came to market and programming languages with advanced features (such as Pascal and C) became tenable on such computers. -
29
OCaml
OCaml
OCaml is a general-purpose, industrial-strength programming language with an emphasis on expressiveness and safety. OCaml’s powerful type system means more bugs are caught at compile time, and large, complex codebases are easier to maintain. This makes it a good language for running critical code. At the same time, sophisticated inference makes the type system unobtrusive, creating a smooth developer experience. One is a bytecode compiler which generates small, portable executables and is very fast. The other is a native code compiler that produces more efficient machine code; its performance matches the highest standards of modern compilers. OCaml has great support for the most popular editors. VS Code is recommended for beginners, and for power users there is deep integration with Vim and Emacs. OCaml has a rich and dynamic community and best-in-class tooling.Starting Price: Free -
30
Visual Basic
Microsoft
Visual Basic is an object-oriented programming language developed by Microsoft. Using Visual Basic makes it fast and easy to create type-safe .NET apps. Visual Basic focuses on supplying more of the features of the Visual Basic Runtime (microsoft.visualbasic.dll) to .NET Core and is the first version of Visual Basic focused on .NET Core. Many portions of the Visual Basic Runtime depend on WinForms and these will be added in a later version of Visual Basic. .NET is a free, open-source development platform for building many kinds of apps. With .NET, your code and project files look and feel the same no matter which type of app you're building. You have access to the same runtime, API, and language capabilities with each app. A Visual Basic program is built up from standard building blocks. A solution comprises one or more projects. A project in turn can contain one or more assemblies. Each assembly is compiled from one or more source files.Starting Price: Free -
31
Zig
Zig Software Foundation
Zig is a general-purpose programming language and toolchain for maintaining robust, optimal and reusable software. Focus on debugging your application rather than debugging your programming language knowledge. A fresh approach to metaprogramming based on compile-time code execution and lazy evaluation. No hidden control flow. No hidden memory allocations. No preprocessor, no macros. Call any function at compile-time. Manipulate types as values without runtime overhead. Comptime emulates the target architecture. Use Zig as a zero-dependency, drop-in C/C++ compiler that supports cross-compilation out-of-the-box. Leverage zig build to create a consistent development environment across all platforms. Add a Zig compilation unit to C/C++ projects; cross-language LTO is enabled by default.Starting Price: Free -
32
Objective-C
Objective-C
Objective-C is the primary programming language you use when writing software for OS X and iOS. It’s a superset of the C programming language and provides object-oriented capabilities and a dynamic runtime. Objective-C inherits the syntax, primitive types, and flow control statements of C and adds syntax for defining classes and methods. It also adds language-level support for object graph management and object literals while providing dynamic typing and binding, deferring many responsibilities until runtime. When building apps for OS X or iOS, you’ll spend most of your time working with objects. Those objects are instances of Objective-C classes, some of which are provided for you by Cocoa or Cocoa Touch and some of which you’ll write yourself. -
33
Ring
Ring
The Ring is a practical general-purpose multi-paradigm language. The supported programming paradigms are imperative, procedural, object-oriented, declarative using nested structures, functional, meta programming and natural programming. The language is portable (Windows, Linux, macOS, Android, WebAssembly, etc.) and can be used to create Console, GUI, Web, Games and Mobile applications. The language is designed to be simple, small and flexible. The language is simple, trying to be natural, encourage organization and comes with transparent and visual implementation. It comes with compact syntax and a group of features that enable the programmer to create natural interfaces and declarative domain-specific languages in a fraction of time. It is very small, flexible and comes with smart garbage collector that puts the memory under the programmer control. It supports many programming paradigms, comes with useful and practical libraries.Starting Price: Free -
34
C#
Microsoft
C# (also known as C Sharp, pronounced "See Sharp") is a modern, object-oriented, and type-safe programming language. C# enables developers to build many types of secure and robust applications that run in .NET. C# has its roots in the C family of languages and will be immediately familiar to C, C++, Java, and JavaScript programmers. This tour provides an overview of the major components of the language in C# 8 and earlier. C# is an object-oriented, component-oriented programming language. C# provides language constructs to directly support these concepts, making C# a natural language in which to create and use software components. Since its origin, C# has added features to support new workloads and emerging software design practices. At its core, C# is an object-oriented language. You define types and their behavior.Starting Price: Free -
35
Vyper
Vyper
Vyper is a contract-oriented, pythonic programming language that targets the Ethereum Virtual Machine (EVM). Security: It should be possible and natural to build secure smart-contracts in Vyper. Language and compiler simplicity: The language and the compiler implementation should strive to be simple. Auditability: Vyper code should be maximally human-readable. Furthermore, it should be maximally difficult to write misleading code. Simplicity for the reader is more important than simplicity for the writer, and simplicity for readers with low prior experience with Vyper (and low prior experience with programming in general) is particularly important.Starting Price: Free -
36
D
D Language Foundation
D is a general-purpose programming language with static typing, systems-level access, and C-like syntax. With the D Programming Language, write fast, read fast, and run fast. D is made possible through the hard work and dedication of many volunteers, with the coordination and outreach of the D Language Foundation, a 501(c)(3) non-profit organization. You can help further the development of the D language and help grow our community by supporting the Foundation. Discuss D on the forums, join the IRC channel, read our official Blog, or follow us on Twitter. Browse the wiki, where among other things you can find the high-level vision of the D Language Foundation. Refer to the language specification and the documentation of Phobos, D's standard library. The DMD manual tells you how to use the compiler. Read various articles to deepen your understanding.Starting Price: Free -
37
BLooP
BLooP
Welcome to the Dictionary of Programming Languages, a compendium of computer coding methods assembled to provide information and aid your appreciation for computer science history. BLooP was a very simple recursive block structured language invented by Douglas Hofstadter for his book Godel, Escher, Bach. It features simple subroutine structure, very simple number and boolean handling, and recursion. The interesting aspect of BLooP was that it offered only bounded loop constructs, and was therefore incapable of expressing certain general recursive computations.Starting Price: Free -
38
Julia
Julia
Julia was designed from the beginning for high performance. Julia programs compile to efficient native code for multiple platforms via LLVM. Julia uses multiple dispatch as a paradigm, making it easy to express many object-oriented and functional programming patterns. The talk on the Unreasonable Effectiveness of Multiple Dispatch explains why it works so well. Julia is dynamically typed, feels like a scripting language, and has good support for interactive use. Julia provides asynchronous I/O, metaprogramming, debugging, logging, profiling, a package manager, and more. One can build entire Applications and Microservices in Julia. Julia is an open source project with over 1,000 contributors. It is made available under the MIT license.Starting Price: Free -
39
Wolfram Language
Wolfram Language
We comply with providing the computational paradigm. The Wolfram Language provides access to computing power at a significantly higher level than ever before, leveraging built-in computational intelligence based on a wide variety of algorithms and real-world knowledge, carefully integrated over three decades. The Wolfram Language is scalable for programs both small and large, with out-of-the-box deployment both on-premises and in the cloud. In addition, the Wolfram Language builds on clear principles and an elegant unified symbolic framework to create what is now emerging as the world's most productive programming language, and the first true computational communication language for humans and AI.Starting Price: Free -
40
Crystal
Crystal
Crystal’s syntax is heavily inspired by Ruby’s, so it feels natural to read and easy to write, and has the added benefit of a lower learning curve for experienced Ruby devs. Crystal is statically type-checked, so any type errors will be caught early by the compiler rather than fail on runtime. Moreover, and to keep the language clean, Crystal has built-in type inference, so most type annotations are unneeded. All types are non-nilable in Crystal, and available variables are represented as a union between the type and nil. As a consequence, the compiler will automatically check for null references in compile time. Crystal’s answer to metaprogramming is a powerful macro system, which ranges from basic templating and AST inspection to types inspection and running arbitrary external programs.Starting Price: Free -
41
GameMaker Language (GML)
YoYo Games
The GameMaker Language (also called simply GML) is the proprietary GameMaker scripting language. This language is structured to permit users to create their games in an intuitive and flexible way while offering all the power of any other major programming language. It is also the basis for GML Visual and can be used in conjunction with that if required. Each event has its own tab in the editor and you can add, edit, or remove code from them at any time (for more information on events see Object Events). The code itself must have a basic structure and can contain resource indices, variables, functions, expressions, keywords, etc. all of which are explained in the sections below. If you are a novice to programming or making the switch from GML Visual, it is recommended that you start with the page on basic code structure and then read through all the other pages in this section, testing code from each one within GameMaker itself.Starting Price: Free -
42
Go
Golang
With a strong ecosystem of tools and APIs on major cloud providers, it is easier than ever to build services with Go. With popular open source packages and a robust standard library, use Go to create fast and elegant CLIs. With enhanced memory performance and support for several IDEs, Go powers fast and scalable web applications. With fast build times, lean syntax, an automatic formatter and doc generator, Go is built to support both DevOps and SRE. Everything there is to know about Go. Get started on a new project or brush up for your existing Go code. An interactive introduction to Go in three sections. Each section concludes with a few exercises so you can practice what you've learned. The Playground allows anyone with a web browser to write Go code that we immediately compile, link, and run on our servers.Starting Price: Free -
43
Clojure
Clojure
Clojure is a robust, practical, and fast programming language with a set of useful features that together form a simple, coherent, and powerful tool. Clojure is a dynamic, general-purpose programming language, combining the approachability and interactive development of a scripting language with an efficient and robust infrastructure for multithreaded programming. Clojure is a compiled language, yet remains completely dynamic, every feature supported by Clojure is supported at runtime. Clojure provides easy access to the Java frameworks, with optional type hints and type inference, to ensure that calls to Java can avoid reflection. Clojure is a dialect of Lisp, and shares with Lisp the code-as-data philosophy and a powerful macro system. Clojure is predominantly a functional programming language and features a rich set of immutable, persistent data structures. When a mutable state is needed, Clojure offers a software transactional memory system and reactive Agent system.Starting Price: Free -
44
Perl
Perl
Perl is a highly capable, feature-rich programming language with over 30 years of development. Perl is a highly capable, feature-rich programming language with over 30 years of development. Perl runs on over 100 platforms from portables to mainframes and is suitable for both rapid prototyping and large scale development projects. "Perl" is a family of languages, "Raku" (formerly known as "Perl 6") is part of the family, but it is a separate language which has its own development team. Its existence has no significant impact on the continuing development of "Perl". Perl includes powerful tools for processing text that make it ideal for working with HTML, XML, and all other mark-up and natural languages. Perl can handle encrypted Web data, including e-commerce transactions.Starting Price: Free -
45
Solidity
Solidity
Solidity is a statically-typed curly-braces programming language designed for developing smart contracts that run on Ethereum. As a relatively young language, Solidity is advancing at a rapid speed. We aim for a regular (non-breaking) release every month, with approximately one breaking release per year. You can follow the implementation status of new features in the Solidity Github project. You can see the upcoming changes for the next breaking release by switching from the default branch (`develop`) to the `breaking branch`. You can actively shape Solidity by providing your input and participating in the language design.Starting Price: Free -
46
Scheme
Scheme
Scheme is a general-purpose computer programming language. It is a high-level language, supporting operations on structured data such as strings, lists, and vectors, as well as operations on more traditional data such as numbers and characters. While Scheme is often identified with symbolic applications, its rich set of data types and flexible control structures make it a truly versatile language. Scheme has been employed to write text editors, optimize compilers, operating systems, graphics packages, expert systems, numerical applications, financial analysis packages, virtual reality systems, and practically every other type of application imaginable. Scheme is a fairly simple language to learn since it is based on a handful of syntactic forms and semantic concepts and since the interactive nature of most implementations encourages experimentation. Scheme is a challenging language to understand fully.Starting Price: Free -
47
Nix
NixOS
Nix is a tool that takes a unique approach to package management and system configuration. Learn how to make reproducible, declarative, and reliable systems. Nix builds packages in isolation from each other. This ensures that they are reproducible and don't have undeclared dependencies, so if a package works on one machine, it will also work on another. Nix makes it trivial to share development and build environments for your projects, regardless of what programming languages and tools you’re using. Nix ensures that installing or upgrading one package cannot break other packages. It allows you to roll back to previous versions and ensures that no package is in an inconsistent state during an upgrade. Nix is a purely functional package manager. This means that it treats packages like values in purely functional programming languages such as Haskell, they are built by functions that don’t have side effects, and they never change after they have been built.Starting Price: Free -
48
Python
Python
The core of extensible programming is defining functions. Python allows mandatory and optional arguments, keyword arguments, and even arbitrary argument lists. Whether you're new to programming or an experienced developer, it's easy to learn and use Python. Python can be easy to pick up whether you're a first-time programmer or you're experienced with other languages. The following pages are a useful first step to get on your way to writing programs with Python! The community hosts conferences and meetups to collaborate on code, and much more. Python's documentation will help you along the way, and the mailing lists will keep you in touch. The Python Package Index (PyPI) hosts thousands of third-party modules for Python. Both Python's standard library and the community-contributed modules allow for endless possibilities.Starting Price: Free -
49
JavaScript
JavaScript
JavaScript is a scripting language and programming language for the web that enables developers to build dynamic elements on the web. Over 97% of the websites in the world use client-side JavaScript. JavaScript is one of the most important scripting languages on the web. Strings in JavaScript are contained within a pair of either single quotation marks '' or double quotation marks "". Both quotes represent Strings but be sure to choose one and STICK WITH IT. If you start with a single quote, you need to end with a single quote. There are pros and cons to using both IE single quotes tend to make it easier to write HTML within Javascript as you don’t have to escape the line with a double quote. Let’s say you’re trying to use quotation marks inside a string. You’ll need to use opposite quotation marks inside and outside of JavaScript single or double quotes. -
50
CSS
CSS
CSS, short for Cascading Style Sheets, is a style sheet language used by web developers to structure the HTML and other elements of a website. CSS is one of the most widely used languages on the web. For style sheets to work, it is important that your markup be free of errors. A convenient way to automatically fix markup errors is to use the HTML Tidy utility. This also tidies the markup making it easier to read and easier to edit. I recommend you regularly run Tidy over any markup you are editing. Tidy is very effective at cleaning up markup created by authoring tools with sloppy habits. Each style property starts with the property's name, then a colon and lastly the value for this property. When there is more than one style property in the list, you need to use a semicolon between each of them to delimit one property from the next.Starting Price: Free