diff --git a/guix/build-system/perl.scm b/guix/build-system/perl.scm
index 6661689efb176f0c3f39c6ea78d4d54256da17a3..eac8f53d3ee76f2b38b2969565664bf946c9e00e 100644
--- a/guix/build-system/perl.scm
+++ b/guix/build-system/perl.scm
@@ -35,9 +35,16 @@ (define-module (guix build-system perl)
 ;;
 ;; Code:
 
+(define (default-perl)
+  "Return the default Perl package."
+
+  ;; Do not use `@' to avoid introducing circular dependencies.
+  (let ((module (resolve-interface '(gnu packages perl))))
+    (module-ref module 'perl)))
+
 (define* (perl-build store name source inputs
                      #:key
-                     (perl (@ (gnu packages perl) perl))
+                     (perl (default-perl))
                      (search-paths '())
                      (tests? #t)
                      (make-maker-flags ''())