Bonum Certa Men Certa

Is Free Culture As Important As Free Software?

By figosdev

Letters of language



Summary: "If you have ever created a programming language specification before coding the actual language, then you've already written code for a language that doesn't exist yet."

Funny thing about the Free Software movement -- while many of us care about Free Culture as well, it's taken ages for the FSF to recognise its legitimacy.



The position of rms in the past (and likely the present) is that while software is a "practical" work -- this point has relevance for copyright eligibility (software was not even copyrightable in the United States until 1980) other "non-software" works are not practical in this sense -- they don't "do stuff."

"While rms has given some support to free licenses for other works (game assets for free games being one example) this division is sometimes considered less important by advocates of free culture."Code describes computer instructions -- and other works do not. While rms has given some support to free licenses for other works (game assets for free games being one example) this division is sometimes considered less important by advocates of free culture.

My own opinion -- and this is quite sincere, because I think some might interpret it as sarcasm or being cynical -- is that the brain is a sophisticated, self-rewiring biological computer, and culture helps to alter our programming as much as psychotropic drugs or traumatic experiences do. This idea that "culture is software too" isn't something I invented, but it's the way I've felt for many years.

There are simple programming languages and there are esoteric programming languages, but just today I wrote a simple -- rhetorical programming language to make this point:

    # % turn on/off printing
    # @ quit program
    # a, A cycle colour backwards
    # b, B cycle colour
    # c, C copy next variable value to following character variable
    # d, D move down most recent variable value
    # e, E toggle print default upper/lower (starts lower)
    # f, F move to 1, 1
    # g, G get next character variable value
    # h, H append next variable value to following character variable
    # i, I set next variable to empty string
    # j, J fi
    # k, K if most recent variable value is true, do the following
    # l, L move left most recent variable value
    # m, M convert most recent value to uppercase
    # n, N convert most recent value to lowercase
    # o, O set next variable to 0
    # p, P print most recent variable value
    # q, Q exit loop early (limited)
    # r, R move right most recent variable value
    # s, S turn off print default case
    # t, T set next variable to random number 0 to 99
    # u, U move up most recent variable value
    # v, V set next letter to following character
    # w, W loop most recent variable value times
    # x, X mark end of loop
    # y, Y wait next value seconds
    # z, Z clear screen





Behold, a language!

Plato once defined man as a "featherless biped" -- the response from Diogenes was to pluck a chicken for Plato and say "Behold, a man!" In this spirit, I have named this programming language Diogenes. Having written it, there seems to be a text-searching app of the same name. Not that I expect this language to catch on.

"Not that I expect this language to catch on."Diogenes compiles verbatim-copying-only essays by Richard Stallman into non-free software. The only thing that makes this software non-free, is that the source code (the essays) are non-free. Therefore if the essays were free, the resulting program code would be as well. I know this isn't really very clever, but I did start laughing when I had coded most of the functions.

I like Logo, and I like languages inspired by Logo, so I wanted Diogenes to have some very basic Logo functionality. You can move up, down, left, right -- it draws as you move, you can cycle forwards or backwards with 8 colours including black, you can write a Hello World program, set, clear and append variables, and it has a conditional, loop and limited loop breaking function.

"%" toggles print output, "@" quits the program, and the rest of the commands are single letters. So for example, if we want to create a nice Hello World program, VAH sets the Variable A to H, and P prints the most recent variable set:

    vahp





Will print h. We can cycle the colours with "b", we can set a variable to an empty string with "i", so by the time we have this little program:

    %bbvahpbvaepbvalpbvalpbvaopibap vawpbvaopbvarpbvalpbbvadp





This compiles to about 120 lines of Python code, and when you run it it looks like this:

Hello World

If we take the text of the recent essay, "Saying No to unjust computing even once is help" and we only use the body of the essay from "A misunderstanding" to "awareness of the issue", this essay is the first "program" ever compiled with Diogenes. Given that each letter is a command, it compiles to 16 KLOC and the output, while minimal, looks like this:

Saying

"The Right to Read," from the headline and byline to "one of its central aims" compiles to 29 KLOC of Python, and the output looks like this:

Right

If we remove 352 spaces of indentation from the last dozen lines or so, they look like this:

    if locolour < 0: locolour = 7
    colour(locolour, 0)
    xy(locx, locy, locolour)
    for loop747 in range(figure('r', vars, 'n')):
        if locx > 0: locx -= 1
        xy(locx, locy, locolour)
    locolour -= 1
    if locolour < 0: locolour = 7
    colour(locolour, 0)
    vars['r'] = ''
    lutog = 0
    colour(7, 0)


