Hacker Newsnew | past | comments | ask | show | jobs | submitlogin

>. I liked the idea that the IDE, including the interactive debugger, was available to the user to program.

a similar concept exists in F# type providers. it doesn't always work out well in practice but there is a ton of promise there.



In what instances/how does it not work out well in practice?

I've only read the hype, and it sure reads well... :-)


I have a dream that some day we have statically typed language which would have first-class types with some compile time meta programming.

For given example data, type providers output just something and typically it's 95% what you want. But how to fix that 5%? You cannot just say that "Type.Property, could you please be an integer". Instead of you have to tweak example which in some case is just fine but on some cases it's not possible at all.

Example: you use these SQL libraries which are based on type providers. You have some clear schema and it's just works. Then some day you would like to use runtime defined columns but at that point you have to opt out from that type provider library (at least for queries related to that table).

I still love working with F# but I don't use much of type providers. I think they are like proof of concept that compile time meta-programming can be provide real value but it need still more freedom.

Edit: I use SQL library called Rezoom and while it has it's limits it has given great benefit during development. When you change DB schema every effected query and model transformation gives compile time error. Value there is real.


F# type providers just makes it easy to do certain things like data analysis on .CSV files right?

Or does it link back into the IDE & debugger in some way I don't know?




Consider applying for YC's Fall 2025 batch! Applications are open till Aug 4

Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: