Hello, <br>I'm new here nice library<br><br>I'd like to point out some possible implementations:<br><br>the possibility to not specify the decimal digits:<br><br>(defun format-number (stream arg no-dp no-ts<br>                             &optional (locale (current-locale)))<br>
  (let ((locale (locale locale))<br>        (float-part (float-part (coerce (abs arg) 'double-float))))<br>    (cl:format stream <br>               (getf (printers locale)<br>                     (if no-ts :number-no-ts :number-ts))<br>
               (get-sign arg locale)<br>               (truncate (abs arg))<br>               (unless (and (string= "" float-part) no-dp)<br>                 (list (locale-decimal-point locale)<br>               (if *float-digits*<br>
               (fix-float-string float-part *float-digits*)<br>               float-part))))<br>    (values)))<br><br><br>this will permit the following:<br><br>CL-L10N>  (let ((cl-l10n:*locale* "it_CH")(cl-l10n:*float-digits* nil)) (format nil "~:/cl-l10n:format-number/" (coerce 1/100000000000000000000000000000000 'double-float)))<br>
"0,00000000000000000000000000000001"<br><br>Secondly it_IT is missing:<br>a solution should be if "it_XX" is not found use the locale "it"<br><br>and if "xx_XX" and "xx" doesn't exist use the "en" locale.<br>
<br>Let me know,<br>cheers<br><br>kiuma<br>