深奥的编程语言
编程语言的范型可以分为若干类别，这些类别可以用来大致了解特定语言的操作方式。其中包括命令式语言，如brainfuck，其指令描述了如何修改数据；函数式语言，如Unlambda，其中的数据和代码都或多或少地可交换，而程序的执行是通过重复迭代调用函数实现的；和重写语言，如Thue，其中可以使用变换函数使状态初始化。
依赖类型
一些以证明辅助为主要目的的编程语言采用强函数式编程（total functional programming），这消除了停机问题，同时也意味着通过它们自身的核心语言无法实现任意无限递归，不是图灵完全的，如 Coq 和 Agda；另外一些依赖类型编程语言则是图灵完全的，如 Idris、由 ML 衍生而来的 ATS 和 由 F# 衍生而来的 F*。