mes: Add basename.
authorJan Nieuwenhuizen <janneke@gnu.org>
Sun, 29 Apr 2018 16:33:14 +0000 (18:33 +0200)
committerJan Nieuwenhuizen <janneke@gnu.org>
Sun, 29 Apr 2018 16:33:14 +0000 (18:33 +0200)
* module/mes/posix.mes (basename): New function.

module/mes/posix.mes

index 85a859838d05d89c4e1a09710f2c2009de19ba15..1eec487a98f85b7c6b318d9982edaaefd1adc737 100644 (file)
 
 (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)))