Sawzall Language

Sawzall is an infamous language that pretty much no one has heard of - but it is more important than you think. It is Google's current main language that they use to help mine/analyze the internet (and interact with Google File System and Map Reduce).

Sawzall borrows from C, Algol, and Pascal style syntax. It is procedural, but designed it seems for specifically commanding Google's computers to act in a parallel way (at a very high level with short precise programs).

See for a detailed article about the language.
The "every thing is a file" view needs refreshing, and their misunderstanding of the relational model needs to be pointed out. Once again they seem to be confusing physical with logical.

SawzallLanguage works with GFS (google file system) and MapReduce? (based on some functional ideas). But note that Sawzall itself isn't purely functional - it is rather imperative and procedural in nature.

Rob Pike (and friends) view from Unix days is that everything is just a file. That is a useful abstraction - but his file purism leads to a FraudulentMindset. By stepping into this first person view of everything being a file, he misses out on the powerful relational model view (GFS versus my rightfully suggested Google Relational Database (GRD)).

I noted in my article that google employees are full of brilliance (constructive) - but also that Rob's view that everything is a file needs to be criticized. Pike's articles are brilliant, but they also contain misleading statements about relational techniques and models (such as confusing relational with physical storage). To remain quiet about such misleading statements would be scientifically dishonest. Those not open to criticism (especially when constructive blurbs and humor are added) show signs of denial, ClosedMind, etc.

It is important we criticize the industry, and I find Google has some misunderstandings in their Sawzall paper. However I also constructively address their problem by offering a serious solution and complimenting Rob Pike's brilliance, along with adding some humor.

I leave this quote:

"Sometimes we discover unpleasant truths. Whenever we do so, we are in difficulties: suppressing them is scientifically dishonest, so we must tell them, but telling them, however, will fire back on us. If the truths are sufficiently impalatable, our audience is psychically incapable of accepting them and we will be written off as totally unrealistic, hopelessly idealistic, dangerously revolutionary, foolishly gullible or what have you. (Besides that, telling such truths is a sure way of making oneself unpopular in many circles, and, as such, it is an act that, in general, is not without personal risks. Vide Galileo Galilei.....)" --E.W. Dijkstra

See also: NotNiceEnough, MapReduce?, RobPike

View edit of November 23, 2014 or FindPage with title or text search