The OpenNET Project / Index page

[ новости /+++ | форум | теги | ]



Вариант для распечатки  
Пред. тема | След. тема 
Форум Разговоры, обсуждение новостей
Режим отображения отдельной подветви беседы [ Отслеживать ]

Оглавление

Сравнение эффективности 20 языков программирования, opennews (??), 03-Янв-24, (0) [смотреть все]

Сообщения [Сортировка по времени | RSS]


32. "Сравнение эффективности 20 языков программирования"  +/
Сообщение от Герострат (?), 03-Янв-24, 11:45 
Что значит "умеет в юникодные строки"? Чем юникодная строка отличается от любой другой?
Ответить | Правка | К родителю #9 | Наверх | Cообщить модератору

38. "Сравнение эффективности 20 языков программирования"  +3 +/
Сообщение от Аноним (4), 03-Янв-24, 11:57 
Тем, что предсказать количество байт, необходимое под определённое число символьных единиц, а также, сколько будет каждая из них, невозможно. Это накладывает определённые ограничения на работу с текстом, но, на практике, строки бывают только такими. Если, конечно, это не UTF-32, там размер предсказуемый. Понятное дело, накладные расходы в любом случае довольно серьёзные, по сравнению с обработкой однобайтных строк.
Ответить | Правка | Наверх | Cообщить модератору

57. "Сравнение эффективности 20 языков программирования"  –5 +/
Сообщение от пох.. (?), 03-Янв-24, 12:16 
это не про unicode, это про utf8/16 - два самых уе6-щных в мире способа его кодирования.
виндовый ucs2 вполне себе fixed width.

Ответить | Правка | Наверх | Cообщить модератору

74. "Сравнение эффективности 20 языков программирования"  +2 +/
Сообщение от Аноним (4), 03-Янв-24, 12:29 
В венде, кстати, самый убогий и проблемный юникод, не понимаю, откуда твои восторги. Компромиссное решение конечно было, спасибо хоть теперь utf8 приняли. Но после этого перекодированый utf16 в utf8 может отправлять её в бсод. Когда в одних местах огрызок utf16 и в других местах огрызок utf8, это весело тоже.
Ответить | Правка | Наверх | Cообщить модератору

76. "Сравнение эффективности 20 языков программирования"  +/
Сообщение от Аноним (76), 03-Янв-24, 12:30 
> ucs2

но ведь там нет эмодзи !

Ответить | Правка | К родителю #57 | Наверх | Cообщить модератору

93. "Сравнение эффективности 20 языков программирования"  +/
Сообщение от пох.. (?), 03-Янв-24, 12:43 
увы. Поэтому в современной венде тоже помойка из где-то 16, где-то 8, а где-то и вообще восьмибитных кодировок для совместимости.
Ответить | Правка | Наверх | Cообщить модератору

125. "Сравнение эффективности 20 языков программирования"  +1 +/
Сообщение от Аноним (124), 03-Янв-24, 13:43 
В винде все "любят" BOM с которым проблемы и грабли в каждом втором кейсе, а в собственно кодировки нормально не умеют
Ответить | Правка | К родителю #57 | Наверх | Cообщить модератору

135. "Сравнение эффективности 20 языков программирования"  +1 +/
Сообщение от sena (ok), 03-Янв-24, 14:03 
> ucs2 вполне себе fixed width

Это только если выкинуть часть юникода.

Ответить | Правка | К родителю #57 | Наверх | Cообщить модератору

92. "Сравнение эффективности 20 языков программирования"  +1 +/
Сообщение от Аноним (-), 03-Янв-24, 12:43 
В чистых сях, если предказать невозможно размер строки, используют 2 пути:
1. Используют аллокаторы.
2. Используют массив, превыщающий размеры вводимых данных, с дополнительной проверочной функцией выхода массива за пределы допустимого размера.

