How to implement the $\tt conv(x,h)$ in MATLAB without using loop?
what about this:

function [convolve] = myconv(x, y)
    L = length(x) + length(y) - 1
    convolve = ifft(fft(x, L) .* fft(y, L));
end


Using the convolution theorem.

Regarding deconv function, check this out:

x = randn(10,1);
y = randn(10,1);

L = length(x) + length(y) - 1;

z = ifft(fft(x, L) .* fft(y, L));
z2 = conv(x, y);
sum(abs(z-z2))

x2 = ifft(fft(z, L) ./ fft(y, L));
x3 = deconv(z, y);
x0 = [x; zeros(L-length(x),1)];
sum(abs(x0-x2))
sum(abs(x3-x))


Program output:

ans =

   1.1616e-14

ans =

   5.4956e-15


ans =

   2.3924e-12


The first sum calculates the deviation between conv and my proposal. The second sum shows difference between the Fourier-Domain decovonvoled sequence and original sequence (note that the output of the FFT has L samples, where the last L-len(x) samples are 0). The third sum compares the output of deconv and the original sequence. You see that they all match up to floating point errors.