LDPL

About

LDPL is a powerful and robust general-purpose compiled programming language designed from the ground up to be excessively expressive, readable, fast, and easy to learn. It mimics plain English, in the likeness of the good parts of older programming languages like COBOL. It even supports UTF-8 out of the box.

Code Example

LDPL is now considered complete and in minimal evolution mode. This means that language is supported, but its specification will intentionally be kept as unchanged as possible.

The latest LDPL release is LDPL 5 Groovy Gualicho, released on March 27, 2023.

LDPL Philosophy

LDPL is a language designed to be easy to understand and learn, and simple to write and use. We believe that coding should be like that. Compiling code should be effortless and straightforward: a single, flagless command should be enough to compile any source. Every statement in the language should do one and only one thing, not depending on the context. The compiler should deal with complex, low-level stuff like encoding, sockets, floating-point number comparison, etc., transparently to the user. Hard stuff shouldn't be.

We understand that this philosophy may lead to longer source code, more verbose statements, and extra steps to reach an end, but it should make coding in LDPL easier and more enjoyable than in other languages.

As one user once put it:

"Usually when I'm programming, I feel like I'm in a big fancy jet and there's a lot of turbulence and it's not going well but then all of a sudden it's smooth air again and the drink cart comes along and I get a ginger ale and it's great. But with LDPL, I feel like I'm a cub scout out in the woods with a box of matches and a hatchet and my Scout's Handbook (the LDPL Docs) just exploring and figuring it out as I go. Whenever I run into a problem I just check my handbook and, sure enough, there's a solution right there waiting for me!"

We want to make LDPL a language you'll love not because it lets you do many things in one line or because of how modern it is: but because it's designed to stay by your side and tell you everything's is going to be okay even when things look rough.

Installation & Usage (AKA Help)

For information on how to instale and use the LDPL compiler, please check the GitHub repository. We've taken a lot of care to make it as accessible as possible.

The preferred way to install LDPL is to build it yourself. We promise this is really easy. We've made it as easy as we can.

However, if you are using Homebrew, you might install LDPL by running:

brew install ldpl

On Snap, you'll want to try:

snap install ldpl-lang

Learning LDPL

If you want to learn how to code in LDPL, there's Learn LDPL in X Minutes, a very short and concise tutorial.

The full LDPL documentation is available here. If you've downloaded the LDPL repository, it's also available there. If you've built and installed LDPL yourself, you might also want to try:

man ldpl

If you want learning by looking at examples, you'll find some examples here. Please bear in mind that some of these examples might be a tad old and might need some changes to work with an up-to-date version of LDPL.

Libraries

Like most programming languages, LDPL leverages several first and third-party libraries. Nearly all of these libraries exist as a .ldpl file, a group of .ldpl files, or a group of .ldpl and C++ files. You may find libraries on GitHub by searching "LDPL" in the search box.

The usage of libraries is covered in the LDPL Documentation.

License

The LDPL Programming Language was created by Lartu in collaboration with Chris West, Damián Garro, Ignacio Losiggio and a bunch of other wonderful contributors. Source code for the LDPL Compiler is distributed under the Apache 2.0 License.

All the LDPL Dinosaur logos and related art were drawn by Lartu and are released under a Creative Commons Attribution 4.0 International (CC BY 4.0) license.

The source code for this website can be found here.

<3