--- ct_beer.d
static foreach_reverse(beer; 1..100)
{
pragma(msg, beer, " bottles of beer on the wall, ", beer, "
bottles of beer. Take one down, pass it around, ", beer-1, "
bottles of beer on the wall.");
}
void main(){}
---
import std.format;
template Bootle(alias Beer = 0)
{
static if(Beer < 99)
enum Bootle = Bootle!(Beer + 1);
else
enum Bootle = Beer;
pragma(msg,
format!"%d bottles of beer on the wall, %d bottles of beer.
Take one down, pass it around, %d bottles of beer on the wall."
import std.stdio;
import std.conv;
void main() {
const string drink = "beer";
int bottles = 99;
while (bottles > 0) {
string amt = to!string(bottles);
writeln(amt ~ " bottles of " ~ drink ~ " on the wall, " ~ amt ~
" bottles of " ~ drink ~ ". Take one d