6 ms·
This blog reminds me of something John Carmack calls architecture astronauts. It talks about "glue" / connectors integrated with a programming language, which a
by GuestHNUser 5y ago
This blog reminds me of something John Carmack calls architecture astronauts. It talks about "glue" / connectors integrated with a programming language, which at a high level, sounds really nice. But I am skeptical of how well one could implement it in practice. Interoperating is far from standardized and I definitely want concrete examples illustrating what "Architecture Oriented" is in code and not theory. I hope there is a part two for this.
- mpweiher 5y agoFunny, I call it "architecture without the astronautics", because you get to express architecture in a very simple and straightforward manner. http://objective.st/ http://objective.st/ Sample scripts: https://github.com/mpw/Objective-Smalltalk/tree/master/scripts/ https://github.com/mpw/Objective-Smalltalk/tree/master/scrip...
- xvedejas 5y ago> Objective-S is the first general purpose programming language. You should consider removing this claim, since it is a flat-out lie, or at least a willful disregard for the language that other people use. If you want to communicate what is novel about this programming language, you need to remove this. It heavily detracts from the architectural mechanisms that you start to explain on the "About" page (http://objective.st/About http://objective.st/About) which seems to be the actual meat, where you could flesh out further explanation.
- mpweiher 5y agoIt's not a lie, though it obviously is controversial. The languages we call "general purpose" are nothing of the sort. They are Domain Specific Languages for the domain of algorithms. We press them into service for all sorts of things they aren't actually very good at, hence the problems. We do so because we don't have any alternatives. Took me a long time to figure this out. And an much longer time to communicate it concisely. So yes, I can deal with it not being immediately obvious.
- w-j-w 5y ago
- lvncelot 5y agoJust my opinion: this sentence really does you no favors. I read it, then re-read it because I wasn't sure whether I missed a word, and then I closed the tab, because writing something like this seems incredibly dishonest.
- srcreigh 5y agoHow does all this relate to algorithm theory, Turing Completeness, turing machines, etc?
- mpweiher 5y agoIt doesn't.
- srcreigh 5y agoFair enough. I respect that. I always thought CS theory misses out on the more interesting area of computation. As if algorithms are just one "dumb" way to map the giant reality of creative potential into itself. Practically speaking it often fails to do that, despite our theoretical understanding... Even though your language may be "turing complete" like other "general purpose" languages in theory, if it elicits more interesting algorithms and creative expression, I do kinda get your point.
- xvedejas 5y agoCommunicating badly and then acting smug when you're misunderstood is not cleverness.
- mpweiher 5y agoNeither is incorrectly accusing someone of lying and then, after being corrected, doubling down instead of apologising. ¯\_(ツ)_/¯
- agumonkey 5y agohere's the pdf mentioned in the influences https://resources.sei.cmu.edu/asset_files/TechnicalReport/1994_005_001_16277.pdf https://resources.sei.cmu.edu/asset_files/TechnicalReport/19...
- mbrodersen 5y agoI don’t see anything Objective-S can do that any other general purpose programming language can’t do. What am I missing?
- mpweiher 5y agoThere are any number of DSLs that are Turing-complete...
- mbrodersen 5y agoTrue. That doesn’t answer my question though. Can you give an example of a practical problem you can solve in Objective-S that you can’t solve in (say) C++?
- mpweiher 5y agoYes it does answer your question. 1. Anything that can be solved in any one Turing-complete language can be solved in any other Turing-complete language. 2. Both of these are Turing-complete languages, so obviously anything that can be solved in one can be solved in the other. 3. Lots of domain-specific languages are also Turing-complete, so anything that can be solved in C++ or Objective-S can be solved in them and vice versa. 4. It thus follows that (a) "can be solved" vs. "cannot be solved" is not a useful criterion for distinguishing between Turing-complete languages. Or that (b) there are no relevant differences between Turing-complete languages. 5. My money is on 4a.
- mbrodersen 5y agoOK so the claim that Objective-S is more general purpose than other languages is wrong then. Thanks for clarifying that.
- mpweiher 5y agoNo it isn't. I could just re-post the post you replied to, as it is explained there, but that probably won't help at this point... ¯\_(ツ)_/¯
- cpeterso 5y agobtw, I believe the term "architecture astronauts" was coined by Joel Spolsky in 2001 or earlier: https://www.joelonsoftware.com/2001/04/21/dont-let-architecture-astronauts-scare-you/ https://www.joelonsoftware.com/2001/04/21/dont-let-architect...