diff --git a/udelim/lang/reader.rkt b/udelim/lang/reader.rkt
index ad2b156..d6ad0d8 100644
--- a/udelim/lang/reader.rkt
+++ b/udelim/lang/reader.rkt
@@ -36,17 +36,19 @@
     (make-meta-reader
      'udelim
      "language path"
-     lang-reader-module-paths
+     ;lang-reader-module-paths
+     (lambda (bstr)
+       (let* ([str (bytes->string/latin-1 bstr)]
+              [sym (string->symbol str)])
+         (and (module-path? sym)
+              (vector
+               ;; try submod first:
+               `(submod ,sym reader)
+               ;; fall back to /lang/reader:
+               (string->symbol (string-append str "/lang/reader"))))))
+
+     wrap-reader
      wrap-reader
-     (lambda (orig-read-syntax)
-       (define read-syntax (wrap-reader orig-read-syntax))
-       (lambda args
-         (define stx (apply read-syntax args))
-         ;(define old-prop (syntax-property stx 'module-language))
-         ;(define new-prop `#(at-exp/lang/language-info get-language-info ,old-prop))
-         ;(syntax-property stx 'module-language new-prop)
-         stx
-         ))
      (lambda (proc) proc)
      #;(lambda (proc)
        (lambda (key defval)