[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)