Hacker News new | past | comments | ask | show | jobs | submit login
GNU Justified Public License (tom7.org)
85 points by weinzierl 5 months ago | hide | past | favorite | 58 comments



Not a fraction as clever, but twenty years ago I wrote a haiku-finder in Python, and pointed it at the GPL[1]

When we speak of free

software, we are referring

to freedom, not price.

FOR THE PROGRAM, TO

THE EXTENT PERMITTED BY

APPLICABLE LAW.

[1]: https://www.oblomovka.com/code/haiku.php3


nice.

I could totally hear the first one in singing form


This was made by Tom7, who has many amazing videos about doing ridiculous things with programming on YouTube.

The talk on this work is here:

https://youtu.be/Y65FRxE7uMc


Doesn't this violate the license of the license? The very first paragraph says that "changing it is not allowed" – or "no one can change it" in this changed version.

And calling it "GNU" and attributing it (only) to the Free Software Foundation, when they didn't publish this modified version, seems inappropriate. I don't know if the FSF have trademarks on these terms, but this is the kind of confusion trademarks are meant to protect against.

As a final nitpick, I believe (but I might be wrong about this) the phrase "General Public License" is intended to mean a license for the general public, so changing "General" to "Justified" wouldn't make sense in that case (as it would mean that the public is justified, not the license).

(Neat trick nevertheless.)


