xasc with duplicate cols => improve error message

Why does xasc fails in my example?
Also it would be useful to put the carat(^) under `pe and not xasc if q knows


p.p1 {margin: 0.0px 0.0px 0.0px 0.0px; font: 13.0px Menlo; color: #d0d2da; background-color: #161821; background-color: rgba(22, 24, 33, 0.95)}span.s1 {font-variant-ligatures: no-common-ligatures}

q)t:(a:ab;a:1 2)

q)t

a a1

----

a 1

b 2

q)aa xcol t

a a

a 1

b 2

q)t:aa xcol t

q)`a xasc t

a a

a 1

b 2

q)`a xdesc t

a a

a 1

b 2



p.p1 {margin: 0.0px 0.0px 0.0px 0.0px; font: 13.0px Menlo; color: #d0d2da; background-color: #161821; background-color: rgba(22, 24, 33, 0.95)}span.s1 {font-variant-ligatures: no-common-ligatures}

q)t

s pe mcap ps pe roe

--------------------------------------------

CNI 20.68 5.966479e+10 4.56228 4.99 26.5

CP 20.48 2.538783e+10 3.932066 5.82 36.18

CSX 25.87 4.971782e+10 4.397624 4.46 15.51

GWR 24.72 4.826712e+09 2.302991 1.29 4.55

GSH 4.042065e+09 1.612571 0.95 3.29

KSU 22.42 1.153677e+10 4.659236 2.78 12.96

NSC 21.81 3.969742e+10 3.859367 3.05 14.72

RAIL -32 2.062644e+08 0.4481823 0.86 -4.44

UNP 22.61 1.007182e+11 4.88572 5.02 22.7


q)`pe xasc t

's-fail

[0] `pe xasc t

^

q)meta t

c | t f a

----| -----

s | s

pe | f

mcap| f

ps | f

pe | f

p.p1 {margin: 0.0px 0.0px 0.0px 0.0px; font: 13.0px Menlo; color: #d0d2da; background-color: #161821; background-color: rgba(22, 24, 33, 0.95)}span.s1 {font-variant-ligatures: no-common-ligatures}

roe | f

p.p1 {margin: 0.0px 0.0px 0.0px 0.0px; font: 13.0px Menlo; color: #d0d2da; background-color: #161821; background-color: rgba(22, 24, 33, 0.95)}span.s1 {font-variant-ligatures: no-common-ligatures} p.p1 {margin: 0.0px 0.0px 0.0px 0.0px; font: 13.0px Menlo; color: #d0d2da; background-color: #161821; background-color: rgba(22, 24, 33, 0.95)}span.s1 {font-variant-ligatures: no-common-ligatures} p.p1 {margin: 0.0px 0.0px 0.0px 0.0px; font: 13.0px Menlo; color: #d0d2da; background-color: #161821; background-color: rgba(22, 24, 33, 0.95)}span.s1 {font-variant-ligatures: no-common-ligatures}

tables should have unique column names, just as dicts should have unique keys - otherwise behaviour of ops on them is undefined.

q)t:flipaa!(1 0;0 1)

q)`a xasc t

's-fail

[0] `a xasc t

^

Understood. Shouldn’t this statement result in an error? Why is it allowed to execute?

t:aa xcol t