Go CSP is minimal and ortongonal, I just wish it did three things:
0. could lto optimize or link against a shared library to reduce the titanic size of compiled programs and cut down on duplication of instruction. Therue is no practical sense in wasting memory and storage on systems with dynamic linkers: edge cases of including the world for rare situations but YAGNI in real production systems.
1. could output flat binaries and self-host runtime (panics) for practical kernel development in Go
2. Generics (both types and immutable constraints), I think C++1z has the right approach to this (and constexpr and constant arrays are nice and are able to provide more hints to the compiler).
I also wonder why Go wasnt developed as an IR compiler / llvm frontend, because it would've levered an existing debug and portability ecosystem with much less work.
0. It does dynamic linking on most stdlibs (libc, etc)
1. What do you mean self-hosted runtime? Anyways, golang will likely never be a good candidate for kernel development, but in theory you could do it (go supports assembly)
2. Generics would be nice. Who knows, maybe they'll be in 2.0?
Go wasn't developed in llvm, because they wanted to build something very fast, and they were planning on writing the compiler in golang from the start (so that it could be part of the libs). Also having your own scheduler kind of breaks debugging, you can build go programs with gccgo, but gdb doesn't work because it has no concept of what a "go routine" is. Delve (https://github.com/derekparker/delve) will eventually fill the hole of the missing debugger, imo.
> What do you mean self-hosted runtime? Anyways, golang will likely never be a good candidate for kernel development, but in theory you could do it (go supports assembly)
Oberon, AOS, EthOS, Singularity and Midori projects prove otherwise.
Go just needs an OS research PhD student proposing "Goberon" to their tutor.
> 2. Generics would be nice. Who knows, maybe they'll be in 2.0?
There will be no 2.0 and there will be no generics, at all.In fact there will never be any changes to the type system, cause it's impossible at this point.
Not that I even care that much, but that's total crap. Compile-time generics, which is what most people seem to be referring to when they say they want generics in Go, are eminently doable. It would not be hard to implement. Runtime generics are probably possible as well.
What are you even basing your assertion on?
Edit:
What do you mean, "there will never be a 2.0"? Do you have a crystal ball?
The issues list has a bunch of breaking changes they've put off to Go2. It won't come soon, but probably at some point they will produce a Go2, if only to fix a few small annoyances and things they got wrong in the stdlib which would otherwise break the Go1 pledge. Of course, that doesn't mean Go2 will introduce lots of huge changes to the language, I doubt very much it would, but it probably will happen sometime.
As another datapoint, here are the answers of the team to a question on what they dislike about Go1. These are mostly breaking changes which would require a Go2. I don't think anyone is hostile to it long-term, they're just not in a hurry. There is a huge value to developers in not having churn in an ecosystem and breaking changes, I and many others really value that and am pleased they take this approach.
So I think you've misinterpreted the above statement, it was probably an off hand remark in response to proposals for Go1 which would have radically altered the language (I can find no ref to it on the web, 0 results for that phrase).
Like Malcolm Gladwell, Jared Diamond is very skilled at weaving a narrative that offers "aha" insight, however, it seems to come at the expense of cherry picking facts and events from history.
Also helps that they have been interbred with domesticated cattle, and we have tons of tools to do it. Good luck rounding up Bison with just primitive tools.
That's not going to domesticate them. You need to put them into a fenced in area for long periods of time, and control the population. Selecting the ones that are the tamest around humans, and killing the ones that are the most aggressive or uncontrollable.
The indians could not have accomplished this (easily.)
It's not like the cows weren't domesticated from something similar to a bison (https://en.wikipedia.org/wiki/Aurochs). Bulls are still be very violent animals. That video also forgets alpacas.
File a patent on the generic supposed protection of intellectual, design and creative ideas to overworked, inconsisent and vague government entity that are then hoarded by lawyers with lots of money whom frequently visit Texas. Maybe that would wake up some folks to the fact that their ostensible protection process is right now a protection racket.
"OpenZFS" actually means ZoL, the only way to legally ship meant dkms until now, unless there has been CDDL/GPL reinterpretation, a different codebase or agreement with Redwood Shores. The three concerns are stability (battle tested in production at scale, not just some home torrent servers), performance (which wasnt yet up to other production fses) and lawsuits from the Emerald Kingdom.
If it works, great, but there's been ppas for ZoL and the docker zfs backed for a while (we've tested it but decided to go with whats faster and more supportable).
I guess this also means ZoL may be able to drop dkms after they consult their own lawyers, because I'm not entirely convinced Canoncial has this right.
Edit: confirmed this is actually CDDL ZoL code linked as modules, so perhaps Canonical lawyers reinterpreted zfs and spl binary modules shipped to users are still not part of the kernel to be copacetic. http://packages.ubuntu.com/xenial/zfsutils-linux
Most previous jailbreaks required an unlocked device with passcode disabled and find my iphone turned off (because passcode encrypts things).
I'm still waiting for JB for 9.2.1 or 9.3 when released but there are already semijailbreaks (browser based installs a temporary app) and some unreleased PoCs, but Cydia MobileSubstrate and other tools need to be ported / verified too.
Perhaps if Apple allowed the devices to be officially customer hackable (like flux, springboard replacements, transmission, 3G unrestrictor and changing fonts), there would be less need to develop exploits... Unfortunately, there is great demand from governments to buy exploits and keep those secret (not a conspiracy but tools in a market)
Tim Cook: a really nice guy with blue whale-sized cohones.
There can be no compromise because China, Syria and Turkey would also lean on Apple to break into phones of dissidents, and pretty soon, future whistleblowers here in US too in order to prevent leaks (iPhone 7 and iCar notwithstanding).
That's the tradeoff in not giving in to faint, vague "maybes" that there were "external coordination" when in all likihood it was the ultraconservative, Saudi half leading this duo into the kookooland of violent extremism.
The security services will just have to buy exploits, develop malware, cultivate human intelligence sources and monitor everything the old-fashioned way... It's not like that kid in a YouTube video finding a jailbreak exploit for an iPhone and not releasing a tool is going to sit on it, he's going to auction it off to the shop or country with the most $$$.
> Tim Cook: a really nice guy with blue whale-sized cohones.
... backed by a company that at one point literally had more cash than the US government. A company with a strong, expansive, and experienced legal team. He's not a small fish; he's a major captain of industry and has a lot of political clout. I mean, good on him for his standing on this issue, but he wields a lot of power here.
Controllers are important for being gatekeepers, which can be adjusted (think middlewares which add security, logging or other changes uniformly) and inspected outside of the MVC code, and separates outside from inside.
It might be worth the tradeoff in the short-term, but it's the lifecycle TCO of code counting support and modifications over many projects which will validate or invalidate a particular approach (there is also a cost in terms of hiring and learning curve for inventing an alternate convention).
It's still at the mercy of Apple, Intel and all the other opaque firmware vendors and microcode updates. Plus, it's not nearly UNIX enough, the damn linker doesnt do linker scripts so good luck developing non-xnu kernels without compiling under something else. And the sources aren't always released in a timely manner. Why is Apple still not open sourcing more of the OS?
In the future, I'd like to be able to choose a design of laptop or tablet online, modify it, choose an open cpu core and so on and create an entire, beautiful computer at home. Not everyone will want to do that, but I think enough people will realize open source hw is the future especially in terms of supply-chain security and reducing or adding features. (More broadly: How cool would it be to have company-specific devices, designed and built just for them?)
I like and use Apple gear but I dont like untinkerable black boxes or opaque firmwares.
I think we need a beautiful, functional servers,computer, handheld and wearables with opensource desktop lithography and 3d material deposition. It would take about $20 million and the right people to get going, but it could be hw UNIX -> Linux.
Isn't the bigger issues China's structural draconian limits to freer movement of capital, external investment, the imaginary/real value of ghost cities and scale of holding illiquid foreign debt?
1. Freer movement of capital. This is a false herring in my opinion. Virtually no countries outside the US/EU offer completely free movement of money. The thing that matters is whether this prevents foreign capital investment (because people are scared of not being able to get their money back). In China, I don't think it does based on the last few decades of foreign investment.
2. External investment. As above, I don't think people are discouraged by the rules. Yes, you have to make a 50% joint venture, bribe government officials, share technology, have no copyright/IP protection, and risk your partner entering the market as a competitor once they learn your business (see Asus). But, you can still make so much money that it's probably worth it (or so American corporations seem to believe).
3. Ghost cities. I don't know much about this one honestly. I've been hearing about this since 2009, but consider that China is increasing their urbanization rate by 1 percentage point per year (~10M people/yr). If I were asked to manage that as a central planner, having excess inventory of housing would be critical to prevent slowdowns and allowing for some burstiness. Yeah, there's probably ghost cities, but how long do they remain before becoming occupied. Are the same cities hanging around forever (and people complaining about them forever), or is it new stock every year?
4. Illiquid foreign debt. Most of China's debt is in two categories: 1) Popular debt (US/EU) or 2) strategically important countries. For (1), there's likely some market. You're right that they can't sell too much, but they've already notified the world that they will begin selling their holdings over the next decade and since central banks in the western world are trying to increase the reserve interest rate there should be people willing to buy this stuff (or the government can buy it and reissue at a higher interest rate to make people want it). For (2), don't think of it as debt, but operating expense, never to be recovered.
> In addition, it doesn't seem like this rate is accelerating (since 2009), but linearly increasing.
That is the overall percentage of bad debt increasing linearly, meaning accumulation of bad debt is accelerating faster than growth of "good" debt. This was also the case in the US mortgage crisis.
From this comment
1) It would be less of a concern if China had less liquidity while Chinese companies were also getting less access to liquidity. Shadow lending from wealth management product (WMPs) is a massive structural issue for the Chinese economy. When the underlying assets fail, you have a recession. It also means a centralized economy with lots of the downsides (bribes, joint ventures, etc.) but without the control.
2) American corporations believe there is tons of money to be made, but not many have been successful. In the event of a Chinese recession, those experiments will be vastly drawn back when Chinese consumers become pessimistic. In the event of an American correction, they'll pull back to invest in proven markets.
3) I haven't seen evidence that these ghost cities are the result of central planners building slack for expected growth.
4) Internal private debt (see 1) is a much larger problem. Most of that is owned by the central government, which means either a bailout when companies fail, continued lending until a bailout, or letting their economy correct.
Linearly increasing: True. I misread the axis. It still doesn't seem to have the form of something in a bubble or clearly unsustainable.
1. That's a fair point. But I suspect this has more to do with less developed capital markets in China than systematic weakness. I wonder if local supply of capital will be able to step up in the next American recession.
2. I think many have been successful in lowering their manufacturing costs. Not sure how an American correction would affect the Chinese economy.
3. Fair.
4. I'm generally skeptical of this argument. US corporations and households have maintained a high level of debt for more than 50 years without significant effect. I guess the Federal gov hasn't been the holder of that debt, but it actually seems better that way because they have the ability to print cash and add a stabilizing effect.
I guess my point is that none of these individually seem extreme enough to cause a problem. Maybe in aggregate there could be a storm.
Interesting point on (1). I wonder if that could trigger relaxed repatriation taxes for corporations in the US. Bringing a few hundred billion home would be great in a liquidity crisis.
I wasn't thinking of (2) that way, but in that case you're right that southeast asian competition is a bigger factor. If cheap manufacturing leaves, China would need to shift to consumer growth, which American companies thus far haven't really cracked (except Apple to an underwhelming degree.)
An interesting aside on (2) would be if a trade-protectionist president is elected in the US. This would re-prioritize from cheap manufacturing overseas to better jobs at home—triggering or accelerating what you were talking about. The New Yorker had a great piece today on how both Sanders and Trump are of that mindset.[1]
(4) might be a case of six in one hand, half dozen in the other. Turned out that the US government did (indirectly) hold all that mortgage debt when it bailed out the banks. That said, it looks better externally to institute QE to bailout companies who backed bad debt than to print money to pay off your own debt.
Either way, I'm not sure we are or aren't at a crisis yet, but they also haven't fixed some basic structural problems.
>I haven't seen evidence that these ghost cities are the result of central planners building slack for expected growth.
I think this reveals some bias. The evidence is the cities themselves. Or do you think that it's central planners merely trying to improve GDP numbers, but completely oblivious to the fact that Chinese citizens are urbanizing at a scale not seen before in human history?
If you are talking about Ordos New Town, it is local governments and tycoons trying to do something with their coal money. This isn't really central planning, more like investment options suck, and we can't just park our money in the bank, so let's build a city in the middle of nowhere! Ordos is filling up slowly, but it's clear at this point that many of the buildings will be torn down before they are ever occupied (Chinese constructed buildings only last around 20-30 year before they are completely derelict).
China is urbanizing, but it is not clear those poor farmers can afford the $200k+ apartments being built...even if they come down by half or more. Not only that, but these farmers can't even get hukou, making them second class citizens in the cities they might move to, ineligible for schooling for their kids or even subsidized healthcare. China needs to do a lot of reforming before this massive urbanization can happen, and they haven't really prepared for it (e.g. By focusing on luxury apartments vs. mass social housing with schools and hospitals enough to give those farmers proper urban hukou).
Finally, farmers can't even sell their land to buy an urban apartment. Instead, they have to wait for it to be appropriated by the local government (if near a growing urban area) or otherwise, they are just SOL. It really is quite a mess.
Exactly. Wealth transfer and mobility for some, but not growing a middle class sufficiently to realize these artificial investments. China could invest more in better equiping people to make and earn more value, so they can afford cleaner/nicer cars, homes, factories, etc.
>Yes, you have to make a 50% joint venture, bribe government officials, share technology, have no copyright/IP protection, and risk your partner entering the market as a competitor once they learn your business (see Asus). But, you can still make so much money that it's probably worth it (or so American corporations seem to believe).
All legitimate companies have strong rules against bribing officials, and it's illegal, so don't expect the company to have your back if you get caught.
The ghost cities are indeed filling up, at least last time I read about it. You'll probably still have problems with misplaced building sprees when you build at that scale, no matter what. But it doesn't seem like a real crisis
Isnt there an entire replica of Paris with barely 1k people?
How can value be justified with whole half-finished cities with no customers?
Sounds like deferring a real-estate crash is only making a future event even more painful when that paper value evaporates and takes real comparables along with them.
>>Are the same cities hanging around forever (and people complaining about them forever), or is it new stock every year?
I guess, googling "ghost cities in China" may bring out many interesting statistics about this. From the top links you get there one can fairly say that the "ghost cities" are in reality a biggish problem.
Of course, we cannot get more complete picture just from these sites, but that is true for any communist regime: they will never allow any independent market study to happen in the first place.
I think the bigger issue is that China faces labor competition on the lower end of the unskilled market from South East Asia and India and is trying to enter the lower end of the skilled labor market but finding out that the Americans, Europeans, and Israelis are fairly competitive.
I'm generalizing and neither list of countries is exhaustive.
China is miles ahead of South East Asia and much of India. Chinese tourists go to places like Vietnam and are seen as wealthy and sophisticated by the locals. From the Western perspective it may seem like China, SEA and India are on a level playing field but that is far from the truth.
Bangkok is a much more cosmopolitan city than Beijing or even Shanghai. I get the feeling that Thailand is a bit richer than China per capita. That's about it though.
0. could lto optimize or link against a shared library to reduce the titanic size of compiled programs and cut down on duplication of instruction. Therue is no practical sense in wasting memory and storage on systems with dynamic linkers: edge cases of including the world for rare situations but YAGNI in real production systems.
1. could output flat binaries and self-host runtime (panics) for practical kernel development in Go
2. Generics (both types and immutable constraints), I think C++1z has the right approach to this (and constexpr and constant arrays are nice and are able to provide more hints to the compiler).
I also wonder why Go wasnt developed as an IR compiler / llvm frontend, because it would've levered an existing debug and portability ecosystem with much less work.