unofficial mirror of bug-gnu-emacs@gnu.org 
 help / color / mirror / code / Atom feed
* bug#23487: 25.0.93; Modules: add functionality to create and copy unibyte strings
@ 2016-05-09 16:45 Philipp Stephani
  2016-05-09 17:22 ` Eli Zaretskii
  0 siblings, 1 reply; 6+ messages in thread
From: Philipp Stephani @ 2016-05-09 16:45 UTC (permalink / raw)
  To: 23487


Currently creating unibyte strings with the C module API is rather
convoluted: one has to create a list with the individual bytes and then
call `unibyte-string', requiring lots of memory allocations.  Given that
creating a unibyte string is more fundamental than creating a multibyte
string, I propose adding functions to create and extract unibyte strings
that exactly mirror the existing support for multibyte strings.



In GNU Emacs 25.0.93.5 (x86_64-unknown-linux-gnu, GTK+ Version 3.10.8)
 of 2016-04-24 built on localhost
Repository revision: 0cd2e923dba8d8c7128b0c084ce6af22069e8db5
Windowing system distributor 'The X.Org Foundation', version 11.0.11501000
System Description:	Ubuntu 14.04 LTS

Configured using:
 'configure --with-modules'

Configured features:
XPM JPEG TIFF GIF PNG SOUND GSETTINGS NOTIFY FREETYPE XFT ZLIB
TOOLKIT_SCROLL_BARS GTK3 X11 MODULES

Important settings:
  value of $LANG: en_US.UTF-8
  locale-coding-system: utf-8-unix

Major mode: Lisp Interaction

Minor modes in effect:
  tooltip-mode: t
  global-eldoc-mode: t
  electric-indent-mode: t
  mouse-wheel-mode: t
  tool-bar-mode: t
  menu-bar-mode: t
  file-name-shadow-mode: t
  global-font-lock-mode: t
  font-lock-mode: t
  blink-cursor-mode: t
  auto-composition-mode: t
  auto-encryption-mode: t
  auto-compression-mode: t
  line-number-mode: t
  transient-mark-mode: t

Recent messages:

Load-path shadows:
None found.

Features:
(shadow sort mail-extr emacsbug message dired format-spec rfc822 mml
mml-sec epg epg-config mm-decode mm-bodies mm-encode mail-parse rfc2231
mailabbrev gmm-utils mailheader cus-edit cus-start cus-load wid-edit
thingatpt smtpmail auth-source cl-seq eieio byte-opt bytecomp
byte-compile cl-extra cconv eieio-core cl-macs gv gnus-util
password-cache sendmail rfc2047 rfc2045 ietf-drums mm-util help-fns
help-mode easymenu cl-loaddefs pcase cl-lib mail-prsvr mail-utils
time-date mule-util tooltip eldoc electric uniquify ediff-hook vc-hooks
lisp-float-type mwheel x-win term/common-win x-dnd tool-bar dnd fontset
image regexp-opt fringe tabulated-list newcomment elisp-mode lisp-mode
prog-mode register page menu-bar rfn-eshadow timer select scroll-bar
mouse jit-lock font-lock syntax facemenu font-core frame cl-generic cham
georgian utf-8-lang misc-lang vietnamese tibetan thai tai-viet lao
korean japanese eucjp-ms cp51932 hebrew greek romanian slovak czech
european ethiopic indian cyrillic chinese charscript case-table epa-hook
jka-cmpr-hook help simple abbrev minibuffer cl-preloaded nadvice
loaddefs button faces cus-face macroexp files text-properties overlay
sha1 md5 base64 format env code-pages mule custom widget
hashtable-print-readable backquote inotify dynamic-setting
system-font-setting font-render-setting move-toolbar gtk x-toolkit x
multi-tty make-network-process emacs)

Memory information:
((conses 16 116766 9764)
 (symbols 48 22500 0)
 (miscs 40 435 169)
 (strings 32 21796 4523)
 (string-bytes 1 627075)
 (vectors 16 14860)
 (vector-slots 8 467108 5936)
 (floats 8 205 107)
 (intervals 56 258 18)
 (buffers 976 15)
 (heap 1024 47322 987))

