HNHacker News
TopNewBestAskShowJobs

lngnmn

-10 karma · joined December 24, 2016

submissionscomments
lngnmn··on Rob Pike's Rules of Programming (1989)
> Data dominates. If you've chosen the right data structures and organized things well, the algorithms will almost always be self-evident. Data structures, not algorithms, are central to programming.

This is especially beautiful insight giving that it has a parallel with molecular biology - proteins and other molecular structures dominate. Enzymes are made of "standard" proteins to transform particular molecular structures.

This, BTW, is also related to usually overlooked the "code is data" principle.

To be a good programmer one has to know molecular biology 101. It seems like good guy (John McCarthy, MIT Wizards, Bell labs and Erlang guys) did.

lngnmn··on How to compare two functions for equivalence, as in (λx.2*x) == (λx.x+x)?
By providing a heuristic that doubling could be defined as x+x and 2*x. That one plus one is the same as one two times.
lngnmn··on Mathematicians Measure Infinities, Find They’re Equal
Oh, more than one infinity in the same reality and no contradiction? What a wonderful world we live in..

More than one zero, more than one infinity, why not? More than on nothingness, more than one everything..

lngnmn··on Hackers who broke into Equifax exploited a flaw in open-source server software
Wrong emphasis. It must be read "flaw in open source Java software.

The problem is Java, not Open Source.

lngnmn··on Nginx Unit
Oh, they wrote their own uwsgi, based on what presumably started as nginx2. That's cool.

I hope they would avoid the Second System syndrome..

lngnmn··on The real prerequisite for machine learning isn’t math, it’s data analysis (2016)
The real prerequisite for machine learning is a domain expertise.

Otherwise algorithms will learn nonsense and random correlations made from datasets of random noise.

Look at finance to see how it "works".

lngnmn··on Redesigning Python's named tuples
Obviously, practicality should beat purity and very clever and reasobable syntax

   (x=1, y=2)
which could be used/generalized for a procedure arguments and effecient implementation in C (we have C-based arrays (lists) and hash-tables, so why not generalized records/tuples?) should be accepted.

The problem with a "pure democracy" is that majority cannot be smarter than the top 5% individuals, so really good ideas almost never getting thorough the bulk of a bell curve.

lngnmn··on Can we know what animals are thinking?
I am using the definition from the times of Descartes. Perhaps I missed the moment when the word "thinking" began to refer to arbitrary cognitive processes.

I will try one more time.

The rules of logic require precise definitions (as best as we currently able to produce) and to follow the rule of substituting equal for equal only. The socially constructed memes cannot be substituted for definitions, no matter what hipsters would write in blog posts.

Thinking, as in "I think" or "I am" or how Descartes put it "I think therefore I am", is based on a language. Language is required for thinking and abstract thinking and reasoning. Language comes before the notion of "I". Before any abstractions.

Argumentation is quite straightforward. Human languages has been evolved together with related brain centers and this process took alot of time. There is a fundamental gap between association of sounds or cries with some sensory patterns and ability to say "I am". How long it took? Some primates are capable of learning very rudimentary sign language after years of rigorous training, but they are incapable of developing of (or even grasping) the notion of "I" on their own. Now you might see the gap.

I would argue that language comes prior to abstract reasoning and abstract thinking, and that they have been evolved together in a mutually recursive relationship. Think of the mutual recursion of #'eval and #"apply as the best example of mutual recursion I know.

Thinking, I would say, started with a primitive, rudimentary language and then related brain circuitry has been selected by evolution. Social evolution and biological evolution together.

One could see the very process of emergence of self-awareness and self-consciousness in babies as a gradual process parallel (or rather based on) language acquisition. The fundamental difference is, of course, that all necessary brain centers are already developed and encoded in DNA (but they are still has to be trained).

This line of arguments is for justifying and supporting the postulates of Descartes about fundamental difference between a human and an animal (creationist nonsense aside). To put it another way - there is not a single scientifically proven contradictions with his definitions.

I would spare you from a lecture on basic linguistics - there are much better figures in the field. The only reference I would like to make is to the postulate of Chomsky, that language acquisition is a process, similar to growing of an organ. So, the story about Evolution is applicable to a capacity as it is applicable to any organ or a subsystem.

So, thinking in its classic definition is the capacity based on a language. It is implemented in corresponding brain centers and related circuitry and is impossible as ability without underlying lower level machinery which takes long and unique path to evolve.

As far as we know, no species went to the same evolutionary pathway which humans did to evolve even a rudimentary natural language in linguistic sense (uniform, rule-governed, arbitrary composition).

