Coercing deep const-ness

Hack Pipe for Functional Programmers: How I learned to stop worrying and love the placeholder

Up and Down the Ladder of Abstraction

Issue #89

9/14/2021

A Byte of Coding Issue #89
Hello party people
If you're using any sort of Apple product, you should probably patch it ASAP. Citizen Lab reported on a zero day bug that basically allows some governments (clients of NSO group) "near-complete access to a target’s device, including their personal data, photos, messages and location".
It begs the question, are the companies that make these products responsible for how they're used? I'd say it's similar to the question of the big social media companies being responsible for what's posted on their platform. Some of you might laugh at the comparison when the former company is explicitly manufacturing and marketing cyber weapons, while the latter is a social media platform, but as we've seen in the past, that can also be used as a weapon of mass misinformation. At the same time, holding companies responsible for what users do with their product/service might stifle innovation because new companies could be drowned in legal action. It's kind of a sticky situation.
Well I digress. Here's that issue.
PS: I'm not implying that the two situations above are the same, merely that they are similar. Companies dealing in explicit spyware should definitely be treated differently compared to companies whose product/service may POTENTIALLY be used as a dangerous tool, because ultimately motive plays a big role.

Coercing deep const-ness

Published: 10 September 2021
Tags: cpp


Const-ness is considered useful because you can mentally check off a variable as being immutable. In this article, Barry Revzin first shows us how C++ "function template that both enforces and coerces that it does not mutate its argument" that only works with pointers and references. Barry then goes on to implement a function template of a similar nature that works with spans.

Read Full Article

Hack Pipe for Functional Programmers: How I learned to stop worrying and love the placeholder

Published: 11 September 2021
Tags: javascript


Functional programming in Javascript is no new thing, but usually requires third-party packages to take full advantage of it. More and more though, features from these packages are leaking into the core language. In this exploratory article, James DiGioia explains how and why he changed his mind in regards to the implementation of a pipe operator, from the F# style, to Hack style.

Read Full Article

Up and Down the Ladder of Abstraction

Published: 1 October 2011
Tags: philosophy


Full disclosure, this article is a decade old. However, I found its concepts were timeless, so figured no harm in featuring it. Bret Victor's exceptionally interactive article "presents the ladder of abstraction, a technique for thinking explicitly about [different levels of abstraction], so a designer can move among them consciously and confidently".

Read Full Article
Twitter
Website
Thanks for your Support! 

Thanks to supporters like Євген Грицай, Scott Munro, zturak, pek, Emil Hannesbo, and Joe Hill this newsletter is provided to you for (ad) free. If you'd like to also show your support and help out, you can donate on the Patreon page. It's not necessary, but it lets me know that I'm doing a good job and that you're finding value in the content.
Donate Here

Stats (updated daily)

Sent: 1503

Opens: 898

Clicks: 334

Link Clicks Clicks % Unique Clicks Unique Clicks %
Up and Down the Ladder of Abstraction 162 48.50% 124 47.69
Hack Pipe for Functional Programmers: How I learned to stop worrying and love the placeholder 80 23.95% 65 25.00
you should probably patch it ASAP. 47 14.07% 35 13.46
Coercing deep const-ness 44 13.17% 35 13.46
Today's Sponsor: Retool 1 0.30% 1 0.38

Previous

Back to Issues

Next