What is wrong with following document?
\documentclass{article}
\usepackage{xepersian}
\usepackage{verbatim}
\newenvironment{code}
{\begin{latin}\begin{verbatim}}
{\end{verbatim}\end{latin}}
\usepackage{enumitem}
\begin{document}
\begin{code}
hello world!
\end{code}
\end{document}
Error:
! File ended while scanning use of \next.
<inserted text>
\par
<*> untitled-4.tex
I also tried this:
\documentclass{article}
\usepackage{listings}
\usepackage{xepersian}
\newenvironment{code}
{\begin{latin}\begin{lstlisting}}
{\end{lstlisting}\end{latin}}
\begin{document}
\begin{code}
hello world!
This is a code
\end{code}
\end{document}
But the output is not what I expect.

listings'\lstnewenvironmentmight help... – cgnieder Nov 24 '13 at 09:59