>Понятное дело, накладные расходы в любом случае довольно серьёзные, по сравнению с обработкой однобайтных строк.

Понятие "накладные расходы" пришло из языков высокого уровня, где программисты отучились соображать, как в оперативной памяти располагаются данные. Чисто-сишник не знает таких слов, как "накладные расходы. Он просто видит задачу, и её делает. А Си плюс-плюс объектно-ориетрированный язык, в нём проблем с работой со строками вообще не существует.

Ответить | Правка | К родителю #38 | Наверх | Cообщить модератору

121. "Сравнение эффективности 20 языков программирования"  +9 +/
Сообщение от Аноним (-), 03-Янв-24, 13:29 
> Чисто-сишник не знает таких слов, как "накладные расходы. Он просто видит задачу, и выходит за границы массива.

Я поправил, не благодари)

Ответить | Правка | Наверх | Cообщить модератору

174. "Сравнение эффективности 20 языков программирования"  +1 +/
Сообщение от Аноним (174), 03-Янв-24, 16:13 
Полная фигня. В сях есть 2 путя:
1) нуль-терминировнная строка, начиная с некоторого адреса
2) адрес на начало буфера со строкой и его длина в байтах

Размер данных нужно не предсказывать, а декларировать, иначе вы что-то не так делаете.
Можно ещё работать с потоком, но это просто наворот логики над вторым случаем.

И, кстати, кодировка текста вообще иррелевантна для непосредственно передачи данных.

Ответить | Правка | К родителю #92 | Наверх | Cообщить модератору

333. "Сравнение эффективности 20 языков программирования"  –2 +/
Сообщение от Илья (??), 04-Янв-24, 08:10 
Чем бы дитя не решилось, лишь бы не брать c#
Ответить | Правка | К родителю #92 | Наверх | Cообщить модератору

514. "Сравнение эффективности 20 языков программирования"  +/
Сообщение от _kp (ok), 01-Фев-24, 15:52 
>>В чистых сях..

В смысле "чистых"? без библиотек, в стиле велосипедостроения? Так оно нерационально.

>> А Си плюс-плюс... в нём проблем с работой со строками вообще не существует.

И там реализация работы со строками не в языке, а в библиотеках. Ладно, в том числе в стоковых. Кстати, если не "шашечки, а ехать", то и в Си проблемы нет.

И в заключение не могу не упомянуть, про "проблемы не существует", что в С++ для контроллеров встроенные С++ библиотки вполне могут быть и наикривейшими, с мешком неочевидных проблем, в том числе со строками, что всё равно вынуждает использовать сторонние компоненты.

Ответить | Правка | К родителю #92 | Наверх | Cообщить модератору

147. "Сравнение эффективности 20 языков программирования"  +/
Сообщение от YetAnotherOnanym (ok), 03-Янв-24, 14:42 
Пффф... тоже мне проблема.
Ответить | Правка | К родителю #38 | Наверх | Cообщить модератору

59. "Сравнение эффективности 20 языков программирования"  +/
Сообщение от Аноним (59), 03-Янв-24, 12:17 
«От любой другой» — это от ASCII? Примерно всем.
Ответить | Правка | К родителю #32 | Наверх | Cообщить модератору

126. "Сравнение эффективности 20 языков программирования"  +/
Сообщение от Аноним (124), 03-Янв-24, 13:45 
При одном и том же наборе символов примерно ничем) А потом выясняется что ASCII в реале тебе не хватает и начинается цирк с теми, кто изначально использовал ASCII only подход
Ответить | Правка | Наверх | Cообщить модератору

Архив | Удалить

Рекомендовать для помещения в FAQ | Индекс форумов | Темы | Пред. тема | След. тема




Партнёры:
PostgresPro
Inferno Solutions
Hosting by Hoster.ru
Хостинг:

Закладки на сайте
Проследить за страницей
Created 1996-2024 by Maxim Chirkov
Добавить, Поддержать, Вебмастеру