[HN Gopher] Mangle, a programming language for deductive databas...
___________________________________________________________________
Mangle, a programming language for deductive database programming
Author : aarroyoc
Score : 26 points
Date : 2022-11-26 21:14 UTC (1 hours ago)
(HTM) web link (github.com)
(TXT) w3m dump (github.com)
| theodpHN wrote:
| Some of the other stuff looks intriguing, but regarding the claim
| that "Unlike SQL, our Mangle rule projects_with_vulnerable_log4j
| has a name and can be referenced in other queries." goes, SQL in
| a VIEW or common table expression (CTE) can also be referenced in
| other queries.
| jitl wrote:
| Interesting; Google engineer previously published Datalog
| variants for BigQuery: https://research.google/pubs/pub43462/ &
| https://logica.dev/
|
| This new language seems similar to differential-Datalog (which is
| sadly in maintenance mode):
| https://news.ycombinator.com/item?id=33521561
| triska wrote:
| This seems already _almost_ valid Prolog syntax, which is also a
| syntactic superset of Datalog.
|
| The main question I have for implementors of Datalog and Prolog
| variants like this: If you are _that_ close to using Prolog
| syntax, why not go all the way and rely fully on Prolog, a
| language for which a well-defined ISO standard and several
| interesting implementations already exist. One of the key
| benefits you get in this way is Prolog 's strength for meta-
| programming and reasoning about programs with the same formalism
| you use to state the specification and queries. Abstract
| interpretation, query optimization etc. could be easily
| implemented in this way, instead of having to parse an additional
| formalism.
|
| It may be possible to implement such Prolog-"variants" entirely
| within Prolog by defining suitable infix or prefix operators, or
| adding _conforming_ extensions in implementations. A conforming
| extension is one that does not conflict with existing ISO syntax.
| For example, something that would be a syntax error in conforming
| Prolog implementations could be used as an implementation-
| specific extension.
| tmptmpgo wrote:
| linkdd wrote:
| Inventing a language seems to be a rite of passage for every
| engineer at google.
|
| Go, Dart, Carbon, Mangle, am I missing some?
|
| I'm not criticizing, I would not dare as I'm creating my own
| language as well :P
| drittich wrote:
| Yes - my only attempt was in the early 1980s when I started to
| develop a language implemented on top of interpreted BASIC. It
| was called MAL (My Attempt at a Language). I wish I still had
| it - I have no recollection what my design goals were, if any!
| The only thing I have left is the name, and I'm quite sure that
| was the best part about it anyway.
| nicoburns wrote:
| 4 languages doesn't really seem that many given how many
| engineers there are at google...
| eximius wrote:
| those are just the public ones
___________________________________________________________________
(page generated 2022-11-26 23:00 UTC)