From: Emanuel Berg <incal@dataswamp.org>
To: emacs-devel@gnu.org
Subject: Re: first-is (3 versions, Elisp hangup) (was: Re: we need *modularity* [last problem])
Date: Fri, 16 Aug 2024 11:53:19 +0200 [thread overview]
Message-ID: <874j7k4wvk.fsf@dataswamp.org> (raw)
In-Reply-To: <87bk1s4xpg.fsf_-_@dataswamp.org> (Emanuel Berg's message of "Fri, 16 Aug 2024 11:35:23 +0200")
Oh, no!
;; (elpat--first-is "" "same") ; t
;; (elpat--first-is-2 "" "same") ; nil
;; (elpat--first-is-3 "" "same") ; nil
;; (elpat--first-is "s" "") ; nil
;; (elpat--first-is-2 "s" "") ; crash
;; (elpat--first-is-3 "s" "") ; crash
;; (elpat--first-is "" "") ; t
;; (elpat--first-is-2 "" "") ; crash
;; (elpat--first-is-3 "" "") ; crash
But hang on, I have some thing for that as well. Here:
(defun string-data-p (str)
(and (stringp str) (not (string= str "")) str))
Heh, see where this is going?
It is clear to me that Elisp isn't a language designed or
optimized for devel speed and productivity.
Lisp could be (I _think_, much more so anyway) - but I guess
it won't happen.
> (defun elpat--first-is-3 (s str)
> (and (stringp s)
> (stringp str)
> (string= s (char-to-string (seq-first str)))))
>
> (defun elpat--first-is-2 (s str)
> (and (stringp s)
> (stringp str)
> (string= s (substring str 0 1))))
>
> (defun elpat--first-is (s str)
> (and (cl-every #'stringp (list s str))
> #1=(string-match s str)
> (zerop #1#)))
>
> ;; (elpat--first-is "s" "same")
> ;; (elpat--first-is-2 "s" "same")
> ;; (elpat--first-is-3 "s" "same")
>
> ;; (elpat--first-is "s" "lame")
> ;; (elpat--first-is-2 "s" "lame")
> ;; (elpat--first-is-3 "s" "lame")
--
underground experts united
https://dataswamp.org/~incal
next prev parent reply other threads:[~2024-08-16 9:53 UTC|newest]
Thread overview: 73+ messages / expand[flat|nested] mbox.gz Atom feed top
2024-08-12 5:30 as for Calc and the math library arthur miller
2024-08-12 11:00 ` Eli Zaretskii
2024-08-12 11:23 ` Nicolas Martyanoff
2024-08-12 11:46 ` Eli Zaretskii
2024-08-12 12:11 ` Nicolas Martyanoff
2024-08-12 13:22 ` Eli Zaretskii
2024-08-12 13:38 ` Christopher Dimech
2024-08-15 1:59 ` Richard Stallman
2024-08-15 3:06 ` Christopher Dimech
2024-08-15 6:43 ` Eli Zaretskii
2024-08-15 13:28 ` Christopher Dimech
2024-08-15 16:39 ` Eli Zaretskii
2024-08-13 7:16 ` Sv: " arthur miller
2024-08-13 12:12 ` Eli Zaretskii
2024-08-13 13:10 ` Nicolas Martyanoff
2024-08-13 13:30 ` Eli Zaretskii
2024-08-13 13:48 ` Nicolas Martyanoff
2024-08-13 21:43 ` Sv: " arthur miller
2024-08-14 5:09 ` Eli Zaretskii
2024-08-14 8:45 ` Sv: " arthur miller
2024-08-14 9:56 ` Nicolas Martyanoff
2024-08-14 10:43 ` Eli Zaretskii
2024-08-13 5:39 ` Gerd Möllmann
2024-08-14 4:11 ` Gerd Möllmann
2024-08-14 6:23 ` Eli Zaretskii
2024-08-14 6:28 ` Gerd Möllmann
2024-08-14 6:43 ` Eli Zaretskii
2024-08-14 14:00 ` Suhail Singh
2024-08-14 14:20 ` Eli Zaretskii
2024-08-14 15:08 ` Suhail Singh
2024-08-14 15:31 ` Eli Zaretskii
2024-08-14 16:00 ` Suhail Singh
2024-08-14 16:24 ` Eli Zaretskii
2024-08-14 20:35 ` Emanuel Berg
2024-08-15 5:00 ` Sv: " arthur miller
2024-08-15 7:02 ` Eli Zaretskii
2024-08-15 20:09 ` Sv: " arthur miller
2024-08-16 5:47 ` Eli Zaretskii
2024-08-16 6:17 ` we need *modularity* [last problem] (was: Re: as for Calc and the math library) Emanuel Berg
2024-08-16 9:35 ` first-is (3 versions, Elisp hangup) (was: Re: we need *modularity* [last problem]) Emanuel Berg
2024-08-16 9:53 ` Emanuel Berg [this message]
2024-08-16 10:57 ` Eli Zaretskii
2024-08-18 16:38 ` as for Calc and the math library Richard Stallman
2024-08-18 17:27 ` Christopher Dimech
2024-08-19 12:05 ` Sv: " arthur miller
2024-08-24 2:59 ` Richard Stallman
2024-08-24 2:59 ` Richard Stallman
2024-08-15 9:31 ` Emacs ffi (was: Re: as for Calc and the math library) Andrea Corallo
2024-08-15 9:43 ` Eli Zaretskii
2024-08-15 20:32 ` Emacs ffi Andrea Corallo
[not found] ` <trinity-a24567af-9dc5-4e16-960c-c42d9759f282-1723755762558@3c-app-mailcom-bs05>
2024-08-16 20:07 ` Andrea Corallo
2024-08-16 21:21 ` Christopher Dimech
2024-08-17 6:06 ` Eli Zaretskii
2024-08-17 9:05 ` Christopher Dimech
2024-08-17 10:53 ` Eli Zaretskii
2024-08-17 13:21 ` Stefan Kangas
2024-08-17 14:30 ` Joel Reicher
2024-08-17 17:18 ` Christopher Dimech
2024-08-18 4:44 ` Emanuel Berg
2024-08-19 12:38 ` Sv: " arthur miller
2024-08-17 15:36 ` Christopher Dimech
2024-08-18 5:25 ` Emanuel Berg
2024-08-17 15:23 ` Andrea Corallo
2024-08-18 13:26 ` Björn Bidar
[not found] ` <87h6birmfy.fsf@>
2024-08-19 16:57 ` Richard Stallman
2024-08-19 17:22 ` Christopher Dimech
2024-08-17 2:21 ` Emanuel Berg
2024-08-14 14:35 ` as for Calc and the math library Gerd Möllmann
2024-08-14 14:40 ` Nicolas Martyanoff
2024-08-14 14:47 ` Gerd Möllmann
2024-08-14 14:49 ` Eli Zaretskii
2024-08-14 5:29 ` Madhu
2024-08-14 6:06 ` [ffi] " Madhu
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
List information: https://www.gnu.org/software/emacs/
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=874j7k4wvk.fsf@dataswamp.org \
--to=incal@dataswamp.org \
--cc=emacs-devel@gnu.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
Code repositories for project(s) associated with this public inbox
https://git.savannah.gnu.org/cgit/emacs.git
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).