Open CrazyPython opened 8 years ago
@o11c
Since the repo is named .cpp
(and that's the most common anyway), there's no point in further bikeshedding about .cc
, .cxx
, .C
, .c++
- and headers should not mismatch, but that does leave .h
.
Personally, I always use .hpp
for C++-only headers, and .h
for C-compatible headers. I can envision a limited C-compatible API here, so I think the difference makes sense.
Of course, one of our products will likely be a single-file header-only include (similar to what sqlite does) - that will not be C-compatible. But for people doing the full multiple-headers + library install method, C-only makes sense.
Note that there are also 2 types of special-purpose headers (not included directly by users): template definitions (.tcc
is common because of libstdc++, but I've seen a couple of variants such as .tpl
and .inl
) and X-macros (.def
is most common these days, but I've also seen .x
especially for older stuff).
@o11c Let's worry about C++ first then C compatibility. And the fastest C code isn't always the fastest c++ code. So .cpp
and .hpp
I guess?
@o11c Unrelated but: can you send a pull request with just boilerplate code? I have no experience with writing C++ libraries.
guys. calm down! loving the enthusiasm though. I'll push my idea of what the framework should look like, then we can discuss ;)
On 9 Aug 2016 5:29 p.m., "CrazyPython" notifications@github.com wrote:
@o11c https://github.com/o11c Unrelated but: can you send a pull request with just boilerplate code? I have no experience with writing C++ libraries.
— You are receiving this because you are subscribed to this thread. Reply to this email directly, view it on GitHub https://github.com/tqdm/tqdm.cpp/issues/1#issuecomment-238609671, or mute the thread https://github.com/notifications/unsubscribe-auth/AKR9m9gvQrys733zA8RX_QzeC_IFjSq_ks5qeKrygaJpZM4JgLc8 .
@casperdcl Hm, don't seem to have direct push access anymore. I want it just to be able to set milestones/labels. No direct commits (except for simple stuff like .gitignore).
Got it now. Thanks!
A nice, soothing, purple design label.
I'll leave it up to @casperdcl to do a draft and set up the goals for a first working release :)
Just my 2 cents about C++ vs C support: if you want to implement tqdm-cpp
in an object-oriented fashion similarly to the current version of tqdm
for python, then you'll surely need C++ and drop C support for now, but I
have limited experience with C++ so maybe it's possible to do something
compatible.
However if you were to implement the older tqdm
approach before
object-oriented, then you can easily implement that in C, but then you'll
lose many interesting features (for example manually updatable bars and
nested loops).
2016-08-09 19:08 GMT+02:00 CrazyPython notifications@github.com:
A nice, soothing, purple design label.
— You are receiving this because you are subscribed to this thread. Reply to this email directly, view it on GitHub https://github.com/tqdm/tqdm.cpp/issues/1#issuecomment-238621371, or mute the thread https://github.com/notifications/unsubscribe-auth/ABES3glFV9FIXWRievnqkKLtVFpX5wVkks5qeLQRgaJpZM4JgLc8 .
@lrq3000 I think if we're going to support C at all, we should do it in a separate file. Iterate-range is really useful. I'm going to put my thoughts on releases and versioning in a separate issue. v0.1 shouldn't include C support.
I would love to see a C version, but yeah it's a sensible decision to focus on C++ and create another file for C later on.
2016-08-09 21:03 GMT+02:00 CrazyPython notifications@github.com:
@lrq3000 https://github.com/lrq3000 I think if we're going to support C at all, we should do it in a separate file. Iterate-range is really useful. I'm going to put my thoughts on releases and versioning in a separate issue. v0.1 shouldn't include C support.
— You are receiving this because you were mentioned. Reply to this email directly, view it on GitHub https://github.com/tqdm/tqdm.cpp/issues/1#issuecomment-238656792, or mute the thread https://github.com/notifications/unsubscribe-auth/ABES3nXBxm6ElGN705L5J0bpcoJchaR3ks5qeM7ugaJpZM4JgLc8 .
@casperdcl @lrq3000 Please give o11c write access. We're working on setting up coverage and CI stuff.
Let's agree on what to name the file,
.H
,.h++
,.hh
,.hxx
,.h
or.hpp
? (to make merging easier)Personally, I'd go with
.h
.