Sunday, December 21, 2014

A Gazetteer Of Programming Languages

This is for the geeks amongst us, although most people will probably appreciate this.
This was first published in 1982 in InfoWorld and is attributed to John Unger Zussman and later published in the November 2, 1984 edition of the University of Waterloo’s mathNEWS. I was given a photostat copy in the mid 80s and used it in a computer magazine I was editing at the time. It has since become quite widespread on the internet under the title “Lesser known computer languages”, probably because most computer guys cannot spell gazetteer. Read and enjoy…

‘Simple’ is an acronym for Sheer Idiot’s Programming Linguistic Environment. This language, developed at Hanover College for Technological Misfits, was designed to make it impossible to write code with errors in it. The statements are, therefore, confined to ‘begin’, ‘end’, and ’stop’. No matter how you arrange the statements, you can’t make a syntax error.
Programs written in Simple do nothing useful. They thus achieve the results of programs written in other languages without the tedious, frustrating process of testing and debugging.

Slobol is best known for the speed, or lack of it, of its compiler. Although many compilers allow you to take a coffee break while they compile, Slobol compilers allow you to travel to Bolivia to pick the coffee.
Forty-three programmers are known to have died of boredom sitting at their terminals while waiting for a Slobol program to compile.

From its modest beginnings in Southern California’s San Fernando Valley, Valgol is enjoying a dramatic surge in popularity across the industry. Valgol commands include ‘really’, ‘like’, ‘well’, and ‘y*know’. Variables are assigned with the ‘= like’ and ‘= totally’ operators. Other operators include the California Booleans, ‘fersure’ and ‘noway’. Repetitions of code are handled in ‘for/sure’ loops. Here is a sample Valgol program:
like y*know (I mean) start
if pizza = like bitchen and
b = like tubular and
c = like grodyax
for I = like 1 to oh maybe 100
do wah
- (ditty)
barf(1 ) = totally gross (out)
like bag this problem
like totally (y*know)
Valgol is characterized by its unfriendly error messages. For example, when the user makes a syntax error, the interpreter displays the message: gag me with a spoon

This otherwise unremarkable language is distinguished by the absence of an ’s’ in the character set. Programmers must substitute ‘th’. Lithp is said to be useful in proceththing lithtth.

Historically, Valgol is a derivative of Laidback, which was developed at the (now defunct) Marin County Center for T’ai Chi, Mellowness, and Computer Programming, as an alternative to the intense atmosphere in nearby Silicon Valley. The center was ideal for programmers who liked to soak in hot tubs while they worked. Unfortunately, few programmers could survive there for long, since the center outlawed pizza and RC Cola in favor of bean curd and Perrier. Many mourn the demise of Laidback because of its reputation as a gentle and non-threatening language. For example, Laidback responded to syntax errors with the message:
Sorry, man, I can’t deal behind that.

This language was named for the grade received by its creator when he submitted it as a project in a university graduate programming class. C- is best described as a ‘low-level’ programming language. In general, the language requires more C- statements than machine code instructions to execute a given task. In this respect it is very similar to COBOL.

Named after the late existential philosopher, Sartre is an extremely unstructured language. Statements in Sartre have no purpose; they just are. Thus, Sartre programs are left to define their own functions. Sartre programmers tend to be boring and depressed and are no fun at parties.

Developed at the Massachusetts Institute of Obedience Training, Dogo heralds a new era of computer-literate pets. Dogo commands include ’sit’, ’stay’, ‘heel’, and ‘roll over’. An innovative feature of Dogo is ‘puppy graphics’, a small cocker spaniel that occasionally leaves deposits as he travels across the screen.

Lingua Programmatica
As a programmer who has frequently been frustrated by the lack of flexibility of conventional high-level programming languages, I am pleased to report the recent completion of a new language that promises to leave Pascal and the others stumbling in its tailwind. The new language is called LATIN (not to be confused with the natural language, Latin, with which it is, however, identical).
LATIN offers such conveniences as Roman numeral mode (for those who are tired of trying to deal with clumsy Arabic numbers), output to marble, and a sophisticated user interface that features not just icons but also omens. The package includes complete error detection and punishment. Program execution is rapid; however, programmer execution is painfully slow. The carefully written documentation is hand-copied on papyrus scrolls by Egyptian slaves, and scans nicely. The language is provided on a sturdy double-sided discus, designed for years of troublefree use.
Availability of LATIN is something of a problem at present, as the compiler is written not in assembler but in an intermediate-level language called GREEK (G-Code), which has yet to be implemented on any microcomputer.
And this one by Karl Hildon . . .

