Re: [Pharo-users] Glorp
Ah tx for the explanation. I'm sure that I like bundles for the sake of them. should not we removed DBXGlorp if it is not up to date? Is BDXGlorp based on latest Glorp port? GlorpDBX is nothing but a name to a Metacello config that used to load both Glorp and the OpenDBX (now garageDB) drivers. Esteban A. Maringolo
Re: [Pharo-users] bytes to utf8 string / byte stream parsing
Hello Fabrice Did you read the excellent book chapter written by sven on stream encodings? Check Enterprise Pharo book http://books.pharo.org Now can you tell us what you want to do? It would be nice also to check if Xtreams offers (or deserves some extensions). Stef Le 30/9/16 à 12:57, Fabrice Leal a écrit : can anyone provide me some pointers on how to turn a bunch of bytes into a utf8 string? i'm planning on writing a byte stream parser, would appreciate anything you might find useful in addition to the Streams chapter from Pharo by Example -- --- Fabrice Leal
Re: [Pharo-users] Intro to Microsoft COM for Smalltalkers
+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
Re: [Pharo-users] Get implementors list window from Spotter
Me too ;) I thought that I was the only one not being able to use Spotter :) I meant to add, in practice what I find happened is that I use Spotter to do initial search for implementors, then I randomly select onne of the so that I can do ctrl-M to get to the ImplementorsOf dialog. It would be nice to skip that intermediate step. cheers -ben
Re: [Pharo-users] Intro to Microsoft COM for Smalltalkers
On Mon, Oct 3, 2016 at 2:52 AM, CodeDmitrywrote: > @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,
Re: [Pharo-users] Intro to Microsoft COM for Smalltalkers
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, CodeDmitrywrote: > Contribution is something I've been thinking about for quite some time > because it's interesting how a lot of software is declared "open" but make > it not obvious what you can do to help, or at least participate, or just > take a glimpse at the code to see if something stands out. > > I am a believer that there is a way to structure a project in a way to make > it very easy for people with decent experience in broad programming > paradigms to jump into looking over your code and propose revisions or > question design decisions. > > That said, I've also been in groups where people only want to write things > once and forget it exists and can't handle any criticism and consider any > questions asked to them as a waste of time, who will only work on stuff > at last moment and won't let anybody help them. > > The factors I've noticed are: > > 1. Ease of finding the repositories which you want people to contribute to, > and tell them apart from > repositories which you don't want people to contribute to, or are > irrelevant > to the project(often a project > is broken down into multiple repositories, and the dependency chain isn't > clear). > > 2. Dependencies: If you ever took a look at a Minix Kernel, you will notice > a huge chain of headers > including headers including headers, scopes with over 7 variables in them, > and nonflat hierarchies which > look at multiple include directories, many of which are not even part of > the > project, eg Minix will look at > the system's include directory to decide things rather than figure it out > in > a standalone way. This means > that it is very hard to just take things out of context and understand them > without traversing huge > dependency chains, this really discourages contribution. > > 3. Strict coding guidelines: i've seen projects that force you to either > use > tabs, or only use spaces, or such. These are very harmful to encouraging as > many people to participate as possible; we have tools > to restructure code you are looking at automatically, but these tools are > not very easy to access on > all platforms, and need to be configured to your tastes. These tools > improve > productivity immensely but > people need to be told how to use them. > > 4. Ease of telling "where is the start" "where is the end". Many projects > are simply too hard to tell where the start/where the end is, and where the > plugins are, etc. Making it clear where the VM start point is, and > how the project is structured, how the dependency chain looks like really > helps familiarize yourself faster, >
Re: [Pharo-users] Intro to Microsoft COM for Smalltalkers
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 CodeDmitrywrote: > Contribution is something I've been thinking about for quite some time > because it's interesting how a lot of software is declared "open" but make > it not obvious what you can do to help, or at least participate, or just > take a glimpse at the code to see if something stands out. > > I am a believer that there is a way to structure a project in a way to make > it very easy for people with decent experience in broad programming > paradigms to jump into looking over your code and propose revisions or > question design decisions. > > That said, I've also been in groups where people only want to write things > once and forget it exists and can't handle any criticism and consider any > questions asked to them as a waste of time, who will only work on stuff > at last moment and won't let anybody help them. > > The factors I've noticed are: > > 1. Ease of finding the repositories which you want people to contribute to, > and tell them apart from > repositories which you don't want people to contribute to, or are > irrelevant > to the project(often a project > is broken down into multiple repositories, and the dependency chain isn't > clear). > > 2. Dependencies: If you ever took a look at a Minix Kernel, you will notice > a huge chain of headers > including headers including headers, scopes with over 7 variables in them, > and nonflat hierarchies which > look at multiple include directories, many of which are not even part of > the > project, eg Minix will look at > the system's include directory to decide things rather than figure it out > in > a standalone way. This means > that it is very hard to just take things out of context and understand them > without traversing huge > dependency chains, this really discourages contribution. > > 3. Strict coding guidelines: i've seen projects that force you to either > use > tabs, or only use spaces, or such. These are very harmful to encouraging as > many people to participate as possible; we have tools > to restructure code you are looking at automatically, but these tools are > not very easy to access on > all platforms, and need to be configured to your tastes. These tools > improve > productivity immensely but > people need to be told how to use them. > > 4. Ease of telling "where is the start" "where is the end". Many projects > are simply too hard to tell where the start/where the end is, and where the > plugins are, etc. Making it clear where the VM start point is, and > how the project is structured, how the dependency chain looks like really > helps familiarize yourself faster, > and lets people jump into contributing faster as they don't feel like they > need to learn EVERYTHING > before doing anything. > > > > My argument is: > Let S be the set of all people who are aware of Pharo's existence who have > enough > programming experience to be relevant to possibly contributing. > > Let C be the set of all the people in S who have an interest in > contributing > to Pharo, or are willing to contribute to Pharo if you were to come up to > them and ask them to sit next to you and work on it with you. eg they have > the time/resources but don't feel like they go out of their way to get > started. > > Let N be the set of all the people in C who are actually contributing or > will contribute to Pharo at some point. > > There exists a way to structure the project under a philosophy which, the > closer you come to it, > the more set N decreases, that is, if the philosophy is executed perfectly, > there are no people who are > capable of contributing something relevant, who have not done so or will > never do so. > > I am not quite sure what the exhaustive philosophy is, but I suspect the > factors up front play a part in it. > > > > > > -- > View this message in context: > http://forum.world.st/Intro-to-Microsoft-COM-for-Smalltalkers-tp4917738p4917793.html > Sent from the Pharo Smalltalk Users mailing list archive at Nabble.com. > >
Re: [Pharo-users] Intro to Microsoft COM for Smalltalkers
Contribution is something I've been thinking about for quite some time because it's interesting how a lot of software is declared "open" but make it not obvious what you can do to help, or at least participate, or just take a glimpse at the code to see if something stands out. I am a believer that there is a way to structure a project in a way to make it very easy for people with decent experience in broad programming paradigms to jump into looking over your code and propose revisions or question design decisions. That said, I've also been in groups where people only want to write things once and forget it exists and can't handle any criticism and consider any questions asked to them as a waste of time, who will only work on stuff at last moment and won't let anybody help them. The factors I've noticed are: 1. Ease of finding the repositories which you want people to contribute to, and tell them apart from repositories which you don't want people to contribute to, or are irrelevant to the project(often a project is broken down into multiple repositories, and the dependency chain isn't clear). 2. Dependencies: If you ever took a look at a Minix Kernel, you will notice a huge chain of headers including headers including headers, scopes with over 7 variables in them, and nonflat hierarchies which look at multiple include directories, many of which are not even part of the project, eg Minix will look at the system's include directory to decide things rather than figure it out in a standalone way. This means that it is very hard to just take things out of context and understand them without traversing huge dependency chains, this really discourages contribution. 3. Strict coding guidelines: i've seen projects that force you to either use tabs, or only use spaces, or such. These are very harmful to encouraging as many people to participate as possible; we have tools to restructure code you are looking at automatically, but these tools are not very easy to access on all platforms, and need to be configured to your tastes. These tools improve productivity immensely but people need to be told how to use them. 4. Ease of telling "where is the start" "where is the end". Many projects are simply too hard to tell where the start/where the end is, and where the plugins are, etc. Making it clear where the VM start point is, and how the project is structured, how the dependency chain looks like really helps familiarize yourself faster, and lets people jump into contributing faster as they don't feel like they need to learn EVERYTHING before doing anything. My argument is: Let S be the set of all people who are aware of Pharo's existence who have enough programming experience to be relevant to possibly contributing. Let C be the set of all the people in S who have an interest in contributing to Pharo, or are willing to contribute to Pharo if you were to come up to them and ask them to sit next to you and work on it with you. eg they have the time/resources but don't feel like they go out of their way to get started. Let N be the set of all the people in C who are actually contributing or will contribute to Pharo at some point. There exists a way to structure the project under a philosophy which, the closer you come to it, the more set N decreases, that is, if the philosophy is executed perfectly, there are no people who are capable of contributing something relevant, who have not done so or will never do so. I am not quite sure what the exhaustive philosophy is, but I suspect the factors up front play a part in it. -- View this message in context: http://forum.world.st/Intro-to-Microsoft-COM-for-Smalltalkers-tp4917738p4917793.html Sent from the Pharo Smalltalk Users mailing list archive at Nabble.com.
Re: [Pharo-users] Intro to Microsoft COM for Smalltalkers
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. I am not promoting either Smalltalk or Pharo because frankly there are better alternatives out there. But I am using Pharo because I find the whole environment very enjoyable for my taste. I also admire people of this community because they are not afraid to break away from popularity and innovate, I find this very refreshing. Software development is littered with unimaginative clones, Pharo is a breath of fresh air. There are many flaws in Pharo and I think as a community we are well aware of them , for us it was never an issue what we should do to bring new users , but rather how to convince more people to contribute because in the end problems dont fix themselves. This a known problem for vast majority of open source software and if we use your class criteria most software is "dead" by these standards. -Morphic designer has been tried in the past, its a huge project and quite complex to pull through. I would not hold my breath. -Pharo is not 64 bit, yet, but soon -The perks of allowing the system to be hacked easily are that you going to have some severe side effects in some cases, especially if you dont know what you are doing. -Popups , no idea what you mean , I dont have such problem - sources is exactly what the name says, source code, the image contains only bytecode, so without sources you cannot view the source code of the system - Easier morph removal exists, just inspect the parent morph the inspector will show you the children then go to the child you want to delete and issue a self delete command. But yeah halos could be improved in this case. -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 CodeDmitrywrote: > @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". > > 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
Re: [Pharo-users] Intro to Microsoft COM for Smalltalkers
On Sun, Oct 2, 2016 at 8:52 PM, CodeDmitrywrote: > @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". > > 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... > - 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. > - 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?). > - Is there a Pharo alternative to JavaScript timeouts? > forking a process with a delay in it? [ (DelayWaitTimeout forSeconds: 2) wait ] fork > > 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. > > > > -- > View this message in context: http://forum.world.st/Intro- > to-Microsoft-COM-for-Smalltalkers-tp4917738p4917788.html > Sent from the Pharo Smalltalk Users mailing list archive at Nabble.com. > > >
Re: [Pharo-users] Intro to Microsoft COM for Smalltalkers
@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". 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... - 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. - 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?). - Is there a Pharo alternative to 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. -- View this message in context: http://forum.world.st/Intro-to-Microsoft-COM-for-Smalltalkers-tp4917738p4917788.html Sent from the Pharo Smalltalk Users mailing list archive at Nabble.com.
Re: [Pharo-users] Intro to Microsoft COM for Smalltalkers
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. Maringolowrote: > 2016-10-02 10:57 GMT-03:00 Dimitris Chloupis : > > 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 > > >
Re: [Pharo-users] Intro to Microsoft COM for Smalltalkers
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. Second the vast majorities of libraries out other for any programming language are cross platform so I am willing to bet that we will attract even more users if we emphasize cross platform support instead of libraries that OS exclusive. Of course that implies good support for Windows too. It will be kinda ironic Microsoft to beats us in the ability to be cross platform. Third I already said I fully support the effort to bring COM features to Pharo, the exact wording "By the way I am all for COM for Pharo" leave little to doubt if nothing at all. I would not use nor I would recommend using a OS specific library but there are definitely scenarios where it makes sense to use one and having it around is much better than not having it around. On Sun, Oct 2, 2016 at 6:46 PM Esteban A. Maringolowrote: > 2016-10-02 10:57 GMT-03:00 Dimitris Chloupis : > > 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 > >
Re: [Pharo-users] Glorp
2016-10-02 2:37 GMT-03:00 stepharo: > should not we removed DBXGlorp if it is not up to date? > > Is BDXGlorp based on latest Glorp port? GlorpDBX is nothing but a name to a Metacello config that used to load both Glorp and the OpenDBX (now garageDB) drivers. Esteban A. Maringolo
Re: [Pharo-users] Intro to Microsoft COM for Smalltalkers
2016-10-02 10:57 GMT-03:00 Dimitris Chloupis: > 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
Re: [Pharo-users] Intro to Microsoft COM for Smalltalkers
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 Chloupiswrote: > 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. > > I found this recently trying to experiment at whether its possible to do > live coding with C++. I found it after following tutorials that is very > possible doing that isfyou put only a super minimal code loop in the > executable that loads DLLs and divert all other code to DLLs. This gives > you ability to have instant compilation and change code while it is > executed. For live data you can put all data to a place in memory and then > pass the memory as pointer to the DLLs. This give you live inspection of > data and live change of data. You can even protect yourself from crashes , > something that Pharo cannot currently do, by wrapping the loading of the > DLLs to an OS exception, the executable will never crash but it will show > the crash errors. Of course you can hook the debugger for live debugging > etc. > > You can find my experiment here > https://github.com/kilon/LiveCPP > and find more info here > https://www.youtube.com/watch?v=WMSBRk5WG58 > > My complains however is over the design of WIndows APIs for C++ , they are > beyond ugly, the naming convention alone has a notoriously bad reputation. > > .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 wrote: > > To be fair, C++CLI is quite a pleasure to code, it's a very refreshing > technology that sits nicely on the barrier of runtime and compiletime, > similar to Objective C; eg still has access to unmanaged resources, while > still having managed resources in contrast to Java/C# which kinda go one > step towards runtime, and ISO C++ which tries to stay within
Re: [Pharo-users] Intro to Microsoft COM for Smalltalkers
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. I found this recently trying to experiment at whether its possible to do live coding with C++. I found it after following tutorials that is very possible doing that isfyou put only a super minimal code loop in the executable that loads DLLs and divert all other code to DLLs. This gives you ability to have instant compilation and change code while it is executed. For live data you can put all data to a place in memory and then pass the memory as pointer to the DLLs. This give you live inspection of data and live change of data. You can even protect yourself from crashes , something that Pharo cannot currently do, by wrapping the loading of the DLLs to an OS exception, the executable will never crash but it will show the crash errors. Of course you can hook the debugger for live debugging etc. You can find my experiment here https://github.com/kilon/LiveCPP and find more info here https://www.youtube.com/watch?v=WMSBRk5WG58 My complains however is over the design of WIndows APIs for C++ , they are beyond ugly, the naming convention alone has a notoriously bad reputation. .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 CodeDmitrywrote: > To be fair, C++CLI is quite a pleasure to code, it's a very refreshing > technology that sits nicely on the barrier of runtime and compiletime, > similar to Objective C; eg still has access to unmanaged resources, while > still having managed resources in contrast to Java/C# which kinda go one > step towards runtime, and ISO C++ which tries to stay within compile time. > > Windows Programming isn't quite that bad now with C++CLI, my image is > contrived to demonstrate one of my first successful attempts at getting COM > to actually do something other than give me compilation errors. > > > > -- > View this message in context: > http://forum.world.st/Intro-to-Microsoft-COM-for-Smalltalkers-tp4917738p4917767.html > Sent from the Pharo Smalltalk Users mailing list archive at Nabble.com. > >
Re: [Pharo-users] Intro to Microsoft COM for Smalltalkers
To be fair, C++CLI is quite a pleasure to code, it's a very refreshing technology that sits nicely on the barrier of runtime and compiletime, similar to Objective C; eg still has access to unmanaged resources, while still having managed resources in contrast to Java/C# which kinda go one step towards runtime, and ISO C++ which tries to stay within compile time. Windows Programming isn't quite that bad now with C++CLI, my image is contrived to demonstrate one of my first successful attempts at getting COM to actually do something other than give me compilation errors. -- View this message in context: http://forum.world.st/Intro-to-Microsoft-COM-for-Smalltalkers-tp4917738p4917767.html Sent from the Pharo Smalltalk Users mailing list archive at Nabble.com.
Re: [Pharo-users] About Seaside3.2
Hi denis I took again the latest 50 seaside32 and there is ZnZincServerAdaptor loaded. server := ZnZincServerAdaptor startOn: 8080 server := ZnZincServerAdaptor startOn: 8080
Re: [Pharo-users] Intro to Microsoft COM for Smalltalkers
> On 2 Oct 2016, at 07:09, stepharowrote: > > ;) > > > 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. >> >> > >
Re: [Pharo-users] Intro to Microsoft COM for Smalltalkers
Hey, all you have to do is reboot your computer (often). Sent from my iPhone > On Oct 1, 2016, at 22:53, Dimitris Chloupiswrote: > > 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 wrote: >> 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. >>