From a00fcb9d8ebc8b7d08b5054ec0eb3006aab59ecd Mon Sep 17 00:00:00 2001 From: myd7349 Date: Wed, 19 Nov 2014 11:21:44 +0800 Subject: [PATCH 01/10] Add Linux Kernel Coding Style under Coding Style I found this under this question: http://stackoverflow.com/questions/252780/why-should-we-typedef-a-struct-so-often-in-c --- README.md | 1 + 1 file changed, 1 insertion(+) diff --git a/README.md b/README.md index d6f62de..e4c8923 100644 --- a/README.md +++ b/README.md @@ -555,6 +555,7 @@ A curated list of awesome C/C++ frameworks, libraries, resources, and shiny thin * [google-styleguide](http://code.google.com/p/google-styleguide/) - Style guides for Google-originated open-source projects. * [Google C++ Style Guide](http://google-styleguide.googlecode.com/svn/trunk/cppguide.xml) * [GNU Coding Standard](http://www.gnu.org/prep/standards/standards.html) +* [Linux kernel coding style](https://www.kernel.org/doc/Documentation/CodingStyle) ## Talks From 19088fad587ff415186a4d3b967c70ee80401dba Mon Sep 17 00:00:00 2001 From: myd7349 Date: Wed, 19 Nov 2014 11:41:55 +0800 Subject: [PATCH 02/10] Add sigslot under Miscellaneous sigslot - C++ Signal/Slot Library Its home page: http://sigslot.sourceforge.net/ --- README.md | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/README.md b/README.md index e4c8923..dfc989a 100644 --- a/README.md +++ b/README.md @@ -437,8 +437,9 @@ A curated list of awesome C/C++ frameworks, libraries, resources, and shiny thin * [PCRE](http://pcre.org/) - A regular expression C library inspired by the regular expression capabilities in Perl. [BSD] * [Remote Call Framework](http://www.deltavsoft.com/) - Inter-process communication framework for C++. [GPLv2/Commercial] * [Scintilla](http://scintilla.org/) - A free source code editing component. [MIT] -* [Serial Communication Library](https://github.com/wjwwood/serial) - Cross-platform, Serial Port library written in C++. [MIT] * [SDS](https://github.com/antirez/sds) - Simple Dynamic Strings library for C. [BSD] +* [Serial Communication Library](https://github.com/wjwwood/serial) - Cross-platform, Serial Port library written in C++. [MIT] +* [sigslot](http://sigslot.sourceforge.net/) - C++ Signal/Slot Library. * [SLDR](https://github.com/cesanta/sldr) - Super Light DNS Resolver. [GPLv2/Commercial] * [SLRE](https://github.com/cesanta/slre) - Super Light Regular Expression library. [GPLv2/Commercial] * [Stage](https://github.com/rtv/Stage) - Mobile robot simulator. [GPLv2] From 6f802d7e65771632d5e6da3f4d4147fdc518dc89 Mon Sep 17 00:00:00 2001 From: myd7349 Date: Wed, 19 Nov 2014 11:55:58 +0800 Subject: [PATCH 03/10] Add ZXing under Miscellaneous 1. Change the order of several libs under Miscellaneous. 2. Add ZXing. I am also wondering if we should move ZBar and ZXing into category: Image Processing? --- README.md | 11 ++++++----- 1 file changed, 6 insertions(+), 5 deletions(-) diff --git a/README.md b/README.md index dfc989a..cafa97d 100644 --- a/README.md +++ b/README.md @@ -424,8 +424,10 @@ A curated list of awesome C/C++ frameworks, libraries, resources, and shiny thin ## Miscellaneous *Useful libraries or tools that don't fit in the categories above or maybe just not categorised yet* +* [Better String](http://bstring.sourceforge.net) - An alternative to the string library for C which is more functional and does not have buffer overflow overrun problems. Also includes a C++ wrapper. [BSD, GPLv2] * [C++ Format](https://github.com/cppformat/cppformat) - Small, safe and fast formatting library for C++. [BSD] * [casacore](https://code.google.com/p/casacore/) - A set of c++ core libraries derived from aips++. [LGPL] +* [CppVerbalExpressions](https://github.com/VerbalExpressions/CppVerbalExpressions) - C++ regular expressions made easy. [MIT] * [cxx-prettyprint](https://github.com/louisdx/cxx-prettyprint) - A pretty printing library for C++ containers. [Boost] * [DynaPDF](http://www.dynaforms.com/) - An easy-to-use PDF generation library. [Commercial] * [gcc-poison](https://github.com/leafsr/gcc-poison) - A simple header file for developers to ban unsafe C/C++ functions from applications. @@ -435,20 +437,19 @@ A curated list of awesome C/C++ frameworks, libraries, resources, and shiny thin * [libevil](https://github.com/avati/libevil) - The Evil License Manager. [GPLv3] * [libusb](http://www.libusb.org/) - A universal USB library which allows for portable access to USB devices. [LGPLv2] * [PCRE](http://pcre.org/) - A regular expression C library inspired by the regular expression capabilities in Perl. [BSD] +* [PHP-CPP](https://github.com/CopernicaMarketingSoftware/PHP-CPP) - A library to build PHP extensions with C++. [Apache2] [website](http://www.php-cpp.com/) +* [QtVerbalExpressions](https://github.com/VerbalExpressions/QtVerbalExpressions) - This Qt lib is based off of the C++ VerbalExpressions library. [MIT] * [Remote Call Framework](http://www.deltavsoft.com/) - Inter-process communication framework for C++. [GPLv2/Commercial] * [Scintilla](http://scintilla.org/) - A free source code editing component. [MIT] * [SDS](https://github.com/antirez/sds) - Simple Dynamic Strings library for C. [BSD] * [Serial Communication Library](https://github.com/wjwwood/serial) - Cross-platform, Serial Port library written in C++. [MIT] -* [sigslot](http://sigslot.sourceforge.net/) - C++ Signal/Slot Library. +* [sigslot](http://sigslot.sourceforge.net/) - C++ Signal/Slot Library. [PublicDomain] * [SLDR](https://github.com/cesanta/sldr) - Super Light DNS Resolver. [GPLv2/Commercial] * [SLRE](https://github.com/cesanta/slre) - Super Light Regular Expression library. [GPLv2/Commercial] * [Stage](https://github.com/rtv/Stage) - Mobile robot simulator. [GPLv2] * [VarTypes](https://code.google.com/p/vartypes/) - A feature-rich, object-oriented framework for managing variables in C++ / Qt4. [LGPL] * [ZBar](http://zbar.sourceforge.net/) - A barcode scanner library, which allows to scan photos/images/video streams for barcodes and return their value. [LGPLv2] -* [CppVerbalExpressions](https://github.com/VerbalExpressions/CppVerbalExpressions) - C++ regular expressions made easy. [MIT] -* [QtVerbalExpressions](https://github.com/VerbalExpressions/QtVerbalExpressions) - This Qt lib is based off of the C++ VerbalExpressions library. [MIT] -* [PHP-CPP](https://github.com/CopernicaMarketingSoftware/PHP-CPP) - A library to build PHP extensions with C++. [Apache2] [website](http://www.php-cpp.com/) -* [Better String](http://bstring.sourceforge.net) - An alternative to the string library for C which is more functional and does not have buffer overflow overrun problems. Also includes a C++ wrapper. [BSD, GPLv2] +* [ZXing](https://github.com/zxing/zxing/) - An open-source, multi-format 1D/2D barcode image processing library implemented in Java, with ports to other languages. [Apache] # Software *Software for creating a development environment.* From 863b7e8cc98a5aa383249a67c247c1d2c7dce3bc Mon Sep 17 00:00:00 2001 From: myd7349 Date: Wed, 19 Nov 2014 13:16:18 +0800 Subject: [PATCH 04/10] Add C++ Dos and Don'ts under Coding Style Add C++ Dos and Don'ts under Coding Style. C++ Dos and Don'ts is a C++ coding style guides I found on The Chromium Projects' website. --- README.md | 1 + 1 file changed, 1 insertion(+) diff --git a/README.md b/README.md index cafa97d..d8ea269 100644 --- a/README.md +++ b/README.md @@ -554,6 +554,7 @@ A curated list of awesome C/C++ frameworks, libraries, resources, and shiny thin ## Coding Style +* [C++ Dos and Don'ts](http://www.chromium.org/developers/coding-style/cpp-dos-and-donts) * [google-styleguide](http://code.google.com/p/google-styleguide/) - Style guides for Google-originated open-source projects. * [Google C++ Style Guide](http://google-styleguide.googlecode.com/svn/trunk/cppguide.xml) * [GNU Coding Standard](http://www.gnu.org/prep/standards/standards.html) From f28fe056fbffc1b868e307e2c2d41186fd90007a Mon Sep 17 00:00:00 2001 From: myd7349 Date: Thu, 20 Nov 2014 10:50:22 +0800 Subject: [PATCH 05/10] Add uSTL under Frameworks uSTL is a small STL library, which has been used in GameLoft's ASTHALT 8. --- README.md | 1 + 1 file changed, 1 insertion(+) diff --git a/README.md b/README.md index d8ea269..2dd05ec 100644 --- a/README.md +++ b/README.md @@ -86,6 +86,7 @@ A curated list of awesome C/C++ frameworks, libraries, resources, and shiny thin * [STLport](http://www.stlport.org/) - An exemplary version of STL. [Free] * [STXXL](http://stxxl.sourceforge.net/) - Standard Template Library for Extra Large Data Sets. [Boost] * [Ultimate++](http://www.ultimatepp.org/) - A C++ cross-platform rapid application development framework. [BSD] +* [uSTL](http://msharov.github.io/ustl/) - The small STL library. [MIT] * [Windows Template Library](http://sourceforge.net/projects/wtl/) - A C++ library for developing Windows applications and UI components. [Public] * [Yomm11](https://github.com/jll63/yomm11) - Open multi-methods for C++11. [Boost] From 04cf380ae4108dbf2228207f4410b5f2f1c33f24 Mon Sep 17 00:00:00 2001 From: myd7349 Date: Thu, 20 Nov 2014 13:42:08 +0800 Subject: [PATCH 06/10] Add libjingle under Networking --- README.md | 1 + 1 file changed, 1 insertion(+) diff --git a/README.md b/README.md index 2dd05ec..eca6bc4 100644 --- a/README.md +++ b/README.md @@ -328,6 +328,7 @@ A curated list of awesome C/C++ frameworks, libraries, resources, and shiny thin * [cpp-netlib](http://cpp-netlib.org/) - A collection of open-source libraries for high level network programming. [Boost] * [Dyad.c](https://github.com/rxi/dyad) - Asynchronous networking for C. [MIT] * [libcurl](http://curl.haxx.se/libcurl/) - Multiprotocol file transfer library. [MIT/X derivate license] +* [libjingle](https://code.google.com/p/libjingle/) - Google talk voice and P2P interoperability library. [BSD] * [Mongoose](https://github.com/cesanta/mongoose) - Extremely lightweight webserver. [GPLv2] * [Muduo](https://github.com/chenshuo/muduo) - A C++ non-blocking network library for multi-threaded server in Linux. [BSD] * [net_skeleton](https://github.com/cesanta/net_skeleton) - TCP client/server library for C/C++. [GPLv2] From fd6521643a1f7ec052915d010175fde50f415d18 Mon Sep 17 00:00:00 2001 From: myd7349 Date: Thu, 20 Nov 2014 13:56:37 +0800 Subject: [PATCH 07/10] Add delta3d under Game Engine --- README.md | 1 + 1 file changed, 1 insertion(+) diff --git a/README.md b/README.md index eca6bc4..8430a29 100644 --- a/README.md +++ b/README.md @@ -209,6 +209,7 @@ A curated list of awesome C/C++ frameworks, libraries, resources, and shiny thin ## Game Engine * [Cocos2d-x](http://www.cocos2d-x.org/) - A multi-platform framework for building 2d games, interactive books, demos and other graphical applications. [Commercial?] +* [delta3d](http://sourceforge.net/projects/delta3d/) - A open source robust simulation platform. [LGPLv2] * [Grit](http://gritengine.com/) - Community project to build a free game engine for implementing open world 3D games. [MIT] * [Irrlicht](http://irrlicht.sourceforge.net/) - An open source high performance realtime 3D engine written in C++. [zlib] * [Polycode](http://polycode.org/) - Open-Source Framework for creating games in C++ (with Lua bindings). [MIT] From 7ba1323ddb79b1f1c5617c6028355fc1b5915232 Mon Sep 17 00:00:00 2001 From: myd7349 Date: Thu, 20 Nov 2014 14:10:01 +0800 Subject: [PATCH 08/10] Add two signal-slot system under Miscellaneous Add Boost.Signals and libsigc++ under Miscellaneous. So now we have three solution for event-driven programming: Boost.Signals sigslot libsigc++ Maybe we can add a new category: Event-driven programming. --- README.md | 2 ++ 1 file changed, 2 insertions(+) diff --git a/README.md b/README.md index 8430a29..04f0363 100644 --- a/README.md +++ b/README.md @@ -428,6 +428,7 @@ A curated list of awesome C/C++ frameworks, libraries, resources, and shiny thin *Useful libraries or tools that don't fit in the categories above or maybe just not categorised yet* * [Better String](http://bstring.sourceforge.net) - An alternative to the string library for C which is more functional and does not have buffer overflow overrun problems. Also includes a C++ wrapper. [BSD, GPLv2] +* [Boost.Signals](http://www.boost.org/doc/libs/1_56_0/doc/html/signals.html) - An implementation of a managed signals and slots system. [Boost] * [C++ Format](https://github.com/cppformat/cppformat) - Small, safe and fast formatting library for C++. [BSD] * [casacore](https://code.google.com/p/casacore/) - A set of c++ core libraries derived from aips++. [LGPL] * [CppVerbalExpressions](https://github.com/VerbalExpressions/CppVerbalExpressions) - C++ regular expressions made easy. [MIT] @@ -436,6 +437,7 @@ A curated list of awesome C/C++ frameworks, libraries, resources, and shiny thin * [gcc-poison](https://github.com/leafsr/gcc-poison) - A simple header file for developers to ban unsafe C/C++ functions from applications. * [googlemock](http://code.google.com/p/googlemock/) - A library for writing and using C++ mock classes. [BSD] * [HTTP Parser](https://github.com/joyent/http-parser) :star: - A http request/response parser for C. [MIT] +* [libsigc++](http://libsigc.sourceforge.net/) - A typesafe callback system for standard C++. [LGPL] * [libcpuid](https://github.com/anrieff/libcpuid) - A small C library for x86 CPU detection and feature extraction. [BSD] * [libevil](https://github.com/avati/libevil) - The Evil License Manager. [GPLv3] * [libusb](http://www.libusb.org/) - A universal USB library which allows for portable access to USB devices. [LGPLv2] From ddfaa916aa4fa6f9a421e4b62cdeed4fa54e8c47 Mon Sep 17 00:00:00 2001 From: Faraz Fallahi Date: Wed, 19 Nov 2014 20:56:52 -0600 Subject: [PATCH 09/10] Create todo3.txt --- todo3.txt | 9 +++++++++ 1 file changed, 9 insertions(+) create mode 100644 todo3.txt diff --git a/todo3.txt b/todo3.txt new file mode 100644 index 0000000..b836c6f --- /dev/null +++ b/todo3.txt @@ -0,0 +1,9 @@ +https://www.youtube.com/watch?v=mVbDzTM21BQ + +http://en.wikibooks.org/wiki/Optimizing_C%2B%2B/Code_optimization +http://en.wikibooks.org/wiki/Optimizing_C++/Code_optimization/Faster_operations + +https://mattmccutchen.net/bigint/ +https://code.google.com/p/infint/ +http://cpp-bigint.sourceforge.net/ +https://gmplib.org/ From caa27350732fb0dfa94cc5ab6fc8bebe88613320 Mon Sep 17 00:00:00 2001 From: Faraz Fallahi Date: Wed, 19 Nov 2014 20:57:16 -0600 Subject: [PATCH 10/10] Rename todo.txt to todo1.txt --- todo.txt => todo1.txt | 0 1 file changed, 0 insertions(+), 0 deletions(-) rename todo.txt => todo1.txt (100%) diff --git a/todo.txt b/todo1.txt similarity index 100% rename from todo.txt rename to todo1.txt