Skip to content
0:00 / 0:00

#c++#unicode#copperspice

CppCon 2017: Barbara Geller & Ansel Sermersheim “Unicode Strings: Why the Implementation Matters”

CppCon

189K subscribers • 123 videos on Hallway • Conference channel

YouTube
  • Recommended by 1 person: 1 in engineering communities.
  • Presented by Barbara Geller and Ansel Sermersheim, co-creators of CopperSpice
  • Linked in the descriptionCppCon/CppCon2017

Intermediate. Assumes working knowledge.

5.1K views9 years ago1 recommendation

Programming languagesSystems programmingC++

Barbara Geller and Ansel Sermersheim discuss Unicode string formats, encodings, and how the CsString library handles string processing.

CppCon.org — Presentation Slides, PDFs, Source Code and other presenter materials are available at: github.com/CppCon/CppCon2017 — We will provide a brief overview including an explanation of what Unicode is, string terminology, and how Unicode supports non US languages. We will cover the pros and cons of various String formats and encodings including UTF-8, UTF-16, UCS-4, etc. A time line of Unicode development will be shown and how other languages have handled string processing over the last twenty years. We will provide a brief overview of where strings are used, what can go wrong with strings, why string encoding is important, and how the CsString library solves a major problem with string handling. We will explain how the CsString library has changed our CopperSpice Gui libraries and improved string processing in DoxyPress. No prior knowledge of Unicode, CopperSpice, or DoxyPress is required. — Barbara Geller: CopperSpice, Co Founder I am an independent consultant with over twenty-five years of experience as a programmer and software developer. I have worked with numerous smaller companies developing in-house applications. I have also designed and developed Windows applications for several vertical markets including medical billing, transportation, and construction. My degree is in Electrical Engineering from Cal Poly Pomona with additional studies in Computer Science. I am a Co-founder of CopperSpice, a C++ library derived from the existing Qt framework. I designed the Diamond Editor, a cross-platform programmers editor using the CopperSpice libraries. I have programmed in C++, Qt, Visual Objects, Clipper, PHP, and Java. Ansel Sermersheim: CopperSpice, Co Founder I have been working as a programmer for nearly twenty years. My degree is in Computer Science from Cal Poly San Luis Obispo. I have transitioned to independent consulting and I am currently working on a project for RealtyShares in San Francisco. Co-founder of CopperSpice, a C++ GUI library. Co-founder of DoxyPress, a C++ application for generating documentation. Developer of the open source libraries: libGuarded, CsSignal and CsString. I have programmed in C++, C, Lisp, Java, and Perl, with extensive knowledge in TCP/IP and mutilthreaded design. I am an avid follower of the C++ standard. Speaker at CppCon 2015, CppNow 2016, CppNow 2017, and several ACCU Bay Area meetings. — Videos Filmed & Edited by Bash Films: BashFilms.com Work at Hudson River Trading (HRT): tinyurl.com/safxfctf --- Videos Filmed & Edited by Bash Films: BashFilms.com

Why it's here

1 person recommends this

What people say. Recommended for its deep dive into Unicode string implementation details and performance in C++.

u/WafflesAreDangerousin r/programming • Recommends

On “Strings in C - what about now, Reddit ?”

…suringly familiar, but I have no idea how you would implement most of these in O(1). I suspect people will abuse str.getAtCodeUnit(n) or the like and end up with O(n\^2) by accident, and not realise this until they pass in a massive string and find it to be dog slow. There's some nice presentations that devle into unicode issues: \* CppCon 2014 [video \* CppCon 2017 [video (By comment's it seems that there's some caveats, but it has a really nice approachable presentation to convay a good baseline intuitive understanding. It also has a lot of examples of how things can go wrong, so take this as reference to what to look out for!) \* CppCon 2019 [video (Has a good overview of the is…