So, animals cannot think the way humans do.

BTW, in this chain of reasoning I have demonstrated the kind of thinking no animal is capable of and, hopefully, why it is so.

lngnmn··on Can we know what animals are thinking?
Exactly. Information processing is information processing, and thinking is a process which is based on a language.

Otherwise it loses all meaning - cells are thinking, tissues are thinking, computers are thinking, bacterias, etc.

People seem to forget that "thinking machines" is still a metaphor which cannot be interpreted literally.

lngnmn··on Can we know what animals are thinking?
Philosophy 101.
lngnmn··on Can we know what animals are thinking?
Yes, it is another kind of activity.

To ask "what animals are thinking" is exactly the same as to ask "what a self-driving car or a smartphone are thinking".

lngnmn··on Can we know what animals are thinking?
Google 'belief' and 'idea' too.
lngnmn··on Can we know what animals are thinking?
Definition of thinking, like definition of sex, or any other biological trait cannot be broadened. That would yield nonsense.

Thinking implies language. Without language it is feeling. Period.

Learning from experience, map making and even planning, as one might see in case of machine learning and other branches of AI, does not require thinking. It is a lower level of activity, relative to abstract reasoning, like pattern recognition.

lngnmn··on Can we know what animals are thinking?
No. Animals don't think, because thinking requires language, based on it conceptual thinking and related brain circuitry which animals still didn't evolve.

Signaling systems and elaborate warning cries do not account for a language.

Animals only feel. They have emotions, environmental clues and heuristics, everything but a language and hence no thinking by definition. That is exactly what some call non-verbal,'animal' mind. Emotional states and behavioral patterns and learning from experience only. Look at toddlers to grasp what it means.

lngnmn··on Is There Any Point to Protesting?
Only a hipster snowflake's magazine could put such question in a headline.

A crowd is a major hardwired social heuristic. When someone sees a crowd of protestors or supporters almost automatic mental processes of estimating it's size and more importantly of taking a side wether one is with it or against it are triggered. It also forms a emotionally charged long lasting memory - a hostile crowd is a major life threat. Crowd of supporters is associated with protection and change. This is freshman's social psychology 101.

Number of likes, BTW, and numbers related to social events in general works in the same way. Social heuristics are hardwired and hence easily exploited by media or sales departments. The best strategy is to convince a potential buyer that there is a presumed crowd of enthusiastic buyers behind him. Tesla is the obviously example.

Crowd of protesters is a major concern even for Trump.

lngnmn··on Answers from 2017 Common Lisp experts
You are right - Common Dialect of MacLisp Successors. Thank you!
lngnmn··on Answers from 2017 Common Lisp experts
> Which books

Symbolics Common Lisp - Language Concepts (volume 2A)

It also covers parts of Zetalisp.

I am also big fan of pg's On Lisp and ANSI Common Lisp.

lngnmn··on Answers from 2017 Common Lisp experts
The major goal of Common Lisp was commonality, and that means incorporating forms from various dialects into one and to maintain compatibility, like you said. That goal has been accomplished.

I think that carefully designed dialects with emphasis on right principles and attention to details leading by people like David Moon would be aesthetically better than a good kitchen sink. It is no coincidence that Common Lisp took most of stuff from Zetalisp, according to CLtL2.

I think it is a general heuristic that a small group of disciplined devoties would produce better artifact than an vast assembly of... general public or passionate and productive but ignorant individual. Think of Python3 vs Ruby, Go vs early C++ or Scheme vs CL. Attention to details and perfectionism works - look at Haskell syntax and prelude. (All this just to illustrate validity of my heuristic).

lngnmn··on Answers from 2017 Common Lisp experts
Its mostly about inconsistent naming, order of arguments and standard idioms. Obviously most of these are historical artifacts, like nconc and friends or the primitives for working with hash-tables.

Car and cdr are small miracles because they give us of caddr or caadr and friends. It is beautiful accident which should be appreciated and preserved.

lngnmn··on Answers from 2017 Common Lisp experts
I remember reading the Symbolics manuals from bitsavers and how I have been impressed by clarity and unity of the language, and how they incorporated CL into Zetalisp just by moving their own stuff into packages.

At least in the documentation everything looks wonderful. Compared to Symbolics CL looks like a mess at least from reading the books.

lngnmn··on Answers from 2017 Common Lisp experts
I really don't get the lispm's answer about cl21. What are the hidden treasures of the genuine Common Lisp we are ignorant of?

In my humble opinion Common Lisp is the classic example of the kitchen sink syndrome, where many pieces taken from various dialects were put together in a hurry. The results is not that bad (like, say, C++) but we know, arguably, a much more refined versions of Lisp, such as the dialect from Symbolics and Arc.

