Groups | Search | Server Info | Login | Register
Groups > comp.lang.awk > #9985
| From | gazelle@shell.xmission.com (Kenny McCormack) |
|---|---|
| Newsgroups | comp.lang.awk |
| Subject | Re: substr() - copying or not copying, that is here the question. |
| Date | 2025-06-01 12:06 +0000 |
| Organization | The official candy of the new Millennium |
| Message-ID | <101hfnk$2qrh$2@news.xmission.com> (permalink) |
| References | <101f9oo$18edp$1@dont-email.me> <101fv4s$1g5c8$1@dont-email.me> <87h60zrbea.fsf@bsb.me.uk> <101hecq$22ab2$1@dont-email.me> |
In article <101hecq$22ab2$1@dont-email.me>, Janis Papanagnou <janis_papanagnou+ng@hotmail.com> wrote: ... >> An alternative (depending on the context) would be to consider an >> extension that provides an index function with a third argument giving >> the initial offset. I've not looked at how extensions get access to >> GAWK strings, so this many not be as easy as it sounds, but I would >> guess that it might be relatively simple to do. > >This, first of all, sounds like a good idea! It would make it >unnecessary to (mis-)use the substr() function as (sort of) a >costly copying-descriptor.[*] > >I'm unsure about using an extension here. Would there be a name >clash between an built-in index(haystack,needle) function and an >extension index(haystack,needle,start) function? Should they be >separate functions in the first place? (I don't think so.) Nobody is talking about changing the index() built-in function. This would be a brand new function, written as an extension library. You could name it something like index_ex() if you like, or you could give it a brand new name (**). Although I have not done this with the extension functions I've already written (and have widely deployed, so obviously, as the saying goes, it's way too late to change it), if I had it to do over again, I'd probably have enforced a convention that my functions always start with some identifying prefix - to make it clear that these were written by me, not built-ins. I do that when writing in other scripting languages; I should have done so in AWK. Perhaps, the new namespaces feature would address this (*). (*) I have not yet taken the time to fully acclimate to the concepts and start using namespaces in my own code. I'm still working on getting the kinks and quirks out of PMA... (**) My conception of how this would be implemented would handle the "start"-only case (just add the offset to the "haystack" arg of strstr() - with error checking to make sure it doesn't overflow, of course). Implementing "end" would be a bit trickier (but not much). -- Liberals live in a fantasy world where (street) criminals are good people. Conservatives live in a fantasy world where businessmen are good people.
Back to comp.lang.awk | Previous | Next — Previous in thread | Next in thread | Find similar
substr() - copying or not copying, that is here the question. Janis Papanagnou <janis_papanagnou+ng@hotmail.com> - 2025-05-31 18:12 +0200
Re: substr() - copying or not copying, that is here the question. mack@the-knife.org (Mack The Knife) - 2025-05-31 19:07 +0000
Re: substr() - copying or not copying, that is here the question. Janis Papanagnou <janis_papanagnou+ng@hotmail.com> - 2025-06-01 00:16 +0200
Re: substr() - copying or not copying, that is here the question. Ben Bacarisse <ben@bsb.me.uk> - 2025-06-01 11:42 +0100
Re: substr() - copying or not copying, that is here the question. Janis Papanagnou <janis_papanagnou+ng@hotmail.com> - 2025-06-01 13:43 +0200
Re: substr() - copying or not copying, that is here the question. gazelle@shell.xmission.com (Kenny McCormack) - 2025-06-01 12:06 +0000
Re: substr() - copying or not copying, that is here the question. Janis Papanagnou <janis_papanagnou+ng@hotmail.com> - 2025-06-01 15:27 +0200
Re: substr() - copying or not copying, that is here the question. gazelle@shell.xmission.com (Kenny McCormack) - 2025-06-01 11:53 +0000
Re: substr() - copying or not copying, that is here the question. Janis Papanagnou <janis_papanagnou+ng@hotmail.com> - 2025-06-01 15:47 +0200
Re: substr() - copying or not copying, that is here the question. gazelle@shell.xmission.com (Kenny McCormack) - 2025-06-01 14:17 +0000
Re: substr() - copying or not copying, that is here the question. Janis Papanagnou <janis_papanagnou+ng@hotmail.com> - 2025-06-08 00:01 +0200
Re: substr() - copying or not copying, that is here the question. mack@the-knife.org (Mack The Knife) - 2025-06-03 06:56 +0000
Re: substr() - copying or not copying, that is here the question. gazelle@shell.xmission.com (Kenny McCormack) - 2025-06-03 11:04 +0000
Re: substr() - copying or not copying, that is here the question. Janis Papanagnou <janis_papanagnou+ng@hotmail.com> - 2025-06-08 00:05 +0200
Re: substr() - copying or not copying, that is here the question. mack@the-knife.org (Mack The Knife) - 2025-06-08 12:35 +0000
Re: substr() - copying or not copying, that is here the question. Janis Papanagnou <janis_papanagnou+ng@hotmail.com> - 2025-06-11 11:07 +0200
Meta chat (Was: substr() - copying or not copying, that is here the question.) gazelle@shell.xmission.com (Kenny McCormack) - 2025-06-11 12:11 +0000
Re: substr() - copying or not copying, that is here the question. Kaz Kylheku <643-408-1753@kylheku.com> - 2025-06-01 00:01 +0000
csiph-web