This post was updated on .
CONTENTS DELETED
The author has deleted this message.
|
;)
btw are working on a com lib for pharo because we were discussing it with esteban Le 2/10/16 à 04:09, CodeDmitry a écrit : > Just made this image, I thought it would be fun to share :3 (Yes there are a > few memory leaks there due to no SysFreeString to match SysAllocString, but > regardless... > > http://i.imgur.com/Fz36SHU.png > > COM to Microsoft Windows seems to be like Smalltalk to Smalltalk Runtime, > with Object Browser being the Windows Registry. > > > > -- > View this message in context: http://forum.world.st/Intro-to-Microsoft-COM-for-Smalltalkers-tp4917738.html > Sent from the Pharo Smalltalk Users mailing list archive at Nabble.com. > > |
In reply to this post by CodeDmitry
Ah the ugliness of Windoom programming has not changed since the last time I tried to learn MFC 20 years ago.it melts my eyes. COM is an IPC tool, Windows registry is still a horrible idea. No connection with Smalltalk whatsoever . And of course we don't worry about memory leaks. On Sun, 2 Oct 2016 at 04:15, CodeDmitry <[hidden email]> wrote: Just made this image, I thought it would be fun to share :3 (Yes there are a |
Hey, all you have to do is reboot your computer (often). Sent from my iPhone
|
In reply to this post by stepharo
> On 2 Oct 2016, at 07:09, stepharo <[hidden email]> wrote: > > ;) > > > btw are working on a com lib for pharo because we were discussing it with esteban yes, Pablo already has a prototype working :) Esteban > > > > Le 2/10/16 à 04:09, CodeDmitry a écrit : >> Just made this image, I thought it would be fun to share :3 (Yes there are a >> few memory leaks there due to no SysFreeString to match SysAllocString, but >> regardless... >> >> http://i.imgur.com/Fz36SHU.png >> >> COM to Microsoft Windows seems to be like Smalltalk to Smalltalk Runtime, >> with Object Browser being the Windows Registry. >> >> >> >> -- >> View this message in context: http://forum.world.st/Intro-to-Microsoft-COM-for-Smalltalkers-tp4917738.html >> Sent from the Pharo Smalltalk Users mailing list archive at Nabble.com. >> >> > > |
This post was updated on .
In reply to this post by kilon.alios
CONTENTS DELETED
The author has deleted this message.
|
Well that is not fair because C++ CLI is basically C++ .NET which is another language altogether baring some resemblance to C++. And you dont need C++ CLI to sit on barrier of runtime and compile , C++ can do this just fine. https://github.com/kilon/LiveCPP https://www.youtube.com/watch?v=WMSBRk5WG58 .NET is another thing altogether, its a beauty. Its actually an insult to put C# and Java on the same sentence, many coders think that C# is a rip off of Java but nothing could be further from the truth. The creator of .NET is not Microsoft , Microsoft has no clue what good design is, its a coder they hired that worked previously with Borland and created the gorgeous Delphi. Delphi is the only true pro quality Smalltalk out there, without being a Smalltalk. That may sound as a contradiction and it is. Delphi does not use the Smalltalk language , instead uses Object Pascal but pretty much else is a recipe take from the Smalltalk book, notable the API which Delphi calls VCL and the IDE. The API is of special interest here because it has been the first pro quality api to utilize full OO the proper way , with well designed objects and carefully mapped class inheritance. Java on the other hand like windows C++ APIs is a huge pile of mess. The same coder designed C# and .NET and used all the ideas he used with Delphi , winforms alone is a large rip off of Delphi's GUI api. But even with this beauty Microsoft could help itself dropping the ball, so what it did was to completely ignore the cross platform ability of .NET , hence why Java kept the lead. The excuse was mainly the Windows Mobile that Microsoft dreamed of competing with iOS and Android but that dream eventually failed with the spectacular commercial failure of Microsoft smartphones. So Microsoft did the expected thing, accepted defeat and bought the company that already ported .NET to iOS and Android and countless other platforms and named it Mono. The company is called Xamarin. Fortunately Microsoft seems to learn from its past mistakes and has recently redesigned .NET to better support cross platform and even open sourced it. Personally I love .NET and I would not mind at all coding on C# and ironpython (.NET variant of python). Mircrosoft definetly has lost interest in C++ anyway , it has seen the rapidly decline of the language of the language and the mass migration to Java. Java may be ugly but it cured of the pain of manual memory management and offered the first pure business orientated API with the best cross platform support. Java also destroyed the myth that a Garbage Collector cannot reach top performance and compete with C++ code. In sort Java is not as popular because of the design of its libraries but is certainly extremely popular for a lot other reasons. The question is why you even bother with C++ CLI , C++ CLI was created mainly to bridge C++ with C# / .NET languages, is there a reason you prefer it over C# ? On Sun, Oct 2, 2016 at 2:01 PM CodeDmitry <[hidden email]> wrote: To be fair, C++CLI is quite a pleasure to code, it's a very refreshing |
By the way I am all for COM for Pharo, the issue is that 2/3 of our community are MacOS and Linux users , I dont even remember the last time we had a Windows only topic in the mailing list. Modern languages generally avoid using OS specific libraries, the last exceptions be C# and Swift and C# definetly looks like it will be fully cross platform soon enough (it already is because of Mono). On Sun, Oct 2, 2016 at 4:49 PM Dimitris Chloupis <[hidden email]> wrote:
|
2016-10-02 10:57 GMT-03:00 Dimitris Chloupis <[hidden email]>:
> By the way I am all for COM for Pharo, the issue is that 2/3 of our > community are MacOS and Linux users , I dont even remember the last time we > had a Windows only topic in the mailing list. Modern languages generally > avoid using OS specific libraries, the last exceptions be C# and Swift and > C# definetly looks like it will be fully cross platform soon enough (it > already is because of Mono). I wouldn't state such affirmations without a proper surveying. My latest survey related with RDBMS support [1] showed that the users of Windows are on par with the users of MacOS. I am a Windows user, who runs most of the Pharo images inside Linux VMs not because I don't want to run them in Windows, but because the current support of Windows is somewhat limited. Having COM support for Pharo in a Windows environment would be a big enabler to a lot of current users of Smalltalk that don't use Pharo. Esteban A. Maringolo [1] https://medium.com/@emaringolo/pharo-rdbms-support-survey-results-9c8f640878db#.ym049enul |
Well first of all what you linked supports my claim that 2/3 of Pharo users are MacOS and Linux users which I based on another survey which pretty much verifies what you linked. On Sun, Oct 2, 2016 at 6:46 PM Esteban A. Maringolo <[hidden email]> wrote: 2016-10-02 10:57 GMT-03:00 Dimitris Chloupis <[hidden email]>: |
In reply to this post by Esteban A. Maringolo
I would for sure second that. I am using COM for dealing with this thing: http://www.sparxsystems.com/ about all day long a couple days a week. Bridging this with Roassal/Moose for additional visualisations would be super (I am going to look at that one in the coming weeks to help with the overall quality assessment of a quite large model). Phil On Sun, Oct 2, 2016 at 5:44 PM, Esteban A. Maringolo <[hidden email]> wrote: 2016-10-02 10:57 GMT-03:00 Dimitris Chloupis <[hidden email]>: |
This post was updated on .
In reply to this post by kilon.alios
CONTENTS DELETED
The author has deleted this message.
|
On Sun, Oct 2, 2016 at 8:52 PM, CodeDmitry <[hidden email]> wrote: @kilon.alios forking a process with a delay in it? [ <doSomething> (DelayWaitTimeout forSeconds: 2) wait ] fork
|
In reply to this post by CodeDmitry
I don't speak for the pharo community but even when I was new to smalltalk back 4 years ago if I have read a comment like "Smalltalk is dead, why are we studying this useless language" I would keep my distance from that person. Because a) calling something "dead" in software is stupid b) calling something "useless" in software is even more stupid. I would prefer it if I was not so rude but in situations like these its kinda pointless hiding the obvious truth. There are people who still code entire OSs for my first computer Amstrad CPC 6128 a computer back from 1988 with 128 kb of Ram and 4 hz of cpu. One such OS has multitasking , GUIs, video player, web browser and all that built on technology that is 30 years old and thousands times slower, thats how useful "dead" software is. Ask the same people for how long Java has been dead , because people have been declaring the death of Java for decades now. Java is beyond dead , its actually the queen of undead. -As phil said, use fork for delay and your image will never freeze again because of the code you executed. I understand someone not wanting to learn Pharo or Smalltalk on the basis he wont use it as a professional, I sympathize. Then again, I have not used 99% of the languages I have learned.Do I regret learning them ? Nope, they made me a better programmer and that is what Pharo is doing too. Lets be sincere here , people who love to be spoon fed wont be contributing to open source project any time soon. Contributing to an open source project is difficult, require patience and determination. No GC language forces you to use garbage collection you can circumvent it easily using an FFI. But then if you have no intention of taking advantage of GC then there is no point on using a GC language and I can understand why you prefer C++ CLI. On other hand Pharo does enforce dynamic types but then OOP by nature is dynamic anyway. On Sun, Oct 2, 2016 at 9:59 PM CodeDmitry <[hidden email]> wrote: @kilon.alios |
This post was updated on .
CONTENTS DELETED
The author has deleted this message.
|
you dont need to have a lot of experience to contribute, even with zero experience as a coder if you understand the basics you can at least contribute class comments. Contribution wise Pharo is quite flexible and if one is lost in the process people are more than happy to help him/her out. When I helped a Pharo student to learn , she was really suprised that I was so helpful but on the other hand when I joined the community people really helped me out understanding Pharo and answered even my most irrelevant questions. Plus even if you just want to create your own libraries as long as you share them you still contributing enough. None will stop you from following your own design principles , Pharo developers made it even very easy to make your project to be installed with a single click directly from inside the image via Package Browser. This is actually one of the big strengths of Pharo that has made contributions so easy. On Sun, Oct 2, 2016 at 11:45 PM CodeDmitry <[hidden email]> wrote: Contribution is something I've been thinking about for quite some time |
In reply to this post by CodeDmitry
Ok. Fine points. Want to contribute? Easy: https://pharo.fogbugz.com/ Even more easy: join the association @ http://association.pharo.org/ Being using it for serious stuff and make money out of it? Join the consortium : http://consortium.pharo.org/ Discover some little interesting gem or way to do things in it? Tweet with #Pharo. https://twitter.com/search?q=%23Pharo (more people should do this actually). Use it whenever you can, it will force you to understand how to do real stuff with it properly. I do hackathons with it. https://hackernoon.com/hackapost-how-hackathons-can-be-the-best-learning-tool-under-the-sun-9c97e567e0a5 I do use it to do things for customers and whoever could benefit. I just crafted a little tool to produce summary tables for a school this week. They were doing this computation by hand or using they somewhat basic Excel skills. Key important thing: no complications to install that on a Windows box: unzip folder, run Pharo. Net result: good karma. I now of no other platform where you can get something you make an easy to integrate part (if not in the core, in a package/configuration). This community is smaller, contributors can actually make a difference. Think about how it makes you feel: valued. Not yet another package in a sea of packages. If I were to listen what other people do, yeah, one day Scala, the next Python, the next Angular(2), React, Node, Electron, Swift, C#, not to mention the Hadoop bestiary ... this is a neverending stream of ever switching tech. It will not stop. [I am using these things for real projects mind you - https://proba-v-mep.esa.int/ is what I am busy with half my weeks]. How does one develop a true solid understanding of the underlying fundamentals? With Pharo you actually can. Can see how parsing works (PetitParser), can see how VM works (read Clement Bera blog and write your little VM thingy), can see how a click become an event and actually craft nifty little tools, look into VM plugins and see how something is done in various major platforms, ...). We are not just *using* what vendors throw at us. We are actually able to go to the next level. The price for that freedom is present. But it gives a better appreciation of the whole picture. You sound like a fine fellow, so, welcome aboard and help us make this thing rock even more. Phil On Sun, Oct 2, 2016 at 10:38 PM, CodeDmitry <[hidden email]> wrote: Contribution is something I've been thinking about for quite some time |
In reply to this post by CodeDmitry
On Mon, Oct 3, 2016 at 2:52 AM, CodeDmitry <[hidden email]> wrote:
> @kilon.alios > > [1] > I like C++/CLI more than C# because it is very refreshing to use a > language capable of using managed memory and unmanaged memory. > > I am too used to being in languages where garbage collection is > forced on you and everything must be done via new or stack types > such as Java, most scripting languages; > Or using languages where static-types are forced on you and > heavily encouraged over dynamic types. > > I feel very "free" when I write C++CLI, as it can do everything > C# can(although many things are admitably harder), but it can also > call C when it feels like it. > > [2] > If you want to get more users, I hope you are checking the things > people are saying about Smalltalk. > > In my class last week, the general concensus was that > "Smalltalk is dead, why are we studying this useless language". This article is about Lisp, but the same applies to Smalltalk... http://www.paulgraham.com/avg.html University is not just about spitting you out able to operate the latest fashionable tools, which may change in five years anyway. Its about *stretching* your mind in different directions by exposure to *different* paradigms. Smalltalk's immersive programming within an environment of live and persistent objects is about as different as you can get from the conventional file based programming. If they've not grokked this "blub" aspect of Smalltalk due to short-sighted negative approach then they are missing a learning opportunity. After University, work/life pressures provide less opportunity to learn such different paradigms - so you may be forever blind to them. The only languages worth learning are those that change the way you *think* about programming. As for why Smalltalk didn't hit mainstream yet? It seems more a failure of business strategy than technical fundamentals in a time when the Internet was changing the nature of the world - including programming with free tools and open source collaboration. http://c2.com/cgi/wiki?WhyIsSmalltalkDead > > Personally, I really enjoy the environment, but I feel that the > environment would do better from giving existing users a reason > to tell their friends about Pharo, and to like the language. > > There are many things that relate to this > > 1. Reasons to be excited about Pharo/Smalltalk > - It is a system where you can modify the system within the system. > - It has a very simple syntax, which is capable of doing things as > powerful as JavaScript. > - It is easy to get on Windows(3 minute download self contained)... > - It has pretty powerful prototyping means, but it's not quite as > powerful as > it could be. One way to improve this would be to add a morph editor > similar to > VB6. Morphs are somewhat scary to new users right now, and I feel they > stand a bit > further than where AWT/Swing is in terms of difficulty getting > started, even > if it is not necessarily true. > > 2. Quality of Life > - Blocks the GUI thread in strange scenarios: It's really aggrevating > when > it does this; when you type in code, the GUI should not freeze! > - Make it a bit easier to remove morphs(Pit of least astonishment, shift > alt click > is not obvious, and morph that consists of many morphs is somewhat > hard to select > the parent morph, so you have to delete the child morph then shift alt > click the > same place to select the underlying morph(eg grids). > - More themes! > - I know you're going to hate me for this but... It's a bit annoying to > install > Pharo on 64-bit Linux right now... This is a high priority and a 64-bit is imminent. > - It is kind-of hard to understand what .image, .changes, and .sources > are and > the material online isn't very exhaustive on their responsibilities. > To date I > am not actually sure what purpose .sources serves. For each Pharo Release the .changes file that has been running during development is condensed to a static .sources file, so that the Release has an empty .changes files. So only user changes show up in .changes. > - It's too easy to put Pharo into inconsistant state where it harasses > you with > popups. It should be easier to access the "undo whatever I just did > please", whether > it is editing of code, or running a code, I am not sure how easy this > is but at the > moment, it's not as up-front as it could be; It's scary when you do > something and > your environment starts yelling at you. (Maybe we could use some > Toasts instead of > Popups?). With great power comes great responsibility ;) Yes it can be tough as a newcomer when you don't know where the traps are. Something more to help recovery would be useful. > - Is there a Pharo alternative to JavaScript timeouts? Can you describe Javascript timeouts? > > That is all I could think of for now, probably not going to help you much > but I wanted > to give my 1/1000 of a cent. Thanks for your feedback. It is good to get a newcomers perspective. Some of these are know issues that we get used to and work around because we balance them off against other "blub" benefits of the environment, which newcomers might not stick around long enough to discover if the entry friction is too high. cheers -ben |
In reply to this post by Esteban A. Maringolo
+1
We want to support Windows! But ... 64 bits, FFI++, ARM ... well you know. Gimme 10 Millions or just one million and the situation will be really different. Stef >> By the way I am all for COM for Pharo, the issue is that 2/3 of our >> community are MacOS and Linux users , I dont even remember the last time we >> had a Windows only topic in the mailing list. Modern languages generally >> avoid using OS specific libraries, the last exceptions be C# and Swift and >> C# definetly looks like it will be fully cross platform soon enough (it >> already is because of Mono). > I wouldn't state such affirmations without a proper surveying. > > My latest survey related with RDBMS support [1] showed that the users > of Windows are on par with the users of MacOS. > > I am a Windows user, who runs most of the Pharo images inside Linux > VMs not because I don't want to run them in Windows, but because the > current support of Windows is somewhat limited. > > Having COM support for Pharo in a Windows environment would be a big > enabler to a lot of current users of Smalltalk that don't use Pharo. > > Esteban A. Maringolo > > [1] https://medium.com/@emaringolo/pharo-rdbms-support-survey-results-9c8f640878db#.ym049enul > > |
This post was updated on .
In reply to this post by Ben Coman
CONTENTS DELETED
The author has deleted this message.
|
Free forum by Nabble | Edit this page |