Re: [Pharo-users] Seeing all the methods that is used in a method

2014-08-07 Thread Clément Bera
2014-08-07 5:11 GMT+02:00 aria2end : > Hi, I know that I can see senders and implementers of a method but is there > any way to see all methods that are used in a method ? > This is impossible. The method called for each message send can only been known at runtime, because it depends on the recei

Re: [Pharo-users] Seeing all the methods that is used in a method

2014-08-07 Thread Clément Bera
2014-08-07 10:47 GMT+02:00 aria2end : > Yes Exactly. I want to see all the potential methods called from from this > method which is the second case. but I receive error using that script. > > MessageNotUnderstood: ByteSymbol>>implementors > > Ok this method is implemented in the image I use (Phar

Re: [Pharo-users] FFI with compile flags

2014-08-13 Thread Clément Bera
I don't understand, do you want to compile your library using FFI or do you want to bind a library compiled your way with FFI ? If you want to compile your library using FFI, then use OSProcess to run the compilation line you showed. If you want to bind a library compiled your way with FFI, the e

Re: [Pharo-users] Slow compilation on one of my Windows PCs

2015-06-29 Thread Clément Bera
What about "1 tinyBenchmarks" ? Just to know if the VM is slower as a whole or only compilation / source access ? 2015-06-30 0:36 GMT+02:00 Jan Blizničenko : > And one another benchmark of linux in VM on that desktop PC: > Roassal loading - 58 s > compilations per second - avg: 262.4682, min: 25

Re: [Pharo-users] PharoJS

2015-07-14 Thread Clément Bera
What is PharoJS ? Are you talking about Pharo on top of the Bert's SqueakJS VM ? If so, it starts, but some primitives fail making it freeze after a short while as you describe. It would be fun to have it running even though most of the Pharo folks went into the Amber direction for Pharo on Javas

Re: [Pharo-users] PharoJS

2015-07-15 Thread Clément Bera
2015-07-15 12:34 GMT+02:00 Sean P. DeNigris : > Noury Bouraqadi-2 wrote > > Regarding the naming PharoJS is more than a bridge. It allows: > > -Develop and test apps in Pharo > > -Generate a javascript file for a standalone app > > How does it compare to Amber? Similar use case? > > The resulting

Re: [Pharo-users] Woden?

2015-07-18 Thread Clément Bera
Hello, You can try to reload ConfigurationOfOSWindow or try to get the latest ConfigurationOfOSWindow then load the bleeding edge, that might be it. Else for the #doSemanticAnalysisIn: you can try to flush the ASTCache (I think it's "ASTCache rest") Have fun 2015-07-18 17:54 GMT+02:00 Hilaire :

Re: [Pharo-users] How to play audio files with Pharo ?

2015-11-18 Thread Clément Bera
PharoSound was not working on Mac on my machine a few month ago. It was reported to be working on the Raspberry Pie and windows. 2015-11-18 12:23 GMT-03:00 Merwan Ouddane : > This summer I made a wav parser, there is an example to play wav files > with OpenAL. > > https://pharoweekly.wordpress.co

Re: [Pharo-users] Installation

2015-12-02 Thread Clément Bera
Have you tried this (from this page: http://pharo.org/gnu-linux-installation#ubuntu-ppa-headless-vm ): Ubuntu (ppa) Ubuntu users can use the dedicated ppa to install Pharo in various ways: Install the headless Pharo VM only sudo add-apt-repository ppa:pharo/stable sudo dpkg --add-architecture i38

Re: [Pharo-users] [Question] Inspecting a collection of strings in Pharo 5 -- edit pane for a string?

2015-12-20 Thread Clément Bera
2015-12-20 8:15 GMT+01:00 Marcus Denker : > > > On Sat, Dec 19, 2015 at 9:24 PM, Tudor Girba wrote: > >> Hi, >> >> Strings are supposed to be immutable, and that is why we do not support >> editing by default :). >> >> > I do not think this is good... yes, it would be nice if *literal* strings >

Re: [Pharo-users] Block that doesn't leak memory

2015-12-27 Thread Clément Bera
There is no way of creating such blocks currently. In fact only non local returns and debugging are problems as remote variables are accessed through an indirection. A lightweight block (to reuse your terms) with no outer context but accesses to remote temporary variables would work fine. The com

Re: [Pharo-users] Failling Tests are green if BlockCannotReturn exception

2016-01-11 Thread Clément Bera
2016-01-12 0:40 GMT+01:00 Vincent BLONDEAU < vincent.blond...@polytech-lille.net>: > Hi, > > > > It is expected. > > When you evaluate a block with a return, the method containing the block > definition (here testBlock) will return. > > So the test will pass. > > > > BTW, you don’t need to put a r

Re: [Pharo-users] OSWindowSDL2

2016-01-24 Thread Clément Bera
Yeah I did in in early version of Pharo 5 (50155). 2016-01-24 10:10 GMT+01:00 stepharo : > the support for SDL2.0 should be better in Pharo50 (even if due to ffi > changes and new objcte format we may have some > glitches). > > > Le 23/1/16 22:45, Edwin Ancaer a écrit : > >> I'm not a smalltalk e

Re: [Pharo-users] stupid spur question

2016-02-02 Thread Clément Bera
Hello, Both classes (SmallFloat64 and BoxedFloat64) are present on 32 bits and 64 bits by default right now. The code base is common between 32 and 64 bit images. It is possible to run a 32 bit image without the class SmallFloat64, but it is not the default behavior. There are no instances of Smal

Re: [Pharo-users] OS(Sub)Process on Raspberry Pi ?

2016-02-13 Thread Clément Bera
The latest FFI uses the old VM FFI which works on x86 and ARM and a new front-end which is seemingly x86 dependent. So OSSubProcess will work if you use FFI, but the old syntax not the new one. 2016-02-13 0:23 GMT+01:00 Mariano Martinez Peck : > Hi Sven, > > Since OSSubprocess uses the latest FF

Re: [Pharo-users] Recommended VM on Raspberry Pi ?

2016-02-13 Thread Clément Bera
Hello Sven, You can use the VM with the JIT on the Pie now (Spur Cog VM). It is deployed by default on the recent raspberry pis and has millions of users for Squeak and Scratch since August 2015 (the raspberry pie fondation paid Tim for the ARM JIT on the Cog because of the size of their user base

Re: [Pharo-users] Compiling Pharo to C++

2016-02-16 Thread Clément Bera
Are you sure C++ compilation is the best way ? There are a lot of flaws: Smalltalk needs to be restrictive or will be compiled to very slow code, you will loose debugging features, etc. I would try to integrate Pharo the same way lua is integrated in engines like Source2 from valve: you run your U

Re: [Pharo-users] Compiling Pharo to C++

2016-02-16 Thread Clément Bera
Ok. Then I guess you can do something like Slang, which is used for the VM. Slang is a restrictive Smalltalk compiling to C. The slang compiler parses the code using the Smalltalk Compiler parser, then translate the Smalltalk AST to its own AST, do some manipulation based on pragmas available in

Re: [Pharo-users] I wish there were ePUB versions of Pharo books

2016-02-26 Thread Clément Bera
Alternatively, convertor from pdf to epub are available and free. Pillar can generate pdf. I know converting does not produce a file as good as if there were a pillar exporter, but that's a good enough temporary solution to me. 2016-02-25 22:54 GMT+01:00 stepharo : > Hi martin > > Why don't yo

Re: [Pharo-users] A new idea for a project: WarpSpeed (a C inliner)

2016-02-28 Thread Clément Bera
Hello, As Stephan Eggermont said, you need to make some measurements. There are a few big problems. In short, if the FFI call is going to do quite some computation (at least a few millisecond), assuming tinyC has performance similar to gcc or llvm, you may get faster, if the FFI call is going to

Re: [Pharo-users] Get the code of a method - Artefact

2016-03-10 Thread Clément Bera
sourceCode is the best way to do it. It answers the original sources if available, and the decompiled sources if not available. 2016-03-10 11:22 GMT+01:00 Cyril Ferlicot : > Hi, > > Do you really need to decompile the method? A CompiledMethod know his > source code. > > See: Object methods first

Re: [Pharo-users] Beginner's question on morphs

2016-03-13 Thread Clément Bera
Alternatively, I do that using a SDL window. This way, the production game can be launched using SDL and pharo headless, and not have the overhead of the morphic rendering loop. 2016-03-13 15:22 GMT+01:00 Henrik Nergaard : > http://ws.stfx.eu/1RCNV18R5J7E > > Best regards, > Henrik > > -Origi

Re: [Pharo-users] What frameworks/libraries are available for creating programming languages with Pharo

2016-03-22 Thread Clément Bera
I think in addition of the parser/compilation chain, a language is about having a good IDE. The Pharo IDE depends more and more on the AST and not on the source code, so if your new language uses an AST polymorphic with the Smalltalk AST I guess you can have IDE tools for free (at least partly).

Re: [Pharo-users] Presenting Pharo in Greece

2016-05-13 Thread Clément Bera
I usually get it from http://files.pharo.org/ In media, pharoCheatSheet or flyer-cheat-sheet. On Fri, May 13, 2016 at 10:32 AM, Dimitris Chloupis wrote: > thanks any idea where i can get the card that contains the pharo syntax ? > > On Fri, May 13, 2016 at 10:33 AM stepharo wrote: > >> good lu

Re: [Pharo-users] parameters of the virtual machine

2016-05-24 Thread Clément Bera
Hi, Sorry the mail is quite long... I CC'd Nevena for section II, she used the VM caches for type inference. *Section I. VM parameters* * 46 size of machine code zone, in bytes* Well, the size of the machine code zone :-). To speed-up execution, the cog uses internally a JIT compiler whic

Re: [Pharo-users] parameters of the virtual machine

2016-05-25 Thread Clément Bera
; > > you should add that to a simple blog post :) > > > Stef > > Le 24/5/16 à 19:35, Clément Bera a écrit : > > Hi, > > Sorry the mail is quite long... I CC'd Nevena for section II, she used the > VM caches for type inference. > > *Section I. VM param

Re: [Pharo-users] Spur Cog vs VW

2016-06-07 Thread Clément Bera
We measured Spur vs pre-Spur, but I am not sure we can measure VW without Cincom's approval. On Tue, Jun 7, 2016 at 7:56 AM, Gerry Weaver wrote: > Hi, > > I was reading about the VM stuff and assumed (wrongly) that the post > applied to that. Sorry for the noise. > > Thanks, > -G > > > -Orig

Re: [Pharo-users] Programmatic generation of new class

2016-07-29 Thread Clément Bera
On old versions of Pharo you need to use: #subclass:instanceVariableNames:classVariableNames:poolDictionaries:package: That might be it. On Fri, Jul 29, 2016 at 6:14 PM, Peter Uhnak wrote: > Can you show the full trace? Because I am regularly doing something > similar without any problems. > In

Re: [Pharo-users] 64bit support

2016-08-16 Thread Clément Bera
The 64 bits linux and mac VM have been working for more than 6 months. They've been in production in a company since April or something like that. Latest product are built by Travis and available here: https://bintray.com/opensmalltalk/vm/cog#files. Pharo provides a Pharo-flavored VM with a differe

Re: [Pharo-users] Spur problem?

2016-09-07 Thread Clément Bera
Hi, I've never seen that error before. That looks interesting. You need to provide more information. For example the backtrace or something written in PharoDebug.log. Else, as suggested, set a breakpoint in malloc_error_break and try to figure out what is going on. On Wed, Sep 7, 2016 at 4:56 P

Re: [Pharo-users] Performance vs Ruby performance

2016-09-07 Thread Clément Bera
What ruby runtime exactly ? The standard ruby interpreter, rubinius, JRuby ? What do you mean by performance ? Smallest time to run long computation ? Latency for web servers ? Pauses in real time applications ? The standard ruby interpreter is really slow (likely ~100 times slower than the Pharo

Re: [Pharo-users] Profiling

2016-09-08 Thread Clément Bera
On Thu, Sep 8, 2016 at 3:44 AM, Vitor Medina Cruz wrote: > Hello, > > While profiling some I/O code that takes ~20 seconds to execute under my > local image, the report says that about ~13 seconds is waste on > OtherProcesses -> ProcessorScheduler class>>idleProcess. I could not > understand what

Re: [Pharo-users] limits on number of instance variables and class variables

2016-09-11 Thread Clément Bera
Hello Ben, The limit you see for instance variables is due to: - Class format encoding (Memory manager dependent) - Bytecode set encoding (Bytecode set dependent) The 255 inst var limit is enforced both by: - the V3 Memory manager - the SqueakV3PlusClosures bytecode set. Now we have Spur instead

Re: [Pharo-users] Fwd: [Vm-dev] unused-method removal vs. Spur compaction

2016-09-19 Thread Clément Bera
19, 2016 at 3:51 PM, Clément Bera > wrote: > > I am not sure this is the right mailing list. > > > > Spur32BitPreen could be used as part of the Pharo release process as > long as > > the compactor is not working well. This way released images can be more > >

Re: [Pharo-users] Essential Documentation

2016-09-23 Thread Clément Bera
General documentation on all the base frameworks is present in the *Pharo by example* book. You can download it for free here: http://pharobyexample.org/versions/PBE1-2009-10-28.pdf Or here for the updated version: https://ci.inria.fr/pharo-contribution/view/Books/job/UpdatedPharoByExample/lastSucc

Re: [Pharo-users] Pharo5 download for linux - interpreter cannot read image file

2016-10-06 Thread Clément Bera
Thanks for reporting the problem. The error means the VM is incompatible with the image. There was a change of image format in Pharo 5, so the package has likely an old VM while the image has the new format, or the new VM while the image has the old format. Someone will look into that problem in

Re: [Pharo-users] Pharo5 download for linux - interpreter cannot read image file

2016-10-06 Thread Clément Bera
eas Sunardi >> wrote: >> >>> Thank you for the impressive quick response. Unfortunately, I have older >>> glibc. So now I'm struggling with compiling glibc 2.15 for 32 bit on my 64 >>> bit CentOS 6.5 machine. Not an easy thing to do. >>> >&

Re: [Pharo-users] Debugger with inlined methods

2016-10-12 Thread Clément Bera
The simulation of primitives is done in Context>>#doPrimitive:method:receiver:args: Basically, specific numbers are simulated in the image while other numbers are run using the VM code. Quick methods (what you call inlined methods) are encoded with primitive numbers between 256 and 512. If you lo

Re: [Pharo-users] Debugger with inlined methods

2016-10-13 Thread Clément Bera
> > Regards, > Vitor > > On Wed, Oct 12, 2016 at 9:38 AM, Clément Bera > wrote: > >> The simulation of primitives is done in Context>>#doPrimitive:method:r >> eceiver:args: >> >> Basically, specific numbers are simulated in the image while othe

Re: [Pharo-users] Cog VM on Raspberry Pi ?

2016-10-18 Thread Clément Bera
The VM you use is the fastest one available. It's slower mostly due to non Smalltalk concerns (processor architecture, energy consumption, frequency, overall hardware). There is an abstraction over the back-ends in the JIT and it could be that overall the JIT is a little bit more optimised for in

Re: [Pharo-users] [Stupid Benchmarks] C++ vs Pharo

2016-12-17 Thread Clément Bera
If I am correct, when you do: double x=0; while(x<10) { x = x+1; } C++ compiles the + to double operation. In Pharo, this code: |x| x := 0. 1 to: 10 do:[:each| x := x +1] is using SmallInteger operations. The code you wrote is fully inlined in Cog's JIT (no message s

Re: [Pharo-users] Pharo Spur 64 VM

2017-03-02 Thread Clément Bera
Hi Raffaello, Reportedly, the VM without the JIT (pure interpreter, also called PharoS or StackVM) works on windows 64 and FFI works with it if the VM compiled with clang but not with gcc. There is no configuration for Pharo right now. It should not be hard to add a pharo configuration to have the

Re: [Pharo-users] why is concat of Symbols a string?

2017-03-04 Thread Clément Bera
Hi, All symbols are interned in the Symbol table. If one does (#foo , #bar , #baz) and each returned value would be a symbol, then both #foobar and #foobarbaz would be registered in the symbol table. I would guess that's why the concatenated value is a string and not a symbol, to avoid registerin

Re: [Pharo-users] Need help opening image

2017-03-12 Thread Clément Bera
Hi, You need a VM with the SqueakV3 memory manager and compiled in the past few months for Mac OS X Sierra support. All recent Pharo VM are compiled with the Spur memory manager leading to this error “This interpreter (vers. X) cannot read image file (vers. 6505)”. I would try the latest VM from

Re: [Pharo-users] Pharo 6 / VM crashes

2017-04-30 Thread Clément Bera
Hi, About the best way to help... A reproducible case that we (VM developers) can reproduce easily is the best way to help. If we do not have a way to reproduce your bug, we cannot do anything about it. The best is an image which crashes immediately after start-up or a do-it that reliably crash t

Re: [Pharo-users] looking for another iterator :)

2018-01-21 Thread Clément Bera
I don't think we do. Do you need it on SequenceableCollection or HashedCollection too ? Recently I was trying to iterate over the first N elements of a collection and since there was no #first:do: I used #from:to:do:. I guess you could use that too: aCollection from: 1 to: (aCollection size min:

[Pharo-users] Problem with Traditional and Simplified Chinese parsing in Pharo

2018-01-29 Thread Clément Bera
Hi, I am currently parsing lua and JSON-like file in Pharo. They contain both Simplified and Traditional Chinese characters for comments and for strings displayed in the UI. Lua files are parsed correctly. However the JSON-like files aren't. In attachment I put one of the problematic file with Si

Re: [Pharo-users] canonical way to convert Symbol into Class (retrieve class by its name)

2018-02-10 Thread Clément Bera
Hi, In short, everything that is not namespace/module compatible will be deprecated/changed/removed in the future, so it is not recommended to use it. a.2) #Array asClassInEnvironment: Smalltalk globals b.1) Smalltalk globals at: #Array => Ok-ish, note that you may need to change 'Smalltalk globa

Re: [Pharo-users] canonical way to convert Symbol into Class (retrieve class by its name)

2018-02-10 Thread Clément Bera
o look up MyProject.Array, no? > > So if the argument for asClass is based on future addition of modules, > then I will need to manually change it anyway regardless of what approach I > used, because I don't know in which namespace the class will end up. > > Am I missing something?

Re: [Pharo-users] canonical way to convert Symbol into Class (retrieve class by its name)

2018-02-10 Thread Clément Bera
lve. > Cheers, > > Hernán > > 2018-02-10 9:47 GMT-03:00 Clément Bera : > > Hi, > > > > In short, everything that is not namespace/module compatible will be > > deprecated/changed/removed in the future, so it is not recommended to use > > it. > >

Re: [Pharo-users] Please rejoin Discord

2018-03-10 Thread Clément Bera
I think the roles got changed I am no longer admin (Note that it does not really matter since I did not do much admin work but still) On Sat, Mar 10, 2018 at 11:48 AM, Dimitris Chloupis wrote: > Hey guys after my mistake we got "hacked" and someone banned all our > members in Discord > > I have

Re: [Pharo-users] MiniScheme in Pharo

2018-03-18 Thread Clément Bera
p.3 simpliciyty -> simplicity p.4 we will have the define their semantics. -> to define ? I am not sure I understand the sentence p.10 and may converted on the fly -> and maybe ? I am not sure I understand the sentence At the beginning I started to read and understood nothing, then I read a 24 s

Re: [Pharo-users] Porting Transducers to Pharo

2018-03-21 Thread Clément Bera
On Fri, Jun 2, 2017, 17:05 Steffen Märcker wrote: > Dear all, > > thanks for the many suggestions. I didn't had time to test all > import/export ways yet. But for now, I can report on two: > > 1) NGFileOuter > Unfortunately It raised several MNUs in my image. I'll investigate them > later. > > 2)

