On 21 May 2018 at 03:01, Pavel Krivanek <pavel.krivanek(a)gmail.com> wrote:
> Hi,
>
> with some tweaks mostly related to FFI and fonts, we are able to run Pharo
> 7 on SqueakJS VM.
>
> Do not expect blazing performance. Currently, it is about two orders of
> magnitude slower than the native VM.
>
> https://pavel-krivanek.github.io/pharo/pharo.html
>
> Cheers,
> -- Pavel
>
Awesome!
Did you have to make changes to the image or the VM? Or both?
If you have any pull-requests for the VM I'd be happy to integrate :)
Please reply to vm-dev.
- Bert -
Andd... maybe we want to discuss this in vm-dev and not in pharo-users :)
On Mon, May 21, 2018 at 9:15 AM, Guillermo Polito <guillermopolito(a)gmail.com
> wrote:
> A bit further, the windows specific code is in
>
> https://github.com/OpenSmalltalk/opensmalltalk-vm/blob/
> e17db79411cfec767e04f3d94d12a642d920a30e/platforms/win32/vm/
> sqWin32ExternalPrims.c
>
> check the users of LoadLibrary, which comes form the windows std
> libraries.
>
> https://msdn.microsoft.com/en-us/library/windows/desktop/
> ms684175%28v=vs.85%29.aspx
>
> On Sun, May 20, 2018 at 9:46 PM, Guillermo Polito <
> guillermopolito(a)gmail.com> wrote:
>
>>
>>
>> On Sat, May 19, 2018 at 1:37 PM, Peter Uhnák <i.uhnak(a)gmail.com> wrote:
>>
>>> Hi,
>>>
>>> some Windows users are repeatedly running into Pharo failing to load
>>> Cairo library on Windows (see stack screenshot at the bottom).
>>>
>>> The problem is that I have no idea how to even start debugging this.
>>>
>>> Is there some documentation on how Pharo loads libraries via FFI on
>>> Windows that I can start digging into?
>>>
>>> Note that the library is definitely present, as this happens only
>>> occasionally -- it can be fixed by restarting PC. But I cannot reasonably
>>> ask users to restart just because Pharo decided it doesn't feel like
>>> loading a library.
>>>
>>> Any pointers / docs / ideas appreciated.
>>>
>>
>> You can see the actual code from
>>
>> https://github.com/OpenSmalltalk/opensmalltalk-vm/search?
>> utf8=%E2%9C%93&q=findAndLoadModule%28char+*pluginName%2C+
>> sqInt+ffiLoad%29&type=
>>
>> ?
>>
>>
>>>
>>> Thanks,
>>> Peter
>>>
>>>
>>>
>>>
>>
>>
>> --
>>
>>
>>
>> Guille Polito
>>
>> Research Engineer
>>
>> Centre de Recherche en Informatique, Signal et Automatique de Lille
>>
>> CRIStAL - UMR 9189
>>
>> French National Center for Scientific Research - *http://www.cnrs.fr
>> <http://www.cnrs.fr>*
>>
>>
>> *Web:* *http://guillep.github.io* <http://guillep.github.io>
>>
>> *Phone: *+33 06 52 70 66 13
>>
>
>
>
> --
>
>
>
> Guille Polito
>
> Research Engineer
>
> Centre de Recherche en Informatique, Signal et Automatique de Lille
>
> CRIStAL - UMR 9189
>
> French National Center for Scientific Research - *http://www.cnrs.fr
> <http://www.cnrs.fr>*
>
>
> *Web:* *http://guillep.github.io* <http://guillep.github.io>
>
> *Phone: *+33 06 52 70 66 13
>
--
Guille Polito
Research Engineer
Centre de Recherche en Informatique, Signal et Automatique de Lille
CRIStAL - UMR 9189
French National Center for Scientific Research - *http://www.cnrs.fr
<http://www.cnrs.fr>*
*Web:* *http://guillep.github.io* <http://guillep.github.io>
*Phone: *+33 06 52 70 66 13
Dave Lewis uploaded a new version of SystemTracing to project SystemTracing:
http://www.squeaksource.com/SystemTracing/SystemTracing.V3-dtl.29.mcz
==================== Summary ====================
Name: SystemTracing.V3-dtl.29
Author: dtl
Time: 20 May 2018, 7:57:54.942788 pm
UUID: 8b3fbeb8-1baa-4627-873a-05c12fd0b6ee
Ancestors: SystemTracing.V3-dtl.28
Provide ProtoObject>>basicInstVarAt: to call primitive 73 in the case of tracing a MCPackageInEnvironment instance that otherwise would delegate instVarAt: to the MCPackage for which it is a proxy. Implement this in ProtoObject rather than MCPackageInEnvironment because the image being traced my not have class MCPackageInEnvironment.
Initialize the PluggableDictionary in newLargeIdentityDictionaryOfSize: to use blocks for the hashBlock and equalBlock. This prevents problems when tracing an instance of MCPackageInEnvironment which otherwise would delegate #== to its MCPackage and is also the preferred way to initialize a PluggableDictionary.
Dave Lewis uploaded a new version of SystemTracing to project SystemTracing:
http://www.squeaksource.com/SystemTracing/SystemTracing.V3-dtl.28.mcz
==================== Summary ====================
Name: SystemTracing.V3-dtl.28
Author: dtl
Time: 20 May 2018, 6:49:42.416149 pm
UUID: c9a47009-6529-4f6d-973c-056ddcbd16a0
Ancestors: SystemTracing-dtl.27
Re-save SystemTracing-dtl.27 as SystemTracing.V3
Explanation: SystemTracing-tfel.42.mcz incorporates support for Spur image format, and is decended from SystemTracing-dtl.27, which was the last version for V3 images. In order to permit further development of the V3 branch, save it again under the name SystemTracing.V3.
For a V3 image that follows the Squeak trunk updates, see http://www.squeaksource.com/TrunkUpdateStreamV3. Tracing that V3 image to 64 bits with SystemTracer64 will require updates to the tracer, hence this SystemTracing.V3 branch.