Commonly (since ca. 19th century), shrank is used as the past tense of shrink, shrunk as the past particle, and shrunken as an adjective. The title of the linked article uses "shrunk" as past tense and the submitted title was changed to "shrunked" for some reason. "Shranked" was not mentioned anywhere. (But "shrinked" has had some use in the past.)
Yeah, this sounds like a classic Irish solution. It's hard to see any light at the end of the tunnel here between the shortfall, cost and availability of labour and materials, and so on. To paraphrase what someone once said on this site — housing as an investment or a human right, choose one.
I bought a house in Cork city six years ago, paid more than I hoped because it's quite the fixer upper — we've done almost nothing and "the market" suggests that its value has increased about 50% since. Which is meaningless to me but means a lot to many people I know who can no longer afford a buy a home.
I somehow managed to lose money because I'm an idiot. I bought a thatched house in Offaly in 2019. Then I lost insurance (like many other thatched home owners in Ireland since the last insurer stopped writing policies) and the house became uninsurable and unmortgageable. Took a huge loss on it and moved to the Netherlands, where it's still possible to get insurance on thatched homes (though I sure as hell will never have one again).
I'm literally buying an overpriced apartment in the Netherlands right now because I know that the population is only going to keep growing while housing supply will stay limited, so if I keep it 20 years and sell then, I'm going to be fucking rich and I'll just retire to a small town in a poor country with fast internet. The fact that I'm massively overpaying right now doesn't matter.
No, I bought the place cash, but it meant any subsequent buyers couldn't get a mortgage. What you're describing has in fact been a huge problem for other people with thatched roofs in Ireland.
As an Irish person from Cork, I'm a bit embarrassed I've never heard of him until now.
That said we're probably not great at acknowledging historical figures in the field. George Boole's house is three minutes' walk from my house and it's basically derelict (and was literally falling down at one point). It would be a wonderful building for a museum of his life and achievements.
To be fair, figures like Boole and Hamilton are very much celebrated within Irish academia. And it's not a new thing. I attended a conference on the legacy of Boole in 1995: https://www.maths.tcd.ie/pub/ims/bull33/bull33_3-3.pdf
Ludgate is a more marginal case because his invention didn't come to fruition. There is a bit of a sense in which he is being celebrated/hyped in a silly superficial ("collectively narcissistic") way intended to bolster self-esteem for Irish technical people. https://ingeniousireland.ie/2012/10/1909-a-novel-irish-compu...
I heard of him as Computer Science in TCD awards - or used to award - a prize for the best 4th year project called the Ludgate prize.
The problem is that he left no written body of work. I recall reading of a researcher who contacted his surviving relatives to enquire about any notes or materials he had left after his death but nothing had been preserved - I guess as his work was viewed as completely obscure at the time and he had achieved little recognition for it during his life. As far as I know what little we know of his proposed machine involves guesswork from very little material.
I've never heard of him until I took a trip to Dublin, and happened to stroll around random neighborhoods until I saw a plaque on a house celebrating his achievement!
Make a ordered_bag ets table and try to insert several thousand records in one ets call. It will block whole VM (spinning one core at 100%, doesn't matter how many you have) for several seconds. It does this because ordered bag needs to find each key in table as it inserts it, resulting in n^2 complexity and this needs to be done atomically. So for 1 000 keys you have 1 000 000 comparisons during a VM-wide lock. Solution - don't insert so many records in one call into ets table.
I’m more curious to understand how userspace threads can be preemptive. :)
I can think of a few ways:
- The VM just doesn’t JIT and can decide to stop executing a thread by just not interpreting the next piece of bytecode and switching to another green thread instead (this would be pretty slow due to the lack of JIT)
- The VM JITs, but inserts a preamble before every function call saying “Before executing this function, should I switch to another green thread first?”, and thus, so long as you call functions frequently enough, you “preempt” yourself. This is how Go does it, and it’s a well known thing in Go that if you never call a function for a while (like just doing a really huge for loop), the current goroutine doesn’t yield execution and hogs the whole OS thread.
> - The VM JITs, but inserts a preamble before every function call saying “Before executing this function, should I switch to another green thread first?”, and thus, so long as you call functions frequently enough, you “preempt” yourself. This is how Go does it, and it’s a well known thing in Go that if you never call a function for a while (like just doing a really huge for loop), the current goroutine doesn’t yield execution and hogs the whole OS thread.
I'm not sure of the implementation details, but this hasn't been true for a while in Go. As of Go 1.14, goroutines are asynchronously preemptible, so loops without function calls no longer deadlock the scheduler or GC: https://go.dev/doc/go1.14#runtime
The docs there hint at how it’s done in go and how it could be done in erlang: the runtime monitors how long a given goroutine has been running without yielding the scheduler, and uses a signal handler to interrupt code that has exceeded a 10ms quota of continuous usage.
In principle you can also set a timer that raises a signal and then switch to a different coroutine when it fires. But it is a big can of worms and won't perform great.
IIRC the Erlang VM does the second (schedule on function call). Since Erlang is a functional language and loops are done via recursion, this works out fine.
Yes, on every function call, also some internal functions implemented in native code are instrumented with those checks. On average thread is switched out after about 2000 "reductions" as they are called. Also there's an optimization, where if you send something to another thread and you are waiting for reply, VM switches instantly to the other thread, which makes some message sending equivalent to a simple function call.
Swedish has a long history of importing words from French (as do many other European languages for obvious historical reasons), so I’m quite sure this is indeed the origin of the word.
What usually happened though was that after importing the word, it (sometimes) got a new spelling more compatible with Swedish phonetics. Other examples of this include Swedish “trottoar” (fr: “trottoir”)
A lot of Swedish words that end in -oar (like “reservoar”, “memoar” etc) are all french import originally ending in -oir, so if you start digging into words ending with -uar in Romanian you’ll probably find more :-)
I've sometimes wondered if I am the only person who actually likes the syntax :D There's a reason for it, but additionally, I like the fact that it's explicit — I can look at `some_call.()` and specifically know it's an anonymous function.
I like barewords in Ruby but they don't hold the same value for me in Elixir. In Ruby I was trying to write code in a way where it didn't matter all that much where stuff was coming from. In Elixir I want to know exactly where stuff is coming from and what it is (like how we generally don't `import Enum` or the like).
Not to say you shouldn't like barewords! It is nice that Elixir enables that possibility for those who want it!
I'm repeating myself from another thread but ah well! It has that nice parallel to Erlang too where the calls look distinct: `f()` for function call, `F()` for anonymous function call! All that to say that I agree and I also like the dot syntax :)
Very interesting! Many poor people in Ireland emigrated or were sent to the new world too. The rhotic "r" is prevalent in the Irish language, and it is a distinct characteristic of the sound of Hiberno-English (and other accents with a Celtic influence of course).
There's a cool video on YT called "A London Accent from the 14th to the 21st Centuries"[1] — I'm sure it's not meant to be definitive, but it's very interesting to note the presence or absence of the rhotic "r" during different periods.
--
Speaking of the New World — this is something of a side topic, but I think it's fascinating that "caulk" is commonly used in the U.S. and Canada; e.g: bathroom tiling. In my experience at least, you wouldn't really hear someone use the word in that context in the U.K. or Ireland. Most people I've asked associate it exclusively with boats.
I have a speculative pet theory on this — originally, caulk specifically referred to the materials used to fill the gaps between boards in a wooden ship.
Since practically everyone who originally came to the New World came on old wooden ships, it's not hard to imagine that "caulk" — once specific to ship building and maintenance — became well known to emigrant populations and took on a broader meaning over time.
In contrast, it's likely very few people who remained in the Old World at that time were ever in a wooden ship, and "caulk" remained less well known and retained its specific meaning.
Absolutely. Apparently, the amount of trade between Ireland and the UK has collapsed since Brexit, and it's not hard to imagine why — given that both countries have long been close trading partners, and now ordering from the UK is going to come with a raft of customs charges and often VAT etc. Doesn't even matter if it's some second hand item from eBay or whatever.
This pretty much rules out buying anything from the UK for me, something I and many others I know would have done without much thought. It's really frustrating because you'll often find UK vendors are better stocked and have (or at least had) better prices.
I can only imagine this has hit UK based sellers pretty hard. And vice versa — perhaps more so. Brexit is a poke in Ireland's eye too, frankly.
This surely cannot be correct. Even the title of the linked article doesn't use "shranked". What?