So, honestly, what are these hidden gems?

cl21, it seems, was an attempt to unify some syntactic forms rather than re-define what a Common Lisp is or should be. In that respect it is very remarkable effort. It is also a package - don't use if don't like.

The fair point that Common Lisp is a truly multi-paradigm language, so it includes mutating primitives alongside with "pure" functions and supports lexical and dynamic scooping, is rather difficult to grasp, but there is a lot of possibilities at the level of syntactic forms and embedded specialized DSLs, which, arguably, is what makes a Lisp Lisp.

It is never too much of embedded DSLs and syntactic sugar.

lngnmn··on Studying how Firefox can collect additional data in a privacy-preserving way
That would be a public relations suicide!

Greed and monetization of user's data - this is the only real business model which brings profit. There is, probably, already a long queue of customers willing to pay for the data.

And, of course, "anonymity" is nonsense. The whole point of collecting data is to classify users into target groups and model user's behavior. In other words - to collect the data for machine learning algorithms and sell access to the datasets and other services.

lngnmn··on Serverless Raspberry Pi Cluster with Docker
Serverless meme means that all I got is a chrooted directory with only systemd and /lib but without signals, similar to an apache vhost with a cgi-bin, so I could run my full-stack crap and it is supposed to be so damn cool because actual server maintenance is now someone else's problem?
lngnmn··on Concurrency in Swift: One possible approach
> concurrency, which is a userspace problem

This is another gross misconception, like an attention to manage resources from the userspace, the way JVMs or Node are trying to do by poorly reimplementing OS subsystems.

Concurrency primitives must be implemented by an OS - it will eliminate all the userspace problems - no busy-waiting, no polling, no waking up for every descriptor, etc.

Ignoring an underlying OS instead of having thin wrappers, like Plan9 from userspace does, is exactly what is called ignorance (lack of awareness of a better way).

lngnmn··on Concurrency in Swift: One possible approach
Software interrupts is the right answer to concurrency nonsensical hype. Sometimes old is gold.

Wrapping specialized interrupt handlers into some higher lebel API, such as AIO, is the right way.

Async/await is a mess. Concurrency cannot be generalized to cover all the possible cases. It must have specialization.

Engineers of old times who created the early classic OSes were bright people, contrary to current hipsters.

Once popularized, flawed abstractions and apis such as pthreads would stick (only idiots would accept shared stack and signals).

Look at how an OS implements concurrency and wrap it into higher level API. That's it.

lngnmn··on Resetting the Clock of Life
From the life's point of view, so to speak, atoms are immutable. The actual process of decay are below the level of abstraction. Life "knows nothing" about it by definition.
lngnmn··on Resetting the Clock of Life
There is nothing much to explain. The principles I am describing here are of classic Eastern philosophy applied to the Evolution process.

The notions of numbers, counting in general and the related concert of time required an observer to be established and formulated. These notions cannot emerge by accident in a purely mechanical perturbations the way life originated. There were no observer, leave alone designer.

This means that life could only use "concrete" phisical structures against which it does exact pattern matching, which is how DNA or RNA translation and protein sintesis works.

Message passing between the cells and triggering of gates and pumps are done by exact pattern matching for the very same reasons - there is no other way in principle. That is why there is no counters or clocks in the nature except human made ones.

lngnmn··on Resetting the Clock of Life
And which exactly protein acts as a counter? What unit it uses? What is representation of the current value if the counter? How it deals with overflows?

Again. There is no counting inside a cell in principle. Only pattern matching of phisical molecular structures and "mechanical" triggers. No counters, no clocks, no notion of a number.

Do not confuse oscillations or rotation with time. Processes do exist. Time does not.

lngnmn··on Resetting the Clock of Life
Life has no clocks. It, as a set of processes, has phases, which happen follow the phases of the environment and use these phases to maintenance and repair.

There is no such thing as time, so Nature and evolution does not have any clock or counters. Life does not work the way we conditioned to think as observers. It cannot use abstract mental concerts which does not exist at molecular or cellular level. Cells do message passing and explicit pattern matching. No clocks or counters.

lngnmn··on Predict the future with Machine Learning
My comment was is about inevitable philosophical gap between reality and any model or a simulation, which cannot be bridged in principle.

Yes, simulators as sources of sensory input to get similar experience are used, for example, to train airline pilots. Nevertheless, there is no airline which train its pilots on a simulator only. Algorithm, like a pilot, would learn a simulation, not reality.

Page 1 of 10Next →