Hi, one of the authors here. Following this work around the existing French Tax Code, we are now working on a domain-specific language improving transparency and maintainability of legal computations, called Catala.
I’ve had this idea for ages and was told it wasn’t possible several times. wouldn’t surprised if some of your team has heard the same. Very glad they didn’t listen! This is awesome.
France has had tax code compilers for quite a while. I think it’s probably not possible in the US because the US tax code is really ambiguous (or at least that’s my understanding as a layperson).
Is the DGFiP “codebase” actually available beyond the small snippets you present in your papers? Seems like it would be a fun peek into a system that … in theory shouldn’t be harmful to expose to the world?
Floats definitely don’t behave like reals, but their properties are well studied these days, see e.g. “Handbook of Floating-point arithmetic”. Section 1.3.2 has a really nice example of a sequence converging to different values in real and floating-point arithmetic.
Systems people understand the value of reuse and testing. Once you have a joke that works, you can reuse it in every applicable context. Requiring us to come up with a new joke may require significant additional development and testing time.
Let’s be honest: there has been plenty of testimonies from academics that the original name entailed inappropriate behavior ranging from bad jokes to harassment. I hope this renaming will contribute to reduce – at least a bit – the leaky pipeline in this area of CS.
there has been plenty of testimonies from academics that the original name entailed inappropriate behavior ranging from bad jokes to harassment.
That’s a shame. I’ve not seen that first hand, it’s just been a good way of telling who on a project is a verification person and who isn’t: when someone announces that they like Coq, the systems people are the ones obviously trying really hard not to smirk, the verification people are the ones that nod (or say that they prefer some other theorem prover).
I would have just flagged this and moved on, but I feel that I need to take a moment to clarify something. This isn’t just about “not letting people have ‘fun’”, this is the kind of thing that happens when our industry is being taken more seriously at a societal and institutional level. This name was long overdue to be replaced because it is fundamentally a penis joke. These jokes are “fun”, but they don’t really have a place in professional work environments because “jokes” aren’t always funny to all parties in the vicinity of that joke.
I feel that simplifying this down to “No fun allowed” is a misinformed take, and I would really rather not see such things on here as I feel they aren’t conducive to the desired environment of this community.
This name was long overdue to be replaced because it is fundamentally a penis joke.
This is not correct. Recalling that the software originated in France, here’s Wikipedia:
The name “Coq” is a wordplay on the name of Thierry Coquand, Calculus of Constructions or “CoC” and follows the French computer science tradition of naming software after animals (coq in French meaning rooster).
I’m not saying it wasn’t time for a rename, but fundamentally it had nothing to do with cocks of the American type.
This is not not correct. The oral history around this name is that the person who made the decision (Gérard Huet) was well aware that it would lead to penis jokes. I’m not sure why you would expect to see this slightly embarrassing fact explicitly mentioned on Wikipedia.
First of all, I am totally in favor of this change. But, where is the push to change the word “byte”, which sounds just like “bite”, French slang for penis? My understanding of the oral history of the name is that it was intended as a slight rebellion against the naming of byte.
Otherwise, this all smacks of hypocrisy/american cultural imperialism/exceptionalism.
Maybe I’m wrong. I’m not French. But if you know the oral history, you should also know that.
(Of course, it’s not as easy to change. Doesn’t mean it’s not hypocritical to omit the full context)
The word that sounds like French “bite” is actually bit, not byte. Since we (French speakers) gladly use the word (it’s the only one we have for that concept), I wouldn’t take it as an example of cultural imperialism. It’s just a good word, short and easy to pronounce.
Ah, that’s what I had actually thought I had heard, but then I looked up french slang and saw “bite”; I should have thought about it would sound w/ french pronunciation.
So does ‘bit’ not create uncomfortable situations as did Coq? And this is not actually a social issue for francophones? Genuine question here; if it does, we should change it.
Yes it does indeed create uncomfortable situations. As do “queue” (as @gamache mentioned) which is also another slang for the same thing (as well as the word for “tail”).
I don’t mean to insist but I am negatively surprised by the confidence with which you stated something, in your earlier post, about a topic you know nothing about. I mean, someone made a comment that is arguably factually correct, and you cited Wikipedia at them (in a way that is not actually an argument: the fact that something is not discussed on Wikipedia does not say anything about whether it is true or false) and stated that (emphasis yours) “fundamentally it has nothing to do with cocks of the American type”, which is an awfully confident way to state something factually incorrect.
I don’t expect an apology or anything, but my take away is that some people here sure sound very confident about things that they don’t know about, even when they reply to well-formed, nuanced, valid takes on things. I am not used to this level of discourse on Lobsters. I suspect that this whole discussion is not bringing the best out of us.
If you look at the mailing list discussion debating the change you’ll see that people were well aware of the double entendre when the name was chosen. The main debate is if they choose it because of this explicitly or if it was an added bonus.
There’s no place for such names in our profession if we want to be inclusive. Good to see it go like NIPS a few years ago
It’s associated with a penis joke in some contexts, indeed a significant fraction of the cases in which it would be a useful tool. And as a tool otherwise fit for professional and academic use, it would like to be unencumbered by that association in those contexts.
It’s a contentless quip that flippantly dismisses the issues raised in the post it’s responding to, namely inappropriate jokes and harassment (implicitly: mostly towards women).
For comments, these are: “Off-topic” for drifting into meta or topics that aren’t related to the story; “Me-too” when a comment doesn’t add new information, typically a single sentence of appreciation, agreement, or humor; “Troll” for derailing conversations into classic arguments, well-intentioned or not; “Unkind” when uncharitable, insulting, or dismissive; and “Spam” for promoting commercial service
On the face of it, I think the comment in question meets the criteria for every comment flag reason except “Spam”.
Is that it’s a French word ‘fun’? The commenter above said “No fun allowed!”, implying they think that keeping the name is fun. I interpret that as that person thinking the pun with English as being fun. And I interpret cadey’s reply in that context.
This is imperialist action in defense of either protestant values or the English language in computer science. It’s either “no fun allowed” or “English will be your primary mode of operation”.
Once you have a joke that works, you can reuse it in every applicable context. Requiring us to come up with a new joke may require significant additional development and testing time.
So… is this comment an old, proven joke, or a new joke that you’re testing? :-)
Hi, one of the authors here. Following this work around the existing French Tax Code, we are now working on a domain-specific language improving transparency and maintainability of legal computations, called Catala.
We also have a few papers around it, including the semantics of Catala, some fun stuff around date computation, and automatic testcase generation by concolic execution.
I’ve had this idea for ages and was told it wasn’t possible several times. wouldn’t surprised if some of your team has heard the same. Very glad they didn’t listen! This is awesome.
France has had tax code compilers for quite a while. I think it’s probably not possible in the US because the US tax code is really ambiguous (or at least that’s my understanding as a layperson).
That very well could be the case, yeah. Not sure what that says about our tax code but I don’t see that as a positive.
Yes, I agree. The ambiguity in the US system allows billionaires to pay far less tax, so it’s not likely to go anywhere.
I knew this looked familiar. I stumbled on the automatic test case generation part a while back, which is a big area of interest of mine.
Is the DGFiP “codebase” actually available beyond the small snippets you present in your papers? Seems like it would be a fun peek into a system that … in theory shouldn’t be harmful to expose to the world?
Yes, most of the codebase can be found here: https://gitlab.adullact.net/dgfip/ir-calcul
Floats definitely don’t behave like reals, but their properties are well studied these days, see e.g. “Handbook of Floating-point arithmetic”. Section 1.3.2 has a really nice example of a sequence converging to different values in real and floating-point arithmetic.
Oh no! Now systems people who collaborate with verification people need a new joke!
better ones, hopefully
Systems people understand the value of reuse and testing. Once you have a joke that works, you can reuse it in every applicable context. Requiring us to come up with a new joke may require significant additional development and testing time.
Let’s be honest: there has been plenty of testimonies from academics that the original name entailed inappropriate behavior ranging from bad jokes to harassment. I hope this renaming will contribute to reduce – at least a bit – the leaky pipeline in this area of CS.
That’s a shame. I’ve not seen that first hand, it’s just been a good way of telling who on a project is a verification person and who isn’t: when someone announces that they like Coq, the systems people are the ones obviously trying really hard not to smirk, the verification people are the ones that nod (or say that they prefer some other theorem prover).
I would have just flagged this and moved on, but I feel that I need to take a moment to clarify something. This isn’t just about “not letting people have ‘fun’”, this is the kind of thing that happens when our industry is being taken more seriously at a societal and institutional level. This name was long overdue to be replaced because it is fundamentally a penis joke. These jokes are “fun”, but they don’t really have a place in professional work environments because “jokes” aren’t always funny to all parties in the vicinity of that joke.
I feel that simplifying this down to “No fun allowed” is a misinformed take, and I would really rather not see such things on here as I feel they aren’t conducive to the desired environment of this community.
This is not correct. Recalling that the software originated in France, here’s Wikipedia:
I’m not saying it wasn’t time for a rename, but fundamentally it had nothing to do with cocks of the American type.
This is not not correct. The oral history around this name is that the person who made the decision (Gérard Huet) was well aware that it would lead to penis jokes. I’m not sure why you would expect to see this slightly embarrassing fact explicitly mentioned on Wikipedia.
Perhaps this is right; I had never heard this “oral” history before today.
In any case, I have some bad news about queues.
I can also confirm having heard this from someone deep in the Coq community.
First of all, I am totally in favor of this change. But, where is the push to change the word “byte”, which sounds just like “bite”, French slang for penis? My understanding of the oral history of the name is that it was intended as a slight rebellion against the naming of byte.
Otherwise, this all smacks of hypocrisy/american cultural imperialism/exceptionalism.
Maybe I’m wrong. I’m not French. But if you know the oral history, you should also know that.
(Of course, it’s not as easy to change. Doesn’t mean it’s not hypocritical to omit the full context)
The French term for byte is “octet”, for precisely the reason that byte is homophonic with the slang term for penis.
The word that sounds like French “bite” is actually bit, not byte. Since we (French speakers) gladly use the word (it’s the only one we have for that concept), I wouldn’t take it as an example of cultural imperialism. It’s just a good word, short and easy to pronounce.
Ah, that’s what I had actually thought I had heard, but then I looked up french slang and saw “bite”; I should have thought about it would sound w/ french pronunciation.
So does ‘bit’ not create uncomfortable situations as did Coq? And this is not actually a social issue for francophones? Genuine question here; if it does, we should change it.
Yes it does indeed create uncomfortable situations. As do “queue” (as @gamache mentioned) which is also another slang for the same thing (as well as the word for “tail”).
so… it seems like the point is valid? that it was started as a form a cheeky form of protest, and we’re ignoring what it was protesting?
I don’t mean to insist but I am negatively surprised by the confidence with which you stated something, in your earlier post, about a topic you know nothing about. I mean, someone made a comment that is arguably factually correct, and you cited Wikipedia at them (in a way that is not actually an argument: the fact that something is not discussed on Wikipedia does not say anything about whether it is true or false) and stated that (emphasis yours) “fundamentally it has nothing to do with cocks of the American type”, which is an awfully confident way to state something factually incorrect.
I don’t expect an apology or anything, but my take away is that some people here sure sound very confident about things that they don’t know about, even when they reply to well-formed, nuanced, valid takes on things. I am not used to this level of discourse on Lobsters. I suspect that this whole discussion is not bringing the best out of us.
If you look at the mailing list discussion debating the change you’ll see that people were well aware of the double entendre when the name was chosen. The main debate is if they choose it because of this explicitly or if it was an added bonus.
There’s no place for such names in our profession if we want to be inclusive. Good to see it go like NIPS a few years ago
Cock actually also just meant rooster originally.
It’s associated with a penis joke in some contexts, indeed a significant fraction of the cases in which it would be a useful tool. And as a tool otherwise fit for professional and academic use, it would like to be unencumbered by that association in those contexts.
What would this even be flaggable for? The user isn’t trolling or being unkind, you just disagree and think the joke isn’t fun.
It’s a contentless quip that flippantly dismisses the issues raised in the post it’s responding to, namely inappropriate jokes and harassment (implicitly: mostly towards women).
Yes, but flagging isn’t “I don’t like this post.” It’s not a downvote.
https://lobste.rs/about#flags
On the face of it, I think the comment in question meets the criteria for every comment flag reason except “Spam”.
“troll” is a valid flag.
The name is fundamentally a French word.
Is that it’s a French word ‘fun’? The commenter above said “No fun allowed!”, implying they think that keeping the name is fun. I interpret that as that person thinking the pun with English as being fun. And I interpret cadey’s reply in that context.
This is imperialist action in defense of either protestant values or the English language in computer science. It’s either “no fun allowed” or “English will be your primary mode of operation”.
If a name was slang for a private body part in Spanish or Arabic or any other language, it would be off the table as well.
(Almost all software projects have names that aren’t slang for private body parts in any language, so this is not a particularly high bar to cross.)
The standard you propose has long-since failed; the typical example in this context is the French slang “bite”, pronounced like English “bit”.
or Boole algebra. strings and PRoot also get pretty close
That isn’t the name of a software project.
So… is this comment an old, proven joke, or a new joke that you’re testing? :-)
I hope the move goes smoothly, wouldn’t want them to get stuck between a rocq and a hard place
I am truly sorry, for both of them.
It’s a nice write-up but I prefer https://tenthousandmeters.com/blog/python-behind-the-scenes-6-how-python-object-system-works/
I tried Catala last year but I died trying to build it :/
How did you try to install it? https://github.com/CatalaLang/catala/blob/master/INSTALL.md offers user-friendly installation instructions using either opam, nix, or a docker container.