That phrase certainly brings back memories, from when I worked at an object-oriented database startup. The object-orientation was actually pretty unimportant, (except for those products that brought in persistence via inheritance -- so not really orthogonal). No, the point was adding a new storage class to programming languages. I worked at Object Design, and we had (IMHO) an incredibly elegant approach. In our appro…
That sounds fascinating! Does anything like this exist now in the open source world?
Orthogonal Persistence
31–38 of 38 posts
Re: Orthogonal Persistence
#32That phrase certainly brings back memories, from when I worked at an object-oriented database startup. The object-orientation was actually pretty unimportant, (except for those products that brought in persistence via inheritance -- so not really orthogonal). No, the point was adding a new storage class to programming languages. I worked at Object Design, and we had (IMHO) an incredibly elegant approach. In our appro…
How would you compare it to Gemstone/S? I spent a large chunk of the 90s working on a maintenance management system witha GS back end.
Re: Orthogonal Persistence
#33Re: Orthogonal Persistence
#34Re: Orthogonal Persistence
#35This was very fashionable 15-20 years ago, in both application and OS research. One such Java framework: https://prevayler.org/ Less ambitious than TFA overall, I grant you.
Re: Orthogonal Persistence
#36Re: Orthogonal Persistence
#37That phrase certainly brings back memories, from when I worked at an object-oriented database startup. The object-orientation was actually pretty unimportant, (except for those products that brought in persistence via inheritance -- so not really orthogonal). No, the point was adding a new storage class to programming languages. I worked at Object Design, and we had (IMHO) an incredibly elegant approach. In our appro…
How would you compare it to Gemstone/S? I spent a large chunk of the 90s working on a maintenance management system witha GS back end.
Re: Orthogonal Persistence
#38Earlier quoted context omitted.
Or, to put it another like, like visual programming, like "programming languages should be able to wear syntaxes like themes", like "there ought to be some sort of nocode type solution with all the power of conventional programming but easy enough for anyone to pick up", there are reasons why this is not how all programming works already. Good ones and big ones. And none of those reasons are that nobody has had the i…
Offtopic perhaps, but I am interested in reading an explanation of the good, big reasons why not "programming languages should be able to wear syntaxes like themes". Racket seems quite an interesting counterpoint, and I've never heard it argued as fundamentally flawed.
Your homework, should you choose to do it, because of course I can't make you and don't really care :), is to write a "Haskell theme" for Python. The theme must retain *args and **kwargs capabilities, as well as all other Python capabilities, though those two things will be one of the first major issues you hit. On the flip side, write a Python theme for Haskell. (This one based on my own stabs at it doesn't have such problems with the capabilities of the language, but it sure does take all of Haskell's elegance and wrap it in the grace of an elephant with a sprained leg.)
Also, bear in mind my claim is not that it can't be done. My claim is more like, nobody would want to use the resulting language with the resulting "skin". Languages are not all the same. Even dynamic versus static imperative languages don't really "skin" very well; compare idiomatic Ruby ActiveRecord-based code with Rust code. The differences are not just skin-deep.