Reading through the first bits of SDL's and the official Allegro website.
SDL's front page, first paragraph:
low level access
to audio, keyboard, mouse, joystick and graphics hardware
via Open GL and Direct 3D
used by video playback software, emulators, and popular games including Valve's award winning catalog and many Humble Bundle games.
That is a pretty good description.
The first four points apply to Allegro 5 as well.
Second to last paragraph:
supports Windows, Mac OS X, Linux, iOS, and Android. Support for other platforms may be found in the source code.
is written in C, works natively with C++, and there are bindings available for several other languages, including C# and Python.
SDL 2.0 is distributed under the zlib license. This license allows you to use SDL freely in any software.
So here we have platforms, languages, license. Very precise, concise info.
Allegro 5's official website, first paragraph:
Allegro 4 and Allegro 5 are
game programming libraries
primarily for C and C++ developers
In comparison to SDL, this could see improvement. This is especially due to Allegro 4 and 5 being treated together in the first paragraph. Note that Allegro 4 is even mentioned before Allegro 5, therefore becoming the first thing mentioned on the whole page...
While saying it is "primarily for C and C++ developers" is technically true, SDL's way of saying the same thing is cleverer, because it doesn't appear to be a limitation.
"Open source" is also true, but it could also mean that Allegro is GPLed, which it isn't.
"game programming". Hmm. While this may be the primary motivation behind it, its scope is wider than that. Anyone wanting to create an OpenGL window cross-platform for whatever reason could use it. Also, there is nothing in the code tying it to games (as probably opposed to engines).
SDL's way of saying it is again smarter, because they describe what it actually does "low level access to ... graphics hardware" while stating that it is widely used for games later.
Let's also take a look at the introduction page:
Allegro 4 and Allegro 5 are
cross-platform libraries mainly aimed at video game and multimedia programming
handle common, low-level tasks such as creating windows, accepting user input, loading data, drawing images, playing sounds, etc. and generally abstracting away the underlying platform.
However, Allegro is not a game engine: you are free to design and structure your program as you like.
This is much better already. But it's a separate page.
I like the last point.
IMHO "low level access to audio, keyboard, mouse, joystick and graphics hardware" sounds much more appealing to newbies than "handle common, low-level tasks such as creating windows, accepting user input, loading data, drawing images, playing sounds, etc. and generally abstracting away the underlying platform".
What if you want a fullscreen game and don't even know you have to "create a window"?
Not to mention that - while it is technically more accurate - it just sounds more boring.
IMHO we should have the platforms in there, but of course they aren't, because you have to decide whether you want Allegro 5 or 4 first. As said already, this shouldn't be the case.
Allegro only supports 2D graphics primitives natively, but it is perfectly reasonable to use Allegro alongside a 3D API (e.g. OpenGL, Direct3D, and higher level libraries), while Allegro handles the other tasks. Allegro is also designed to be modular; e.g. if you prefer, you can substitute another audio library.
To start the paragraph with describing a limitation is unfortunate here, because 2D graphics primitives are actually a feature (on top of native OpenGL and Direct 3D).
No offense meant at anyone, but I thought I'd demonstrate precisely what I mean.
We could just copy SDL's text and replace "SDL" with "Allegro 5", but we probably shouldn't do this.
I propose to:
Merge front page and introduction page
Write a new text for this page, which should mention everything the SDL folks mention on their page: short, attractive definition; platforms; languages; license
Put (legacy) Allegro 4 on an extra page, where we could also describe the library's long and proud history, its origins dating back to the Atari ST and the glorious old days of DJGPP.
We could link to this page from the front page at the bottom (Allegro is ... "with a proud and long history dating back to" ? 1992? (link).
Besides what the SDL folks do, we should probably also mention these points on the new front page:
Is not an engine => more freedom and flexibility, higher performance (I guess )
can be used alongside 3D API (e.g. OpenGL, Direct3D, and higher level libraries), while Allegro handles the other tasks
Anything else? List of features?
I would have tried to write a new text myself if I had more time available, which isn't the case right now.