[Pharo-users] DWARF parser?
Hoi, Just a quick question to avoid duplicated effort: Has anybody written a DWARF [1] parser for Pharo? [1] https://en.wikipedia.org/wiki/DWARF
[Pharo-users] Recommended stable Pharo 5.0 VM for Linux users?
Questions! Where can I find the source code for the latest stable Linux/unix VM for Pharo 5.0? I want to package it for a Linux distribution (NixOS). Currently I am confused: The release tarballs at http://files.pharo.org/vm/src/vm-unix-sources/blessed show the latest non-Spur version being 2016-02-18. The github repo at https://github.com/pharo-project/pharo-vm has a tag Pharo50-stable on commit b8ec25a which dates from 2016-05-04. (Is this tag immutable or does it move around?) The URL for downloading binaries (get.pharo.org/vm50) does not seem to say anywhere what version it is downloading, and it was not obvious to me from downloading the binary and inspecting it with 'strings' either (it's not for my distro so I can't just run it with '--version'). Help would be appreciated! Great if somebody could also tell me under what circumstances the spur VM is preferred to the non-spur VM.
Re: [Pharo-users] Recommended stable Pharo 5.0 VM for Linux users?
Thanks for the fast response! Can you also recommend the best pharo-launcher image version to package? The stable one looks stale (lists Pharo 5.0 as "beta" for me) On Tue, 4 Apr 2017 at 08:45, Esteban Lorenzano wrote: > in fact, I will promote a new stable soon, so I’d recommend for now take > the master branch of https://github.com/pharo-project/pharo-vm > > Esteban > > > On 4 Apr 2017, at 07:01, Luke Gorrie wrote: > > Questions! > > Where can I find the source code for the latest stable Linux/unix VM for > Pharo 5.0? I want to package it for a Linux distribution (NixOS). > > Currently I am confused: > > The release tarballs at > http://files.pharo.org/vm/src/vm-unix-sources/blessed show the latest > non-Spur version being 2016-02-18. > > The github repo at https://github.com/pharo-project/pharo-vm has a tag > Pharo50-stable on commit b8ec25a which dates from 2016-05-04. (Is this tag > immutable or does it move around?) > > The URL for downloading binaries (get.pharo.org/vm50) does not seem to > say anywhere what version it is downloading, and it was not obvious to me > from downloading the binary and inspecting it with 'strings' either (it's > not for my distro so I can't just run it with '--version'). > > Help would be appreciated! > > Great if somebody could also tell me under what circumstances the spur VM > is preferred to the non-spur VM. > > > >
Re: [Pharo-users] Recommended stable Pharo 5.0 VM for Linux users?
Hi again Esteban, On 4 April 2017 at 08:44, Esteban Lorenzano wrote: > in fact, I will promote a new stable soon, so I’d recommend for now take > the master branch of https://github.com/pharo-project/pharo-vm > Could you possibly spin a (alpha) release that I could use? The problem with building directly from Git is that then I need to use another Pharo for bootstrapping and this will complicate the build process considerably. I can't use the get.pharo.org method on NixOS both because the binary won't be compatible and because I need all dependencies to be locked down with a known sha256. So I would need to build the previous VM release from source and combine that with a compatible (pre-5.0) image to run VMMaker. This sounds a bit complicated, time consuming, and prone to error if I am using a much older image than the official releases for bootstrapping. Cheers! -Luke
Re: [Pharo-users] Recommended stable Pharo 5.0 VM for Linux users?
On 4 April 2017 at 12:01, Esteban Lorenzano wrote: > well, I’m working on commit also generated sources as an amend… but you > will need to wait a couple of days for that :) > Sounds great, thanks in advance!
Re: [Pharo-users] Build Pharo VM with --dynamic-linker
Hi Alistair, Just an idea: One alternative could be to use patchelf [1] to modify the dynamic library path in an existing binary. My understanding is that this method is very robust and widely used. [1]: https://nixos.org/patchelf.html On 5 April 2017 at 09:14, Alistair Grant wrote: > Hi All, > > I'm still working on getting Pharo packaged with snapcraft. The latest > hurdle is that 32 bit applications won't load correctly because the > snapcraft environment means that ld-linux.so.2 isn't in the expected > location. > > My understanding is that adding the appropriate --dynamic-linker flag > should solve the problem, defining: > > export LDFLAGS="-Wl,--dynamic-linker=/snap/pharo/x1/lib/ld-linux.so.2" > > successfully builds, but the pharo executable still has the default > location: > > $ strings pharo-vm/pharo | grep ld-linux > /lib/ld-linux.so.2 > > Can someone point me to where I should modify the build scipt(s) so I > can set --dynamic-linker appropriately? > > > Thanks! > Alistair > >
Re: [Pharo-users] Recommended stable Pharo 5.0 VM for Linux users?
On 4 April 2017 at 12:16, Luke Gorrie wrote: > On 4 April 2017 at 12:01, Esteban Lorenzano wrote: > >> well, I’m working on commit also generated sources as an amend… but you >> will need to wait a couple of days for that :) >> > > Sounds great, thanks in advance! > Gentle ping on a Pharo VM unix source release that works with the 5.0 image :-)
Re: [Pharo-users] Recommended stable Pharo 5.0 VM for Linux users?
On 12 April 2017 at 10:27, Esteban Lorenzano wrote: > yes, at the end I did a different process. > after cloning vm sources, now you do not need to generate them… just go to > > $ cd build.linuxWHATEVER/pharo.cog.spur/build > $ ./mvm > > that will work and produce the official latest VM :) > Thanks for the information. I will give it a try. Any chance of updating the instructions in the README for future reference?
Re: [Pharo-users] Recommended stable Pharo 5.0 VM for Linux users?
On 12 April 2017 at 14:08, Esteban Lorenzano wrote: > It is in my TODO list. > … along with other milliards of things with more priority ;) > > I will welcome any Pull Request, in any area but specially on that one :D > I can potentially make some time to help out with VM maintenance. I have already volunteered to maintain the NixOS packaging for Pharo and that is what leads me here in the first place, I will need to successfully build the VM myself before I can help anybody else though :). Before committing time I would like to understand the situation a little bit better. How come nobody in the Pharo community sees it as a priority to make a VM source release that is compatible with the current image version (5.0)? I had imagined that a compatible VM would be released at the same time as the image. So I am obviously missing some point about why other people see the VM source release as such a low priority. Is it just that everybody is running zeroconf binaries distributed by Jenkins and that I am one of very few people who wants to build from source (without bootstrapping from another Pharo)? Context: I am a relative newbie who wants to develop an application based on Pharo. It's much harder than I expected to get started!
Re: [Pharo-users] Pharo 6 snap install
On 12 April 2017 at 16:43, Offray Vladimir Luna Cárdenas < offray.l...@mutabit.com> wrote: > I'm also interested in the upcoming Nix package initiative that has been > announced in the list recently, which also deals with installing > dependencies in a Linux distribution neutral fashion. > This can only happen if the Pharo community somehow products a new release of the VM that I can package. The suggestion from the list was that I pick a commit from the pharo-project/pharo-vm#master branch, but I have browsed the commit history and that is way too much of a moving target for me to ship onwards to Nix/NixOS users. Pharo community: Please - somehow - make a new source release of your bloomin' VM!
Re: [Pharo-users] Pharo 6 snap install
On 13 April 2017 at 12:20, Stephane Ducasse wrote: > We will do that. > Thank you! I will wait :). Now we are under stress for the release :) > And PharoDays. Great conference! > Thank you for explaining. I am new around here ("oh, are you working on a release now?") so it helps me to have this kind of hint about short-term issues (e.g. busy period) vs long term ones (e.g. no longer making source releases of the VM for some reason.)
Re: [Pharo-users] Pharo 6 snap install
On 14 April 2017 at 08:53, Stephane Ducasse wrote: > We always try to have a major release around mid/end of april > Once the dust settles, I think it would be wonderful to have this invariant: - The latest Pharo VM source release is compatible with the latest Pharo image. This would make it easy for me to help nix users. My job will be to package the latest source release of the VM, period, and I will know that users can use this to run the latest image. I don't have much scope to screw things up and make people sad e.g. by shipping a bad commit from the master branch. (Of course it makes life harder for you upstream Pharo maintainers. Now updating the VM source release is a blocker for releasing a new image. Could be that this is too constraining in practice, I dunno. I'm just a guy who wants to setup a stable Pharo that I can use to build an application :-))
Re: [Pharo-users] Pharo 6 snap install
On 14 April 2017 at 22:20, Stephane Ducasse wrote: > This is what we always have when we release and we freeze it. > The vm 60 will be compatible with latest pharo 60 image. > It is possible that I have misunderstood the whole situation and there is no problem at all. That would be awesome. Let's check :-) here is my understanding of the state of the world right now: The latest stable image release is Pharo-50771.image. The latest stable VM source release is pharo-vm-2016.02.18. These two releases are not compatible: This interpreter (vers. 6505) cannot read image file (vers. 6521). So the problem is that if a distribution packages the latest VM source release then the users won't be able to run the Pharo 5 VM that they download from pharo.org or via the pharo-launcher image. Is that correct? If so that's fine and hopefully we can fix it for Pharo 6.0. But if I am misunderstanding and a fix is available today that would also be good to know. I am looking for the "latest VM source release" in http://files.pharo.org/vm/src/vm-unix-sources/ and assuming that non-spur is the stable option for pre-6.0 images. Cheers! -Luke
Re: [Pharo-users] Pharo 6 snap install
On 15 April 2017 at 09:12, Alistair Grant wrote: > On Sat, Apr 15, 2017 at 06:43:39AM +0200, Luke Gorrie wrote: > > The latest stable image release is Pharo-50771.image. > > The latest stable VM source release is pharo-vm-2016.02.18. > > These two releases are not compatible: This interpreter (vers. 6505) > cannot > > read image file (vers. 6521). > > Is this from a VM you built yourself? This is a VM built from source during packaging for NixOS Linux. What's the output of: > > $ pharo --version > Here it is: $ pharo-vm-nox --version 3.9-7 #1 Tue Mar 28 16:26:45 UTC 2017 gcc 5.4.0 [Production ITHB VM] NBCoInterpreter NativeBoost-CogPlugin-EstebanLorenzano.21 uuid: 4d9b9bdf-2dfa-4c0b-99eb-5b110dadc697 Apr 5 2016 NBCogit NativeBoost-CogPlugin-EstebanLorenzano.21 uuid: 4d9b9bdf-2dfa-4c0b-99eb-5b110dadc697 Apr 5 2016 https://github.com/pharo-project/pharo-vm.git Commit: ba1aa855f546b084ec0ebdeb85a36f2352f97b49 Date: 2016-02-18 17:17:13 +0100 By: Esteban Lorenzano Jenkins build #15040 Linux localhost 4.4.23 #1-NixOS SMP Fri Sep 30 08:20:43 UTC 2016 i686 GNU/Linux plugin path: /nix/store/5bm2pwrkd1083sb1f1rf0jz20cw87yya-pharo-vm-i386-2016.02.18/lib/pharo-vm-i386-2016.02.18/ [default: /nix/store/5bm2pwrkd1083sb1f1rf0jz20cw87yya-pharo-vm-i386-2016.02.18/lib/pharo-vm-i386-2016.02.18/] Note that the date 2016-02-18 corresponds with the latest non-spur source tarball release at http://files.pharo.org/vm/src/vm-unix-sources/ I just downloaded: > > $ curl http://get.pharo.org/50+vm | bash > > And it started without problem. > I *think* the difference is that you are downloading the VM as a binary and I am downloading it as source code, and we get different versions because pharo.org is regularly shipping updated binaries but not updating the source code releases at the same time. So the source releases lag behind over time and now it's at the point that they can't run the 5.0 image.
Re: [Pharo-users] Pharo 6 snap install
On 15 April 2017 at 10:08, Alistair Grant wrote: > How about trying: > > $ git clone https://github.com/pharo-project/pharo-vm.git > $ cd pharo-vm > $ git checkout b8ec25a570d7539653e1d793e97609adb509aaed > > and build that? It should be the source code for the binary VM on > get.pharo.org. > First, thanks for taking the time to play along with me here, it really helps to make sure I don't hold things up due to a misunderstanding. Grabbing the source directly from Git is attractive if (a) I know that I am choosing a good version and (b) I am able to build it in a good way. Seems like a workable solution to (a) is to periodically check for a new binary release, work out which commit it is based off, and build that. This seems fairly reasonable and is probably also possible to automate. (I suppose you got the commit-id from --version or from checking Jenkins.) I see (b) as problematic though. The source tarball releases have a simple build procedure ("make") while the Git checkouts require a more involved one (bootstrapping the VM from an existing Pharo image.) So I would need to revise the nix build scripts quite a bit if I want to build from Git instead of the tarballs. However, it seems that on the master branch last week the VM build procedure has been reworked so that it is _not_ necessary to run the bootstrapping procedure anymore, which sounds great to me, except that I understand this new build procedure to be quite bleeding edge and not yet documented or used for a binary release (it's not included in the commit that you cite above.) So what to make of all that? Just right now I see only bad alternatives: sticking with the source release means not supporting Pharo 5.0, updating the build scripts to do bootstrapping takes effort and is already obsoleted by changes on the VM master branch, and shipping the VM master branch means making a pseudo-release without any QA and potentially causing problems for people downstream (there are lots of commits landing on that branch and I have no idea which ones are important/stable.) So the most reasonable course of action from my point of view seems to be to sit and wait for a better solution to come along e.g. a new source release of the VM or a "blessed" Git commit ID that includes the updated build scripts. The downside is that meanwhile NixOS users can't run the 5.0 image. Could be that Pharo 6.0 will resolve this and that is fine for me -- but of course I'd take a solution sooner if there is a simple one.
Re: [Pharo-users] Pharo 6 snap install
On 15 April 2017 at 11:53, Alistair Grant wrote: > (actually, I'm not sure why you're bothering since 6 should > be out before the end of the month, but that's your choice :-)). > I just want something stable and reasonably modern for running existing applications and building new ones. If that means waiting for Pharo 6.0 release then that is okay with me. The (V6) linux install relies on a number of bash scripts to launch pharo > (bin/pharo, bin/pharo-ui and bin/pharo-vm/pharo). How are you producing > these, or are you doing something else? > Here is where those scripts are generated in the existing pharo-vm packaging: https://github.com/NixOS/nixpkgs/blob/master/pkgs/ development/pharo/vm/build-vm.nix#L50-L70 (I didn't write the nix packaging code but I have volunteered to maintain it so if it's out of date then I should fix that.) git clone https://github.com/pharo-project/pharo-vm.git > git checkout > cd pharo-vm/opensmalltalk-vm/build.linux64x64/pharo.cog.spur/build > ./mvm > -- > > BTW: HEAD is currently eaf13db484ac87720d8454e66b5ce92f51c01036, and my > experience is that it is significantly less stable than the latest > binary, which is from 1c38b03fb043a2962f30f080db5b1292b5b7badb > This is really the bleeding edge :-) both of those commits were pushed within the past three days! I will take a look at the ./mvm script now.
Re: [Pharo-users] Pharo 6 snap install
On 15 April 2017 at 14:45, Esteban Lorenzano wrote: > this belongs to pharo-dev, please continue there :) > Looks to me like I should make a small replacement for mvm that is for nix. Nix indeed does its own thing. The downside is that it's restricted: the build runs in a sandbox, can't touch the network, has to declare the sha256 of any dependencies that it needs. Nothing - not one byte - is allowed to change from one build to the next without being accounted for and that breaks the mvm script. On the plus side it will supply all of the dependencies, with exactly the expected version and exactly the expected build options, so that is less work for mvm to do i.e. the third-party stuff should be taken care of automatically. I'm taking a poke now. However, I must remind myself that this is a distraction, since I am trying to get a _stable_ VM for Pharo 5.0. Somehow I have been swept up in this enthusiasm for building the bleeding edge Pharo 6.0 VM that is not actually of any practical use to me :-) although it will be in the near future.
Re: [Pharo-users] VM/Image magic numbers (Re: Pharo 6 snap install)
On 15 April 2017 at 01:22, Ben Coman wrote: > The "magic decode for image files" seems related and possibly *very* > useful > http://forum.world.st/magic-decode-for-image-files-td4941712.html#a4941837 > > Now traditionally the VM has been backward compatible with old Images, > but Pharo doesn't necessarily adhere to that and policy IIUC is > release specific VM/Image pairs. > So does Pharo require extra magic numbers to co-ordinate this? > And how would this interact with OpenSmalltalk policy on these magic > numbers? > I would really like a copy of the script that checks the magic number and starts the right VM. David, could you share yours please? I started writing case file -m @share@/magic "$image" in 'Smalltalk image V3 32b*') vm=@pharo-vm-cog@ ;; 'Smalltalk image Spur 32b*') vm=@pharo-vm-spur@ ;; 'Smalltalk image Spur 64b*') vm=@pharo-vm-spur64@ ;; *) echo unrecognized image file format ;; esac ... but would prefer to avoid reinventing the wheel e.g. on how to find the image name in amongst the various options passed to $@. I would quite like for my package to be able to open the pharo-launcher image and the various images that this downloads. This means supporting pre-spur images. I would ideally like to do that by building a non-spur version of the latest VM, but I am not sure if that is supported for pharo, there is no mvm script for non-spur. The alternative would be to just build an old VM release with cmake.
Re: [Pharo-users] Out of image IDE
On 4 May 2017 at 05:26, Sean P. DeNigris wrote: > Forwarding message stuck on Nabble (probably the author is not subscribed > to > the list)... > > sigipa wrote > > Hello All, > > > > I've been playing with Pharo off and on for a few years now. I have > > thought a lot about where and how I could potentially use it. I have an > > idea about how I would really like it to work, but up to now I haven't > had > > the chance to pursue it. I think I may even have had a discussion about > it > > with someone on this list at some point. Due to some recent changes in my > > situation, It looks I may be at a point that I can look into things more > > seriously. I am in a possibly similar situation. I have also been wanting better tools for my application development work for some years now, and this year it has finally bubbled up to the top of my priority list. My applications are not based on Pharo but I want to use Pharo for the tooling. The basic design I am following is a frontend/backend split. The frontend is Pharo with the "Moldable Tools" concept i.e. spotter, inspector, Roassal visualizations, etc. The backend is nix i.e. integrating diverse tools (profilers, debuggers, protocol analyzers, statistical models, physical hardware resources, etc.) I am building network equipment and mostly need diagnostic tools for profiling and troubleshooting issues after they have occurred. So my emphasis is not so much live coding as "what interesting observations can we make about these 1000 core dump files from various environments and software versions?" I hope that the design will be practical and that the project will grow to support other people's applications too. Just now it is very early days. Link: https://github.com/studio/studio Cheers, -Luke
[Pharo-users] How to run a window in full-screen mode?
Hoi! I am looking for a way to run a window in full-screen mode in Pharo. That is it should maximize, beyond the bounds that the expand button usually takes, and it should automatically resize when the world does. I'm thinking of the GTInspector but a custom class would be fine too. Is there a simple solution? On Discord I got a partial solution: window := GTInspector openOn: self. window removeBoxes; beSticky; bounds: window world clearArea. but the main problem here is that it doesn't resize when the world does. I wonder if it would make more sense to avoid the SystemWindow and embed the inspector directly in the World somehow...? Cheers! -Luke
Re: [Pharo-users] How to run a window in full-screen mode?
On 17 July 2017 at 16:02, Nicolai Hess wrote: > There is a FullscreenMorph > Thanks, Nicolai! That's exactly what I need. I wonder how I missed it in the Spotter :).
Re: [Pharo-users] Performance Testing Tools
Hi Evan, I am also really interesting in this topic and have been doing a bunch of work on automating statistical benchmarks. I don't have a background in statistics or formal QA but I am learning as I go along :). The tools I'm building are outside Smalltalk. Our full performance test suite takes about a week of machine time to run because tests ~15,000 QEMU VMs with different software versions / configurations / workloads. There is a CI server that runs all those tests, getting pretty fast turnarounds by distributing across a cluster of servers and reusing results from unmodified software branches, and spits out a CSV with one row per test result (giving the benchmark score and the parameters of the test.) Then what to do with that ~15,000 line CSV file? Just now I run Rmarkdown to make a report on the distribution of results and then manually inspect that to check for interesting differences. I lump all of the different configurations in together and treat them as one population at the moment. Here is an example report: https://hydra.snabb.co/build/1604171/download/2/report.html It's a bit primitive but it is getting the job done for release engineering. I'm reasonably confident that new software releases don't break or slow down in obscure configurations. We are building network equipment and performance regressions are generally not acceptable. I'm looking into more clever ways to automatically interpret the results, e.g. fumbling around at https://stats.stackexchange.com/questions/288416/non-parametric-test-if-two-samples-are-drawn-from-the-same-distribution . Could relate to your ambitions somehow? On 19 July 2017 at 02:00, Evan Donahue wrote: > Hi, > > I've been doing a lot of performance testing lately, and I've found myself > wanting to upgrade my methods from ad hoc use of bench and message tally. > Is there any kind of framework for like, statistically comparing > improvements in performance benchmarks across different versions of code, > or anything that generally helps manage the test-tweak-test loop? Just > curious what's out there before I go writing something. Too many useful > little libraries to keep track of! > > Evan >
Re: [Pharo-users] Shameful advertisement
Hi Serge, Just wanted to say that you guys do a really nice job of advocating for Pharo and promoting it :). I joined the association now and will be sure to plug Pharo. It's great. I wouldn't build my current application at all if I didn't have Pharo/Glamour/Roassal as a base... it would be too much work. On 28 July 2017 at 11:10, Serge Stinckwich wrote: > Hi all, > > I was talking about Twitter in my previous email. This is a nice way to > advertise the work of the community to others communities. > > Now some **shameful advertisement** : you can subscribe to my Twitter > account here: > https://twitter.com/SergeStinckwich > > I try my best to publish info about Pharo/Smalltalk community and with my > 1733 followers I can have some impact sometimes. > > Please send me a private email if you want to advertise something specific > about your work. > > They are other interesting accounts to follow: > - PharoProject: https://twitter.com/pharoproject > - PharoJS: https://twitter.com/pharojs > - Stéphane Ducasse: https://twitter.com/stephaneducasse > - Tudor Girba : https://twitter.com/girba > - ObjectProfile : https://twitter.com/ObjectProfile > > and many others ! > > Regards, > > -- > Serge Stinckwich > UCN & UMI UMMISCO 209 (IRD/UPMC) > Every DSL ends up being Smalltalk > http://www.doesnotunderstand.org/ >
[Pharo-users] Loading and saving packages to filetree repos
Hoi, I want to have a quick "cheat mode" for loading and saving the Smalltalk packages in my project. This is to make life easy for newbies who are not very familiar with Monticello and Metacello. The "cheat" is to assume that there is one filetree:// repository that contains all of the relevant packages, and all we need to do is load or save each of those packages in that repository. I have the loading part working already: repo := MCFileTreeRepository new directory: '/foo/bar/baz' asFileReference. repo allFileNames do: [ :file | (repo versionFromFileNamed: file) load. ]. but now I am wondering how to do the saving part? That is, given a path to a filetree repo like '/foo/bar/baz', how do I save each package in that repo i.e. export the code in the image? Ideally I would like the same operation to skip metadata that is likely to cause conflicts when the code is checked into Git later e.g. package timestamps and versions. Tips would be appreciated :).
Re: [Pharo-users] Loading and saving packages to filetree repos
Hi Thierry, I am really looking for a "low-tech" solution here - five line Monticello code snippet - that will be easy for me to understand (as a newbie) and also easy for new contributors to my project to understand (who will have no prior exposure to Pharo.) I don't know what AltBrowser is, but just as a user I need to get a bit more "winnage" before I am ready to take another iteration at learning more tools. The tools currently represent barriers in the way of solving my problems. I am sure this will change over time with more gradual learning and experience. On 18 August 2017 at 16:28, Thierry Goubier wrote: > Hi Luke, > > if you use gitfiletree with AltBrowser and configurations/baselines, then > you'll see that you have a command to do the writing for you, without > metadata and with a single git commit. > > Regards, > > Thierry > > > Le 17/08/2017 à 13:25, Luke Gorrie a écrit : > >> Hoi, >> >> I want to have a quick "cheat mode" for loading and saving the Smalltalk >> packages in my project. This is to make life easy for newbies who are not >> very familiar with Monticello and Metacello. >> >> The "cheat" is to assume that there is one filetree:// repository that >> contains all of the relevant packages, and all we need to do is load or >> save each of those packages in that repository. >> >> I have the loading part working already: >> >> repo := MCFileTreeRepository new directory: '/foo/bar/baz' >> asFileReference. >> repo allFileNames do: [ :file | >> (repo versionFromFileNamed: file) load. >>]. >> >> but now I am wondering how to do the saving part? That is, given a path >> to a filetree repo like '/foo/bar/baz', how do I save each package in that >> repo i.e. export the code in the image? >> >> Ideally I would like the same operation to skip metadata that is likely >> to cause conflicts when the code is checked into Git later e.g. package >> timestamps and versions. >> >> Tips would be appreciated :). >> >> >> >> > >
Re: [Pharo-users] Loading and saving packages to filetree repos
I wish that somebody would take my original question at face value. It is frustrating to be told that I don't really understand the problem. I actually believe that the solution I am looking for is what I need in this project at this time. I don't want to write an essay-length justification for this position though.
Re: [Pharo-users] Loading and saving packages to filetree repos
On 20 August 2017 at 12:50, stephan wrote: > I'm afraid you might do newbies a disservice by adding yet another way of > loading and saving combinations of packages. I have been reflecting on this point a bit. I think there are two relevant classes of newbies here. One is people who are learning to be Pharo hackers and joining this community. They need to "get with the program" and learn to do things the same way as everybody else. So they need to learn Smalltalk, Monticello, Metacello, Iceberg, FogBugz, etc. The other is people who are using a Pharo-based application and want to make an extension. For example, imagine a Dr. Geo user who wants to contribute support for a new geometric function that they need for their work. This person needs to take the shortest path to solving their problem: reuse their existing skills (e.g. command-line git) and make use of examples (e.g. copy-paste-tweak some existing code.) I'm concerned about the latter group. I'm building an application that I want users to be able to extend, and I am assuming that most of them are not aspiring Smalltalk hackers (yet.) So I am wondering how to minimize the barriers to entry for people to contribute their first extension. My model is Emacs. Lots of people use Emacs to edit text files. Many of them become power users by copy-paste-tweak from each others' configuration files. Only a few take the next step and learn Lisp e.g. to understand what "lambda" actually means. Everybody manages to participate and share. So, coming back to point, this is why I imagine now is to have a simple "Save all..." item in the World menu that saves all of the relevant-to-this-application packages back into a directory on the local disk (which will be a Git checkout that can be committed, pushed, and Pull Requested.) Then I don't need to force people to learn Metacello, etc, just to become "power users" of the application. Maybe I am still on the wrong track anyway? Maybe others have been down this specific trail before, too?
[Pharo-users] Glamorous Toolkit as IDE for another language?
Howdy, I am interested in building a Lua IDE using the Glamorous Toolkit. The idea is that the Playground, the Inspector, the Spotter, and the Debugger would all be interacting with an external Lua process instead of running code in the Pharo image. The "under the hood" part of Pharo - Smalltalk code - would be hidden unless specially enabled. Good or bad idea? Any tips on how to approach this? Has something similar been done before? (Is there example code available?) Cheers, -Luke
[Pharo-users] How to consume the MOOC?
Howdy! Just a question from a confused newbie: What is the easiest way to consume the Pharo MOOC content in English? I have tried to find the content a few times over the past few months but so far I have hit a registration page / short trailer video / video in French. (I keep hoping that a YouTube channel will appear that makes the videos easy to follow in sequence on any device.) Cheers! -Luke
Re: [Pharo-users] How to consume the MOOC?
Hi Stepharo, On 5 November 2016 at 18:14, stepharo wrote: > you can use the webportal (it supports subtitles in french and english - > but read carefully what we wrote because we got trapped into a bug with > certain configurations). > > http://rmod-pharo-mooc.lille.inria.fr/MOOC/WebPortal/co/pharo.html Thanks for this link! I had somehow missed the webportal and this looks like the right thing for me.