KX Community

Find answers, ask questions, and connect with our KX Community around the world.
KX Community Guidelines

Home Forums kdb+ Use .Q functions or not

  • Use .Q functions or not

    Posted by codh on November 8, 2021 at 12:00 am

    in q.k, after .q.fmt, it says: /DO NOT USE ROUTINES PAST HERE. SUBJECT TO CHANGE

    I also noticed .Q.qm is removed from 3.6.

    So the question is: Shall users stay away from .Q functions?

     

     

    codh replied 8 months, 1 week ago 4 Members · 3 Replies
  • 3 Replies
  • kjame

    Member
    November 8, 2021 at 12:00 am

    .Q namespace functions can (and should!) be used –> they are very useful in lots of different situations. However it is safest to only use .Q functions that are documented on the .Q reference card found here: https://code.kx.com/q/ref/dotq/.

    Using any other undocumented .Q namespace functions (or any other undocumented namespace function) may cause issues as these are what we call ‘exposed infrastructure’

  • davidcrossey

    Member
    November 9, 2021 at 12:00 am

    Hi codh,

    Thanks for your query on the KX Community!

    @kjame is spot on here .Q namespace tool usage is encouraged as it provides a lot of useful functionality. Users should only use the publicly documented API as per The .Q namespace.

    Undocumented functions are subject to change without warning or notice as per the disclaimer in .q.k – usage is at the user’s own risk.

    We can look into documenting changes to the publicly documented API as these occur.

    Kind regards,

    David

     

  • Laura

    Administrator
    November 10, 2021 at 12:00 am

    The behaviour of q primitives and KX namespace objects occasionally changes. Most such changes are extensions: what was formerly an error now does something useful. The Reference does not always note in which version the extension was made. If your version of q does not behave as described, check the Release Notes.

    Very occasionally a change breaks earlier behavior. The Reference documents such changes; generally for one major version. Currently, the Reference should show any breaking changes introduced since V3.0; for anything earlier, see the Release Notes.

Log in to reply.