Hacker News new | ask | show | jobs
by _bxg1 2308 days ago
It's weird to me that we haven't settled on a common, stable, purpose-built high-level language specifically for business logic. Stuff that doesn't change much, that doesn't need to concern itself with the platform, only the business. That code should be portable to whatever shiny new underlying system gets invented; why does it keep having to be re-expressed every few years?

The situation is much better (though still far from ideal) when it comes to data. Everything knows how to use CSVs. Relational databases, from a schematic perspective, really haven't changed terribly much in decades. NoSQL came around but that was really just an alternative option; you don't see everyone scrambling to migrate their SQL data to Mongo. SQL isn't quite a standard, but it would be dramatically easier to migrate an ancient MS SQL database to Postgres than an ancient COBOL codebase to Java.

3 comments

Yes, and with an English-like syntax for ease of use by non-sw professionals. It could be called something like Common Business Oriented Language...
The great thing about standards is that there are so many to pick from.

What is the difference between what you are imagining and Java or python?

I guess I'm talking about a domain-specific language. Something where you only articulate business processes and formulas, and nothing more. Java and Python are programming languages. You use them to tell a computer what to do. Whereas this would be a representation language. You'd be able to carry that representation around with you and drop it into different programming contexts.
You should look at Sqlite, not just as a portable business environment, but as a data format and deployment format.
Him... We do have a standard language for business data and rules. It's called SQL.

But current programs are 99% incidental complexity that it won't help solving, so programmers tend to avoid the language.