NORTH programs can only execute efficiently where snow falls at least 5 months of the year. This is because many NORTH programmers become sick and fed up with their environment and move on to SOUTH. Almost all NORTH programs are totally useless in the SOUTH environment.
NORTH programs are immediately recognizable by the “, eh ” suffix which seems to be necessary after every line. Although there are other slight differences, most NORTH programs can be translated to SOUTH by replacing the “, eh ” suffix with “, uh “.
Debugging NORTH programs is no probs. The “Gimme a break” command can be inserted to stop programs from taking off with goofs, and after an error, the “Check it out” command shows the offending botches.
The following is a demo program that comes with the NORTH interpreter:
10 hosers = 1, eh
20 buzz hoser, “what’s happenin’ man?”, eh
30 far out, eh: hosers = hosers + 1, eh
40 it hosers < beer/6 then 20, eh
50 if dough = 0 then cruise, eh: goto 50, eh
60 if donuts = 0 then cruise, eh
70 if beer < 24 then cruise, eh: beer = beer+24, eh
80 killer, eh
90 on stereo goto heavy metal, heavy metal, eh
100 while beer > 0, eh
110 beer = beer
- hosers, eh
120 endwhile, eh
130 if munchies then do food, eh
140 if burnt out then crash, eh: else 70, eh

Named after the famous French philosopher and mathematician Rene DesCartes, RENE is a language used for artificial intelligence. The language is being developed at the Chicago Center of Machine Politics and Programming under a grant from the Jane Byrne Victory Fund. A spokesman described the language as “Just as great as dis [sic] city of ours.”
The center is very pleased with progress to date. They say they have almost succeeded in getting a VAX to think. However, sources inside the organization say that each time the machine fails to think it ceases to exist. 

FIFTH is a precision mathematical language in which the data types refer to quantity. The data types range from CC, OUNCE, SHOT, and JIGGER to FIFTH (hence the name of the language), LITER, MAGNUM and BLOTTO. Commands refer to ingredients such as CHABLIS, CHARDONNAY, CABERNET, GIN, VERMOUTH, VODKA, SCOTCH, and WHATEVERSAROUND.
The many versions of the FIFTH language reflect the sophistication and financial status of its users. Commands in the ELITE dialect include VSOP and LAFITE, while commands in the GUTTER dialect include HOOTCH and RIPPLE. The latter is a favorite of frustrated FORTH programmers who end up using this language.

Wednesday, December 10, 2014

Patents and Innovation

I have read that the rationale behind the modern copyright act was to encourage innovation. (As opposed to the old copyright act which was a form of censorship.) However, is this the way things have worked out?

I was watching a recent episode of GeekBeat on high end 3D printers when the host John P asked the guests why it was that there is now an explosion of cheapish 3D printers. The answer was quite surprising. It was that the patents on 3D printing have now run out. So for the last 25 years there has been an effective road block to innovation in 3D printing and that now that the patents have run out there is an explosion in innovation.

So - what is the take away message from this? The modern patent and copyright legislation does not encourage innovation. It leads to price gouging, massive law suits, stifling innovation and creativity and huge profits for large powerful organisations.

It is high time that there is a massive overhaul to the patent and copyright laws, but I fear that the rich and powerful will never allow that.

Thursday, January 19, 2012

Auto connect to Samba on Mac Lion

Every time I boot my Mac it disconnects my samba share. How to get it to auto connect, even connect in the first place. Well boys and girls, here it is.

First you have to connect to the server in the first place. In Finder select Go->Connect to server.  Put in your credentials or select guest for anonymous login. This will create a new shared locaion in Finder.
Select the share to open

Now to make it do that when you automatically login. Open System Preferences, Select Users and Groups then select your user from the list of users. Then select the Login Items tab. Click the + button below the list of Login Items and then browse to the Samba share you wish to open automatically. It will then appear in your list of Login Items and problem solved.
Add the share to your Login Items

Monday, June 14, 2010

The Joys Of Ignorance

A little bit of knowledge is a reason to instill panic on the unsuspecting masses.

When we elect people to Parliament and they become ministers it would not be unreasonable to expect them to have half a brain. The problem is that they keep opening their mouths and removing any remaining doubt we had.

