[Newbies] Nothing much [was: what is holding back Smalltalk?]
On Fri, 21 Nov 2008 00:02:47 +0100, Mark Volkmann [EMAIL PROTECTED] wrote: I don't have a lot of experience with Smalltalk yet, but I really love what I've seen so far. I'm curious what experienced Smalltalkers see as some of the reasons why it doesn't attract more attention. Me thinks that the Smalltalk community is healthy and vibrant--it is just a community form one would not expect for Ruby or Python or Perl, etc. To get impression of my impression take a look at what *actually* happened during the *recent* months: - Exupery (native x86 methods) powers Huemul - Seaside (web++ framework++) powers GLASS - Hydra (multiple parallel .images) powers Croquet .images - Google hires developers with deep Smalltalk experience - two more gods to be worshipped in the VM temple ;) - Squeak powers NewSpeak - new book Squeak by Example (creative commons license) - port of OpenDBX to Squeak (still not on windoze) - port of Squeak/VM to another smartphone platform ;) - DrGeo made it to the XO (OLPC) - fresh new subcommunity Pharo - attempt? to port Moose (world class sw analysis) to Squeak - Google hires developers with deep Smalltalk experience - Squeak web site migrated to/powered by Aida/Web Squeak - 4 (four) projects run through 2008's Goggle Summer of Code - the everybody needs it Safara from GSoC as yet not in mainstream - the everybody needs it Squeak GTK from GSoC as yet not in mainstream - IBM builds Smalltalk IDE inside Eclipse - Google hires developers with deep Smalltalk experience - ESUG 2008 conference draws more attendands than ever That list is of course incomplete, for example one wants to add the many noobs who joined #squeak and the beginners mailing list. I do not think that *soo* much is holding back Smalltalk ;) /Klaus -- If at first, the idea is not absurd, then there is no hope for it. Albert Einstein I understand the issues with Smalltalk in the past related to license costs and performance, but those have been addressed now. Have you tried to convince someone to consider Smalltalk and failed to convince them? Why do you think they rejected it? What improvements could be made to current Smalltalk environments, especially Squeak, that might sway them? For me the biggest issue has been trying to run my code from outside Squeak. This includes running Squeak headless to do something script- like and configuring a GUI application to run in a way that doesn't require the user to know they are running Squeak. Both of these are supposedly possible, but very difficult to get right. --- Mark Volkmann ___ Beginners mailing list Beginners@lists.squeakfoundation.org http://lists.squeakfoundation.org/mailman/listinfo/beginners
[Newbies] SimpleSliderMorph target setting question.
Assuming you have a simple class SecondaryCoil Object subclass: #SecondaryCoil instanceVariableNames: 'turns' classVariableNames: '' poolDictionaries: '' category: 'MyApp' with an instance variable turns and an accessor methods #turns to get the value: turns Returns the turns value ^turns and another method #turns: to set the value of the instance variable: turns: aNumber Sets the turns value turns := aNumber then you can use: |slider coil| slider := SimpleSliderMorph new. coil := SecondaryCoil new. slider target: coil. slider actionSelector: #turns:. slider openInWorld. coil inspect which is easier to write using method chaining as |slider coil| slider := SimpleSliderMorph new. coil := SecondaryCoil new. slider target: coil; actionSelector: #turns:; openInWorld. coil inspect Click on the instance variable in the inspector of your coil instance and change the slider. The value gets updated. What's the idea: a slider acts on a target and you tell him to send a message with the given selector name to this target anytime its own value changes. Since the slider will give the sliders value as an argument to the target the selector has to be a method accepting one argument. By default the slider uses values from 0.0 to 1.0 but you can change this if required: |slider coil| slider := SimpleSliderMorph new. coil := SecondaryCoil new. slider target: coil; actionSelector: #turns:; minVal: 0; maxVal: 360; openInWorld. coil inspect You can also provide another method on your new class and use #reportTurns: as action selector: reportTurns: aNumber Sets the given turns and reports the value self turns: aNumber. Transcript show: self turns asString. Since your new object is referenced by the inspector window and the slider (who holds it in an instance variable target) it will not die instantly. If you close both of them and your new object instance is not referenced elsewhere it get collected when the garbage collector run. BTW: Note that in Smalltalk you typically use just turns: as the methods name for accessors. (setTurns: is more Java style) If you use the Refactoring browser or the OmniBrowser (included in Damiens dev images) you can select an instance variable name (in the class creation expression above) and use the context menu to automatically create the accessor methods for you. Have fun Torsten http://astares.blogspot.com -- Sensationsangebot nur bis 30.11: GMX FreeDSL - Telefonanschluss + DSL für nur 16,37 Euro/mtl.!* http://dsl.gmx.de/?ac=OM.AD.PD003K11308T4569a ___ Beginners mailing list Beginners@lists.squeakfoundation.org http://lists.squeakfoundation.org/mailman/listinfo/beginners
[Newbies] body tag in seaside
I've made a casual examination, and I can't quite figure out which component creates the body tag. Of course I want to be able to set the class, but what I'd really like is for someone to point me to a place where I can read about how to do this? Tony ___ Beginners mailing list Beginners@lists.squeakfoundation.org http://lists.squeakfoundation.org/mailman/listinfo/beginners
Re: [Newbies] body tag in seaside
Tony == Tony Giaccone [EMAIL PROTECTED] writes: Tony I've made a casual examination, and I can't quite figure out which component Tony creates the body tag. Tony Of course I want to be able to set the class, but what I'd really like is Tony for someone to point me to a place where I can read about how to do this? I used methods containing string on body, and found WAHtmlRoot #writeHeadOn: which appears to pick up attributes for the body tag from ivar bodyAttrs, which can be accessed in your app's #updateRoot: by sending #bodyAttributes to the passed-in root. This is an instance of WAHtmlAttributes, so you should be able to call #addClass: on it. In other words, to your top level component, add instance-side: updateRoot: root super updateRoot: root. root bodyAttributes addClass: 'yourBodyClass'. Untested. You should also subscribe to the seaside user list. -- Randal L. Schwartz - Stonehenge Consulting Services, Inc. - +1 503 777 0095 [EMAIL PROTECTED] URL:http://www.stonehenge.com/merlyn/ Smalltalk/Perl/Unix consulting, Technical writing, Comedy, etc. etc. See http://methodsandmessages.vox.com/ for Smalltalk and Seaside discussion ___ Beginners mailing list Beginners@lists.squeakfoundation.org http://lists.squeakfoundation.org/mailman/listinfo/beginners
[Newbies] Re: [squeak-dev] Nothing much [was: what is holding back Smalltalk?]
I heard that google hired developers with deep Smalltalk experience On Nov 21, 2008, at 12:28 AM, Klaus D. Witzel wrote: On Fri, 21 Nov 2008 00:02:47 +0100, Mark Volkmann [EMAIL PROTECTED] wrote: I don't have a lot of experience with Smalltalk yet, but I really love what I've seen so far. I'm curious what experienced Smalltalkers see as some of the reasons why it doesn't attract more attention. Me thinks that the Smalltalk community is healthy and vibrant--it is just a community form one would not expect for Ruby or Python or Perl, etc. To get impression of my impression take a look at what *actually* happened during the *recent* months: - Exupery (native x86 methods) powers Huemul - Seaside (web++ framework++) powers GLASS - Hydra (multiple parallel .images) powers Croquet .images - Google hires developers with deep Smalltalk experience - two more gods to be worshipped in the VM temple ;) - Squeak powers NewSpeak - new book Squeak by Example (creative commons license) - port of OpenDBX to Squeak (still not on windoze) - port of Squeak/VM to another smartphone platform ;) - DrGeo made it to the XO (OLPC) - fresh new subcommunity Pharo - attempt? to port Moose (world class sw analysis) to Squeak - Google hires developers with deep Smalltalk experience - Squeak web site migrated to/powered by Aida/Web Squeak - 4 (four) projects run through 2008's Goggle Summer of Code - the everybody needs it Safara from GSoC as yet not in mainstream - the everybody needs it Squeak GTK from GSoC as yet not in mainstream - IBM builds Smalltalk IDE inside Eclipse - Google hires developers with deep Smalltalk experience - ESUG 2008 conference draws more attendands than ever That list is of course incomplete, for example one wants to add the many noobs who joined #squeak and the beginners mailing list. I do not think that *soo* much is holding back Smalltalk ;) /Klaus ___ Beginners mailing list Beginners@lists.squeakfoundation.org http://lists.squeakfoundation.org/mailman/listinfo/beginners
[Newbies] Re: [squeak-dev] Nothing much [was: what is holding back Smalltalk?]
Klaus D. Witzel wrote: Me thinks that the Smalltalk community is healthy and vibrant--it is just a community form one would not expect for Ruby or Python or Perl, etc. To get impression of my impression take a look at what *actually* happened during the *recent* months: Why would one not expect this community for Ruby or Python or Perl? Could you please explain what you mean, for this puzzles me ... ___ Beginners mailing list Beginners@lists.squeakfoundation.org http://lists.squeakfoundation.org/mailman/listinfo/beginners
Re: [Newbies] Coloring images with transparant parts
Hi, thanks for your hints. I also found ColorFormreplaceColor:with: which does what you describe. But it is unfortunately not what I was looking for. I wasn't very clear in my original post: I (now) have a gray-scale image which I want to colorize, that is I want to change the hue of the image and not just replace a color with another (or floodfill for that matter). Hope you guys have some ideas. I tried searching with the Method Finder, but my poor english didn't take me very far. Thanks a lot. Matthias Am Tue, 18 Nov 2008 15:08:27 +0100 schrieb Matthias Korn [EMAIL PROTECTED]: Hi all, I have a .png or .gif image (e.g. an ImageMorph) with transparent parts (e.g. a circle where the outer part is transparent). I now want to have this one image and color it programmatically with other colors (e.g. the circle appearing in slight red, green, blue ...). Is this possible to do with Squeak/Morphic? How? Thanks, Matthias ___ Beginners mailing list Beginners@lists.squeakfoundation.org http://lists.squeakfoundation.org/mailman/listinfo/beginners -- Matthias Korn Institut für Wirtschaftsinformatik Fachbereich 5 Universität Siegen Telefon: +49 (0) 271 / 23 67 660 Mobil: +49 (0) 176 / 700 17 17 8 Uni: +49 (0) 271/ 740 - 3382 eMail: [EMAIL PROTECTED] ___ Beginners mailing list Beginners@lists.squeakfoundation.org http://lists.squeakfoundation.org/mailman/listinfo/beginners
Re: [Newbies] Coloring images with transparant parts
On 22.11.2008, at 01:15, Matthias Korn wrote: Hi, thanks for your hints. I also found ColorFormreplaceColor:with: which does what you describe. But it is unfortunately not what I was looking for. I wasn't very clear in my original post: I (now) have a gray-scale image which I want to colorize, that is I want to change the hue of the image and not just replace a color with another (or floodfill for that matter). Hope you guys have some ideas. I tried searching with the Method Finder, but my poor english didn't take me very far. Use a color map. Your grayscale image could be 8 bits, so with a 256 entries palette you can map that to any color(s) you want. Color maps are used in ColorForm, or directly with BitBlt. - Bert - ___ Beginners mailing list Beginners@lists.squeakfoundation.org http://lists.squeakfoundation.org/mailman/listinfo/beginners
[Newbies] Re: Nothing much [was: what is holding back Smalltalk?]
On Fri, 21 Nov 2008 21:23:13 +0100, Claus Kick wrote: Klaus D. Witzel wrote: Me thinks that the Smalltalk community is healthy and vibrant--it is just a community form one would not expect for Ruby or Python or Perl, etc. To get impression of my impression take a look at what *actually* happened during the *recent* months: Why would one not expect this community for Ruby or Python or Perl? Could you please explain what you mean, for this puzzles me ... There are (almost uncountable ;) many things which shape these communities; perhaps I focus on some of the obvious from a day-to-day perspective: - starting+using Smalltalk is always starting+using the whole system, there are no parts, in an absolute sense, and there is no way to change that - the Smalltalker has generally broader knowledge about his *whole* system, think of navigating implementers of as an example - the Smalltalker has generally deeper knowledge about his *whole* system, think of navigating senders of as an example This (and more ;) naturally orients the community along completely different dimensions, beginning with the learning curve, through things you can change+reuse, up to things you can achieve (like VMMaker+Simulator or Etoys or Scratch or Croquet or Moose or DabbleDB or Sophie), with a handful of people, in the Smalltalk community. /Klaus -- If at first, the idea is not absurd, then there is no hope for it. Albert Einstein ___ Beginners mailing list Beginners@lists.squeakfoundation.org http://lists.squeakfoundation.org/mailman/listinfo/beginners