diff --git a/module/mes/posix.mes b/module/mes/posix.mes index 85a85983..1eec487a 100644 --- a/module/mes/posix.mes +++ b/module/mes/posix.mes @@ -24,3 +24,10 @@ (define R_OK 0) (define S_IRWXU #o700) + +(define (basename file-name . ext) + (let ((base (last (string-split file-name #\/))) + (ext (and (pair? ext) (car ext)))) + (if (and ext + (string-suffix? ext base)) (string-drop-right base (string-length ext)) + base)))