Category Archives: code-level

Objective-Curry

Sadly it’s not called Schoenfinkeling, but that’s the name of the person who noticed that there’s no reason to ever have a function with more than one argument. What you think is a function with two arguments is actually a … Continue reading

Posted in code-level, Foundation, OOP | 1 Comment

Today I learned that I don’t even know how to Unix. I discovered that it’s possible for a POSIX system to leave PATH_MAX and similar variables undefined if it truly has no restrictions on their length.

Posted on by Graham | Leave a comment

Like Java, only functional

An idea that clarified itself to me in discussion today is that Swift is to Functional Programming as Java is to Object-Oriented Programming: it is the thing that lets you write C and pretend you’ve adopted some posh-sounding “paradigmatic” non-imperative … Continue reading

Posted in code-level, Java | Leave a comment

Derek Jones, from the PL advent calendar ‘J’ entry: Javascript would not have existed without the Internet and its ‘design’ must be a contender for the most costly software mistake [ever] made. Me, 14 months ago: Fundamentally I fear a … Continue reading

Posted on by Graham | Leave a comment

Today’s surprisingly short workflow-improving win

When I have a TODO comment (or a #error in code, which is how I frequently do TODOs), I switched to writing the commit message I want to be able to use when I’ve fixed the TODO. Then I write … Continue reading

Posted in code-level, documentation | Leave a comment

http://shape-of-code.coding-guidelines.com/2014/11/06/cobol-2014-perhaps-the-definitive-final-version-of-the-language/ Cobol now has function pointers :O

Posted on by Graham | Leave a comment

More Excel-lent Adventures

I previously wrote about Excel as the most successful IDE: Now what makes a spreadsheet better as a development environment is difficult to say; I’m unaware of anyone having researched it. That research is indeed extant, and the story is … Continue reading

Posted in code-level, tool-support | Leave a comment

Contractually-obligated testing

About a billion years ago, Bertrand Meyer (he of Open-Closed Principle fame) introduced a programming language called Eiffel. It had a feature called Design by Contract, that let you define constraints that your program had to adhere to in execution. … Continue reading

Posted in architecture of sorts, code-level, OOP, TDD | 1 Comment

On a re-read you realise this isn’t really about Swift

It’s a bit early to have formed an opinion on a recently-announced programming language, but as the requisite number of people have asked what mine is (i.e. at least zero) I thought I’d type and see what happens. Rules in … Continue reading

Posted in code-level, nearly linguistics | Comments Off on On a re-read you realise this isn’t really about Swift

I use mocks and I’m happy with that

Both Kent Beck and Martin Fowler have said that they don’t use mock objects in their test-driven development. I do. I use them mostly for the sense described first in my BNR blog post on Mock Objects, namely to stand … Continue reading

Posted in code-level, OOP, TDD, TDiOSD | 1 Comment