c-smart-pointers

Languages and libraries

c libraries

SHOW HN2015

126points
58comments
#183of 2,565 in 2015
Top 8%of 2015 by points

How HN took it

DebatedReal support and real criticism

6 positive, 8 neutral or asking, 0 mixed, 8 critical, out of 22 comments about the project. Thread score -0.12.

Idea: 3 for, 1 againstDesign: 1 for, 2 againstExecution: 1 for, 1 againstDocs: 1 for, 0 againstPerformance: 0 for, 1 against

The thread, comment by comment

Each row is a top-level comment and its replies, in HN's order. Select a cell to open that comment on HN.

positive neutral or mixed critical about another commenter or something else the maker

What HN said

What people liked

  • Interesting proof of concept for RAII in C

    From 2 comments
    • It is pretty impressive, actually. C, in general, does not have nice things. And it seems like this is on purpose. I think you're supposed to use C++ if you want nice things on…
      tormeh on HN
    • I give it a thumbs up on the basis of the FAQ.
      dahart on HN
  • Tidy autotools project

    From 1 comment
    • It's also a case study on how to make a tidy project using the autotools. The only thing I'd change is to commit a 0-byte m4/.keep file and then remove autogen.sh in favour of…
      endgame on HN

Objections

  • Relies on GCC/Clang-specific features, not standard C

    From 2 comments
    • Looks to be GCC specific, using several GCC specific variable attributes. Quite a bit of preprocessor macro magic as well. Also, my succinct and unprofessional response to…
      falcolas on HN
    • This relies on support in the GCC infrastructure. That support is there thanks to the back-end support for C++. Calling it "for the C language" is misleading, insinuating…
      kazinator on HN
  • Valgrind already solves leak detection

    From 1 comment
    • This is really neat, but I actually wonder if we aren't trying to solve a mostly solved problem. As a C programmer, yes, sometimes you forget to free memory that you've…
      aninteger on HN
  • Abstraction hurts readability and debugging

    From 2 comments
    • This is really neat, but I actually wonder if we aren't trying to solve a mostly solved problem. As a C programmer, yes, sometimes you forget to free memory that you've…
      aninteger on HN
    • Isn't the whole point of C to have as minimal abstraction as possible?
      Igglyboo on HN
  • No tests yet

    From 1 comment
    • My trust in actually using this even for personal reasons would go 100x had you have written tests
      jahan-addison on HN

Requests

  • Add tests

    From 1 comment
    • My trust in actually using this even for personal reasons would go 100x had you have written tests
      jahan-addison on HN
  • Support C++ target or portable approach

    From 1 comment
    • You can make smart pointers which are not specific to a GNU language. Here is how: doh, use C++. Let's see, ISO C++ portable smart pointers? Or GNU/LLVM C smart pointers? If all…
      kazinator on HN

Questions

  • Does it work with longjmp?

    From 1 comment
  • How does the recursion limit in apply.h behave?

    From 1 comment
    • Looks to be GCC specific, using several GCC specific variable attributes. Quite a bit of preprocessor macro magic as well. Also, my succinct and unprofessional response to…
      falcolas on HN

Alternatives named

  • Valgrind leak checking

    From 1 comment
    • This is really neat, but I actually wonder if we aren't trying to solve a mostly solved problem. As a C programmer, yes, sometimes you forget to free memory that you've…
      aninteger on HN
  • Boehm garbage collector

    From 2 comments
    • I've only been actively programming in C for the past three years, so I'm not that much informed either, but from my researches on the subject, I haven't seen any. The probable…
      Snaipe on HN
    • Side story: I witnessed a situation in which an embedded board had to be manufactured in a variant supporting a bigger DRAM chip, just so there would be room to run Valgrind on…
      kazinator on HN
  • C++ unique_ptr

    From 1 comment
    • I guess it's more about writing less & better than using known functions -- in the same reasoning, I /could/ use new/delete in C++, but I always end up using unique_ptr<T>(...)…
      Snaipe on HN

Category, keywords, summaries and labels on this page were made by AI (Thread Reader v2) and not checked by hand. Each point links to the comments it came from.

Add a badge to your READMEShown on HackerShow
[![Shown on HackerShow](https://hackershow.org/badge.svg)](https://hackershow.org/show/8886842)