Sounds just like any other GNU project ;-)
I mean I seriously admire RMS's endurance and persistence, and I'm looking forward to this manual, I'm sure it'll be great, but is this really what GCC needs most? A new language manual?
Sounds just like any other GNU project ;-)
I mean I seriously admire RMS's endurance and persistence, and I'm looking forward to this manual, I'm sure it'll be great, but is this really what GCC needs most? A new language manual?
Why 30 years late? Their earlier manual[1] already covers the C language as standardized 20 years ago with C99. This new one makes mention of at least C11. If it doesn't include features of a later standard, it's at most like 10 years late if you can expect anyone to write a publication like this in a single year.
> in a format that is inaccessible to anyone just casually browsing the web but needs to be built using 40+ year old build systems
Nothing wrong with software being old. It's stable and reliable. Also, I'm not sure the format has any competition, taking into account feature parity.
[1] https://www.gnu.org/software/gnu-c-manual/gnu-c-manual.html
So indeed, it never got past coverage of C99 and other GCC extensions circa C99. I honestly did not expect that it was going to be ten years before his new book was finished, or I might would have put more work into the one that I started.
Oh well! The new one is finally out. :-)
Indeed, I haven't spotted these on my first glance over the document. So yeah, it's probably only 10-15 years late when it comes out. I'm still amazed that RMS is taking C11 into account, I would have guessed he prefered C99
> Nothing wrong with software being old. It's stable and reliable.
I'm sure you're having fun driving your old Ford Country Squire, watching television on an old RCA TV set and using a rotary phone to call friends and family ;-)
Of course you are right in that there is nothing inherently wrong with using old software. And yes, it might be more stable than the shiniest newest tech. But there are middle grounds that exist as well that get you nifty features or quality-of-life improvements, and don't intimidate newcomers that much than having to first find out what that CVS is that GNU is still using in some areas ;-)
I said software. Have you stopped using 30 year old Linux, Python, Photoshop, etc.? They're not that much newer than Texinfo. Or do you think they should be discarded when they hit 40? MS Excel is about the same age as Texinfo. I guess Excel is obsolete now.
You don't need to make a whole new product to introduce improvements in software like you do with hardware.
If you build a new car by taking an existing one and swapping out the engine, is it still the same car? What if you also swap the body. And the drive train?
The same is true for software. In Linux, almost everything has been swapped out"from what it was 30 years before. Device drivers, Memory manager, you name it. Is it still the same old Linux? Probably not. Just because the name didn't change doesn't mean it's the same product.
However, take a look at what changes have been done in GNU Make in recent years. Other than a few bugfixes there was nothing of substance. GNU TexInfo? the same. This is what I mean by "old". I get the whole "never change a running system" thing, or "when it works exactly like it should, why change it"... But this is a surefire way to make sure your software is lost and abandoned when the last 2 developers working on it quit.
There's a clear scope. It makes sense to only have bugfixes, specially since it's FOSS.
> I get the whole [...] "when it works exactly like it should, why change it"...
Why complain about it then?
> But this is a surefire way to make sure your software is lost and abandoned when the last 2 developers working on it quit.
This is FOSS. You seem to think of this like for-profit software. Development in FOSS is typically done for the developer(s) own need and shared for free with the world on the off-chance that someone else finds it useful, because some people are cool like that. There's no for-profit incentive to make it as widely applicable as possible nor to retain market.
In the case of Texinfo, it's utility is mostly for development in the GNU space. It's essentially to write documentation once and turn it into nicely formed PDFs, single-page HTML, multi-page HTML, and info manuals, each with their format-specific functionality for table of contents and indices fulfilled. That idealizes their documentation for print media, web, and local access.
Do you have a use for that? No? Why do you care if it's lost and abandoned? Yes? Then contribute whatever it is you seem to think it's lacking.
Don't worry about loss of market. The only market developers owe anything to is themselves.
> Please report any flaws, including any passage that is unclear or hard to understand.
?
It’s pre-publish. That’s all they’re saying. And that’s clearly the case, it seems.
Right now you can generate a PDF or HTML from the texi
I'm honestly shocked to see rms using git. He used to refuse to use it.
How to get the perl script for coverting texi
On Linux install texinfo
On BSD install text2html
Below is a tiny script to make this manual as a 639K text file called "c.txt" to read with less(1) and edited with vi(1), according to personal preferences.^2 Your preferences may differ. We may be different people using different computers and different software.
1. https://www.nongnu.org/texi2html/ https://texfaq.org/FAQ-texinfo
2. Example personal preferences: Avoid git where it's not needed. Use links browser to dump html to text. Indent text at least 4 spaces, leave large right margins (here, column width = 70). Use curl only for HN examples. IRL, use tnftp.
#!/bin/sh
set -v;
x0=c-intro-and-ref.git;
x1=https://git.savannah.nongnu.org/cgit/;
test -d $x0||mkdir $x0;cd $x0||exit;
for x2 in Makefile c.texi cpp.texi fdl.texi fp.texi texinfo.tex;do
echo url=$x1$x0/plain/$x2;
echo output=$x2;
echo user-agent=\"\";
done|curl -K/dev/stdin -s;
case $(uname) in :)
;;*BSD) texi2html --no-headers --no-split --html c.texi
;;Linux) makeinfo --no-headers --no-split --html c.texi
esac;
links -width 70 -dump .html \
|sed '/^ *Link:/d;/^ *\*/s/\*//;s/^/ /;/Jump to: /{N;N;d;}' > c.txt;
# personal preference: uninstall perl to conserve space;
exec less c.txt;Of course it's Linux only, so means using WSL on my Windows laptop.
Managed to open the file, no instructions whatsoever for finding a compiler other than 'get the GCC one'. Okay. Found the mirror, downloaded it and just now reading the installation manual. Yes, it's a manual, basically. Two dozen prerequisite packages to install by hand before I do anything else.
It's guaranteed not to work on WSL so I'll have to spend an hour or two just getting a compiler up and running, that's assuming it works at all and I don't just have to fire up a Debian VM and start again.
I get C is hard, and is supposed to be hard, but it's like GNU are going out of their way to make this intentionally more difficult than it needs to be.
I don't know why anyone would say that. C remains a simple little language. It is programming, especially the kind C is used for, that is hard.
It's not a LaTeX file though, it's a TeXinfo file but since it includes the texinfo.tex file it shouldn't matter, you can run it like any plain TeX document. It uses texindex but that's included both in TeX Live and MikTeX, so you probably have it installed already. Just run on some kind of command line
> pdftex c.texi
> texindex c.cp
> texindex c.fn
> pdftex c.texi
> pdftex c.texi
There are enough people that someone else can work on what GCC needs most, while RMS hacks on a manual.
GCC is a bloated mess with 50+ megabyte back-end executables; in my opinion, what it needs most is to go on some kind of diet.
Nah. It's what some programmers need most, especially those that cannot/willnot pirate a manual, or want to be able to give back improvements as they study it.
Harsh but realistic.
everything from their projects, to their websites is outdated and distant from how people actually use tech everyday.
In 2014, as part of my job as fsf's web developer (a new position at the time), I suggested moving gnu.org's version control from a private cvs repo (that requires passing a test to get access to) to a public git repo as a step towards attracting new contributors. The argument was simple: Not many new volunteers are coming in to work on gnu.org and very few know cvs any more. Making it operate more like a regular free software project that can receive patches from anyone and using the most popular version control system would lower the barrier to entry and improve transparency. It was viewed as a reasonable goal by the people I worked with at the fsf, but gnu has its own governance and the idea was met with strong resistance from all of the longtime gnu.org contributors, including rms. I even received an unpleasant off-list email (not from rms) because I was viewed as an outsider that doesn't know anything. So, that was the end of that little idea.
There is a glimmer of hope for gnu's future in subprojects such as guix, which is doing technically interesting work and has created a healthy community that welcomes newcomers. Can that positive energy take hold and spread to the rest of the project? We'll see.
...and nobody fixed the FTP site.
he campaigned a lot in the 80s/90s too, creating a lot of exposure for his ideas.
i think we just have different expectations nowadays...
This makes it sound like RMS was ahead of the curve since this is the standard operating procedure for a lot of people these days.
I also couldn’t find any gcc binaries for Solaris online, had to steal a copy from my school’s IT administrator to help get a startup up and running.
They definitely have serious challenges with inertia.
I actually like highly functional websites with a light touch that conveys sophistication. GNU's websites don't come in that category, of course.
I'm just asking for something modern and useful, like GitHub and Gitea.
The total opposite of Savannah.
Although I'm sure it was to be more "eco-friendly" than anything
It makes sense if you think of the FSF as a religion, and consider the thesis of the Free Software movement as theological - free software is an ultimate moral good, proprietary software is an ultimate moral evil, and the FSF sees themselves as clergy spreading the gospel and purifying themselves from the corruption and degradation of modernity. Sacred rituals and texts tend not to change over time, after all, being sacred they don't need to change.
As an example, RMS himself actually recommends the dual licensing model of Qt for organizations looking to make a profit and contribute to the free software movement. With that model, the software is available under a copyleft license (GPL) and a proprietary commercial license (for those willing to pay)
But as the FSF is not focused on profits (again, because they’re a non-profit organization), all of their software is exclusively licensed using copyleft licenses like GPL and LGPL. Not because it’s a “religion”, but because it’s literally the entire goal of the organization.
1)You can't succeed as a non-profit if you don't make money.
2)If the FSF cared about their goal of fostering free software blah blah, then why didn't they fire RMS out a cannon when basically the entire open-source world said "fire that serial sexual harasser who keeps opening his mouth about child rape not being rape, or we stop giving you money / working with you."
They chose, overwhelmingly and very petulantly, to continue letting RMS have a leadership role.
If anything, that kind of sheer honesty and invulnerability to peer pressure gives him an advantage over ordinary people in a leadership role.
A good leader has empathy and the capacity to understand when their actions are causing harm to people, and should be willing to take advice when warned about such behavior, and adapt for the better, if not for themselves and their own reputation then at least for the good of the organization. Stallman's "sheer honesty" has done real damage to the FSF, and the culture around F/OSS as a whole. Granted, because the politics around this are sex and gender adjacent, many people couldn't care less on general anti-woke principle, but Richard Stallman as a leader should care.
Simply crossing his arms, digging his heels in and saying "fuck you I'll do what I want" for years on end hasn't given him an advantage over any "ordinary" person. Being an obstinate prick isn't a superpower.
I have been hearing a lot of allegations against Stallman, but cant seem to find the original accusation etc. If you know the primary source information, please link to it in a reply.
No one is going to do your research for you. If you're actually interested, and not simply trying to yank people's chains, you can read any one of the multitudinous threads about it on HN, or do a bit of Googling.
RMS was not a professor or lecturer at MIT.
1st comment- a second hand report by a student that sounds like a joke.
2nd comment- RMS used to sleep overnight in his MIT office.
3rd comment- RMS was needy and pleading when asking for a date in 1985 or earlier.
I recall being told early in my freshman year “If RMS hits on you, just say ‘I’m a vi user’ even if it’s not true.”
— Bachelor’s in Computer Science, ’04
“He literally used to have a mattress on the floor of his office. He kept the door to his office open, to proudly showcase that mattress and all the implications that went with it. Many female students avoided the corridor with his office for that reason…I was one of the course 6 undergrads who avoided that part of NE43 precisely for that reason. (the mattress was also known to have shirtless people lounging on it…)”
— Bachelor’s in Computer Science, ‘99
“When I was a teen freshman, I went to a buffet lunch at an Indian restaurant in Central Square with a graduate student friend and others from the AI lab. I don’t know if he and I were the last two left, but at a table with only the two of us, Richard Stallman told me of his misery and that he’d kill himself if I didn’t go out with him.
I felt bad for him and also uncomfortable and manipulated. I did not like being put in that position — suddenly responsible for an “important” man. What had I done to get into this situation? I decided I could not be responsible for his living or dying, and would have to accept him killing himself. I declined further contact.
He was not a man of his word or he’d be long dead.”
—Betsy S., Bachelor’s in Management Science, ’85
> If you're actually interested, and not simply trying to yank people's chains, you can read any one of the multitudinous threads about it on HN, or do a bit of Googling.
Yes and all of these threads on HN are content free. The only information in this particular thread is about Stallman chewing his feet. Honestly, it looks like you don't actually know what these instances of harrassment are! I can't find anything in this HN thread or multiple others, or by Googling. It looks like you don't either.
Also HN threads are supposed to link to other sources. The only link here is to a Twitter account that is again just commentary.
The chat was for a relatively new GNU command line tool. It was discussed whether it would be possible to detect changes to a file being edited through "outside" programs, before saving. The typical "the file you have opened was changed on disk. Overwrite/Reload/..." question.
It was suggested that they could use inotify for that. A GNU developer responded with "there's no inotify on OpenBSD". Then discussion went to "could we maybe use kqueue there?"
The response from said GNU developer? I quote, and this is not a joke: "There are plenty of systems without kqueue. Like TOPS-10"
The other developer jokingly said that he didn't know of anyone still using TOPS-10, to which the GNU developer responded along the lines of "Well, I am intending to compile and run this on TOPS-10, so we should use a mechanism similar to what EMACS does to detect those changes, as that is portable to more systems and is equally safe, i.e. race-condition-free"
I'm not sure if the race conditions in the "EMACS way" are actually there or not (I didn't feel like reading the elisp code for saving files), the discussion quickly went to filesystem requirements, NFS and other remote filesystems, etc.
But the fact that they are considering porting to an OS that has been out of (active) use for more than 30 years over using more recent APIs on more modern OS's shows how far in the past they are stuck. And this is only a very recent example that I wanted to share, there are many more such examples if you know where to look (mailing lists etc.). Things like "we cannot change this as SunOS requires this-or-that" and "this will break on VMS" are still things they are thinking about... I mean I get it, backwards compatibility is cool and all, but some things can be taken a bit to the extreme...
All the UI's and documentation systems are taking on the same boring corporate gloss. It has its uses, but it feels dead. It's not invigorating.
That's... kind of the point, no? Most people use computers most of the time in a way that's not free by FSF standards.
In every other industry you learn to adapt to new developments until you retire, yet GNU seems to insist on using decades-old software (cvs, autotools, ...) just because.
That just has to backfire at some point...
That is called a fork. For the fork to work you need momentum. Historically this did not work really well. And the forks mostly died.
What I do see is that big biz does not like (L)GPL (and absolutely hate AGPL), so they prefer to through their momentum behind BSD (and similar) licensed code. This is how a lot of momentum was focused away from GNU projects (e.g.: LLVM over GCC)
No that's not what I mean.
I mean more like GNOME which once was a GNU project and then left GNU to continue on their own. There are more examples like that. They don't need new manpower or inertia. They just drop GNU if they feel it keeps them back (which a lot of projects recently think, apparently, after the whole RMS drama some time back)
Stallman should have passed the torch twenty years ago. Open source as a movement would have progressed far more if it had been represented by someone with a more pragmatic view and a modicum of basic social skills, instead of an inflexible, dogmatic, anti-social asshole.
Lacking any form of social grace or interpersonal skills to the point that he picks and eats his toe-cheese while on-stage for a speaking engagement, being a serial sexual harasser and general pest of women (including telling multiple college-age women that if they don't date him he'd kill himself) to the point that all the women in his office kept substantial houseplant collections in their offices because he hates houseplants, and being unable to even shut his mouth about how 'really, age is just a number' when it comes to sex with kids, and becomes extremely petulant about it when everyone objects to those views...
...is not "denigrating someone as being too old."
That's literally saying "too old."
Hell, a lot of his followers consider those qualities virtuous.
I admire that he keeps resisting progress, still curl'ing websites and reading them locally in his EMACS just so that he doesn't have to touch a browser, and blissfully hacking away at a C language manual that the world has already hundreds of...
I like to think of him as the Amish of Computer Science. Which I don't mean in a disrespectful or derogatory way, just as someone who continuously resists any kind of progress...
Perhaps, not "any" kind of progress, just certain kind?