This proclamation from one of Queensland's finest demonstrate how dangerous a little bit of knowledge can be.

I am not sure who these health experts are but I have not seen one peer reviewed study stating that 3D TV is any worse that any other piece of technology. I know of one anecdotal story from someone who was involved in testing a 3D game and they found a certain level of disorientation in some subjects but as far as I am aware no further investigation was done.

Second, who are these manufacturers that issue such dire warnings?

In reality no one has identified 3D TVs as being any worse than any other bit of tech. It is true that some people are adversely affected by 3D video but no more or less than other technologies such as CRT TVs, plasma or LCD displays, computers, fluros, even my mum was sometimes affected by driving in the car at times.

Oh yes, roll out the old pregnant women and children. How on earth does being pregnant make 3D TVs more dangerous? The truth is that the warning that the manufacturers issue is the standard disclaimer that manufacturers issue for all flat panels, and is not unique to 3D displays. They do this so that people will not sue, not because they believe it is a serious issue.

The paranoia over 3D is no different from that which accompanies any new technology that the ignorant do not understand.

The warnings in the last paragraph are ridiculous.

"They should also avoid watching 3D TV under fluorescent lighting or direct sunlight and it's also suggested the screens should not be placed anywhere near stairs or balconies because viewers can become disorientated and that could lead to an accident."

To suggest that someone walking down a stair will be disorientated as they glance towards a 3D TV shows how ill informed the minister is.

Maybe the minister in question should go back to what he is good at...

Sunday, June 6, 2010

Apple iPad - Tablet, slate or what?

Since its launch many commentators have referred to the iPad as a different class of device, and have also referred to it as a tablet. The problem with these commentators is that by doing so they show their ignorance of the sate of computing tech today.

First of all this is not a new class of device. The slate computer has been around for a number of years and a Google search on slate computer will reveal to the least tech savvy amongst us that this type of device is not new. A slate is basically a computing device with no attached keyboard, a touch and/or active screen and minimal buttons for quick functions. The slate form factor has been popular for specialised operations but has not had a large penetration in the main stream. It has remained a fairly niche product, mainly due to user ignorance. Manufacturers have not been keen on publicising slates up until now and no one has put a lot of effort into developing or promoting the form. The iPad is really a low end slate device, without a serious CPU, RAM or OS. Hardly new, if you are talking about a crippled computer being a new type of device, but seriously, I think not.

Tablet? Well the Tablet computer has been around for about ten years and comes in two basic forms. Convertible or slate. A convertible Tablet is similar to a laptop but the keyboard twists and folds up onto the back of the computer to allow it to be used in a slate mode. This makes the device larger and heavier. Many people use a slate form factor and attach a portable keyboard and mouse whe required. The Tablet has a pen, active matrix display and may or may not have touch. It is a mistake to call the iPad a Tablet computer. It is a slate without the tablet functions. To be a tablet you need to be able to use a stylus which has been specifically omitted from the iPad.

I am eagerly awaiting the plethora of Windows slate computers now in the pipe line to see what they are like. It would be nice to see some real slate Tablet computers emerge from the scrum.

At least one good thing will come from the popularity of the iPad. It demonstrates to manufacturers that there is a market for real slate computers (as opposed to the toy that the iPad is) and that some real development work will be put into developing a serious contender.

The truth is the iPad is a very high quality device but the average consumer does not care. They want a device that is cheap and convenient. If the main stream PC maker comes to market with a real computer for the rest of us then then they will carve a huge market for themselves. This reminds me of an exchange between Bill Gates and Steve Jobs from the movie The Pirates Of Silicon Valley.

Jobs "Our products are better than yours."

Gates "It doesn't matter."

Wednesday, April 7, 2010

The iPad, another view

Interestingly all of the people that said that the iPhone was a looser and would die a quick and unnatural death are now saying what a wonderful device the iPad is.

However there is one dissenting (and in my view reasonable) voice amongst the fan club. The Register report on an interesting article from the NYT's David Pogue.

His wife's observations are exactly what I have been saying. After all the hype has settled this will be seen for what it is. A nice expensive toy. I am hanging out for the HP slate which will be (according to reports) lighter, more powerful and a real computer with real interfaces.

Monday, February 1, 2010

The iPad - Whatever Happend To Innovation?

