Language Selection

English French German Italian Portuguese Spanish

A smarter CLI - Innovation by Simplicity

Good command line tools are more important than ever and not just a relict of ancient times in comparison to RIA or GUI applications. Experienced system administrators appreciate their power in sophisticated shell scripts and could probably not manage their environments without them. The question is how can we make command line tools smarter and more powerful than today? This article discusses some ideas and potential implementations always keeping in mind "Do not reinvent the wheel" and "keep it simple".

In the world of free software which made tremendous progress during the last 25 years the CLI (Command Line Interface) never lost it's importance and is still a standard component of well designed applications which expose their APIs and functionality through programming libraries (e.g. in C/C++/C#, Java,...), scripting wrappers (Perl, Python. Ruby, PHP, JavaScript, Tcl, Groovy, Boo, Lua, Lisp, Guile,...), command line utilities, REST/SOAP/XML-RPC/JSON-RPC/D-BUS interfaces and interactive GUI/Web applications.

From a more modern perspective command line tools and the interrelated mini or little languages (e.g. check Eric Raymond's book about The Art of Unix Programming) are special cases of Domain-specific languages (DSL) with the additional focus on interactivity and do not look that old fashioned any more! The syntactic resemblance of command line expressions with functional language constructs e.g. in Haskell or Scala shows further paths of investigation and potential innovations.

The past and future of command line tools




More in Tux Machines

Open/Hacker Hardware

4MLinux 20.1 released.

This is a minor maintenance release in the 4MLinux STABLE channel. The release ships with the Linux kernel 4.4.34, which restores PAE support that "magically" disappeared in 4MLinux 20.0 (sorry :-). Additionally, some popular programs (Double Commander, Dropbox, Firefox, Java RE, Opera, PeaZip, Thunderbird, Wine) have been updated, too. Read more

Refracta 8.0 Is a Pint-Sized Powerhouse

Refracta is a somewhat obscure Linux distribution that offers exceptional functionality and stability. Obscurity is not always a bad thing when it comes to Linux distros. You can find some very worthwhile alternatives to your current operating system. Refracta is a big surprise in a small package. Many look-alike desktop distros are difficult to distinguish from run-of-the-mill garden varieties. Others offer new adopters something unique that makes using them fun and productive. Refracta is one of the few full-service Linux distros that makes an easy and more convenient replacement for pocket Linux options such as Puppy Linux. Not all Linux distros that install to a USB drive -- and have the ability to save files and system settings in a persistent mode -- work equally well. Read more

Clear Linux With Mesa 13 Is A Strong Match For Intel Linux Performance

When benchmarking Intel's Clear Linux distribution earlier this year we found its Intel graphics performance to be quite good and slightly faster than other Linux distributions even when Clear was using an older version of Mesa. Now with Clear Linux having switched to Mesa 13, I decided to run some fresh Intel OpenGL benchmarks on it compared to other distributions. Read more