Hacker Newsnew | past | comments | ask | show | jobs | submit | chabska's commentslogin

The point is that it's the job of the democratic legislature to codify what you just stated here into law, so that all money managers have to abide by this standard, not just those that have a personal conviction for it. That's the essence of rule of law.

You can't have a functioning government if it's elected by a corrupt society. Exhibit A, current US situation.

There is room for both. Not every aspect of morality needs to made law, as significant portions are subjective and debated. Law should be a least common denominator.

This leaves room for individuals to act in accordance with their morals above and beyond the law.


That sounds nice in theory, but real programs have multiple channels of IO going on: std IO, logging, network, database, file system. I follow discussions in Haskel groups sometimes, and combining and untangling multiple monads is a persistent problem that doesn't have a good solution yet.

It's debatable how much one is willing to describe historical solutions like MTL style to be a "good" solution to this problem (I explained the downsides in my talk "A History of Effect Systems"[1] at Zurihac 2025), but I certainly have no hesitation in describing my capability-based effect system Bluefin[2], as a good solution.

For the channels you describe above the type signature would look like this

    Yield String e1 -> -- stdout
    Await String e2 -> -- stdin
    Yield String e3 -> -- logging
    Network e4 -> -- network
    Database e5 -> -- database
    FileSystem e6 -> -- file system
    Eff es r
Six different capabilities that give you access to six different channels of IO. A "Yield" to which you yield strings to stdout, an "Await" from which you can await strings from stdin, a "Yield" to which you yield log messages, and three abstract effects that allow you to do network, database and file system operations (abstract because I'm not sure exactly how you want them defined, but there's an example of the implementation of a file system effect at https://hackage-content.haskell.org/package/bluefin-0.6.0.0/...).

No problem with combining or untangling monads whatsoever. This is the natural conclusion of galaxyLogic's point: instead of dividing your program into two parts (IO and not IO) you divide it into six parts (or maybe 2^6 parts?) according to which fine grained effects you have in scope.

If you (or anyone) has any questions about Bluefin I'm happy to help. Please feel free to ask here or on the issue tracker[3].

[1] https://www.youtube.com/watch?v=RsTuy1jXQ6Y

[2] https://hackage.haskell.org/package/bluefin

[3] https://github.com/tomjaguarpaw/bluefin/issues/new


Interesting. Those channels seem to all manage side-effects that persist after program execution. What about state-changes that are made and persist into the memory of the running program? Or is there any need for that?

Yes, there's a need for it, and Bluefin provides Modify which allows you to modify a reference to a value in a way that is not observable outside the scope of the capability.

https://hackage-content.haskell.org/package/bluefin-0.6.0.0/...


You should try actually doing some Haskell programming. There are some anti-patterns but the RIO pattern is very coherent and flexible. One IO base monad, one readerT that holds an IORef that gives you access to every other effect you need.


> combining and untangling multiple monads

What? I have to assume you mean combining and untangling multiple effects in an effect system. And the solution is simple: don't. IO is the only monad you use for all IO: logging, networking, databases, and filesystems included. Adding a layer of ReaderT on top is about the most complicated you do. Every other monad is pure. Effect systems are a great way to build abstractions that aren't usually worthwhile. It is the same kind of mentality that leads to AbstractWumbleProviderFactoryBean-oriented programming in Java.


The IO monad is for reifying execution order of a program. You more or less never have multiple IO monads.

As the title indicate, this article is comparing construct-to-construct, not idiomatic code to idiomatic code. You probably won't use struct initialization in C++, yet the feature still exist, so it may be useful to someone to compare it to the similar feature in C.

A quick google query says 15% of US households own a personal computer in 1989.


Okay, well, it was far more than that in the UK and Europe.

I suppose it's a bit like television, it would have been more popular where it was invented.


Around 5 million ZX Spectrums were sold between 1982 and 1992. If all were sold in the UK (they weren’t), that would put the penetration around 25% based on the number of households in 1990.


One specific model of ZX Spectrum, which is one specific make and model of home computer.

Did you live in the UK in the 1980s?


Asking chatgpt, in UK in late 80s, it would be 20-25% across all computers, depending on definition of "computer". A 1/4 of households is still high. It may have been higher in your neck of the woods.


> Did you live in the UK in the 1980s?

Yes.

> One specific model of ZX Spectrum

I do not believe this to be the case, that number appears to include the 128K and the Amstrad variants also.


Would you say the same about a 40 year old suburban USA dad who is a Walmart store manager, who served in the US army for 8 years in his twenties? Is that a "valid military target"? Can Iran drop a bomb on the Walmart that he works in?


> a 40 year old suburban USA dad who is a Walmart store manager, who served in the US army for 8 years in his twenties?

No. But if he’s still on the Army payroll, yes?


You can fact-check me on this if you want but soldiers on leave from active duty are not considered combatants and so are not supposed to be targeted.

There was a comment by an Israeli soldier way back at the start of the Gaza thing that stayed with me but I can't find it now of course. He was commenting on the tactic of bombing residential buildings at night with everyone inside asleep to get one Hamas operative. He said something along the lines "imagine if they came after us when we were at home on vacation" or something like that. I don't believe anyone thinks that's fair, or legitimate, or anything of the sort, it's just something that can be done, so it's done.

The way I understand the article above is that there's not even a clear motive anymore. The AI says "bomb them", so they're bombed, end of.


> No. But if he’s still on the Army payroll, yes?

So anyone who is collecting a military pension is a valid military target when traveling abroad and you’ll have no issues with their murder? Why am I struggling to believe you really believe that.


AFAIK terrorists dont enjoy the defenses soldiers get from the geneva convention.

And Hezbollah has consistently done worse than going after retired military men.


There is no legal definition of terrorist. As far as international law is concerned, those "terrorists" are civilians.



You might want to read that article carefully. It doesn't disprove what I said.


Like a VA pension?

But you and I both know that we live in a "rules for thee not for me" world.

The outstanding hypocrisy and lies is why they hate us and international law is a joke.


Like with a pension?


>"taken an administrative role"

Not GP, but no... a pension is not similar to an administrative role.


Wait I thought he was a city administrator?


This topic deserves so much more nuance, but it's always reduced to "barefoot running doesn't work" in internet forums. In every articles about the harm caused by barefoot running I've read, those reported injuries all end up being overuse injuries. The article you linked is specifically about bone marrow edema, which is basically bone bruise. Other possible injuries include muscle and tendon soreness.

If this were a bodybuilding discussion, you would get advice on how to manage DOMS symptoms and how to plan your loading schedule, nobody would say that weightlifting "doesn't work" because a beginner got sore after lifting a 80kg barbell for the first time. But people has been conditioned to think that running is a purely cardio activity, so we don't talk about how the muscles and tendons in the foot need to be loaded up gradually just like your bicep.

Barefoot running is a weightlifting activity. Your calf muscle has to lift your entire bodyweight for the forefoot stride. "No pain no gain" applies. Proper posture and techniques are important. Proper workout schedule and loading plan with rest days are important. Sufficient protein intake are important.


Also letting chlidren run and play barefoot actaully helps develop the foot properly which I presonally think is benificial in the long run.


no no, in the long run carbon plates are beneficial ;)


