3 ms·
What do you think it would take to make such systems suitable for deployment? Do you have to give up the productivity?
by shalabhc 6y ago
What do you think it would take to make such systems suitable for deployment? Do you have to give up the productivity?
- smackeyacky 6y agoBack in the 90s we hit a massive wall on three fronts using Smalltalk: collaboration between developers (no file system to share code); no change control; deployment to users (stripping down images to make applications). We had a pile of hacks but integrating changes took all the productivity of Smalltalk away. However, tools like Envy/Developer fixed a lot of it. It still didn't fix everything but at least sorted code integration and source code versioning. Not sure if the product still exists though. I loved using Smalltalk but in a team environment its useless and keeping your code disentangled from the underlying environment is a nightmare.
- gumby 6y agoThere is no separation between “application” and “system software”. While super powerful it made it hard to update the system and the applications separately. Multiple programs could make conflicting changes. In addition, lisp programs (at least in these environments) don’t have “main”. I think it’s no big deal to start a program as “(foo)” but that’s surprisingly user hostile. I worked with someone (who shall remain nameless) who ran in the same image for several years. There were random state variables scattered in his environment that affected the performance of his system in unreproducable ways.
- lispm 6y ago> In addition, lisp programs (at least in these environments) don’t have “main”. But they have similar mechanisms. In Symbolics Genera 'programs' are called 'activities'. They can be started by keyboard shortcut, command, an application menu or by a general function, where the activity is an argument. Usually each 'activity' runs a command loop. Additionally images have named lists containing functions, which are executed on certain event. For example if an image starts, a 'cold boot' list will be executed. If one has registered starting application programs (activity) - remember activities have names like editor, listener, mail client - they will be started by the operating system after a boot. If a user logins on a Lisp Machine an init file gets executed. That init file can also contain general forms which start activities.
- shalabhc 6y agoThank you. How much of this problem do you think is solved by Monticello, if you've used it?