3 ms·
Standard ML has existed for 35 years. Even if you started programming with Fortran, it's been around longer than half of your career.
by kod 8y ago
Standard ML has existed for 35 years. Even if you started programming with Fortran, it's been around longer than half of your career.
- agumonkey 8y agoBe honest, until 10y ago, ml type inference was invisible to 90% of the coders. Probably rejected willingly even ('where are my objects?')
- quickthrower2 8y agoI learned Haskell in 2001, was super excited by it but there wasn’t the “day to day” stuff to get things done that you had in Java or C++. So for practical work I felt I couldn’t use it. Fast forward now, with the rise of open source sand devs volunteering to code in their free time, we have Haskell kind of useful. Definitely for web software and backend. Although I question desktop development in Haskell.
- dmitriid 8y ago> Probably rejected willingly even ('where are my objects?') Local type inference was rejected in Java in 2001 because "you need to spec your types precisely"
- agumonkey 8y agois it published online ?
- TuringTest 8y agoIIRC it was common knowledge, as it was an "obvious improvement" over C-style undeclared variables. Have in mind that type inference applied only to local values, not propagated globally through the code structure as in ML.
- dmitriid 8y agoFound it here: https://stackify.com/whats-new-in-java-10/ https://stackify.com/whats-new-in-java-10/ ——— start quote ——— This feature has been a long time coming. It was suggested as far back as 2001, and was closed at that time with the following comment by Gilad Bracha: Humans benefit from the redundancy of the type declaration in two ways. First, the redundant type serves as valuable documentation – readers do not have to search for the declaration of getMap() to find out what type it returns. Second, the redundancy allows the programmer to declare the intended type, and thereby benefit from a cross-check performed by the compiler. ——— end quote ——— Link to original RFE and quote source: https://bugs.java.com/bugdatabase/view_bug.do?bug_id=4459053 https://bugs.java.com/bugdatabase/view_bug.do?bug_id=4459053
- agumonkey 8y agoInteresting, I kinda agree about the need for redundancy at times (which is not forbidden by ML typing). But it rejected a very good idea for a decade.. A bit like lambda expressions. Damn Java
- hvidgaard 8y agoIt's even older than that. The Hindley–Milner type system was first described in 1969. In other words, we've had the foundation for this kind of type inference for 50 years.
- ddingus 8y agoWhat's the deal? Really could be new to him. It's a pretty big world out there.
- mhd 8y agoWhich is why I'm amazed it's actually used now outside academia. It lingered so long there, it's surprising that it made the jump. Probably due to some alums of INRIA using their particular implementation for their own projects.