All published worksheets from http://sagenb.org
var('t') A=vector([1,3]) B=vector([-3,2]) D=(B-A) ab=A+t*D
ab.subs(t==0)
var('s') Dn=vector([-D[1],D[0]]) nab0=s*Dn
S=solve([ab[0]==nab0[0],ab[1]==nab0[1]],t,s)[0] ab.subs(S[0]),nab0.subs(S[1])