The column type \newcolumntype{L}[1]{>{\RaggedRight\arraybackslash}p{#1}}
proposed here does not hyphenate long words that don't have a hyphen, but instead lets them protrude beyond the column.
Isn't \RaggedRight designed specifically to facilitate hyphenation?
\documentclass{article}
\usepackage[utf8]{inputenc}
\usepackage{tabularx}
\usepackage{ragged2e}
\newcolumntype{L}[1]{>{\RaggedRight\arraybackslash}p{#1}}
\begin{document}
raggedright:
\begin{tabularx}{40pt}{|>{\raggedright\let\newline\\\arraybackslash\hspace{0pt}}p{40pt}|}
Synthetically do
\end{tabularx}
\bigskip
raggedright with finalhyphendemerits=0:
\begin{tabularx}{40pt}{|>{\raggedright\let\newline\\\arraybackslash\hspace{0pt}}p{40pt}|}
\finalhyphendemerits=0
Synthetically do
\end{tabularx}
\bigskip
RaggedRight:
\begin{tabular}{|L{40pt}|}
Synthetically do
\end{tabular}
\end{document}
