Implementations of language oriented programming (LOP) are typically either language workbenches, which facilitate the development of external domain specific languages (DSLs) with projectional editors, or host languages for internal DSLs that are parsed. In this work, we present Cedalion - a novel approach to LOP, along with a prototyped programming language and workbench implementing our approach, which uses internal DSLs in conjunction with projectional editing. To the best of our knowledge, Cedalion is the first language workbench to implemented such an approach.