4 ms·
I wonder how these "optics" compare to .NET's Language Integrated Queries (LINQ) (see https://en.wikipedia.org/wiki/Language_Integrated_Query https://en.wikiped
by warkdarrior 6y ago
I wonder how these "optics" compare to .NET's Language Integrated Queries (LINQ) (see https://en.wikipedia.org/wiki/Language_Integrated_Query https://en.wikipedia.org/wiki/Language_Integrated_Query )
- Daishiman 6y agoLINQ is definitely a precursor, and has tons of fantastic ideas. It's unfortunate that Microsoft didn't continue to invest heavily into this as it's rarely mentioned nowadays.
- platz 6y agoI'm not sure I'd call LINQ a precursor when LINQ itself was based on haskell's monadic list comprehensions. monadic list comprehensions aren't quite the same thing as optics, however.
- Daishiman 6y agoList comprehensions aren't quite the same thing; they are declarative but they describe an iterative method of creating lists through maps and filters, whereas optics are semantically oriented around traversals and projections.
- platz 6y agoisn't that what I said?
- 082349872349872 6y agoThe nice thing about comprehensions is that, depending upon how one looks at them, they can be declaratively defined yet iteratively implemented.
- warkdarrior 6y agoWikipedia claims there are LINQ implementations for Javascript/Typescript and for PHP (in addition to C#, of course).
- emteycz 6y agoThese are really just simplified versions, though.
- scns 6y agoYou are onto something, since LINQ was developed by Erik Meijer, one of the authors of the paper linked in the childcomment of the siblingcomment.