-- 
Google Germany GmbH
Erika-Mann-Straße 33
80636 München

Registergericht und -nummer: Hamburg, HRB 86891
Sitz der Gesellschaft: Hamburg
Geschäftsführer: Matthew Scott Sucherman, Paul Terence Manicle

Diese E-Mail ist vertraulich.  Wenn Sie nicht der richtige Adressat sind,
leiten Sie diese bitte nicht weiter, informieren Sie den Absender und löschen
Sie die E-Mail und alle Anhänge.  Vielen Dank.

This e-mail is confidential.  If you are not the right addressee please do not
forward it, please inform the sender, and please erase this e-mail including
any attachments.  Thanks.





^ permalink raw reply	[flat|nested] 6+ messages in thread

* bug#23487: 25.0.93; Modules: add functionality to create and copy unibyte strings
  2016-05-09 16:45 bug#23487: 25.0.93; Modules: add functionality to create and copy unibyte strings Philipp Stephani
@ 2016-05-09 17:22 ` Eli Zaretskii
  2016-05-09 18:06   ` Philipp Stephani
  0 siblings, 1 reply; 6+ messages in thread
From: Eli Zaretskii @ 2016-05-09 17:22 UTC (permalink / raw)
  To: Philipp Stephani; +Cc: 23487

> From: Philipp Stephani <p.stephani2@gmail.com>
> Date: Mon, 09 May 2016 18:45:19 +0200
> 
> Currently creating unibyte strings with the C module API is rather
> convoluted: one has to create a list with the individual bytes and then
> call `unibyte-string', requiring lots of memory allocations.  Given that
> creating a unibyte string is more fundamental than creating a multibyte
> string, I propose adding functions to create and extract unibyte strings
> that exactly mirror the existing support for multibyte strings.

Can you explain why you need to create unibyte strings, or describe a
use case where this would be required?





^ permalink raw reply	[flat|nested] 6+ messages in thread

* bug#23487: 25.0.93; Modules: add functionality to create and copy unibyte strings
  2016-05-09 17:22 ` Eli Zaretskii
@ 2016-05-09 18:06   ` Philipp Stephani
  2016-05-09 18:49     ` Eli Zaretskii
  0 siblings, 1 reply; 6+ messages in thread
From: Philipp Stephani @ 2016-05-09 18:06 UTC (permalink / raw)
  To: Eli Zaretskii, dancol; +Cc: 23487