This is compiled from code that Stallman wrote, where he said "central aims". Those two words alone are not copyrightable, so we can compile that much of the essay for this article. The loop variable is named "loop747" because it is the 747th loop in the program, compiled from the letter "l" (for "move left").

You probably don't want to say that unintentionally writing non-free program code is unethical, when the author isn't aware that it's program code. But if anything can be program code, where do we draw the line? The fact is, this language compiles non-free works into software that I'm not free to publish. If you think that's a joke, look up "de minimis" and the 1990s Supreme Court decision on sampling music.

For me to publish the program I compiled today as free software would be impossible; it certainly uses too much of the source essay to be protected by a "fair use" argument -- and you could almost certainly "decompile" the source back into all or most of the essay.

"The line between written work and program code is probably thinner than most free software advocates would like to admit."Stallman's essays were not written for a computer to run, but for a person to put in their mind -- what they do with it is largely up to the person. On the other hand, POW camps have used forced written and forced spoken confessions in part to get the prisoners to convince themselves that they are guilty of the crimes they are accused of. The line between written work and program code is probably thinner than most free software advocates would like to admit.

Like with "real" software, you can "scan" this writing and it may not "run" in your own mind. You may find it is simply incompatible with your environment and setup. I've written plenty of things that did not convince the audience of anything at all. Maybe it was just too much work to "port" to their platform, or they decided to reject part of it and put the rest in mental quarantine.

All the same, these essays will compile to program code. If you have ever created a programming language specification before coding the actual language, then you've already written code for a language that doesn't exist yet. If we are all doing that, hopefully these programs can be released under a free license before they are turned into code -- or at least after someone turns them into code.

"If you have ever created a programming language specification before coding the actual language, then you've already written code for a language that doesn't exist yet."How would that work?

Some of the arguments made here are a little bit silly, though they are still inspired by a serious argument -- our culture needs to be free-as-in-freedom.

YOU WILL NOW CONCEDE THAT WORKS OF OPINION ARE ACTUALLY PROGRAM SOURCE AND SHOULD BE FREE.

Hey, it was worth a try.

Long live rms, and appthis = vars['a'] \n vars['p'] = app(vars['p'], appthis) \n if togprint: print lu(vars['p'], lutog) \n sleep(figure('h', vars, 'n')) \n locolour -= 1 \n if locolour < 0: locolour = 7 \n colour(locolour, 0) \n copythis = vars['k'] \n vars['i'] = copythis \n if type(vars['i']) == str: vars['i'] = vars['i'].lower() Licence: Creative Commons CC0 1.0 (public domain)

Recent Techrights' Posts

Sloppy Reporting About Slop, or How The Register MS Lowers Its Standards
Maybe the management isn't even aware of this
IBM's Strategy: Cull 'Expensive' Workers, Replace Them With Cheaper Ones
So far we saw not even one rebuttal or challenge to the claim of Red Hat layoffs scheduled for tomorrow
The Goal of Coopetition Assumes You're Friends
it will never work with Microsoft
Seductive Mirage or Allure of Complex, Proprietary Coffee Machines (or Similar White Elephants)
Software is a lot like those things
Hate Mail From Anonymous Cowards
if this persists, we'll need to escalate
 
