Search Postgresql Archives

Can we go beyond the standard to make Postgres radically better?

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Postgres has since the outset gone beyond the SQL standard in many ways : types, inheritance, programmability, generality are all well beyond what SQL used to mandate and still well beyond the current standard.

There are huge developer benefits available to focusing more on making a great relational programming environment, well outside the SQL standard.

Examples of small things Postgres could have:
  • SELECT * - b.a_id from a natural join b
    • let me describe a select list by removing fields from a relation. In the example, I get all fields in the join of  a  and b other than the shared key, which I only get once.
    • note how this simplifies maintaining views wrt  changes in tables
  • Let me put the FROM clause first
    • if I can write FROM a join b SELECT a.height, a.name, b.email then an editor can give me autocomplete when I’m writing the select clause.
  • Hierarchical schemas
Examples of larger things Postgres might have:
  • First-class functions.
    • A global-only namespace is dumb. Schemas are only slightly less dumb. The obvious way to store and call functions is as values of fields. Let me organize them how I choose
    • Also let me pass around functions as values, let me make new ones and so on. Postgres is the best relational programming environment already because it has a decent type system and more general features. Let’s expand and also simplify that.
    • Also nested function definitions, so top-level functions can be built out of local auxiliary functions.
  • Other languages
    • Tutorial D, Datalog, Quell, let’s open this puppy up!
    • SQL is a terrible, no good, very bad language
  • A portable, low-level API
    • An alternative to SQLite that provides CRUD operations on a Postgres database.

I adore Postgres, but this is despite rather than because of SQL. By all means, let’s have a close-to-standard subset of features, but let’s fearlessly go beyond them when it would be obviously much better.

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Index of Archives]     [Postgresql Jobs]     [Postgresql Admin]     [Postgresql Performance]     [Linux Clusters]     [PHP Home]     [PHP on Windows]     [Kernel Newbies]     [PHP Classes]     [PHP Databases]     [Postgresql & PHP]     [Yosemite]

  Powered by Linux