On Cygwin environment,
Guile's uname returns the strings of "CYGWIN_NT-6.3" etc.
It contains unnecessary strings for the platform identification,
such as Windows version.
Therefore, to remove them to return the only "cygwin".
(define-public PLATFORM
(string->symbol
(string-downcase
- (car (string-tokenize (utsname:sysname (uname)))))))
+ (car (string-tokenize (utsname:sysname (uname)) char-set:letter)))))
;;
;; Session-handling variables and procedures.
(define PLATFORM
(string->symbol
(string-downcase
- (car (string-tokenize (vector-ref (uname) 0) char-set:letter)))))
+ (car (string-tokenize (utsname:sysname (uname)) char-set:letter)))))
(define (re-sub re sub string)
(regexp-substitute/global #f re string 'pre sub 'post))