With the "most important announcement of Steve Job's life" done and dusted, but without the dust having settled what is the verdict? Am I buying this or is it just candy wrapped in marketing?

I have to say that despite the anticipation and hype before the event I did not have high expectations. As more detail was leaked I became less excited until the night before my expectations had plunged to an all time low. In retrospect I have to say that all of my expectations were met. This was a fizzer and the hype appears now to be no more than marketing.

My initial response was one of underwhelmed and nothing at their presentation and all the glowing reports from those who used it have not changed my opinion. All of the fancy things that Steve demonstrated elicited no more than a ho-hum from me. Interestingly it reminded me a lot of the iPhone launch which I can still recall. My reaction to that launch was quite the opposite even though they are very similar devices.

I will start by saying what the iPad is not. The iPad is not a tablet. The tablet computer has a number of functions which are clearly missing form the iPad. First and foremost it has no digitiser and its associated functions. The digitiser is an active matrix built into the screen which allows the use of a multi function stylus or pen. It enables what is called pen computing, It doubles as a mouse in its simplest terms but it also has handwriting recognition, may be pressure sensitive, and write and erase. Pen computing is an extremely powerful tool and for anybody that has ever used pen computing to not include a pen in this format device is unthinkable. Not one of the news bloggers that are tablet specialists think that the iPad is a serious contender in this space. Touch has been around for a long time on these devices but until now they have all had the active digitiser. To remove that feature is like removing an athlete's leg. Some of the functions that require a pen are drawing, fine control graphics manipulation, and handwriting. These are possible with touch but you do not get the fine control with touch as you do with the pen. That is why conventional pens are held and not attached.

Neither is the iPad an e-book reader. As nice is the display is it is not e-ink. The e-ink displays are designed to minimise eye strain for prolonged concentration that is necessary for reading. It does not replace the e-book reader so that idea that somehow e-book readers will flock to this device is mistaken.

The iPad is not a web device. The lack of full web function ensures that you will not display many web pages. To criticise flash is to miss the point entirely and the pronunciation's of Steve Jobs in the last few days regarding his perceived issues with flash is disingenuous to say the least. In the last 24 hours I have visited several web sites that required flash to display, one of which is a daily visit and would be rendered useless without flash. Why would I buy such a device where I would be forced to return to my regular computer of choice just to visit this or that random site.

The iPad is not a portable music player. Lets be perfectly blunt about this, any potential iPad customer will already own at least one of iPhone or iPod, perhaps multiple such devices. Tho buy yet another device to replicate that function that you cannot put in your pocket makes no sense at all.

The iPad is not a movie/media player. Its lack of codecs, lack of connectivity and form factor (4x3) make this a vary poor media player. One can accept these restrictions on a small pocket device but not on a device that is supposed to be a replacement for a mid level computing device.

It is not a personal computer. I know that this is the most radical and potentially controversial statement but bear with me here. It is a closed computing platform. That means that all code that runs on this device has to be digitally signed by Apple. So none of the restrictions above can be bypassed without hacking the device. You cannot run a third party browser. (All browsers that run on the iPhone are simply Safari with different UIs). You cannot install additional audio and video codecs, for instance xVid or FLAC. You cannot do voip over 3G or Skype unless Apple grants their permission. You cannot run linux or parallels or Boot Camp to run your Win apps. You cannot even run your Mac apps without Apple allowing them to be ported, and even then some will have difficulty because of the interface. The addition of docking and pairing solutions makes up some of the gap but there is still a huge gulf between the iPad and a personal computer.

"So", I hear you ask, "What is the iPad".

The iPad is realy a portable iTunes player/games machine and not much more. I will concede that with the additional APIs and applications you can perform some of your more sophisticated tasks but without an open environment and pen functions any serious computing has to be done with a tethered keyboard and mouse(?).

Of all of the positive reviews of this device none have talked about its usability in a wider environment other than reading books, playing movies and playing games They all rave about its wonderful interface which I will concede looks extremely nice. One of the great things about the iPhone is the interface which is a great piece of design. But what is good for a hand held device does not necessarily scale up to a mid range device.

The iPad is light innovative and a wonderfully designed and architected but it fails to produce in its intended market. The things which made the iPhone a best seller will not save the iPad. It is a different format and different market. If Apple think that the success of the iPhone can be replicated by scaling up its features into a mid level device I believe they are mistaken. I am going to stick to my Tablet until Apple produce a serious contender.