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

IBM Culling Workers or Pushing Them Out (So That It's Not Framed as Layoffs), Red Hat Mentioned Repeatedly Only Hours Ago
We all know what "reorg" means in the C-suite
 
Jonathan Carter & Debian: fascism hiding in broad daylight
Reprinted with permission from disguised.work
Gunnar Wolf & Debian: fascism, anti-semitism and crucifixion
Reprinted with permission from disguised.work
Links 01/05/2024: Take-Two Interactive Layoffs and Post Office (Horizon System, Proprietary) Scandal Not Over
Links for the day
Over at Tux Machines...
GNU/Linux news for the past day
IRC Proceedings: Wednesday, May 01, 2024
IRC logs for Wednesday, May 01, 2024
Embrace, Extend, Replace the Original (Or Just Hijack the Word 'Sudo')
First comment? A Microsoft employee
Gemini Links 02/05/2024: Firewall Rules Etiquette and Self Host All The Things
Links for the day
Red Hat/IBM Crybullies, GNOME Foundation Bankruptcy, and Microsoft Moles (Operatives) Inside Debian
reminder of the dangers of Microsoft moles inside Debian
PsyOps 007: Paul Tagliamonte wanted Debian Press Team to have license to kill
Reprinted with permission from disguised.work
IBM Raleigh Layoffs (Home of Red Hat)
The former CEO left the company exactly a month ago
Paul R. Tagliamonte, the Pentagon and backstabbing Jacob Appelbaum, part B
Reprinted with permission from disguised.work
Links 01/05/2024: Surveillance and Hadopi, Russia Clones Wikipedia
Links for the day
Links 01/05/2024: FCC Takes on Illegal Data Sharing, Google Layoffs Expand
Links for the day
Links 01/05/2024: Calendaring, Spring Idleness, and Ads
Links for the day
Paul Tagliamonte & Debian: White House, Pentagon, USDS and anti-RMS mob ringleader
Reprinted with permission from disguised.work
Jacob Appelbaum character assassination was pushed from the White House
Reprinted with permission from disguised.work
Why We Revisit the Jacob Appelbaum Story (Demonised and Punished Behind the Scenes by Pentagon Contractor Inside Debian)
If people who got raped are reporting to Twitter instead of reporting to cops, then there's something deeply flawed
Free Software Foundation Subpoenaed by Serial GPL Infringers
These attacks on software freedom are subsidised by serial GPL infringers
Red Hat's Official Web Site is Promoting Microsoft
we're seeing similar things at Canonical's Ubuntu.com
Enrico Zini & Debian: falsified harassment claims
Reprinted with permission from disguised.work
European Parliament Elections 2024: Daniel Pocock Running as an Independent Candidate
I became aware that Daniel Pocock had decided to enter politics
Publicly Posting in Social Control Media About Oneself Makes It Public Information
sheer hypocrisy on privacy is evident in the Debian mailing lists
Over at Tux Machines...
GNU/Linux news for the past day
IRC Proceedings: Tuesday, April 30, 2024
IRC logs for Tuesday, April 30, 2024
[Meme] Sometimes Torvalds and RMS Agree on Things
hype around chatbots
[Video] Linus Torvalds on 'Hilarious' AI Hype: "I Hate the Hype" and "I Don't Want to be Part of the Hype", "You Need to Be a Bit Cynical About This Whole Hype Cycle"
Linus Torvalds on LLMs
Colin Watson, Steve McIntyre & Debian, Ubuntu cover-up mission after Frans Pop suicide
Reprinted with permission from disguised.work
Links 30/04/2024: Wireless Carriers Selling Customer Location Data, Facebook Posts Causing Trouble
Links for the day
Frans Pop suicide and Ubuntu grievances
Reprinted with permission from disguised.work
Links 30/04/2024: More Google Layoffs (Wide-Ranging)
Links for the day
Fresh Rumours of Impending Mass Layoffs at IBM Red Hat
"IBM filed a W.A.R.N with the state of North Carolina. That only means one thing."
Workers' Right to Disconnect Won't Matter If Such a Right Isn't Properly Enforced
I was always "on-call" and my main role or function was being "on-call" in case of incidents
Mark Shuttleworth's (MS's) Canonical is Promoting Microsoft This Week (Surveillance Slanted as 'Confidential')
Who runs Canonical these days? Why does Canonical help sell Windows?
A Discussion About Suicides in Science and Technology (Including Debian and the European Patent Office)
In Debian, there is a long history of deaths, suicides, and mysterious disappearances
Federal News Network is Corrupt, It Runs Propaganda Pieces for Microsoft
Federal News Network used to be OK some years ago
What Mark Shuttleworth and Canonical Can to Remedy the Damage Done to Frans Pop's Family
Mr. Shuttleworth and Canonical as a company can at the very least apologise for putting undue pressure
Amnesty International & Debian Day suicides comparison
Reprinted with permission from disguised.work
[Meme] A Way to Get No Real Work Done
Walter White looking at phone: Your changes could not be saved to device
Modern Measures of 'Productivity' Boil Down to Time Wasting and Misguided Measurements/Yardsticks
People are forgetting the value of nature and other human beings
Countries That Beat the United States at RSF's World Press Freedom Index (After US Plunged Some More)
The United States (US) was 17 when these rankings started in 2002
Record Productivity and Preserving People's Past on the Net
We're very productive these days, partly owing to online news slowing down (less time spent on curating Daily Links)
Over at Tux Machines...
GNU/Linux news for the past day
IRC Proceedings: Monday, April 29, 2024
IRC logs for Monday, April 29, 2024
Links 30/04/2024: Malaysian and Russian Governments Crack Down on Journalists
Links for the day
Frans Pop Debian Day suicide, Ubuntu, Google and the DEP-5 machine-readable copyright file
Reprinted with permission from disguised.work
Axel Beckert (ETH Zurich), the mentality of sexual violence on campus
Reprinted with permission from Daniel Pocock
[Meme] Russian Reversal
Mark Shuttleworth: In Soviet Russia's spacecraft... Man exploits peasants
Frans Pop & Debian suicide denial
Reprinted with permission from disguised.work
Hard Evidence Reinforces Suspicion That Mark Shuttleworth May Have Worked Volunteers to Death
Today we start re-publishing articles that contain unaltered E-mails