Live data from Hacker News

A Modern Compiler for the French Tax Code

arxiv.org

41–50 of 136 posts

Re: A Modern Compiler for the French Tax Code

#41
The French government and parliament also use this implementation of the law (taxes, benefits, ...) : https://github.com/openfisca/openfisca-france It's open source and contributive so, a common structure is used by multiple countries. They are listed here : https://openfisca.org/en/countries/

Re: A Modern Compiler for the French Tax Code

#42

During one of those rabbit hole journeys I discovered that Dutch Tax authorities use MPS, a DSL creation language/tool by JetBrains [1] It makes me wonder, why haven't DSLs caught up? Their claim that it allows developers spend more time implementing the business logic makes sense. But somehow that promise hasn't been realised. I'm curious to know from those who tried DSLs. [1] https://www.jetbrains.com/mps/documenta…

The nearest I've been able to articulate this is lack of overlapping skillsets & departments' tendencies to hire people who look like them.

The kind of person who (a) lives in business problem land & (b) is proficient in programming language design (even guided DSL generation)... doesn't exist. At least not in hireable numbers.

And those that do are buried deep in the guts of consultancies, who can afford to pay them way more than customers can.

It's a shame, because it results in suboptimal software. And suboptimal tooling available to the devs that do work in that space.

The best solution I've seen are products that lower the knowledge barrier of entry (at least for creating a proof of concept) + designing for non-programmers as your primary users.

Re: A Modern Compiler for the French Tax Code

#43
post #42

During one of those rabbit hole journeys I discovered that Dutch Tax authorities use MPS, a DSL creation language/tool by JetBrains [1] It makes me wonder, why haven't DSLs caught up? Their claim that it allows developers spend more time implementing the business logic makes sense. But somehow that promise hasn't been realised. I'm curious to know from those who tried DSLs. [1] https://www.jetbrains.com/mps/documenta…

The nearest I've been able to articulate this is lack of overlapping skillsets & departments' tendencies to hire people who look like them. The kind of person who (a) lives in business problem land & (b) is proficient in programming language design (even guided DSL generation)... doesn't exist. At least not in hireable numbers. And those that do are buried deep in the guts of consultancies, who can afford to pay them…

Hi, OP here :) I've come to the same conclusion about programming language creation. However, for a very large organization, it makes sense to have a team in charge of language tooling (see Dropbox/Python, Facebook/Hack/Flow, Apple/Swift). Which is why I'm trying to convince the French state that they should have such a team of permanent people.

Re: A Modern Compiler for the French Tax Code

#44

During one of those rabbit hole journeys I discovered that Dutch Tax authorities use MPS, a DSL creation language/tool by JetBrains [1] It makes me wonder, why haven't DSLs caught up? Their claim that it allows developers spend more time implementing the business logic makes sense. But somehow that promise hasn't been realised. I'm curious to know from those who tried DSLs. [1] https://www.jetbrains.com/mps/documenta…

Could you clear something up for me, do you mean DSLs generally, or DSLs for tax codes specifically? TIA

Re: A Modern Compiler for the French Tax Code

#45

During one of those rabbit hole journeys I discovered that Dutch Tax authorities use MPS, a DSL creation language/tool by JetBrains [1] It makes me wonder, why haven't DSLs caught up? Their claim that it allows developers spend more time implementing the business logic makes sense. But somehow that promise hasn't been realised. I'm curious to know from those who tried DSLs. [1] https://www.jetbrains.com/mps/documenta…

Could you clear something up for me, do you mean DSLs generally, or DSLs for tax codes specifically? TIA

DSLs in general, say in banking system, e commerce apps etc.

Re: A Modern Compiler for the French Tax Code

#46

During one of those rabbit hole journeys I discovered that Dutch Tax authorities use MPS, a DSL creation language/tool by JetBrains [1] It makes me wonder, why haven't DSLs caught up? Their claim that it allows developers spend more time implementing the business logic makes sense. But somehow that promise hasn't been realised. I'm curious to know from those who tried DSLs. [1] https://www.jetbrains.com/mps/documenta…

Modern computer languages are DSLs for writing DSLs, which you do by defining public domain specific classes, methods, modules, etc. A library for computing PI is a PI DSL.

At least, that's the right way to name things in code.

Re: A Modern Compiler for the French Tax Code

#47
post #36

Earlier quoted context omitted.

In my country, with an admittedly quite simple tax code, the authorities used to publish each year official COBOL code that computed income tax. They switched to Java in 2018-ish - and to Github instead of a random FTP server. Doing your taxes has also been a no-op for many people the past decade or so. You don't do anything except read the tax report, unless you spot some mistakes or items missing in the report that…

Cool - which country? Could you link to the Github repo?

I’m guessing it’s Estonia. It’s really ahead with digital governance.

Re: A Modern Compiler for the French Tax Code

#48
post #37

Earlier quoted context omitted.

In my country, with an admittedly quite simple tax code, the authorities used to publish each year official COBOL code that computed income tax. They switched to Java in 2018-ish - and to Github instead of a random FTP server. Doing your taxes has also been a no-op for many people the past decade or so. You don't do anything except read the tax report, unless you spot some mistakes or items missing in the report that…

That sounds amazing. Which country is it?

[deleted]

Re: A Modern Compiler for the French Tax Code

#49

Earlier quoted context omitted.

Australian CSIRO is working exactly on that https://theconversation.com/csiro-wants-our-laws-turned-into... https://research.csiro.au/bpli/our-research/reasoning/ https://people.csiro.au/G/G/Guido-Governatori They are using https://en.wikipedia.org/wiki/Deontic_logic and https://en.wikipedia.org/wiki/Defeasible_logic describe laws in terms closest to how it's done in the legal community. Can't find a link but they co…

https://theconversation.com/csiro-wants-our-laws-turned-into... claims law-as-code is a bad idea because its "dynamic"/"always changing" and "discretionary"/"requires or open to interpretation". The first argument is nonsensical (computers are great at changing data: in fact way faster and more accurate than humans, having the capacity for things like single source of truth, change logs, peer consensus, and dynamic v…

[deleted]

Re: A Modern Compiler for the French Tax Code

#50

Earlier quoted context omitted.

Australian CSIRO is working exactly on that https://theconversation.com/csiro-wants-our-laws-turned-into... https://research.csiro.au/bpli/our-research/reasoning/ https://people.csiro.au/G/G/Guido-Governatori They are using https://en.wikipedia.org/wiki/Deontic_logic and https://en.wikipedia.org/wiki/Defeasible_logic describe laws in terms closest to how it's done in the legal community. Can't find a link but they co…

https://theconversation.com/csiro-wants-our-laws-turned-into... claims law-as-code is a bad idea because its "dynamic"/"always changing" and "discretionary"/"requires or open to interpretation". The first argument is nonsensical (computers are great at changing data: in fact way faster and more accurate than humans, having the capacity for things like single source of truth, change logs, peer consensus, and dynamic v…

> law-as-code is a bad idea because its "dynamic"/"always changing"

I don't think it was meant in classical terms of an SQL UPDATE. It was meant in a way that a new rule may affect the application of an existing rule. Academically speaking, it makes reasoning non-monotonic. This is exactly why https://en.wikipedia.org/wiki/Defeasible_logic is proposed.

> The second argument is an outright straw man fallacy.

I think they are trying to codify the laws in logic _without_ changes to the law.

[Edit] The journalist also failed to read up on the basics of deontic logic and defeasible reasoning: "The law says cars must drive on the left in Australia. But what if they have to cross the road to avoid hitting a child?"

Post reply on HN