Sometimes Newer is Worse
We generally need to reject this dumb notion that "old" means bad
The Code Used to Make Techrights Fits on a Seventh of a Floppy Disk (or 100KB When Compressed)
For the sake of comparison I've just downloaded the latest version of WordPress. The ZIP file is 27.2MB in size, or ~27,200KB.
What They Tell Young Programmers
Coding in 2025
Simpler is Better When Simple is Enough
Over-complicating things to "sell" new versions is so 1990s
Links 10/08/2025: From Social Control Media to Prison, New Examples of Windows TCO
Links for the day
If You Attack Somebody Too Much You Legitimise and Strengthen That Somebody
at the end those attacks add up to a "martyr" status
The Man Who Helped Microsoft Kill Linux is Trying to Delay Our Lawsuits Against Him
By conservative estimates, and based on court documents submitted by them, they're prepared to spend over a million dollars on lawyers, fighting against me and my wife
Gemini Links 10/08/2025: Gen Con 2025 and Framework Laptop
Links for the day
Over at Tux Machines...
GNU/Linux news for the past day
IRC Proceedings: Saturday, August 09, 2025
IRC logs for Saturday, August 09, 2025
The Register MS (Microsoft) or The Register AI (Slop)?
What a slopfest!
Is Red Hat About to Give the Boot to GNOME People Who Helped Microsoft 'Secure' (Monopolised) Boot?
It was always a dumb idea to play along with Microsoft's hardware mischief
Sales of Windows on PCs (Windows Licences) Go Down
Microsoft has a big problem in its hands
The Hype That Microsoft and The Register MS (Among Others) Promote Helps Stage DDoS Attacks on Free Software Sites
Microsoft is, to put it bluntly, pure evil
Links 09/08/2025: Putin Allegedly to Visit Alaska (Which He Deems Part of Russia), Mike Tyson Sued for Copyright Infringement
Links for the day
Slopwatch: Linux Journal, LinuxSecurity, and Google News With Its Slopfarms of Choice
SEO spam, made with LLMs
Follow the Money: The Register MS Gets Paid to Promote "Hey Hi" Ponzi Scheme/Hype, Some Fake 'Articles' Might Be Composed by LLMs Already
paid to promote slop
Gemini Links 09/08/2025: Rethinking Aliases and Posting on Gopher vs. the Web
Links for the day
Links 09/08/2025: Apollo 13 Astronaut Jim Lovell Dies, Slop Future Bleak
Links for the day
After Shutting Down Studios, Divisions, Applications (e.g. Skype) Microsoft is Also Shutting Down 'Apps'
Cuts all around as layoffs persist this month, Microsoft tries to get many people to resign, and debt skyrockets
Most of Geminispace Can Probably Fit on a CD-ROM or a DVD (the Textual Part)
If one excludes very large capsules and ones that contain non-textual contenty
Eventually UEFI 'Secure Boot' Will be Dropped (Users Will Demand Its Removal and Boycott Its Pushers)
we expect OEMs will just listen to users
The Register MS: We Know Slop is a Bubble and Mindless Hype, But We Get Paid to Participate
Call out the culprits
There Are Probably Over a Million Pages in Geminispace
there are two many limitations which merit a mention when it comes to assessing magnitude
Informal Open Letter to the Lawyer of the Microsofters (on Who's Funding the SLAPPs Against Techrights)
Whenever I ask about the funding they try to change the subject and act all aggressive
Microsoft Lunduke is Just Provoking People for Provocation's Sake
Be forewarned and remember where this guy came from: Microsoft
Besieged by Plagiarists Who Play With LLMs and Image Fusions
We really need to exercise or use our collective voice to oppose Serial Sloppers
Over at Tux Machines...
GNU/Linux news for the past day
IRC Proceedings: Friday, August 08, 2025
IRC logs for Friday, August 08, 2025
Gemini Links 09/08/2025: Water Painting and Political Violence
Links for the day
Slopwatch: LLM Sloppers in Google News, LinuxSecurity, and More
they also perpetuate some falsehoods as the LLMs lack any comprehension
Links 08/08/2025: China King of Plastics and US Dictator Plans to Meet Russian Dictator
Links for the day
Gemini Links 08/08/2025: Cracking a Family Member's Password and Overdose of Slop
Links for the day
Red Hat's Latest Talent Hunt, Day Ahead of Mass Layoffs, is Yet Another Microsoft Executive
Red Hat will apparently commence mass layoffs early this coming Monday
Links 08/08/2025: "Quit Facebook" and High Cost of Microsoft/Windows Shown Again ("BlackSuit")
Links for the day
Good Morning, Readers of The Register MS
Things The Register MS could (but does not) cover this morning
Why Gemini Protocol Has a Bright Future
Maybe Gemini Protocol's promise becomes more appealing as the Web turns to slop and bloat
It's a Lot Easier to Participate in the Unethical System Than to Oppose Injustices in It
Going after powerful and high-budget interests is never easy
Microsofters Filed Two SLAPPs Against Us, Now They Cannot Keep Up With Judges' Orders
For over 4 months already their facilitator in London has been under investigation by British authorities because of what's being done to my wife and I
Censorship Regarding Red Hat Layoffs
Talk about this? They'd rather not.
Struggling to Cut Costs, Microsoft Continues Shutting Down and Cancelling Stuff This Month
There are August layoffs at Microsoft
Over at Tux Machines...
GNU/Linux news for the past day
IRC Proceedings: Thursday, August 07, 2025
IRC logs for Thursday, August 07, 2025
Fake 'Linux' Articles, Written by Bots to Take Traffic Away From Real Articles
LLM slop helps replace information with junk or misinformation
When Google's Googlebombing of "Gemini" Was Not Enough; They Now Also Googlebomb "Gemini Space"?
We know GAFAM not only worries about Gemini Protocol but also attempts to 'infiltrate' Geminispace
The Register MS Promotes Microsoft Slop, Assumes All Readers Use Microsoft Windows
Microsoft really dominates the site
Gemini Links 08/08/2025: KDE/Qt Development and What's Missing From "Retro"
Links for the day