11 ms·
Mostly dead influential programming languages (2020)
- Rochus 1y agoHow can COBOL be a "dead" or "mostly dead" language if it still handles over 70% of global business transactions (with ~800 billion lines of code and still growing). See e.g. https://markets.businessinsider.com/news/stocks/cobol-market-shown-to-be-three-times-larger-than-previously-estimated-in-new-independent-survey-1031162633 https://markets.businessinsider.com/news/stocks/cobol-market....
- deleted 1y ago[deleted]
- _mlbt 1y agoBASIC is the scripting language used by Microsoft Office. Saying that it powers millions of businesses is probably not an exaggeration. Pascal, particularly the Delphi/Object Pascal flavor, is also still in widespread use today.
- Rochus 1y agoAlso Smalltalk is still in wide use; ML is also used; there are even many PL/I applications in use today and IBM continues to give support.
- fuzztester 1y agoI don't know, I heard somewhere that even the C language is in wide use, still ... ;)
- ranger_danger 1y agoMaybe their definition uses recent popularity or how many new projects are started with it. Under that definition, I think it's pretty safe to call it "dead".
- Rochus 1y agoIf you redefine language, anything is possible.
- pessimizer 1y agoYes. "Dead" normally means "to be devoid of life," but it's often extended to metaphorically cover things like computer languages. edit: for ancient Greek to become a dead language, will we be required to burn all of the books that were written in it, or can we just settle for not writing any new ones?
- eviks 1y agoFor ancient Greek all you need is no one speaking it (using it in real life) Same with a programming language - is no one is wiring code in it, it's dead
- duskwuff 1y agoNo one's starting new projects in COBOL.
- Rochus 1y agoOne of the most significant new COBOL projects in 2025 was the integration of a new COBOL front-end into the GNU Compiler Collection. There are indeed quite many new projects being started in COBOL, though they primarily focus on modernization and integration with contemporary technologies rather than traditional greenfield development. Also not forget some cloud providers now offer "COBOL as a service" (see e.g. https://docs.aws.amazon.com/m2/latest/userguide/what-is-m2.html https://docs.aws.amazon.com/m2/latest/userguide/what-is-m2.h...).
- iLoveOncall 1y ago> There are indeed quite many new projects being started in COBOL No. You have to put this relative to projects started in other languages, at which points new projects started in COBOL is even less than a rounding error, it probably wouldn't result in anything other than 0 with a float.
- Rochus 1y agoThe claim was "No one's starting new projects in COBOL."
- iLoveOncall 1y agoAnd everyone of good faith understood what the claim actually was.
- Rochus 1y agoAnd everyone with relevant fintech project experience knows that new projects on the existing core banking systems are started all the time and that COBOL continues to be a relevant language (whether we like it or not).
- alwinw 1y agoInteresting read, and would have been good to see the author’s definition of ‘mostly dead’. Some are still used widely in niche areas like COBOL for banking. If a language itself isn’t receiving any updates nor are new packages being developed by users, is it mostly dead?
- Rochus 1y agoIn any case, the author claims that each of these languages is "dead". There is a "Cause of Death" section for each language, which doesn't allow for another conclusion. By listing languages like ALGOL, APL, CLU, or Simula, the author implies that he means by "dead" "no longer in practical use, or just as an academic/historic curiosity". The article contradicts itself by listing languages like COBOL, BASIC, PL/I, Smalltalk, Pascal, or ML, for which there is still significant practical use, even with investments for new features and continuation of the language and its applications. The article actually disqualifies by listing COBOL or Pascal as "mostly dead", because there is still a large market and significant investment in these languages (companies such as Microfocus and Embarcadero make good money from them). It is misleading and unscientific to equate “no longer mainstream” with “no longer in use.” This makes the article seem arbitrary, poorly researched, and the author not credible.
- addaon 1y agoSeeing Smalltalk on these lists and not Self always seems... lacking. Besides its direct influence on Smalltalk, and its impact on JIT research, its prototype-based object system lead to Javascript's object model as well.
- joshmarinacci 1y agoSelf was influenced by Smalltalk, not the other way around. Smalltalk was developed in the 1970s. Self in the 1980s.
- addaon 1y agoThanks for the correction.
- vincent-manis 1y agoThere is one very BIG thing that Cobol pioneered: the requirement that not only the programs, but also the data, must be portable across machines. At a time when machines used different character codes, let alone different numeric formats, Cobol was designed to vastly reduce (though it did not completely eliminate) portability woes. We take this for granted now, but at the time it was revolutionary. In part, we've done things like mandating Unicode and IEEE 754, but nowadays most of our languages also encourage portability. We think very little of moving an application from Windows on x86_64 to Linux on ARMv8 (apart from the GUI mess), but back when Cobol was being created, you normally threw your programs away (“reprogramming”) when you went to a new machine. I haven't used Cobol in anger in 50 years (40 years since I even taught it), but for that emphasis on portability, I am very grateful.
- froh 1y agothe other big cobol feature is high precision (i.e. many digest) fixed point arithmetic. not loosing pennies on large sums, and additionally with well defined arithmetics, portably so as you point out, is a killer feature in finance. you need special custom numerical types to come even close in, say, java or C++ or any other language.
- fuzztester 1y ago>the other big cobol feature is high precision (i.e. many digest) fixed point arithmetic. not loosing pennies on large sums, and additionally with well defined arithmetics, portably so as you point out, is a killer feature in finance. I guess you mean: >digest -> digits >loosing -> losing Is that the same as BCD? Binary Coded Decimal. IIRC, Turbo Pascal had that as an option, or maybe I am thinking of something else, sorry, it's many years ago.
- imoverclocked 1y agoBinary Coded Decimal is something else. 1100 in “regular” binary is 12 in decimal. 0001 0010 in BCD is 12 in decimal. ie: bcd is an encoding. High precision numbers are more akin to the decimal data type in SQL or maybe bignum in some popular languages. It is different from (say) float in that you are not losing information in the least significant digits. You could represent high precision numbers in BCD or regular binary… or little endian binary… or trinary, I suppose.
- ameliaquining 1y agoPreviously: https://news.ycombinator.com/item?id=22690229 https://news.ycombinator.com/item?id=22690229 (There are a few other threads with a smaller number of comments.)
- mud_dauber 1y agoKinda surprised to not see Forth listed.
- drweevil 1y agoOr Lisp. Lisp is definitely not dead, but was definitely very influential.
- deleted 1y ago[deleted]
- tempaway43563 1y agoThe article does touch on that: "COBOL was one of the four “mother” languages, along with ALGOL, FORTRAN, and LISP."
- bitwize 1y agoImho Lisp is deader than COBOL. Especially now that we've learned you can do the really hard and interesting bits of AI with high-performance number crunching in C++ and CUDA.
- kstrauser 1y agoI wrote Lisp this morning to make Emacs do a thing. In other venues, people use Lisp to script AutoCAD. Lisp isn't as widely used as, say, Python, but it's still something a lot of people touch every single day.
- lucasoshiro 1y agoAnd Clojure
- duskwuff 1y agoForth was neat, but it was a bit of an evolutionary dead end. I'm not aware of any significant concepts from Forth which were adopted by other, later programming languages.
- usgroup 1y agoI was almost sure that Prolog would be on the list, but apparently not.
- coredog64 1y agoBecause it's dead or because it's influential?
- usgroup 1y agoIt was very influential and had all kinds of interesting stories (e.g. https://en.wikipedia.org/wiki/Fifth_Generation_Computer_Systems https://en.wikipedia.org/wiki/Fifth_Generation_Computer_Syst...). I'm not sure what qualifies as dead. Prolog is still around although as a small and specific community, perhaps comparable in size to the APL community at least within an order of magnitude.
- Iwan-Zotow 1y agoand Refal
- DrNosferatu 1y agoThe (literal) first and foremost ASCII descendant of APL was MATLAB. I feel that the article should have made this a lot more clear - as so many people code along the APL -> Matlab / R (via S) -> NumPy family tree.
- ansgri 1y agoR/S is also heavily influenced by Lisp. Haven’t written it in 10 years, but AFAIR it even has proper macros where argument expressions are passed without evaluation.
- bradrn 1y agoTechnically those aren’t macros; they’re what the Lisp world calls ‘fexprs’.
- xmcqdpt2 1y agoDidn't they take their array programming from Fortran? The Fortran, numpy and matlab array syntaxes are basically identical, down to broadcasting and reduction rules.
- ck45 1y agoModula-3 should be on that list as well. Unfortunately pretty dead (compiler support is rather abysmal), though pretty influential. Wikipedia lists a couple of languages that it influenced, I think it should also include Go (though Go is allegedly influenced by Modula-2, according to its wikipedia article)
- jasperry 1y agoOkay, I'll bite. ML did not mostly die, it morphed into two main dialects, SML and OCaml. OCaml is still going strong, and it's debatable whether SML is mostly dead. My main beef, however, is that the last sentence in the section seems to suggest that the birth of Haskell killed SML on the vine because suddenly everybody only wanted pure, lazy FP. That's just wrong. The reality is that these two branches of Functional Programming (strict/impure and lazy/pure) have continued to evolve together to the present day.
- dboreham 1y agoIsn't F# ML-influenced?
- bgr-co 1y agoF# used to be OCaml.NET AFAIK
- kqr 1y agoNot quite. They explicitly drew a lot of inspiration from OCaml, but they never intended it to be an OCaml compiler for .NET. F# was – from the start – a functional language designed specifically for the .NET Framework Common Language Runtime. Whenever OCaml and CLR diverged in how they did things, they went the CLR route. (See e.g. https://entropicthoughts.com/dotnet-on-non-windows-platforms-brief-historic-summary https://entropicthoughts.com/dotnet-on-non-windows-platforms... for more information, or the Don Syme history of F#.)
- tialaramex 1y agoI have a colleague who is very good with C# and F#. We use a lot of C# for work, and for him F# is just a hobby (he has a math background). Because Rust is basically an ML dressed up to look like a semicolon language, and I know I grokked Rust almost immediately with an academic background in SML/NJ and decades of experience writing C, my guess is that this colleague would pick up Rust very easily, but I can't confirm that. Every Xmas when people are picking up new languages for Advent of Code (which like me he does most years) I wonder if he'll pick Rust and go "Oh, that's nice" - I was going to write a relatively contemporary spoiler here but instead let's say - it's like watching a Outer Wilds player staring at the starting night sky for their fifth or hundredth time wondering if they're about to say "Oh! Why is that different each time?". No. Maybe next time?
- Jimmc414 1y agoCOBOL - “mostly dead” but still somehow the backbone of the global financial system
- deleted 1y ago[deleted]
- deleted 1y ago[deleted]
- waldopat 1y agoOne day Perl will be on this list
- Qem 1y agoIf we assume peak Perl was in the 00s, say 2005, an impressionable teenager of ~15 learning by then probably will keep using it for the rest of their life, even in absence of uptake by new people. Assuming a lifespan of 85, I estimate this day won't arrive before the 2070s.
- macintux 1y agoI started using it in the mid-90s, and used it extensively at work as long as I could, but by 2012 I gave up the fight. I still break it out once in a great while for a quick text transformation, but it’s so rusty in my memory that I rely on an LLM to remind me of the syntax.
- nkozyra 1y agoI think peak Perl was before then, but that's about when Perl fell off the map and started getting replaced by Python or PHP to replace CGI since it had some syntactic overlap. This is when I started professionally and we were asked to replace "slow, old Perl scripts" As a new entrant, I didn't ask many questions, but I also didn't see any of the replacements as improvements in any way. I think the # of devs left to take over messy Perl projects was shrinking. As you might imagine, this job involved a lot of text processing. People still point to that as the arrow in Perl's quiver, but it seems especially quaint today since any language I'd reach for would blow it out of the water in terms of flexibility and ease of use.
- tayo42 1y agoThat's how I remeber the time line. But I thought maybe the end of the 00s was when ror started showing up. Mid 2000s I think i was learning php and lamp stack. Perl was already kind of old
- xmcqdpt2 1y ago
- somat 1y ago"Significance: In terms of syntax and semantics we don’t see much of COBOL in modern computing." Would I be wrong in saying that SQL has what feels to me to be a very cobaly syntax. By which I mean, I know it is not directly related to cobal, But someone definitely looked at cobal's clunky attempt at natural language and said "that, I want that for my query language"
- mikewarot 1y ago>An accurate analysis of the fall of Pascal would be longer than the rest of this essay. I put the blame solely on the management of Borland. They had the world leading language, and went off onto C++ and search of "Enterprise" instead of just riding the wave. When Anders gave the world C#, I knew it was game over for Pascal, and also Windows native code. We'd all have to get used to waiting for compiles again.
- Falkon1313 1y agoAgreed. And it was partly how they ignored or snubbed two+ generations of rising developers, hobbyists, etc. No kid or hobbyist or person just learning was spending $1400+ on a compiler. Especially as the number of open-source languages and tools were increasing rapidly by the day, and Community Editions of professional tools were being released. Sure they were going for the Enterprise market money, but people there buy based on what they're familiar with and can easily hire lots of people who are familiar to work with it. Last I looked they do have a community edition of Delphi now, but that was slamming the barn door long after the horses had all ran far away and the barn had mostly collapsed.
- blurbleblurble 1y agoDang I wanted it to keep going
- geophile 1y agoWow, that was a trip down memory lane! I have used six of those languages: BASIC, APL, COBOL, Pascal, Algol-W (a derivative of Algol 60), PL/1. Mostly in school. My first dollars earned in software (brief consulting gig in grad school) had me debug a PL/1 program for a bank. For some reason I remember an odd feature of PL/1: Areas and offsets. If I am remembering correctly, you could allocate structures in an area and reference them by offset within that area. That stuck in my mind for some reason, but I never found a reason to use it. It struck me as a neat way to persist pointer-based data structures. And I don't remember seeing the idea in other languages. Maybe the reason it stayed with me is that I worked on Object Design's ObjectStore. We had a much more elegant and powerful way of persisting pointer-based structures, but an area/offset idea could have given users some of the capabilities we provided right in the language.
- justsomehnguy 1y ago>> An area is a region in which space for based variables can be allocated. Areas can be cleared of their allocations in a single operation, thus allowing for wholesale freeing. Moreover, areas can be moved from one place to another by means of assignment to area variables, or through input-output operations. >> Based variables are useful in creating linked data struc tures, and also have applications in record inputoutput. A based variable does not have any storage of its own; instead, the declaration acts as a template and describes a generation of storage. http://www.iron-spring.com/abrahams.pdf http://www.iron-spring.com/abrahams.pdf p. 19, 74 *shrug_emoji*
- kqr 1y agoAda supports storage pools as well. In the right circumstances, it's a safer way to deal with dynamic allocation. I believe it also starts to creep into things like C#.
- elcapitan 1y agoArea-based allocation seems to be quite popular recently in game development (under the name "arena allocator"). Saw some talks referencing the concept in the "Better Software" (gamedev) conference on the weekend [1] [1] https://bettersoftwareconference.com/ https://bettersoftwareconference.com/
- geophile 1y agoSerious question: Is Ada dead? I actually had to google Ada, and then "Ada language" to find out. It's not dead, and it has a niche. When I was in grad school in the late 70s, there was a major competition to design a DoD-mandated language, to be used in all DoD projects. Safety and efficiency were major concerns, and the sponsors wanted to avoid the proliferation of languages that existed at the time. Four (I think) languages were defined by different teams, DoD evaluated them, and a winner was chosen. It was a big thing in the PL community for a while. And then it wasn't. My impression was that it lost to C. Ada provided much better safety (memory overruns were probably impossible or close to it). It would be interesting to read a history of why Ada never took off the way that C did.
- throwaway81523 1y agoAda isn't dead and it's superior to Rust in many ways, but it is less trendy. adacore.com is the main compiler developer (they do GNAT). adahome.com is an older site with a lot of links.
- pjc50 1y agoHow does Ada solve dynamic allocation?
- throwaway81523 1y agoIt kind of doesn't at the moment. That's an area where Rust is ahead. They are working on a borrow-checker-like thing for Ada. But the archetypal Ada program allocates at initialization and not after that. That way it can't die from malloc failing, once it is past initialization.
- kqr 1y agoAssuming "solve" is meant loosely: much like in C++, with RAII-style resource management. The Ada standard library has what are called _controlled types_ which come with three methods: Initialize, Adjust, and Finalize. The Finalize method, for example is automatically called when a value of a controlled type goes out of scope. It can do things like deallocate dynamically allocated memory. That said, Ada also has features that make C-style dynamic allocation less common. Ada does not have pointers but access types, and these are scoped like anything else. That means references cannot leak, and it is safer to allocate things statically, or in memory pools.
- ab_testing 1y agoWheee does perk fit in this scheme of dying languages. I see fewer and fewer new packages written in Perl and lots of unmaintained packages in Cpan. It seems obvious that the language is dying a slow death .
- pjc50 1y agoThe 5 -> 6 transition took out a lot of its momentum, and it was gradually eclipsed by two other dynamic weakly typed languages which were less alarming to read: Python and Javascript.
- AnimalMuppet 1y ago"Less alarming to read". Sir, that is beautifully said.
- reddit_clone 1y agoSad thing is Perl6/Raku is a nice kitchen-sync language with some pretty sophisticated constructs! Unfortunately it has no mind-share.
- Taniwha 1y agoAlgol-68 gets a bum rap here - it brought us 'struct', 'union' (and tagged unions) a universal type system, operator declarations, a standard library, and a bunch more - Wirth worked on the original design committee, Pascal reads like someone implementing the easy parts of Algol-68. The things it got wrong were mostly in it having a rigorous mathematical definition (syntax and semantics) that was almost unreadable by humans ... and the use of 2 sets of character sets (this was in the days of cards) rather than using reserved words
- p_l 1y agostructs were first introduced in Algol 58 variant called JOVIAL, AFAIK
- jamesfinlayson 1y ago> Of the four mother languages, ALGOL is the most "dead"; Everybody still knows about LISP, COBOL still powers tons of legacy systems, and most scientific packages still have some FORTRAN. I've heard of enough Cobol and Fortran jobs existing, and Lisp continues to exist in some form or other, but Algol really does seem dead. I remember someone telling me about an Algol codebase that was decommissioned in 2005 and that seemed like a very late death for an Algol codebase.
- kqr 1y agoAlgol is in the funny position of being both very dead, yet not dead at all given its legacy. I suspect that's sort of inevitable: if all of a language's spirit is cannibalised by newer languages, it will be hard to argue for using the old language and it dies. (In contrast, Lisp retains some unique ideas that have not been adopted by other languages, so it survives by a slim margin.)
- brabel 1y agoThere are several well maintained Common Lisp compilers, some of which are paid for and can sustain whole businesses, Clojure is fairly big as niche languages go, and Guile Scheme is used across GNU projects. There’s also some usage of Racket and Scheme in education, and I believe Janet is having success in gaming. So I wouldn’t say Lisp survives by just a slim margin.
- kqr 1y agoCorrect. That was bad wording on my part. I meant it in the sense of "it survives at a scale proportional to the fraction of it that is unique". It used to be that things like GC, REPL, flexible syntax, the cond form etc. made Lisp unique, but these days the list is down mainly to homoiconicity (and an amazing hacker culture).
- vindarel 1y agothe image-based REPL, including the interactive debugger, is still unique (matched maybe by Smalltalk), CLOS and the condition system too… pair them with stability, fast implementations, instantaneous compile-time errors and warnings a keystroke away, a Haskell-like type system on top of the language (Coalton), macros… and the whole is still pretty unique.
- askvictor 1y agoIn the Smalltalk section, it says that Python isn't 'true' OO like Smalltalk... who considers this to be the case? In Python, everything (including functions, and classes), is an object
- a_bonobo 1y agoI think this refers to encapsulation in Python, 'private' methods aren't really private, any user can poke around in there. Old justification: https://mail.python.org/pipermail/tutor/2003-October/025932.html https://mail.python.org/pipermail/tutor/2003-October/025932.... >Nothing is really private in python. No class or class instance can keep you away from all what's inside (this makes introspection possible and powerful). Python trusts you. It says "hey, if you want to go poking around in dark places, I'm gonna trust that you've got a good reason and you're not making trouble." >After all, we're all consenting adults here.
- johannes1234321 1y agoI don't think that is the relevant point. Smalltalk doesn't have visibility either. The difference is that in smalltalk everything is a message. Operators are messages to an object. Even things we commonly assume to be control structures in other languages like if or while (or rather ifTrue, whileTrue) are messages. Python is a lot less "pure" but so are all commonly used OO languages.
- brodo 1y agoI think this comes from the fact, that Alan Kay does not think it is OO. There is no legal definition, but Python does other have Smalltalk-like 'method_missing' or 'responds_to' methods. If you think OOP means messages and late-binding, that feature is important.
- igouy 1y agoThat's the opposite of what it says — We sometimes think that Smalltalk is “true” OOP and things like Java and Python aren’t “real” OOP, but that’s not true.
- zzo38computer 1y agoI still sometimes use BASIC and Pascal (both in DOS), although they are not the programming languages I mostly use.
- PeterStuer 1y agoIn the finance world COBOL is still very much not dead. It's not as dominant as it once was, but core mainframe code is very often still COBOL. Replacing that is a very hard problem as thousands and thoudands of (abused and overloaded) integrations are layered in serveral strata around it relying each night on exact behaviour in the core, warts and all. As for Smalltalk, I know at least one company around hete still running some legacy, but still maintained afaik, code on it ( https://mediagenix.tv https://mediagenix.tv ).
- balderm 1y agoI used to work in a bank IT department 13 years ago and all their systems still ran on Java 1.4.2 and COBOL procedures, at the time IBM was basically forcing them to migrate to Java 1.6 by the end of the year because the new LTS version didn't support that Java version anymore.
- lucas_membrane 1y agoMy recollection, contrary to TFA, is that development of PL/I or PL1 (both names were used) started in 1964 or a bit earlier with the intention of coming up with a replacement for Fortran. I think some referred to it as Fortran V or Fortran VI. IBM introduced PL1 pretty quickly after the it rolled out 360 mainframes, maybe because it might help sell more megabuck hardware, but there were two different compilers that compiled two different versions of the language (a fork that remained a wretched stumbling block for at least 20 or 25 years) into the one for the big mainframes (model 50 or bigger) and one for the economical mid-line mainframes, and none for the model 20. In that period, Gerald Weinberg published some good stuff about PL1, including a strong warning against concurrent processing. There was also a PL1 on Multics that tried to be a little more suited to academia than the IBM versions. In the middle 1980's there was a PL1 subset that ran on PC's. It couldn't do anything that Turbo Pascal couldn't do, but it did it much slower.
- zozbot234 1y agoThe point of PL/I was to unify the userbases of both FORTRAN and COBOL, thus tending to "replace" both languages. There was some influence from PL/I to the CPL language, which in turn led to BCPL, B and C.
- nxobject 1y agoI've always wondered what it would be like to "live" in ALGOL 68 for a while, because of its ambition and idiosyncrasy. With a modern perspective, what would I be surprised to actually have, and what would I be surprised to miss? (Apart from the wild terminology. File modes are called "moods", and coincidentally, ALGOL 68's three standard "channels" (i.e. files) are "stand in", "stand out", and "stand back" -- I kid you not, close enough to 'stdin', 'stdout'.)
- eddieh 1y agoBasically, writing a CS paper in LaTeX using the "alg*" packages (algorithm2e, algorithmicx, algorithms, algpseudocode, algxpar, algpseudocodex, etc.) is living in the ALGO 60 / ALGO 68 world. For the most part, nobody uses anything from the standards that would require superfluous explanations in a paper.
- sandworm101 1y agoSeeing more than one of the languages i have used on this list makes me feel very old. +1 for basic, first used in gradeschool. +1 for pascal (highschool) +1 for lisp (compsci 101)
- KWxIUElW8Xt0tD9 1y agoAh, APL. I remember a network synthesis EE course in the 70s where we had an assignment to implement matrix exponentiation. I had just finished a matrix algebra class and learned APL in the process, so my implementation was 2 lines of APL. Those where the days...
- xelxebar 1y agoYou should come back. APL has considerably modernized in the intervening 50 years, and with data parallelism gaining ever more market share, the timing is perhaps ripe...
- bombcar 1y agoHow is it to read and write? It always looked to me like something that made Perl look verbose and clear.
- bear8642 1y ago> How is it to read and write? Fairly straight-forward once you've learnt the character set. See here for details: https://aplwiki.com/wiki/Typing_glyphs https://aplwiki.com/wiki/Typing_glyphs
- FrustratedMonky 1y agoSurprised F# wasn't on list. Since F# was like the test bed, for many features that got moved to C# once proven.
- claytonaalves 1y agoPascal isn't dead. At least here in Brazil it's widespread. I've heard in Russia and China too. Freepascal [1] is up and running, targeting a lot of platforms: x86-16, x86-32, AMD64, RISC-V (32/64), ARM, AArch64, AVR, JVM, Javascript... ... and operating systems: Windows, Linux, MacOS, iOS, web and others. I don't know an easier way to build multiplatform desktop applications other then Freepascal/Lazarus. I mean, real desktop apps, not that Electron bullsh*. [1] https://www.freepascal.org/ https://www.freepascal.org/
- breve 1y agoC# with Avalonia is pretty good for cross platform development: https://avaloniaui.net/ https://avaloniaui.net/
- weinzierl 1y agoWhen I saw the Smalltalk paragraph I could not help thinking Rust will be to Haskell what Java has been to Smalltalk.
- troad 1y agoI'm struggling to follow your logic a little. Java has virtually nothing in common with Smalltalk, other than in the most superficial way (things called objects exist, that work nothing alike). The closest thing to Smalltalk in serious use today is Ruby, which hews very close to Smalltalk's philosophy of message passing, though it does abandon the idea of a holistic programmable environment. If one considers the actor model to be a natural evolution of Smalltalk's original idea of message-oriented, dynamic objects, then the BEAM might be Smalltalk's natural successor (Erlang, Elixir, Gleam, etc). Genservers are effectively isolated green threads that communicate solely by sending one another messages, which strikes me as very close to the spirit of Smalltalk's objects.
- fuzztester 1y agoWhat about Eiffel? What are people's thoughts about it? I know a little about its history, and had tried it out a bit, some years ago, via the EiffelStudio trial edition, IIRC. I had also read a good chunk of Bertrand Meyer's book, Object Oriented Software Construction. Thought the book was good.