Re: [fonc] Extending object oriented programming in Smalltalk
Here's a Google Doc conversion of the wayback machine version: https://docs.google.com/viewer?url=http://web.archive.org/web/20070516130537/http://www.dolphinharbor.org/docs/PIE%2520four%2520reports.pdfpli=1 Or: http://www.dolphinharbor.org/dh/smalltalk/documents/ Look for: An Experimental Description-Based Programming Environment: Four Reportshttp://www.dolphinharbor.org/docs/PIE%20four%20reports.pdf (Ira Goldstein and Daniel Bobrow, CSL-81-3 March 1981) 3.18MB Enjoy, thanks for the fun Googling project. On Tue, Aug 16, 2011 at 9:18 PM, DeNigris Sean s...@clipperadams.comwrote: Extending object oriented programming in Smalltalk by Goldstein and Bobrow ___ fonc mailing list fonc@vpri.org http://vpri.org/mailman/listinfo/fonc
Re: [fonc] Extending object oriented programming in Smalltalk
On 17.08.2011, at 17:08, Kevin Driedger wrote: Here's a Google Doc conversion of the wayback machine version: https://docs.google.com/viewer?url=http://web.archive.org/web/20070516130537/http://www.dolphinharbor.org/docs/PIE%2520four%2520reports.pdfpli=1 On Tue, Aug 16, 2011 at 9:18 PM, DeNigris Sean s...@clipperadams.com wrote: Extending object oriented programming in Smalltalk by Goldstein and Bobrow There is a paper on PIE (and many other interesting systems) in Barstow/Shrobe/Sandewall's Interactive Programming Environments. Used copies for 1 cent (like many outdated computer books): http://www.amazon.com/dp/0070038856 - Bert - ___ fonc mailing list fonc@vpri.org http://vpri.org/mailman/listinfo/fonc
Re: [fonc] Extending object oriented programming in Smalltalk
On Aug 17, 2011, at 8:32 AM, Bert Freudenberg wrote: There is a paper on PIE (and many other interesting systems) in Barstow/Shrobe/Sandewall's Interactive Programming Environments. Used copies for 1 cent (like many outdated computer books): http://www.amazon.com/dp/0070038856 Outdated! It's a classic. You wouldn't say that Lisp 1.5 Programmer's Manual is outdated would you? :-) -David___ fonc mailing list fonc@vpri.org http://vpri.org/mailman/listinfo/fonc
Re: [fonc] Extending object oriented programming in Smalltalk
Alan, While we're on the subject, you finally got to me and I started learning LISP, but I'm finding an entire world, rather than a cohesive language or philosophy (Scheme - which itself has many variants, Common LISP, etc). What would you recommend to get it in the way that changes your thinking? What should I be reading, downloading, coding, etc. Thanks. Sean DeNigris You wouldn't say that Lisp 1.5 Programmer's Manual is outdated would you? :-) ___ fonc mailing list fonc@vpri.org http://vpri.org/mailman/listinfo/fonc
Re: [fonc] Extending object oriented programming in Smalltalk
Hi Sean, Two books that I like quite a lot are: Anatomy of Lisp by John Allen. It's a classic from the golden age. Lisp in Small Pieces by Christian Queninnec. It's a modern classic. -David On Aug 17, 2011, at 11:00 AM, DeNigris Sean wrote: Alan, While we're on the subject, you finally got to me and I started learning LISP, but I'm finding an entire world, rather than a cohesive language or philosophy (Scheme - which itself has many variants, Common LISP, etc). What would you recommend to get it in the way that changes your thinking? What should I be reading, downloading, coding, etc. Thanks. Sean DeNigris You wouldn't say that Lisp 1.5 Programmer's Manual is outdated would you? :-) ___ fonc mailing list fonc@vpri.org http://vpri.org/mailman/listinfo/fonc ___ fonc mailing list fonc@vpri.org http://vpri.org/mailman/listinfo/fonc
Re: [fonc] Extending object oriented programming in Smalltalk
Hi, Just reading a Lisp book my self. Lisp seems to be very pure at the bottom level. The nesting in p*arentheses* are hard to read and comprehend / debug. Things get not so pretty when all sorts of DSL are made to make it more powerful. The REPL give it a kind of wing clipped aura; there is more to computing than text io Karl On Wed, Aug 17, 2011 at 8:00 PM, DeNigris Sean s...@clipperadams.comwrote: Alan, While we're on the subject, you finally got to me and I started learning LISP, but I'm finding an entire world, rather than a cohesive language or philosophy (Scheme - which itself has many variants, Common LISP, etc). What would you recommend to get it in the way that changes your thinking? What should I be reading, downloading, coding, etc. Thanks. Sean DeNigris You wouldn't say that Lisp 1.5 Programmer's Manual is outdated would you? :-) ___ fonc mailing list fonc@vpri.org http://vpri.org/mailman/listinfo/fonc ___ fonc mailing list fonc@vpri.org http://vpri.org/mailman/listinfo/fonc
Re: [fonc] Extending object oriented programming in Smalltalk
I once had a good experience using Scheme, which has influenced most of my later efforts (despite me generally switching to a more traditional C-family-like syntax, invoking many accusations of blub and similar). I also found Self an interesting language to look at. Lisp-style syntax does have some merits, but also some drawbacks. sadly, for general purpose programming, I think its drawbacks outweigh its merits. list operations and code as data are cool, but are not enough to justify making the whole syntax be this way. sadly, although macros are also cool, they don't mesh as well with C-family syntax (what is going on and how things work is less obvious, and one can't do the same level of stuff without exposing many internal details of the implementation). another problem with macros is that they don't mix cleanly with a very late bound language, since generally one can't late-bind a macro (they are inherently early-bound). some Lisp variants had introduced run-time/first-class macros, which could mesh better with being late-bound, but could get a bit hairy in the implementation. a tradeoff then is something more like templates or generics, which may be meshed better with late-binding and with the syntax (despite Fooint, 3+4; and similar looking nasty). ideally, things can be left so that they appear as-if everything is happening at run-time, with most language constructions (classes, scopes, functions, types, ...) existing as first-class objects. IMO, this partly makes up for the lack of macros and/or user-defined syntax (actually, both are technically possible, just not directly accessible at the HLL level, and more require plugging code into the VM and inherently expose implementation details). interactive code entry (via a console / REPL / ...) is sadly, one of those things that is far from perfect, and there is no obvious way to really make this work entirely nicely. another possible strategy could be real-time code editing (say, a text editor with a GO button, where one hits GO after they finish editing), but this has other problems. likewise for having a text-editor where they can enter arbitrary-sized expressions and then send them to the REPL, ... no ideal solutions here that I am aware of. or such... On 8/17/2011 12:00 PM, karl ramberg wrote: Hi, Just reading a Lisp book my self. Lisp seems to be very pure at the bottom level. The nesting in p/arentheses/ are hard to read and comprehend / debug. Things get not so pretty when all sorts of DSL are made to make it more powerful. The REPL give it a kind of wing clipped aura; there is more to computing than text io Karl On Wed, Aug 17, 2011 at 8:00 PM, DeNigris Sean s...@clipperadams.com mailto:s...@clipperadams.com wrote: Alan, While we're on the subject, you finally got to me and I started learning LISP, but I'm finding an entire world, rather than a cohesive language or philosophy (Scheme - which itself has many variants, Common LISP, etc). What would you recommend to get it in the way that changes your thinking? What should I be reading, downloading, coding, etc. Thanks. Sean DeNigris You wouldn't say that Lisp 1.5 Programmer's Manual is outdated would you? :-) ___ fonc mailing list fonc@vpri.org mailto:fonc@vpri.org http://vpri.org/mailman/listinfo/fonc ___ fonc mailing list fonc@vpri.org http://vpri.org/mailman/listinfo/fonc ___ fonc mailing list fonc@vpri.org http://vpri.org/mailman/listinfo/fonc
Re: [fonc] Extending object oriented programming in Smalltalk
May I join in :-) ? This is my first post here, so hello everybody. In one sentence, I like computing (that's introduction). On Wed, 17 Aug 2011, BGB wrote: I once had a good experience using Scheme, which has influenced most of my later efforts (despite me generally switching to a more traditional C-family-like syntax, invoking many accusations of blub and similar). I have had a good experiences with Racket, a Scheme superset on steroids, few years ago (when its name was DrScheme). I have pushed it too hard, so it burped a core at me from time to time. Because of this I switched to Common Lisp, but I still like it - it has IDE, JIT and is crossplatform (Win/Lin/Mac). It has a good number of third party addons, too. http://en.wikipedia.org/wiki/Racket_(programming_language) I also found Self an interesting language to look at. Lisp-style syntax does have some merits, but also some drawbacks. sadly, for general purpose programming, I think its drawbacks outweigh its merits. list operations and code as data are cool, but are not enough to justify making the whole syntax be this way. I would say, no syntax and no language does 100% of the job. I consider myself somewhat switched to Lisp, but I don't forget about C, Python and Scheme (and, maybe, Haskell, when I learn it). Maybe there should not be the one and only, perfect language. Especially that no language that I looked at could fit. likewise for having a text-editor where they can enter arbitrary-sized expressions and then send them to the REPL, ... no ideal solutions here that I am aware of. I'm not sure if you ever tried emacs with slime? Maybe it is not perfect but it works for me. Slime is for befriending Common Lisp's REPL and taming it into emacs (I have read it can do the same with Clojure, but never had enough time to check). Or maybe I just didn't ram the wall yet. I should try harder. Regards, Tomasz Rola -- ** A C programmer asked whether computer had Buddha's nature. ** ** As the answer, master did rm -rif on the programmer's home** ** directory. And then the C programmer became enlightened... ** ** ** ** Tomasz Rola mailto:tomasz_r...@bigfoot.com ** ___ fonc mailing list fonc@vpri.org http://vpri.org/mailman/listinfo/fonc
Re: [fonc] Extending object oriented programming in Smalltalk
On 8/17/2011 2:15 PM, Tomasz Rola wrote: May I join in :-) ? This is my first post here, so hello everybody. In one sentence, I like computing (that's introduction). On Wed, 17 Aug 2011, BGB wrote: I once had a good experience using Scheme, which has influenced most of my later efforts (despite me generally switching to a more traditional C-family-like syntax, invoking many accusations of blub and similar). I have had a good experiences with Racket, a Scheme superset on steroids, few years ago (when its name was DrScheme). I have pushed it too hard, so it burped a core at me from time to time. Because of this I switched to Common Lisp, but I still like it - it has IDE, JIT and is crossplatform (Win/Lin/Mac). It has a good number of third party addons, too. http://en.wikipedia.org/wiki/Racket_(programming_language) yep. back when I was messing with Scheme, IIRC it was mostly known as PLT Scheme. initially (maybe 1999 to 2000 or so) I was using Guile, but wrote my own Scheme implementation after running into issues with Guile. both Guile and PLT Scheme were sources of feature ideas at the time, as well as me mostly adopting a Self-inspired object system. technically, objects were applied much like functions, so a typical method-call operation was more like: (self doSomething: 3 4) where doSomething: and :doSomething were more-or-less analogous (IIRC I had 2 keyword types with slightly different semantics in some cases). getting a slot was generally something like: (self 'x) and setting was like: (self 'x 3) but, I let this particular implementation meet its demise in roughly 2003 or so, mostly as the language/implementation was not scaling well. sadly, I have not managed to recreate all of its nifty features in my newer language. sadly, I have not much actively used Lisp or Scheme that much for a while (except for a few cases of resorting to Guile as a more powerful alternative to Windows Calculator..., although, this has been partly subsumed by BGBScript+REPL as well, so alas...). also, the newer languages' AST-level syntax is not nearly so concise: (methodcall this doSomething 3 4) (getslot this x) (setslot this x 3) the partial the reason for this was to move away from direct-call expressions, mostly so that the compiler can complain when it encounters an unknown expression type. and, as well, the AST's are hidden under the main syntax and regarded as an implementation detail. var x:int=3; becomes: (vars ((set! (cast int x) 3))) I also found Self an interesting language to look at. Lisp-style syntax does have some merits, but also some drawbacks. sadly, for general purpose programming, I think its drawbacks outweigh its merits. list operations and code as data are cool, but are not enough to justify making the whole syntax be this way. I would say, no syntax and no language does 100% of the job. I consider myself somewhat switched to Lisp, but I don't forget about C, Python and Scheme (and, maybe, Haskell, when I learn it). Maybe there should not be the one and only, perfect language. Especially that no language that I looked at could fit. yeah. a large amount of my coding is still in plain C. despite existing, my own language has not made major inroads into the domains in which I use C, I suspect mostly because in the past, the languages didn't interface well, and because even after so many years I am still left battling with some fundamental language issues in many cases. in some ways, C is hard to beat at its own game. it is sad though, as I would want to be able to claim that I can do lots of cool stuff in my own language, to prove that it can actually be used for something useful, but alas... like, 95% of a language can be made quickly and easily, but the last 5% is where 95% of the pain resides. likewise for having a text-editor where they can enter arbitrary-sized expressions and then send them to the REPL, ... no ideal solutions here that I am aware of. I'm not sure if you ever tried emacs with slime? Maybe it is not perfect but it works for me. Slime is for befriending Common Lisp's REPL and taming it into emacs (I have read it can do the same with Clojure, but never had enough time to check). Or maybe I just didn't ram the wall yet. I should try harder. given what I am mostly doing is 3D engine development and building on my own technology, emacs likely wont be a good fit. so, most code entry is: interactively via an in-program console (sadly, single-line and limited to 100 characters, but this is typically sufficient); via a temporary file and Notepad2 (sort of lame, but one can use this to fake a much bigger REPL, using a console command to load() the temp file each time); or, via plain old source files (more Notepad2...). otherwise, possible could be to devise some sort of in-program bulk-REPL feature or something (may have to look at what Emacs Slime does exactly, and see if it's UI is something
Re: [fonc] Extending object oriented programming in Smalltalk
Take a look at Landin's papers and especially ISWIM (The next 700 programming languages) You don't so much want to learn Lisp as to learn the idea of Lisp Cheers, Alan From: karl ramberg karlramb...@gmail.com To: Fundamentals of New Computing fonc@vpri.org Sent: Wednesday, August 17, 2011 12:00 PM Subject: Re: [fonc] Extending object oriented programming in Smalltalk Hi, Just reading a Lisp book my self. Lisp seems to be very pure at the bottom level. The nesting in parentheses are hard to read and comprehend / debug. Things get not so pretty when all sorts of DSL are made to make it more powerful. The REPL give it a kind of wing clipped aura; there is more to computing than text io Karl On Wed, Aug 17, 2011 at 8:00 PM, DeNigris Sean s...@clipperadams.com wrote: Alan, While we're on the subject, you finally got to me and I started learning LISP, but I'm finding an entire world, rather than a cohesive language or philosophy (Scheme - which itself has many variants, Common LISP, etc). What would you recommend to get it in the way that changes your thinking? What should I be reading, downloading, coding, etc. Thanks. Sean DeNigris You wouldn't say that Lisp 1.5 Programmer's Manual is outdated would you? :-) ___ fonc mailing list fonc@vpri.org http://vpri.org/mailman/listinfo/fonc ___ fonc mailing list fonc@vpri.org http://vpri.org/mailman/listinfo/fonc ___ fonc mailing list fonc@vpri.org http://vpri.org/mailman/listinfo/fonc