Re: [Pharo-users] Slower

2018-04-04 Thread Clément Bera
Hi Hilaire, Do you have to use the world or Morphic at all ? I wrote 2 different real-time 2D games at 50fps in Pharo [1,2]. I tried using Morphic but that was crazy slow I could not even get 20fps. Instead I use direct bindings to Cairo surface and SDL2 window and I don't open the world morph at

Re: [Pharo-users] Where do we go now ?

2018-04-13 Thread Clément Bera
"Alpha software can be unstable and could cause crashes or data loss" [1] Experiencing instability, crashes and data loss in the alpha version of a software, including Pharo alpha, is to be expected and nothing to be surprised about. The support of the Pharo stable version (currently 6.1) has sign

Re: [Pharo-users] Literals

2018-04-27 Thread Clément Bera
Not really. You can use ClassVariables though. Here's an example for Sets: Object subclass: #MyClass instanceVariableNames: '' classVariableNames: 'MyClassVar' package: 'MyPackage' MyClass class>>initialize super initialize. MyClassVar := Set new. MyClass>>foo self bar: MyClassVar

Re: [Pharo-users] Literals

2018-04-27 Thread Clément Bera
The guy who asked the question said: "...when you want to shorten some object initialization" Using ClassVariable is an alternative way to shorten object initialization, reading a ClassVariable is almost the same performance as reading a literal, so that looked like a good alternative to me. Both

