@justinmk, thanks for all your work and leadership on neovim. I'm not excited about this feature, but in general I am excited about the changes I've seen in the project. Making a text editor is definitely not my life's ambition, but I'm glad you're taking up the challenge.
...
I don't really agree that "New users must look for a plugin manager and figure out how to install it". The only users who need to do that are the ones who have already found a plugin that they want to install, and which also doesn't provide installation instructions of its own. I don't agree that "Lack of a declarative way to specify plugins" is a valid problem, since this problem is actually introduced by bundling a plugin manager.
And this justification for creating the feature completely ignores the several high-quality existing, unbundled implementations of plugin managers. The installation of Lazy.nvim is entirely within your nvim init files, demonstrating that 3rd-party plugin managers can have simple installation instructions.
The bundled package manager also makes some trade-offs that 3rd-party ones don't have to make (e.g. support for non-git plugins). This is addressable, like the lack of lockfiles, automatic dependency management, and re-implementing every other feature that existing plugins already provide. That's why this is bloat. This task is better-served outside of the core project.
When problems get solved, the remaining problems become more salient. The most salient feedback we get in the last 3+ years is that the "getting started" UX has too much friction. (And this affects old users too, whenever I install Nvim on a new machine without my bag-of-tricks, I notice where friction is.)
For most users that want LSP, or even just to try Nvim for 2 minutes to see what it can do, it's not acceptable that our intro docs have to say "go here or there to install this or that plugin manager, and read their docs, then come back...".
Being able to say "add vim.pack.add(http://...) to your config, then :restart", is a complete answer.
vim.pack is relatively tiny (low maintenance), and zero performance cost for users that don't use it. Not bloat.
It's the opposite of bloat, because it allows us to more often choose "runtime-dependencies", instead of "shipping the universe" in the default build. That's a very welcome "release valve".
- Example of "shipping the universe": Vim's 1000+ builtin syntax files, ftplugins, etc.
- Example of "runtime-dependencies": nvim-lspconfig, treesitter parsers.
> The only users who need to do that are the ones who have already found a plugin that they want to install,
You skipped some steps.
> automatic dependency management
None of the existing plugin managers do that, except luarocks.
Nvim 0.12 (prerelease) also has ghost text with the "textDocument/inlineCompletion" LSP server capability[1]. Currently supported by the "copilot" config[2], but any LS that supports "textDocument/inlineCompletion" can be used (and the config[2] shows optional QoL improvements).
> Each user runs their own node completely independently. Everyone using Urbit OS owns their own identity and data. ... over an encrypted and authenticated network.
Interesting note about OS 1 in particular:
> One really critical thing about OS 1 is the pattern of ‘groups sharing modules’. This pattern makes it perfectly clear how a virtual computer can outcompete a bunch of different services. ... quickly outruns the messy, disconnected world we’re currently stuck in.
Uh, I suppose the name calling, strawman-ing of arguments and insinuations of subterfuge.
> toxic loonytoon
> The actual goal of the movement behind the ESD
> banishing contributors for wrongthink
> The "Persona Non Grata" clause is best understood as an attempt to paralyze resistance to such political ratfucking
Like I said I don't know the OSI culture (or this context) but nothing about this message strikes me as someone who's acting in good faith. There's lots of nonsense out there, but engaging in good faith is about taking what people say in collaborative environments as given in good faith.
I'm open to being wrong and this tone being appropriate. I don't mean ESR has to be nice to people he doesn't like outside of the official policy discussion. But if people are trying to do work this doesn't seem like an appropriate way to engage.
> but nothing about this message strikes me as someone who's acting in good faith
So you don't know who ESR is, and you're going to act like the man who has put his entire life into this effort as though he's not "acting in good faith". Wow.
If anything, I'd question whether everyone else on the list even knows what 'good faith' is, as they voluntarily proceed to censor themselves.
I know exactly who ESR is, have read his blog off and on over the years, and agree with him on many political points.
However, that's still a ridiculous email, and inappropriate for any context where grownups are trying to have a serious conversation about adult matters.
First off, it's unprofessional. But even beyond that, the email is either intended to persuade through facts and reasoned argument, or bully though shouting. It's clearly not written to persuade (there are no facts or reasoned arguments), ergo its intended to bully.
> Its originator is a toxic loonytoon who believes "show me the code" meritocracy is at best outmoded and in general a sinister supremacist plot by straight white cisgender males.
"Show me the code" is a good principle, and not just in programming. Hard data is much better than ad hominems or making arguments from authority. It is, therefore, sadly ironic that ESRs linked email is purely comprised of ad hominems, and the best his defenders can do is to make arguments from authority. Your code isn't automatically right because you're the CTO, and your arguments aren't automatically right because you're the co-founder, and the more heated and inflated your claims get, with no citations or links or proof, the less time I have for you.
ESR remains correct on the principles he has spent his life advocating for. His email is still garbage, and I fully support the removal of anyone who authors emails like that from a mailing list until they apologise and commit to behaving better in the future.
This isn't a profession. It's a volunteer effort. ESR has spent enough time talking about this now that expecting every single email he writes to include a total re-encapsulation of the entire effort is ridiculous. Of course, this is why arguing with these sorts of people is such a pain; they forget everything you've ever said, and any point ever admitted-to is forgotten the next day like as though no such admission had ever been made.
It seems to me much of what is considered "professional" is the result of corporations trying to control employee behaviour to avoid liability. I hope we can do better than that.
Explaining rationally will still get spun by the party as 'bad faith'. I still remember the Ruby thread where the same person started trying to force Matz to either adopt the COC, or otherwise have him step down (presumably so that the right people could get installed to do so.)
These people are HUGE fans of triangulation, their supporters will tear you a new one on twitter if you don't toe the line.
I’m guessing you’re referring to https://redmine.ruby-lang.org/issues/12004 I came across it a while ago and bookmarked it to read later (but never found the time). I didn’t realise they were trying to get Matz to resign. I’m neither a Ruby developer – nor on Twitter so wouldn’t be too up-to-date on these issues.
They were trying in a very roundabout way, but it follows the pattern.
Triangulation refers to when your primary aggressor has their associates perform social pressures (sometimes without them applying much themselves.)
For lack of a better example, consider the aspect of Shunning in some religions/cults; If the leader thinks someone is out of line, word quickly spreads, and the entire group will focus their behavior on making the target feel unwelcome.
Source: dealt with more culty shit than I ever wanted to, which is why these movements creep me out so much.
If you said that at work you would be fired, because nobody can have a civilized conversation with you and no progress can be made. Nobody is stopping him from expressing himself in his personal life but if you are going to bring your crap to work expect there to be consequences.
Some people would be fired if they wore a tshirt to work. I don't think whether or not a behavior would be tolerated by corporations should be the measure by which we judge appropriateness in any context other than a corporate workplace.
Where do you work? because in every developer/engineer job I've worked over the past 12 years, in corproate, academic, small business and startup environments, hostility, foul language, heated arguments and even implications of violence run amok. When/if it is appropriate is a delicate and tricky balancing act that requires careful judgement (which is sometimes misplaced), and the nuances are such that no policy (or lack of policy) can adequately accommodate them.
I'm not an expert on government and law, but it is my understanding that due process is rooted in the recognition that circumstances are often more nuanced than laws can accommodate, and so evaluation of the circumstances are necessary for every case.
I'm not saying OSI actions should follow the same due process as criminal courts, but my point is no, saying the things he said at countless companies, corporations, environments, under some context or another, would not result in firing.
Coraline is pox on the community that uses their 'marginalized' status as a hammer against reasonable people across multiple projects. You want toxicity, there it is - stirring up drama where there was none in the name of the culture war.
The "toxic loonytoon" part, referencing a prominent candidate to the OSI board? I mean, surely we can all have our own opinions about any candidate, but the optics aren't that good.
That sort of language is normal in the parliament houses of the developed world, upon which our constitutional democracies are based.
If there is some sort of evidence that the candidate in question is in fact a toxic loonytoon, by some sort of objective standard, then it's perfectly fine to use that language.
At some point, you have to call a spade a spade, and a toxic loonytoon a toxic loonytoon.
I don't agree - I think you come across a lot more persuasive when you attack the ideas rather than the person and you do it with less colorful language.
Otherwise I think you only 'persuade' people that already agree with you and others that might have otherwise changed their minds are alienated.
That said, I generally like the idea of not banning people and I have a high tolerance for this kind of communication not really bothering me that much - but I still think it's generally bad form and probably does scare away others.
Suppose you write a mailing list post which absolutely names no names, but only presents expressions of specific ideas, and then calls those ideas "toxic" and "loony", with justifications and all. That will still be equally offensive. It will be still be interpreted as an attack on the identifiable person or group behind those ideas, even though they have not been named.
Calling a person a "toxic loonytoon" for the offense of trying to establish standards of acceptable behavior is ridiculous by any sort of "objective standard". If anything, it demonstrates the importance of having those standards, by serving as an example of the sort of behavior that such a standard should condemn.
I'm pretty the point is that OSI already laid down guidelines that asked for civil communication - and name calling is epitome of uncivil communication. Indeed, his comment is basically contesting those guidelines.
So this was clearly one of those no recovery situations. Either guidelines for civil behavior or "show me the code" meritocracy wins but it's hard to see "agreeing to disagree" being possible here.
Being a prior mod of a city sub.. "toxic loonytoon" is a rather light thing to be called.
My concern is if you're drawing the line over this what you're communicating to people is that you cannot negatively sum up another individual, even when it's warranted. A productive conversation can be had on the merits of the label. Are you trying to incentivize long posts about all of the non-sensical policies that the individual is pushing?
Avoiding name calling a standard guideline for civil communication. Maybe there's some moderation standard where just really bad name calling or something is the only no-no that's avoided but that's really the question here.
The point is it's pretty plausible the ESR was breaking guidelines that had been laid down already. Maybe he should have broken them for all I know but all I'm saying really is that for an authority to remain credible they have to enforce guidelines specifically when someone is openly defying them. That's it.
I think it's a reference to one of the people pushing very hard on spreading CoCs everywhere. Can't recall the name. (Corin?) Reading some of that person's tweets, though, left me with a very bad impression.
I know exactly who you are talking about. I’ve had some heated exchanges with them on Twitter. What started out as me just trying to understand the viewpoint of someone who is different than me, quickly turned into them turning their followers into an angry mob that flooded me with personal attacks.
This one incident turned me off of not only that person but the entire cancel culture movement.
Between that interaction (which wasn’t solely me, there were other people that were treated similarly), and other things I have witnessed from people in that movement, I’m confident that it’s not healthy and not something I want any part of.
They have noble goals, but the approach is wrong in a lot of cases. Many of the people have the same toxic personalities that they rail against so loudly.
There is no problem with an individuals choosing not to engage based on their own experience. The problem with cancel culture is that we are encouraged to treat people as "cancelled" based on hearsay.
You're under no obligation to do anything. Individuals are simply exercising their own right not to engage based on their own experience.
From other comments, you seem to be drawing a distinction between "social pressure" and "individual choices". Can you explain when one becomes the other?
I don't think there's a clear bright line, any more than there's a clear bright line between being avoiding individuals you dislike and discrimination. That doesn't mean the distinction doesn't exist.
If one shopkeeper won't serve you, they're exercising their own rights and you can take your business elsewhere. But if every shopkeeper won't serve you, you're probably being discriminated against. I don't presume to draw the line precisely, but we recognise the difference.
I glanced at the OSI page. I found someone who overtly stated opposition to core FLOSS principals:
>"Giving everyone freedom means giving evil people freedom, too." (OSD FAQ)
It doesn't have to be like this.
It's time to stop bad actors from using our work in unethical ways. It's time to give open source developers around the world the tools they need to exercise their ethical responsibilities as engineers and members of human society. It's time for us to stop shirking our ethical obligations, and take responsibility for the use of our work.
Yup, that's C. A. Ehmke. I'm not sure why she's so opposed to core FLOSS principles, even going as far as calling them evil and unethical; I feel like we're all circling back somehow to the bad old "Linux is cancer" attitudes from the 1990s.
She thinks she's a warrior fighting on the side of the angels, it's what gives her life meaning and structure. To be a warrior-for-good requires there to be evil people to fight. If there are evil people then they must be denied access to anything good. If open source is good, then evil people must be denied access to it, which can only be done via the licenses, which would make them not open source anymore, which open source projects will obviously reject. The only remaining solution is to try and manipulate people by manipulating the definition of open source.
The problem for people like Ehmke is there aren't really many evil people in society, and those who do exist tend to get handled by the justice system. So she just ends up picking fights with random people. She's bad news and anywhere she shows up is best recommended to evict her post-haste.
She has done more than anybody else to cause destructive internal strife in Open Source software projects. Her being on the OSI board is simply appalling. OSI needs to be defunded and ignored if she can not be removed.
So someone who wants to destroy open source then, at the core of its foundations.
I can’t wait until this identity politics pendulum starts swinging back. Some people are going to be really embarrassed about the legacy they left for themselves while it was still around.
ts originator is a toxic loonytoon who believes "show me the code"
> meritocracy is at best outmoded and in general a sinister supremacist
> plot by straight white cisgender males."
I think open source has a serious problem in the sense that there are a lot of projects headed by single, rather abusive and obsessed individuals. And moreover, where a stream of obscenities in an email is considered a normal way of communicating, accompanied by a "if you don't like the heat, stay out of the kitchen" attitude. "Show me the code meritocracy" can be more or less this.
My guess is that OSI has been attempting to change the situation. Part of the change would demanding people avoid streams of "strong language" as ESR uses above. Moroever, I suspect people already said "we're aiming for a better standard of communication".
As far the practical value goes, I'm not sure if there is an easy way to change the situation. Installing an ombudsman on projects is kind of hard given the projects are indeed going to belong to those who produce a lot of decent code. People create open source software that scratches their itch, not to conform to others' values.
His statements seem more like the words of a man who feels strongly and passionately about his cause. It's a little suprising that the OSI keeps such high standards for decorum if that was the message that got him banned.
It deserves a warning, maybe, but banning him? Cancel culture indeed.
I don't know where you work but at most--if not all--of my jobs this sort of internal discussion can be somewhat common when things get heated. We hurl epithets about outsiders when we get frustrated, and sometimes speak strongly not unlike what ESR said.
Would that kind of language/dialog be tolerated if it was directed at other people present or on the team? Or towards stakeholders? Of course not.
Of course, our discussions don't get immortalized on a public mailing list for every interested busybody to critique, and that does change the dynamic a bit...
>I think open source has a serious problem in the sense that there are a lot of projects headed by single, rather abusive and obsessed individuals.
The person behind ESD has a history of getting people 'removed' from projects.
To them, I say: physician, heal thyself. I'm really sorry that they've lived a life being bullied so much that they derive such pleasure from doing so to others.
> I think open source has a serious problem in the sense that there are a lot of projects headed by single, rather abusive and obsessed individuals.
Individuals, who, let's not forget that, are the reason the projects exist in the first place, and who may feel more attachment to the projects than others. That they react more strongly to the impression that some other group is trying to take over their project, often years or decades of their life, and destroy it (by their standards) is understandable, I think.
And also, let's not forget that those seeking control via CoC are often equally abusive, they just strategically limit their abusiveness to Twitter & co and keep it off of official mailing lists to be able to say "I always stayed professional (here, while I was backstabbing everywhere else)".
Individuals, who, let's not forget that, are the reason the projects exist in the first place, and who may feel more attachment to the projects than others.
Absolutely, it's quite a quandary. The thing is, there's a difference between "random tool ten people use and no one would create with person X" and, say, Open Office and there are a variety of shades in between. At some point, the "I created this and I can manipulate it any way I want" thing is really problematic and stands in the way of a semi-important standard/application/library but at other points, there is no easy alternative.
I don't know. Generally, "it worked out great the past two decades" is, to me, a good indicator that it's going to work out in the future, too. It might not be nice and you might not want to stand in the line of fire, but it's going to be consistent, and if you like what you saw until now, consistency is what you want. Who knows where Linux will go without Linus. Maybe Google will push DRM into the kernel and in five years you can't run adblock any more on a modern Kernel (yes, I'm being hyperbolic).
What I do like about the "there's no place for niceness here" is one thing over all: if you can make it there, you can take the heat. And if you're in a position of responsibility, that's really something that is extremely important. It sorts out the people that can't stand the heat, and that's ugly and hard on those people, but it's good for the project, because you can't have them only experience the heat for the first time when they are in power and Amazon leans on them with their billion dollar law team and the promise of a cushy office job.
I understand the idea of "this madness and chaos got us this far, but we'll have to grow up and start doing it the way the people do it that we didn't like when we started it, it's just too big and too important". It's very similar to what happened in the crypto scene when a bunch of guys did some cool stuff and then they realize that their little project now is worth more than many countries' GDP, that's probably a sobering talk.
I don't know that it's necessarily a good idea, though. So far, benevolent dictators have worked out great, even if some of them ruled with a sharp tongue and an iron fist. Whether the alternative will work as well remains to be seen.
> I think open source has a serious problem in the sense that there are a lot of projects headed by single, rather abusive and obsessed individuals.
Why not fork those projects and makes those awesome forks full of code with unicorns and glitter?
If those single rather abusive individuals have to compete with code + unicorns + glitter, I'm certainly going to switch to that and I bet the others will too
It's inefficient, and occludes what the discussion is actually about. As someone not deeply familiar with the discussion, I am no further to understanding what ESD is, as the language used is mostly a string of assertions without proof, and little definitional value. In other words, there were better, more effective ways to answer the question, still completely unfettered by any need to be "PC".
There's expressing yourself fully and accurately, and there's expressing yourself respectfully. It's entirely possible to do both, and that quoted response really didn't do much of either.
conflating a code of conduct with "political ratfucking" (whatever that means) and going into a rant about political correctness and Marxism is at best incoherent, not exactly original and at worst paranoid and adds nothing of value.
It makes you sound like you're one bad day away from chasing swans through the park nakedly and it isn't really productive in any community.
People like Eric need to come to terms with the fact that being a productive contributor is not an excuse for anti-social behaviour, that open source communities these days are huge and people from many places who may not get your jokes or your political discussions are participating, and that cultures change.
That might sound like generic senseless profanity, but it's actually a term with specific meaning: "Ratfucking is an American slang term for political sabotage or dirty tricks."
> conflating a code of conduct with "political ratfucking"
There are strong criticisms of CoCs and questioning of the necessity of that. I don't think that's too much of a reach in how that was communicated. A bit exaggerated yes.
Context is probably required to understand what 'free discussion' he thinks is under attack. Over the years ESR has blamed gay people for HIV, women for their own suicide, Chinese conspiracy theories and whatnot. To put it simply, he has basically gone mad.
Sure there is a nuanced discussion about what is too much for a CoC but the sort of discussion that he thinks is supposed to be cut out actually needs to be shut down. I'm surprised it took this long, to be honest.
>> * The "Persona Non Grata" clause is best understood as an attempt to paralyze resistance to such political ratfucking by subverting th freedom-centered principles of OSI. It is very unlikely to be the last such attempt.
> Make no mistake; we are under attack. If we do not recognize the
nature of the attack and reject it, we risk watching the best features
of the open-source subculture be smothered by identity politics and
vulgar Marxism.
I mean, if you are this much out of touch with reality, maybe it's time to quit Facebook, Twitter etc.
I don't agree with him but I feel a bit sorry for him. He's passionate about this and he believes what he's saying. Perhaps nothing could make him see things differently, but banning him definitely won't.
Perhaps we should base our judgments about the issues under discussion by the plausibility of the claims being made, the evidence supporting them, the likely consequences of different possible courses of action, and our values, rather than whether the proponents of one or another point of view hail from the upper class or the lower class.
The word didn't exist in Webster's time, so it's unclear which dictionary you're referring to, but in any case the definition is so incomplete as to be wrong.
Etymonline says, "pertaining to or characteristic of a (high) class," from 1891. https://www.etymonline.com/word/classy GCIDE says, "having elegance or taste or refinement in manners or dress," and "exhibiting refinement and high character. Opposite of low-class." WordNet says, "Elegant and fashionable." What brings all these definitions together is that something is good in the particular way that the upper class values.
It's true that many people who admire the manners of the upper class consider their behavior standards to be "high standards", and they certainly are demanding standards. But "classy" is not used to describe conformance to any demanding standards of personal behavior, such as a soldier's enthusiastic yelling and physical fitness, Clarence Darrow's unyielding advocacy of the welfare of the world's poorest, Feynman's profound mathematical learning and epistemic humility, or the brutal, unvarnished honesty demanded by Dutch society. As you know if you are a native speaker of English, none of these are considered "classy", however demanding they may be, because they do not belong to the [English and North American] upper class, which demands very high standards of etiquette, euphemism, diplomacy, fashion, and stoicism. Those virtues are "classy"; the other virtues I described above are not only not "classy" but in many cases positively opposed to "classiness".
I think all social classes today would consider the term ratfucking obscene, and believe that using obscenities is inconsistent with a high standard of behaviour?
It's interesting to look at the older roots of the word and see links to social class there but I'm not using the term in that sense. The definition I referred to is a modern one from Mirriam Webster.
On the contrary, there are many people who consider using obscenities to be praiseworthy or even obligatory under certain circumstances. Generally they belong to social classes that you evidently have carefully avoided having any experience with.
The ideological line you're laying down here is a specifically upper-class ideology, as revealed by its content, not just the words you use. Your lack of awareness of the origin of that ideology comes from does not liberate you from that origin; on the contrary, it enslaves you to it, making you an instrument of agendas you do not understand and cannot question. Please see https://news.ycombinator.com/item?id=22551881
You say, '"Classy" in this case doesn't mean "class." Some people are turned off by vulgar language.' Your two statements seem to contradict each other; the first one is incorrect, and the second one is correct. Perhaps you do not know what the word "vulgar" means; it means "of the common people", that is to say, the lower class.
Despite the pedantic definitions of the words, the point the commenter was trying to make wasn't about class distinctions, it was that they were perceiving it to be offensive.
The reason they perceive it to be offensive is that they are unconsciously enacting a dynamic of class domination that they cannot even question due to their lack of awareness, as further explained in https://news.ycombinator.com/item?id=22551881
Well, this is precisely a class conflict: the lower-class values of liberty, competence, autonomy, and honesty on Raymond's side, and the upper-class values of purity, etiquette, exclusion of the wrong sort of people†, and getting along well with the right sort of people, on Ehmke's side — although you might say that her etiquette is "more honored in the breach than in the observance", in our modern mangling of the phrase.
The question is really which set of values will determine the future course of the Open Source Initiative: the values of foulmouthed mullet-wearing truck drivers or the values of refined ladies and gentlemen who couldn't possibly, oh, how simply dreadful.
Out of interest, do you say that liberty, competence, autonomy, and honesty are lower class values because you believe the upper classes do not value these things?
I'd agree that ESR might have received a better reception for his point of view if he'd expressed himself differently though.
No, generally speaking, people agree in abstract terms on what virtuous principles are, such as honesty and courtesy; they disagree about what virtuous acts are, because in every act we resolve a conflict between conflicting virtuous principles, necessarily subordinating lower values to higher ones.
So you are saying ESR has a conflict between a virtuous principle which led him to use obscene language (is that autonomy?) and the upper class virtuous principle of courtesy, and he's subordinated courtesy because he's working class?
The GP said it already. The example virtues are honesty and propriety. If you value honesty over propriety, you'll speak honestly at the cost of speaking politely. If you value propriety over honesty, you'll either not speak or speak in a more polite/roundabout way to avoid conflict, even at the cost of honesty.
He has a long history of making statements like this. Anyone showing up for the first time in years only to intentionally and obviously violate rules should be kicked out.
I fully agree with the idea that "ethical" licenses aren't free software, but the dude is a terrible actor in this. He violated the rules, and got banned. That's not a bad thing!
I don't see any evidence that he violated the rules; he described Coraline Ada Ehmke as a "toxic loonytoon" as part of his opposition to her ethical beliefs. Whether or not he is correct about that, I don't see how it's a violation of the rules to say so — it's not as if he used a slur against women, white people, or transgender people. Even when he railed against "Marxism" (it's not clear to me whether Ehmke is a Marxist, but certainly some of her supporters are) he didn't use slurs like "commie" or "tankie", despite the bitter hatred of Marxism that his life is oriented around.
Do you have a primary source for that? This sounds like a cancel-culture rumor intended to attach negative ideas to a person in order to discredit them.
After reading that entire post, I believe the above quote that:
"He thinks homosexuals are pedophile[s]"
is false. The rant asserts that homosexuals may be more predisposed to pedophelia and/or ephebophelia than those who are straight. Though as an astute commenter on the post pointed out that basically no evidence for the central thesis was provided by ESR.
He's a real winner. I won't go as far as to claim he thinks all homosexuals are pedophiles because I personally can't remember the link for when I read him say that, but here's a quote that edges that line:
And that brings us to the Jeffrey Epstein scandal. In particular, the widespread tagging of Epstein as a pedophile.
No, Jeffrey Epstein is not a pedophile. This is important. If conservatives keep misidentifying him as one, I fear some unfortunate consequences.
Pedophiles desire pre-pubertal children. This is not Epstein’s kink; he quite obviously likes his girls to be as young as possible but fully nubile. The correct term for this is “ephebophile”, and being clear about the distinction matters. I’ll explain why.
The Left has a long history of triggering conservatives into self-discrediting moral panics (“Rock and roll is the devil’s music”). It also has a strong internal contingent that would like to normalize pedophilia. I mean the real thing, not Epstein’s creepy ephebophilia.
Homosexual pedophiles have been biding their time in order to get adult-on-adult homosexuality fully normalized as battlespace prep, but you see a few trial balloons go up occasionally in places like Salon. The last round of this was interrupted by the need to take down Milo Yiannopolous, but the internal logic of left-wing sexual liberationism always demands new ways to freak out the normals, and the pedophiles are more than willing to be next up in satisfying that perpetual demand.
- libmpack serialization/deserialization API is callback-based, making it simple to serialize/deserialize directly from/to application-specific objects
- libmpack does no allocation at all, and provides some helpers to simplify dynamic allocation by the user, if required.
> Not really. It's true if you compare, like f(x) to (f x), but in general Lisp really does have more.
In general I think this is true, but an important caveat that your post brings up is that sometimes it also has to do with how we translate one language to another.
Consider treating a 3-tuple as a list, and assume you have the primitive functions zip, square, sum, and sub (inverse of summing a list). Then the idea of the distance between two points reduces to:
Of course there really are more parentheses here than in the C snippet you wrote, and it's arguably harder to understand, especially if you're unfamiliar with functional programming; it could be slower, too, and careless use of the zip function truncates at the shortest array. (I'm sure there are other objections I haven't anticipated.)
At the same time, if you want to generalize the C function to arbitrary vectors, you'll have to do a little more work with passing arrays, checking bounds, adding a loop. The Lisp function, by contrast, requires no such effort, and once the concept is understood requires little further explanation.
Even so, the point is that line-for-line translations may not always capture idiomatic usage of the language, which may in turn make it look or feel worse than it really is.
> In a city with 10+ million people you don't fall over each other when walking down the street. Usually the city is just big enough to compensate for high population.
I guess you haven't visited Tokyo. The streets are teeming with (non-tourist) people.
Shenzhen is a modern city, it has big wide boulevards, wide sidewalks, which makes burying subways easy
It does have smaller "cuns" sort of villages within the city, with narrow streets and more people, they seem to be knocking down the densest ones (and building upwards)