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

Brian Kernighan, "Only Third to Dennis Richie and Ken Thompson" (UNIX), Agreed With Someone Who Said Rust Was Just Hype, Should Not Replace C
17 hours ago
Reminder: Microsoft's "Secure Boot" Certificate for "Linux" Will be Expired in One Week
Many PCs won't manage to 'rotate' to another certificate
 
BASIC Predates Microsoft by Over a Decade, Microsoft-Controlled Sites Like The Register MS Don't Want You to Know This
The state of the media is really bad when it relies a lot on oligarchs' money and is appointing editors who are working for oligarchs
Analogies for "Memory Safety" in Rust
Don't worry, it's Rust! It can do anything!
"Many of the Red Hat Employees Are Still Looking for Work"
Shame on IBM's CEO
Over at Tux Machines...
GNU/Linux news for the past day
IRC Proceedings: Thursday, September 04, 2025
IRC logs for Thursday, September 04, 2025
Microsoft Started With Code Literally From The Trash, Nothing Has Improved Since
The reality is, there are systems and code that are reliable. But they're not Microsoft's.
Hypothesis That New McKinsey/Microsoft Executive Inside Red Hat Will Outsource Research and Development Operations to India (Like They Do in IBM)
IBM is floundering
Slopwatch: Scams, Fake Articles About "Linux", Plagiarism, and Worse
Perhaps some time soon the LLMs or the "Big LLMs" will run out of money (to borrow) and go offline, leaving those slopfarms in a tough place
Gemini Links 04/09/2025: Means of Production and Rusting Out
Links for the day
Links 04/09/2025: Science, Hardware, and Eyes on China
Links for the day
Gemini Links 04/09/2025: Digital Minimalism and Social Control Media
Links for the day
IBM's GNU/Linux Divestment, Based on Hard But Anecdotal Evidence (IBM Fails to Recognise How Much Money It Made and Can Still Make From "Linux")
Love us or hate us, a lot of what we've been saying about Red Hat under IBM turns out to be rather accurate
Links 04/09/2025: Massive Microsoft Staff Cuts (Barely Reported), "Strange Conspiracy Theory Is Reportedly Spreading Inside OpenAI"
Links for the day
Activists Can Win, But Keep an Eye on the Ball and on the Trophy
GitHub is dying, it was a loss-making trap, not free hosting
Gemini Links 04/09/2025: Katrina Remembered, Distracted Driving, and Virtual Economics
Links for the day
At This Point It's No Longer Matthew Garrett But People Who Fund Matthew Garrett (or Companies That Fund His SLAPPs Against My Wife and I)
The only thing worse than misogynists are misogynists who fail to respect other people's right to go on holiday
Over at Tux Machines...
GNU/Linux news for the past day
IRC Proceedings: Wednesday, September 03, 2025
IRC logs for Wednesday, September 03, 2025
The UEFI 9/11 - Part VI - This Serious Harm Was Planned for Over a Decade, Not an Accident or Merely Some Misfortune
The term "Serious Harm" is legally meaningful here
GNOME Unfit for Diversity and Inclusion
GNOME's leadership is using "bad words"
Brodie Robertson Addressing the Recently-Discovered Comments
Most people probably knew nothing about this until he wrote a response
Red Hat QA Team "Had Shrunk by Half Over the Past Year." (After IBM Divestment)
If Red Hat's workforce is being moved to the East, then RHEL can become a national security problem
Slopwatch: "Open Source" and "Linux" News Faked, Made by Bots and Entered Into Google News
Spam combined with slop about "Linux" has entered Google News
Links 03/09/2025: Microsoft Causes Mass Layoffs Outside Microsoft Also, "Google Can Keep Paying for Firefox Search Deal"
Links for the day
Gemini Links 03/09/2025: calendar.txt, Alhena 5.3.1, and ROOPHLOCH
Links for the day
The Theory That the Man From McKinsey, Whom Red Hat Took From Microsoft a Month Ago as Executive, Wants 'Efficiency' (Lower Salaries)
So far... no "official" word
When Your Site's Articles Are Being 'Cheapened' by Slop as Feature Images
Dr. Farnell should become an advisor to The Register MS
Certificate Authority Let's Encrypt Drops to Only Half a Dozen Capsules and 0.2% of the Whole in Geminispace, Self-Signed is the Way to Go
It used to have hundreds, according to Lupa
Doing to Red Hat What They Already Did (and Still Do) to IBM
there seems to be a drive to hire cheaper staff, and it may be led by somebody Red Hat hired from Microsoft
Links 03/09/2025: Salesforce's Latest Mass Layoffs, 93% in Large Poll at The Register MS Say UK Government Should Dump Microsoft
Links for the day
Preparations for Our 19th Anniversary Have Already Begun
When we get back we'll probably sort out some balloons and venue for the next party
Pleased After 2 Years With team.blue
Moving from a Content Management System (CMS, dynamic) to a Static Site Generator (SSG) was a wise decision that made life so much easier
The Free Software Foundation (FSF) is Being Attacked by Organisations Jealous of Its Principled Stance and Longevity
Nobody is perfect, but imperfection does not instantaneously imply sinister intent
If You Reject the Google Verdict in the US, Then You Should Also Reject the "Modern" Web (Do Something About It)
Gemini Protocol is still open; it cannot be hijacked or subverted because it's frozen by design and by intention
Open Source Initiative IRS Filing: Almost All the Money is Corporate, Stefano Maffuli (Executive Director) Takes About a Quarter of That Money for Openwashing of "AI" Ponzi Scheme
OSI is currently little but a PR/marketing agency of Microsoft
Many People Are "Leaving" Red Hat, Even High-Level Managers
Something is definitely going on at Red Hat
Techrights Has Been Subjected to Calls of Violence (and Death Threats), It Never Condoned Violence
I have no sympathy for people who call violence "free speech" and then get in trouble
Condoning Violent Behaviour and "Free Speech"
perhaps Microsoft Lunduke lost touch with what constitutes violence
Takeaway From the Google Verdict: GAFAM Has Too Much Control (Even Over the US Government and Courts With Government Appointees)
Many people feel disappointed but hardly surprised by the verdict
The Free Software Foundation (FSF) Turns 40 in One Month
As noted a few days ago, several times in fact, many people now recognise the importance of the FSF's mission, even if most people don't know what the FSF is
Many Microsoft "Assets" Are Fabricated Baloney (to Game the Numbers)
At times it seems like what we deal with are many weak patents (on algorithms), valuations or speculations based on hype ("hey hi"), and stocks held by Microsoft and its own staff
"Voluntary" Layoffs at Microsoft (to Game the Numbers, Sugar-Coating a Crisis)
"Employees interested have until the end of October to volunteer."
Over at Tux Machines...
GNU/Linux news for the past day
IRC Proceedings: Tuesday, September 02, 2025
IRC logs for Tuesday, September 02, 2025