I believe you can change it as long as you change the name, which this thing does. (not sure, though, indeed the text doesn't seem to permit derivatives as is)

However, keeping GNU in the name might be problematic.

(and yes, I'm impressed that the justification never uses 2 consecutive spaces or other such tricks)


> However, keeping GNU in the name might be problematic.

Problematic?! I would imagine even an L1 could prove that the Justified version is still Not Unix.


Parody is fair use, and this is part of a submission to SIGBOVIK 2024. http://tom7.org/bovex/ It's also clearly not competing with the original, since its contents are partially nonsense.


My favorite part:

If you develop a new program, and you want it to be of the 100% possible use to the public, the best way to achieve this 100% is to make it 1000% free software which everyone can redistribute and 100% change under 100% these terms.



tl;dw? (or rather "I hate videos - can someone summarize briefly?")


It's worth watching, but tl;dw he used an LLM to pick words with similar meaning that make the lines the same length.


Tom7’s annual SIGBOVIK videos are always a treat to watch.


The paper (both the original and the LLM-justified version) is here: http://tom7.org/bovex/


Can someone explain to me this license? I don't understand.

Me: https://en.m.wikipedia.org/wiki/Monkey_selfie_copyright_disp...


it has been rewritten using a LLM to have broadly the same meaning but at the same time having all the lines at the same lenght.


More concretely, Tom7 built a typesetting system (think TeX) that doesn’t only use the bounding boxes of words, or possible hyphenation to align justified text. His system allows for the text to be rewritten via an LLM if rewording would reduce excess spacing compared to the original.


This is a nice project, but terrible to use for legal text specifically.

Legal text uses its own jargon because the specific meaning of specific words in contracts has been exhaustively argued in court, so any lawyer knows exactly what they mean, and very lengthy court cases on this can be avoided.

For an example, this license lacks the word "irrevocable". This is not a small oversight, and makes using anything provided under this license legally dangerous even if you agree with everything else in it.


I don't think anyone is seriously suggesting using this. It's a joke result from a joke project.


Somehow, actual lawyers have already gotten into trouble for using LLMs for court filings.

No reasonable person would use this, but it is not a good idea to assume your audience on the internet consists exclusively of reasonable persons. Sometimes it's a good idea to spell out the obvious.


> In this talk—and with this talk—I presented BoVeX, a new computer typesetting system that finally solves the AI alignment problem. It follows the tradition of Knuth's TeX, but with modern amenities such as requiring 128 gigabytes of RAM.


They need an LLLM?


How could it use 128GiB of RAM without an LLM?


It cheats!

> IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN *WRING* WILL


The Rule Of Law Is Language

AI Are Creatures of Language

Ooga Booga Ooga Booga Oog


I had a co-worker once who reworded all his long comments to be perfectly justified at 80 columns. It seemed like a waste of time, but he was productive enough overall that nobody cared.


I don’t justify to 80 columns, but I do reword/rephrase to keep to the 70-80 range, as close to 80 as practical.

My justification (hah!) is that, if I put in the effort to write a large comment, I might as well put in the effort to make it relatively easy to read.


A noble goal, but you are possibly making it worse for many people with this additional work, with no clear upside.

Should I read your long comment, I'd prefer being able to chose the width at which I read it and take advantage of automatic wrapping.

If you manually enter line breaks at column 80, suddenly you are making it impossible to read with a higher width, and completely breaking anyone reading on a screen/window with a width smaller than 80 characters (taking zoom / character size at comfortable reading level in account). You are forcing a fixed size on anyone, basically.

You work against your goal by forcing line breaks at an arbitrary position, and doing more work for this.

Just let the reader's software handle this in an optimal way for the reader's situation. You can't yourself because you lack information about the reader, which can change and their can also be several readers, each with their own situation.


I've never seen code with a long comment unbroken. 120 columns maybe, but never like 1000.

What if the comment were indented? In most editors, the wrapped part would start at column 0 and break the appearance of indentation.


Right, code is its own thing with its own customs. For some reasons I didn't assume we were talking about code.

I do wrap my code comments because that's what people expect and want indeed.

On the projects I work professionally we also have a hard limit at 120 characters enforced by checkstyle, so no choice. On personal projects it's usually 80, maybe I should relax that a bit, 120 is quite nice actually.


Tom Murphy VII is, on some very real vector of nerdy-ness/retro-ness/recursion-ness/detail-oriented-ness/easter-egg-making-ness/etc., a giant.

No one I know of comes close.


I remember seeing such amazing justification on BBSs way back when. I think this is an established art form. I didn't compare this license to the regular license, but I'd like to when I have a bit more time.


The magnum opus of this art form is probably this 100% justified Super Metroid walkthrough: https://gamefaqs.gamespot.com/snes/588741-super-metroid/faqs...


Which is the inspiration for this project (or at least one of them)


Hi Dotan! Haven't bumped into you in a decade! I was actually thinking about you this week...


Hello old aquantance! Might you have gone by another handle during the Shuttle years? I don't recognize this one, though maybe I've flipped a few bits since then.


I'm Aur


אור שרף? למדת בטכניון?‏


    git diff -U --word-diff --no-index -- <(curl -s https://www.gnu.org/licenses/gpl-3.0.txt) <(curl -s https://tom7.org/bovex/JCOPYING)
It seems some sentences are totally trimmed off though. But otherwise it is really a sweet, sweet eye candy.


Why are you shouting?


It is literally the title of the license


I think we can relax the verbatim rule when it comes to all caps titles surely?


Why?


Because it makes the title stand out unfairly on the home page of HN.


Why are licenses shouting?


DO NOT USE THIS. You will run into trouble. Also for very good reasons, you are not allowed to change the text of the GPL.


We can probably safely assume it was intended as art, not for practical usage.


You can't tell me what to do you're not my real dad


Finally a superior alternative to the Knuth–Plass line-breaking algorithm!


I was really looking forward to seeing a GPL'd Timothy Olyphant. :-(


Without inserting a single double space anywhere? How is that possible?


If it's not replicating the original license 1:1, but rewording it slightly, it's easy: pick the right words, and add some "filler" words where needed.


Look at the second paragraph under "How to Apply These Terms to Your New Programs". That section is very different, with numbered spacers inserted into it. I'm sure that's some sort of joke or reference, though.


It's easy but it also means this is not the GPL despite what its text claims. It's a new license and may behave differently because some of the words that were changed have specific legal meaning.


It is, in fact, neither easy, nor necessary, nor useful.

Which is why it is the product of a Tom7 SIGBOVIK paper.


That's entirely fair, it's just important to maintain that context in case someone stumbles upon it and takes it at face value thinking it's legally equivalent.


This is no longer copyleft, it's copyjustified.


This should not have "(2007)" in the title; 2007 is the date of the GPL v3, which this is a 2024 mimicry of (as explained in https://www.youtube.com/watch?v=Y65FRxE7uMc).


That threw me off for a second, and I thought it was an old tom7 thing. Exited that he has a new video out.




Consider applying for YC's W25 batch! Applications are open till Nov 12.

Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: