For those of you who find it vital to the way you work/think, do you think the same level of power is possible with anything other than Lisp?
Would you rather work with a system that embeds various computational approaches into an environment with metalinguistic capabilities, such as lisp? Or would you rather use a system that glues together various tools that are focused on whatever approach is needed for a specific piece?
By computational approaches I guess I mean a lot of different things here. Functional, imperative, and relational programming. Binaries, web UIs, desktop GUIs, etc. I think the main difference would be having different pieces be first class citizens in the core environment.
Barely important for me but I use DSLs (for example to generate html) which wouldn't be possible to implement and change that easily for my usecase.
> Or would you rather use a system that glues together various tools that are focused on whatever approach is needed for a specific piece?
One important property for me is that the DSL used is implemented in the language it is being used from and modifiable at run time. Mathematica does the embeds stuff really well but I find it hard to work with.
Mixing DSLs is hard or close to impossible in Lisp though. I had better experiences in Julia in that regard.