Re: [Pharo-users] Saving a Smalltalk Project

2018-05-03 Thread Clément Bera
That is the answer I would give: Biggest Smalltalk community in Silicon valley is likely the Lam Research one (dozens of devs). On my blog post talking about Smalltalk, I have 2k views per Smalltalk community-wide audience post, so the community is at least that big. Smalltalk conferences (Smallta

Re: [Pharo-users] Macros?

2018-05-25 Thread Clément Bera
What about a preprocessor like the Java preprocessors ? The Truffle project relies heavily on that for high performance Java and it's quite nice. It's difficult to do that in Smalltalk right now. I think if you want to do what are asking for you just need to write a bytecode compiler extension. I

Re: [Pharo-users] Macros?

2018-05-25 Thread Clément Bera
On Fri, May 25, 2018 at 10:44 PM, Esteban Lorenzano wrote: > > > On 25 May 2018, at 17:30, Clément Bera wrote: > > What about a preprocessor like the Java preprocessors ? The Truffle > project relies heavily on that for high performance Java and it's quite > nice. It

Re: [Pharo-users] Macros?

2018-05-25 Thread Clément Bera
n the image for this case right now but it's probably a couple lines of code with Reflectivity. On Sat, May 26, 2018 at 7:28 AM, Clément Bera wrote: > > > On Fri, May 25, 2018 at 10:44 PM, Esteban Lorenzano > wrote: > >> >> >> On 25 May 2018, at 17:

Re: [Pharo-users] Macros?

2018-05-25 Thread Clément Bera
On Sat, May 26, 2018 at 8:07 AM, Denis Kudriashov wrote: > Hi > > 2018-05-26 8:46 GMT+03:00 Clément Bera : > >> Just mentioning another use-case: >> >> getDatabaseInstance >> ^ (Production CifTrue: [Database] CifFalse: [MockDatabase]) new >

<    1   2