A PrivateLanguage is a language (particularly a natural language), that is spoken by no one except its inventor. Many people seem to enjoy PrivateLanguages as a hobby. Sometimes these languages escape (e.g., Tolkien's languages).
But as long as a language is private it is not really a language, because language is inherently about communication and lives from the exchange of ideas.
Untrue, one may use a private language to communicate with one's self. Whether it's in code or notes, it's still a language, even if never shared.
A private language has the danger of expressing ideas in such a way that their inventor thinks they make sense, but this cannot be verified and can easily lead to self-delusion.
And this is still the case if you communicate with yourself. You can see how strong this is, if you try to read your own notes a long time later. Many of them can no longer be deciphered (and I don't mean because of illegibility), simply because you lost all the required context to understand them.
Making PrivateLanguage Public
This is precisely why ideas expressed in a social network are valuable in the process of notion condensing : clarified when the participant decides to venture into the paradigm of ThinkingOutLoud. When this is done, the act of writing down the idea or thought leads first of all to clarification in the mind, not only of the thinker-writer, but also in the minds of those who find and read them. In social-networking, one apparatus for clarifying and elaborating ideas is a process called PositiveDialogue. -- DonaldNoyes.20100114 20140223
A private language could also be a programming language designed and used by only one programmer. I've used a couple of job-specific jury-rigged TLIs for proof-of-concept prototypes which were later officially coded in assembler (one of them controlled a product that demo'd at Comdex before being properly engineered). I don't think that was unique. -- MarcThibault
One example where I did this and I am not sure how it will be taken by other developers is to create a "cell" call to format web reports but also optionally format it as spreadsheet output using the same API. It looked something like:
cell(value, columnSpan, options)The options used parenthesized strings as a work-around to lack of named parameters in the language. A typical call set looked something like:
... newRow(); cell("Total", 2, "(bold)(rightpad)"); cell(totalAmt, 1, "(bold)(border)(left)(num)");I had to match a fairly complex format when converting from a legacy system and this is what I came up with. "rightpad" was basically the same as right-aligned, but with a bit of a space on the right side, probably for esthetic purposes. There was also a "leftpad". Most people just used HTML for this kind of thing, and MS-Excel generally translated HTML okay, but one did not have a lot of control over certain aspects. Thus, I created this sub-language to gain control, but another developer may grumble about having to learn and reverse engineer it. I thought it is generally self-explanatory, but one does not know until another developer has to modify something in it. Sometimes I think I went too far overboard to match the formatting style of the legacy version. -- top
In the context of programming languages, could this be considered one of the LevelsOfGreenspunning?