I managed to make an ESP32-controlled RC car move by sending it commands from a webapp running on my Android phone last year. I don't believe I have telekinesis magic power, so I'd rather believe that this is not in-fact iOS only.


Sorry, clarified.


To deliver very high torque, the clutch plates needs to be pressed very hard together to generate enough friction. This also means that it take a lot of force to pull them apart, if you use a simple lever, as older machines do.

Modern machines may use complex mechanical linkages to make the clutch easy to pull apart but still maintain a firm contact, but that also means higher cost and fragility. Or they use pneumatics or hydraulics to assist, sorta like power steering.


That, and design tolerances. A fancy clutch can be light and strong (think ferarri) but farm machines need to work in the dirt/rust and so need larger tolerances. So heavier springs and bigger .... Bigger everything. A slipping clutch in a Ferrari is annoying. A slipping clutch on a tractor means a missed harvest.


Plus mechanical release mechanisms of heavier machinery were often designed in a way that the clutch snaps at a certain point (also in order to reduce wear in the clutch).


Also because farm machines usually need max torque fast to break loose from static friction. You want a clutch to bite hard when pulling things through mud.


Oh yeah, just top up the compost every year. Where are you getting that compost from? Wood chips you say? You'd have to denude ten acres of forest to make enough compost to Dowding one acre of field.

He's a soil vampire, sucking in fertility from somewhere else to feed his own garden.


You have a strongly held opinion but you don't know anything about the subject.

Compost material can be easily acquired for free. Grass clippings. Wood chips from tree surgeons. They will literally drop it off on your site for free. They have truckloads to get rid of every day. Restaurants. Coffee shops if you are doing it on a smaller scale.


In my parents' farm the compost comes from cleaning up the forest around it (trim branches, vegetation, dying trees, etc) mixed with the chicken and goat manure plus whatever else gets mixed in there (food leftovers, ashes, coffee grounds, etc). Of course it's at a small-ish scale (less than 1 hectare) but my parents definitely don't denude 4 hectares to do so.


Well...we are hn so we use a website

https://getchipdrop.com/

Tree surgeons/arborists are always trying to get rid of chips

An acre? Charles Dowding is a market Gardner, not a farmer, but he has done it on a scale of a few acres.

His compost is a mixture of

1) homemade. When you are trying to expand a plot growing stuff to compost can help. Grass clippings, waste from the garden etc. This is a minor source of very good compost.

2) woodchip, see above

3) green waste. This is other people's garden waste, normally composted poorly by a local authority. You want it some time before you use it so it can compost more fully

4) farmyard/ horse manure

5) spent mushroom compost. Actually I never saw him use this, but it is very common.

One farmer I saw said the secret of no till is 'other peoples carbon', you are correct. But some people have carbon to get rid of.


Windows has like 5 UI kits concurrently built into it. It very well be that one UI kit PM is promoting react native to attack another UI kit team.


Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: