How to program II

Once one has been exposed to a wrong concepts or just bullshit it is very difficult to unlearn what is “already known” and to see things as they really are. Especially when a necessary abstraction barrier is neglected or not even well-understood and some implementation aspects are mixed arbitrary with definitions of an abstraction itself, and with parts of a supposedly abstract interface, which has to form (establish) the abstraction barrier....

May 3, 2024 · <lngnmn2@yahoo.com>

How to program

The great programmers of the past, who wrote the fortran numeric libraries, lets say, drew flow-charts for every procedure they are about to write. This gave them the right intuitions and the right feeling about what they do. At the level of expressions you have just (only) recuring 3 patterns - it will be either a sequence, a conditional (branching) or a loop (recursion), so when they begin to write the code, they were never confused – it has to be one of these....

April 28, 2024 · <lngnmn2@yahoo.com>

Tackling complexity

Some hard problems will never be solved by “brainstorms” (more like bullshit-storms) or any about of babbling by Chuds. They require the trained minds like of C.A.R. Hoare or Leslie Lamport. or Philip Wadler or Martin Odersky – the outliers and top performers.. Ideally, they have to be mathematically mature, and preferably on the compiler side (so they also understand important implementation aspects). The “direction” is actually clear and well-understood (a small miracle), and it is in restricting too general concepts and formalisms with additional constraints (so they actually match the environmental constraints), or just typing....

April 26, 2024 · <lngnmn2@yahoo.com>

Why S and K are enough.

DESCRIPTION: Oops, I did it again. The hack The word “implies” and corresponding arrows are grossly overloaded and have more than one subtle but distinct meanings. We will read and interpret the “arrows” (and the word “implies”) from different formalisms differently (as an implication in terms of necessity and sufficiency and as a single discrete step of causality). We will put the universal notion of an environment (and the corresponding Γ abstraction) from obscurity to the center....

August 5, 2023 · <lngnmn2@yahoo.com>

GNU Emacs

Emacs is a monument (just like Potala palace in Lhasa) of an old-school software engineering and classic languages – it is, indeed, a world heritage site of the golden age of programming. It also could be compared with the ghat complex of Varanasi, which began no one knows when and is constantly changing since then, being reshaped by the “waves” and “tides” of social dynamics. Visiting Emacs is like visiting one of such historic sites, and just like them, it has been re-shaped by the successions of mass-hysteria and zealous over-excitement about bullshit....

July 28, 2023 · <lngnmn2@yahoo.com>

The recurring patterns captured as a Monoid

The common patterns There are recurrent patterns, which has been captured in familiar “standard” abstractions. Monoid A Set along with a composition operation, which has an identity element. addition, for (+) identity is 0 concatenation, which is a specialization of putting together, identity is "". List, a fundamental recursive sum-type, identity is [] Option, a specialization of empty/non-empty aspect of a List, identity is None Boolean logic, very subtle, identity is False (false imply nothing) The notion that some Boolean operations form a Monoid is very subtle, but it will emerge with conditional expressions....

July 16, 2023 · <lngnmn2@yahoo.com>