[-- Attachment #1: Type: text/plain, Size: 1011 bytes --]

Eli Zaretskii <eliz@gnu.org> schrieb am Mo., 9. Mai 2016 um 19:22 Uhr:

> > From: Philipp Stephani <p.stephani2@gmail.com>
> > Date: Mon, 09 May 2016 18:45:19 +0200
> >
> > Currently creating unibyte strings with the C module API is rather
> > convoluted: one has to create a list with the individual bytes and then
> > call `unibyte-string', requiring lots of memory allocations.  Given that
> > creating a unibyte string is more fundamental than creating a multibyte
> > string, I propose adding functions to create and extract unibyte strings
> > that exactly mirror the existing support for multibyte strings.
>
> Can you explain why you need to create unibyte strings, or describe a
> use case where this would be required?
>

I don't have a concrete use case per se, but the API feels incomplete
without this functionality, especially given that creation of multibyte
strings is supported and uses unibyte strings under the hood.

I'll let +Daniel Colascione <dancol@dancol.org> chime in for his opinion.

[-- Attachment #2: Type: text/html, Size: 1506 bytes --]

^ permalink raw reply	[flat|nested] 6+ messages in thread

* bug#23487: 25.0.93; Modules: add functionality to create and copy unibyte strings
  2016-05-09 18:06   ` Philipp Stephani
@ 2016-05-09 18:49     ` Eli Zaretskii
  2020-08-12  2:31       ` Stefan Kangas
  0 siblings, 1 reply; 6+ messages in thread
From: Eli Zaretskii @ 2016-05-09 18:49 UTC (permalink / raw)
  To: Philipp Stephani; +Cc: 23487

> From: Philipp Stephani <p.stephani2@gmail.com>
> Date: Mon, 09 May 2016 18:06:41 +0000
> Cc: 23487@debbugs.gnu.org
> 
> I don't have a concrete use case per se, but the API feels incomplete without this functionality, especially given
> that creation of multibyte strings is supported and uses unibyte strings under the hood.

Unibyte strings are very rarely used in Emacs core, and for a good
reason.  So I think we'd really want to see real-life use cases before
we decide to support them in modules.





^ permalink raw reply	[flat|nested] 6+ messages in thread

* bug#23487: 25.0.93; Modules: add functionality to create and copy unibyte strings
  2016-05-09 18:49     ` Eli Zaretskii
@ 2020-08-12  2:31       ` Stefan Kangas
  2020-10-01 12:12         ` Stefan Kangas
  0 siblings, 1 reply; 6+ messages in thread
From: Stefan Kangas @ 2020-08-12  2:31 UTC (permalink / raw)
  To: Eli Zaretskii; +Cc: Philipp Stephani, 23487

Eli Zaretskii <eliz@gnu.org> writes:

>> From: Philipp Stephani <p.stephani2@gmail.com>
>> Date: Mon, 09 May 2016 18:06:41 +0000
>> Cc: 23487@debbugs.gnu.org
>>
>> I don't have a concrete use case per se, but the API feels incomplete without this functionality, especially given
>> that creation of multibyte strings is supported and uses unibyte strings under the hood.
>
> Unibyte strings are very rarely used in Emacs core, and for a good
> reason.  So I think we'd really want to see real-life use cases before
> we decide to support them in modules.

Is there any use-case here?  Otherwise, it sounds to me like Eli thinks
that this should be closed as wontfix?  Thanks.

Best regards,
Stefan Kangas





^ permalink raw reply	[flat|nested] 6+ messages in thread

* bug#23487: 25.0.93; Modules: add functionality to create and copy unibyte strings
  2020-08-12  2:31       ` Stefan Kangas
@ 2020-10-01 12:12         ` Stefan Kangas
  0 siblings, 0 replies; 6+ messages in thread
From: Stefan Kangas @ 2020-10-01 12:12 UTC (permalink / raw)
  To: Eli Zaretskii; +Cc: Philipp Stephani, 23487

tags 23487 wontfix
close 23487
thanks

Stefan Kangas <stefan@marxist.se> writes:

> Eli Zaretskii <eliz@gnu.org> writes:
>
>>> From: Philipp Stephani <p.stephani2@gmail.com>
>>> Date: Mon, 09 May 2016 18:06:41 +0000
>>> Cc: 23487@debbugs.gnu.org
>>>
>>> I don't have a concrete use case per se, but the API feels incomplete without this functionality, especially given
>>> that creation of multibyte strings is supported and uses unibyte strings under the hood.
>>
>> Unibyte strings are very rarely used in Emacs core, and for a good
>> reason.  So I think we'd really want to see real-life use cases before
>> we decide to support them in modules.
>
> Is there any use-case here?  Otherwise, it sounds to me like Eli thinks
> that this should be closed as wontfix?  Thanks.

More information was requested, but none was given within 7 weeks, so
I'm closing this bug.





^ permalink raw reply	[flat|nested] 6+ messages in thread

end of thread, other threads:[~2020-10-01 12:12 UTC | newest]

Thread overview: 6+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2016-05-09 16:45 bug#23487: 25.0.93; Modules: add functionality to create and copy unibyte strings Philipp Stephani
2016-05-09 17:22 ` Eli Zaretskii
2016-05-09 18:06   ` Philipp Stephani
2016-05-09 18:49     ` Eli Zaretskii
2020-08-12  2:31       ` Stefan Kangas
2020-10-01 12:12         ` Stefan Kangas

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).