[Pharo-users] Call for Nominations: SLE 2024 - Artifact Evaluation Committee, Nominations Wanted

2024-08-12 Thread Andrei Chis
17th ACM SIGPLAN International Conference on Software Language
Engineering (SLE 2024)
October 20-21, 2024
Pasadena, California, United States

---

As part of the artifact evaluation process of SLE 2024, we are looking
for additional members. If you know candidates that might be
interested in being part of the Artifact Evaluation Committee, please
nominate them.

https://2024.splashcon.org/track/sle-2024#Artifact-Evaluation
http://www.sleconf.org/2024/ArtifactEvaluation

We organize nominations using the following Google form.

https://forms.gle/p3eB3572rQi7WdHYA

We prioritize nominations done until the 31st of August.

For additional information, clarification, or answers to questions,
please get in touch with the artifact evaluation co-chairs.

---


[Pharo-users] 2nd CfP: SLE 2024 - 17th ACM SIGPLAN International Conference on Software Language Engineering

2024-05-31 Thread Andrei Chis
 work.

---
SLE and Doctoral Students
---

SLE encourages students to submit to the SPLASH doctoral symposium.
Authors of accepted doctoral symposium papers on SLE topics will also
have the chance to present their work to the SLE audience.

---
Organisation
---

Chairs:

* General chair: Ralf Lämmel, Universität Koblenz, Germany
* PC co-chair: Peter Mosses, Swansea University and Delft University
of Technology, Netherlands
* PC co-chair: Juliana Alves Pereira, Pontifícia Universidade Católica
do Rio de Janeiro, Brazil
* Artifact Evaluation co-chair: Johannes Härtel, Software Languages
Lab, Vrije Universiteit Brussel
* Artifact Evaluation co-chair: Sergio Queiroz de Medeiros,
Universidade Federal do Rio Grande do Norte
* Publicity chair: Andrei Chis, feenk gmbh, Switzerland

Program committee

* Andrzej Wąsowski, IT University of Copenhagen
* Anthony Anjorin, Zühlke Engineering GmbH
* Benoit Combemale, University of Rennes, Inria, CNRS, IRISA
* Bernd Fischer, Stellenbosch University
* Di Wang, Peking University
* Dimitris Kolovos, University of York
* Elias Castegren, Uppsala University
* Elizabeth Scott, Royal Holloway University of London
* Esther Guerra, Universidad Autónoma de Madrid
* Faezeh Khorram, Huawei Technologies
* Fernando Magno Quintão Pereira, Federal University of Minas Gerais
* Prof. Fiona Polack, University of Hull
* Görel Hedin, Lund University
* Guido Salvaneschi, University of St. Gallen
* João Saraiva, HASLab/INESC TEC, University of Minho
* Johannes Härtel, Software Languages Lab, Vrije Universiteit Brussel
* Judith Michael, RWTH Aachen University
* Manuel Wimmer, JKU Linz
* Marc Feeley, Université de Montréal
* Michel Steuwer, Technische Universität Berlin
* Paddy Krishnan, Oracle Labs
* Ragnar Mogk, Technische Universität Darmstadt
* Riemer van Rozen, CWI
* Roberto Ierusalimschy, PUC-Rio
* Sergio Queiroz de Medeiros, Universidade Federal do Rio Grande do Norte
* Shigeru Chiba, The University of Tokyo
* Stefan Marr, University of Kent
* Stephen Chong, Harvard University
* Tamás Szabó, GitHub Next
* Thomas Degueule, CNRS
* Thomas Kühn, Martin-Luther-University Halle-Wittenberg
* L. Thomas van Binsbergen, University of Amsterdam
* Tijs van der Storm, CWI & University of Groningen
* Walter Cazzola, Università degli Studi di Milano

---
Contact
---

For additional information, clarification, or answers to questions,
please get in touch with the program co-chairs (P.D.Mosses at
tudelft.nl and Juliana at inf.puc-rio.br).


[Pharo-users] 1st CfP: SLE 2024 - 17th ACM SIGPLAN International Conference on Software Language Engineering

2024-04-28 Thread Andrei Chis
 conference. The
official publication date affects the deadline for any patent filings
related to published work.

---
SLE and Doctoral Students
---

SLE encourages students to submit to the SPLASH doctoral symposium.
Authors of accepted doctoral symposium papers on SLE topics will also
have the chance to present their work to the SLE audience.

---
Organisation
---

Chairs:

* General chair: Ralf Lämmel, Universität Koblenz, Germany
* PC co-chair: Peter Mosses, Swansea University and Delft University
of Technology, Netherlands
* PC co-chair: Juliana Alves Pereira, Pontifícia Universidade Católica
do Rio de Janeiro, Brazil
* Publicity chair: Andrei Chis, feenk gmbh, Switzerland


---
Contact
---

For additional information, clarification, or answers to questions,
please get in touch with the program co-chairs (P.D.Mosses at
tudelft.nl and Juliana at inf.puc-rio.br).


[Pharo-users] 2nd CfP: SLE 2023 - 16th ACM SIGPLAN International Conference on Software Language Engineering

2023-06-15 Thread Andrei Chis
tudents to submit to the SPLASH doctoral symposium.
Authors of accepted papers will have the chance to present their work
to the SLE audience, too.

---
Organisation
---

Chairs:

* General chair: João Saraiva, Universidade do Minho, Portugal
* PC co-chair: Thomas Degueule, CNRS/LaBRI, France
* PC co-chair: Elizabeth Scott, Royal Holloway University of London,
United Kingdom
* Publicity chair: Andrei Chis, feenk gmbh, Switzerland

Program committee:

Jean-Christophe Bach, IMT Atlantique, France
Thomas van Binsbergen, University of Amsterdam, Netherlands
Mark van den Brand, Eindhoven University of Technology, Netherlands
Jordi Cabot, Luxembourg Institute of Science and Technology, Luxembourg
Horatiu Cirstea, University of Lorraine and Loria, France
Romina Eramo, University of l’Aquila, Italy
Bernd Fischer, Stellenbosch University, South Africa
Görel Hedin, Lund University, Sweden
Felienne Hermans, VU Amsterdam, Netherlands
Robert Hirschfeld, University of Potsdam, Germany
Zhenjiang Hu, Peking University, China
Adrian Johnstone, Royal Holloway University of London, UK
Dimitris Kolovos, University of York, UK
Ivan Kurtev, Eindhoven University of Technology, Netherlands
Ralf Lämmel, University of Koblenz-Landau, Germany
Julien Lange, Royal Holloway University of London, UK
Stefan Marr, University of Kent, UK
Marjan Mernik, University of Maribor, Slovenia
Gunter Mussbacher, McGill University, Canada
Oscar Nierstrasz, feenk GmbH, Switzerland
Bruno Oliveira, University of Hong Kong, Hong Kong
Casper Bach Poulsen, Delft University of Technology, Netherlands
Juri Di Rocco, University of l’Aquila, Italy
Davide Di Ruscio, University of l’Aquila, Italy
Bernhard Rumpe, RWTH Aachen University, Germany
Neil Sculthorpe, Nottingham Trent University, UK
Luís Eduardo de Souza Amorim, Australian National University, Australia
Tijs van der Storm, CWI and University of Groningen, Netherlands
Tamás Szabó, GitHub Next, Germany
Mauricio Verano Merino, VU Amsterdam, Netherlands
Manuel Wimmer, Johannes Kepler University Linz, Austria
Vadim Zaytsev, University of Twente, Netherlands
Philipp Zech, University of Innsbruck, Austria

---
Contact
---

For additional information, clarification, or answers, please get in
touch with the program co-chairs (E.Scott at rhul.ac.uk and
thomas.degueule at labri.fr).


[Pharo-users] 1st CfP: SLE 2023 - 16th ACM SIGPLAN International Conference on Software Language Engineering

2023-03-06 Thread Andrei Chis
adline for any patent filings
related to published work.

---
SLE and Doctoral Students
---

SLE encourages students to submit to the SPLASH doctoral symposium.
Authors of accepted papers will have the chance to present their work
to the SLE audience, too.

---
Organisation
---

Chairs:

* General chair: João Saraiva, Universidade do Minho, Portugal
* PC co-chair: Thomas Degueule, CNRS/LaBRI, France
* PC co-chair: Elizabeth Scott, Royal Holloway University of London,
United Kingdom
* Publicity chair: Andrei Chis, feenk gmbh, Switzerland

---
Contact
---

For additional information, clarification, or answers, please get in
touch with the program co-chairs (E.Scott at rhul.ac.uk and
thomas.degueule at labri.fr).


[Pharo-users] CfP: Journal of Systems and Software - Special Issue on Software Language Engineering

2023-01-13 Thread Andrei Chis
Dear Colleagues,

We invite submissions for the Journal of Systems and Software Special
Issue on «Software Language Engineering». This special issue is
related to the 2022 edition of the Software Language Engineering
Conference (https://2022.splashcon.org/home/sle-2022?) but **it is
open to all authors.**

Details follow.

--
Journal of Systems and Software
Software Language Engineering Special Issue

Guest Editors

● Lola Burgueño, University of Malaga, Spain
● Walter Cazzola, Professor, Università degli Studi di Milano, Italy
● Dimitris Kolovos, Professor, University of York, United Kingdom

Special issue information:

With the ubiquity of computers, software has become the dominating
intellectual asset of our time. In turn, this software depends on
software languages, namely the languages it is written in, the
languages used to describe its environment, and the languages driving
its development process. Given that everything depends on software and
that software depends on software languages, it seems fair to say that
for many years to come, everything will depend on software languages.

Software language engineering (SLE) is the discipline of engineering
languages and their tools required for the creation of software. It
abstracts from the differences between programming languages, modeling
languages, and other software languages, and emphasizes the
engineering facet of the creation of such languages, that is, the
establishment of the scientific methods and practices that enable the
best results. While SLE is certainly driven by its meta-circular
character (software languages are engineered using software
languages), SLE is not self-satisfying: its scope extends to the
engineering of languages for all and everything.

This special issue will represent a further step in identification,
definition and tooling of software languages.

Topics of interest related to the special issue, but are not limited to:

● Software Language Design and Implementation
   ○ Approaches to and methods for language design
   ○ Static semantics (e.g. design rules, well-formedness constraints)
   ○ Techniques for specifying behavioral / executable semantics
   ○ Generative approaches (incl. code synthesis, compilation)
   ○ Meta-languages, meta-tools, language workbenches
● Software Language Validation
   ○ Verification and formal methods for languages
   ○ Testing techniques for languages
   ○ Simulation techniques for languages
● Software Language Integration and Composition
   ○ Coordination of heterogeneous languages and tools
   ○ Mappings between languages (incl. transformation languages)
   ○ Traceability between languages
   ○ Deployment of languages to different platforms
● Software Language Maintenance
   ○ Software language reuse
   ○ Language evolution
   ○ Language families and variability, language and software product lines
   ○ Domain-specific approaches for any aspects of SLE (design,
implementation, validation, maintenance)
● Empirical evaluation and experience reports of language engineering tools
   ○ User studies evaluating usability
   ○ Performance benchmarks
   ○ Industrial applications
● Synergies between Language Engineering and emerging/promising research areas
   ○ AI and ML language engineering (e.g., ML compiler testing, code
classification)
   ○ Quantum language engineering (e.g., language design for quantum machines)
● Language engineering for physical systems (e.g., CPS, IoT, digital twins)
   ○ Socio-technical systems and language engineering (e.g., language
evolution to adapt to social requirements)

Manuscript submission information:

Proposed Dates and Outcomes
● Submission: 15 February 2023
● Notification to authors (first round): 15 April 2023
● Submission of revised papers (second round): 15 June 2023
● Notification to authors (second round): 15 August 2023
● Submission after second review: 15 October 2023
● Final acceptance: 15 November 2023
● Date of publication: 15 December 2023

Submission Guidelines

The call for this special issue is an open call. We invite innovative
research with a sound scientific or technological basis and
validation. We accept submissions of original and previously
unpublished manuscripts and we especially encourage the submission of
revised and extended papers from the 15th ACM SIGPLAN International
Conference on Software Language Engineering (SLE 2022). If a previous
version of the manuscript has been published in a conference or
journal, then authors must explicitly explain the novelty of this new
submission and provide at least 30% new material. Surveys, literature
reviews and mapping studies would not be considered as part of this
special issue.

All manuscripts and any supplementary material should be submitted
through the Elsevier Editorial System at
https://www.editorialmanager.com/jssoftware/default1.aspx. Follow the
submission instructions given on this site. During th

[Pharo-users] Call for Papers: Eelco Visser Commemorative Symposium

2022-07-26 Thread Andrei Chis
Due to the untimely passing of Eelco Visser, members of his former
research communities TU Delft, CWI, OOPSLA, SLE, and IFIP Working
Groups 2.11 & 2.16 have joined in organizing the Eelco Visser
Commemorative Symposium. The event will be held on the occasion of the
first anniversary of his passing in April of next year. You are
cordially invited to contribute to this symposium, by writing a paper
and giving a presentation related to Eelco and his influential work,
or by just attending. Please see the CfP below.

Best regards,

The EVCS Organizing Committee




Eelco Visser Commemorative Symposium (EVCS)
5 April 2023
Delft, The Netherlands
https://symposium.eelcovisser.org



Eelco Visser (1966–2022) was Antoni van Leeuwenhoek Professor of
Computer Science and Chair of the Programming Languages Group in the
Department of Software Technology at TU Delft. His research career
started with studies at the University of Amsterdam and CWI, followed
by appointments at Oregon Graduate Institute and Utrecht University.
He was highly influential in the software language engineering and
programming language design communities. His many scientific
contributions about meta-languages and domain-specific languages have
been of high importance in both the scientific and industrial
communities. He was a founding member of IFIP Working Groups 2.11
(Program Generation) and 2.16 (Programming Language Design).

Eelco Visser’s work on the cutting-edge language workbench Spoofax
started with a ground-breaking publication in 2010, for which he
received a Most Influential Paper award at OOPSLA 2020. As a strong
advocate of tool-supported programming education, he led the
development of WebLab, a learning management system that is in use for
a range of programming languages and courses at TU Delft. He also led
the design, implementation and use of conf.researchr.org, a content
management system for scientific events used by hundreds of
international events since 2011.

---
Call for Papers
---

A commemorative symposium for Eelco Visser is to be held on the first
anniversary of his untimely passing away in April 2022. It will bring
together colleagues from various communities, with presentations of
papers on topics related to his research and other academic
activities.

---
Topics of Interest
---

Topics of interest include, but are not limited to:

- Language engineering
- Program transformation
- Language workbenches
- Declarative language specification
- Name binding and scope graphs
- Type soundness and intrinsically-typed interpreters
- Language specification testing
- Language implementation generation
- Domain-specific programming languages
- DSLs for software deployment
- DSLs for web application development
- Tool-supported programming education

---
Important Dates
---

- Friday 30 September 2022: Declaration of intent to submit
- Friday 28 October 2022: Paper submission deadline
- Monday 28 November 2022: Notifications
- Wednesday 5 April 2023: Symposium

---
Types of Submissions
---

- **Unpublished research**: These are extended abstracts of novel
research contributions related to Eelco Visser’s work. Papers may
range from 4 to 8 pages in length, and may optionally include up to 2
further pages of bibliography. Papers will be reviewed by selected
members of the relevant research communities. Subsequent submission of
full papers including the same results to other venues is encouraged.

- **On the relationship between Eelco Visser's work and other
frameworks**: These are papers that present some framework and explain
its relationship to his work, but without novel research
contributions. Papers may range from 4 to 8 pages in length, and may
optionally include up to 2 further pages of bibliography. Papers will
be reviewed by an expert on the relevant topic.

- **Personal reflections on Eelco Visser's activities**: These are
short papers that recall and reflect upon personal experiences of his
contributions in academia or industry. Papers may range from 1 to 4
pages in length, including bibliography. Papers will be lightly
reviewed for relevance.

---
Submissions
---

Declaration of intent to submit is optional, but helpful for
allocation of appropriate reviewers. It is to include a provisional
title, the type of submission, and an indication of the topics
covered. The other details regarding submissions will be announced
later. The page ranges for submissions (see above) are assuming a
format such as Springer LNCS or Dagstuhl OASIcs.

---
Publication
--

[Pharo-users] Second Call for Papers: 15th ACM SIGPLAN International Conference on Software Language Engineering (SLE 2022)

2022-07-05 Thread Andrei Chis

15th ACM SIGPLAN International Conference on Software Language
Engineering (SLE 2022)
December 5-10, 2022
Auckland, New Zealand


https://conf.researchr.org/home/sle-2022
http://www.sleconf.org/2022
Follow us on twitter: https://twitter.com/sleconf


We are pleased to invite you to submit papers to the 15th ACM SIGPLAN
International Conference on Software Language Engineering (SLE 2022),
held in conjunction with SPLASH, GPCE and SAS 2022. Based on the
future developments the conference will be hosted in Auckland, New
Zealand on December 5-10, 2022.


---
Topics of Interest
---

SLE covers software language engineering rather than engineering a
specific software language. Topics of interest include, but are not
limited to:

- Software Language Design and Implementation
- Approaches to and methods for language design
- Static semantics (e.g. design rules, well-formedness constraints)
- Techniques for specifying behavioral / executable semantics
- Generative approaches (incl. code synthesis, compilation)
- Meta-languages, meta-tools, language workbenches
- Software Language Validation
- Verification and formal methods for languages
- Testing techniques for languages
- Simulation techniques for languages
- Software Language Integration and Composition
- Coordination of heterogeneous languages and tools
- Mappings between languages (incl. transformation languages)
- Traceability between languages
- Deployment of languages to different platforms
- Software Language Maintenance
- Software language reuse
- Language evolution
- Language families and variability, language and software product lines
- Domain-specific approaches for any aspects of SLE (design,
implementation, validation, maintenance)
- Empirical evaluation and experience reports of language engineering tools
- User studies evaluating usability
- Performance benchmarks
- Industrial applications
- "Synergies between Language Engineering and emerging/promising research areas"
- AI and ML language engineering (e.g., ML compiler testing, code
classification) Quantum language engineering (e.g., language design
for quantum machines)
- Language engineering for physical systems (e.g., CPS, IoT, digital twins)
- Socio-technical systems and language engineering (e.g., language
evolution to adapt to social requirements)
- Etc.

---
Types of Submissions
---

SLE accepts the following types of papers:

- **Research papers**: These are "traditional" papers detailing
research contributions to SLE. Papers may range from 6 to 12 pages in
length, and may optionally include 2 further pages of
bibliography/appendices. Papers will be reviewed with an understanding
that some results do not need 12 full pages and may be fully described
in fewer pages.

- **New ideas / vision papers**: These are papers that may describe
new, unconventional software language engineering research positions
or approaches that depart from standard practice. They can describe
well-defined research ideas that are at an early stage of
investigation. They could also provide new evidence to challenge
common wisdom, present new unifying theories about existing SLE
research that provides novel insight or that can lead to the
development of new technologies or approaches, or apply SLE technology
to radically new application areas. New ideas / vision papers must not
exceed 5 pages, and may optionally include 1 further page of
bibliography / appendices.

- **SLE Body of Knowledge**: The SLE Body of Knowledge (SLEBoK) is a
community-wide effort to provide a unique and comprehensive
description of the concepts, best practices, tools and methods
developed by the SLE community. To this respect, the SLE conference
will accept surveys, essays, open challenges, empirical observations
and case study papers on the SLE topics. These can focus on but they
are not limited to methods, techniques, best practices and teaching
approaches. Papers in this category can have up to 20 pages, including
bibliography/appendices.

- **Tool papers**: These are papers which focus on the tooling aspects
which are often forgotten or neglected in research papers. A good tool
paper focuses on practical insights that are likely to be useful to
other implementers or users in the future. Any of the SLE topics of
interest are appropriate areas for tool demonstrations. Submissions
must not exceed 5 pages and may optionally include 1 further page of
bibliography / appendices. They may optionally come with an appendix
with a demo outline / screenshots and/or a short video/screencast
illustrating the tool.

**Workshops**: Workshops will be organized by SPLASH. Please inform us
and contact the SPLASH organizers if you would like to organize a
workshop of interest to the SLE audience. Information on how to sub

[Pharo-users] First Call for Papers: 15th ACM SIGPLAN International Conference on Software Language Engineering (SLE 2022)

2022-02-07 Thread Andrei Chis

15th ACM SIGPLAN International Conference on Software Language Engineering (SLE 
2022)
December 5-10, 2022 
Auckland, New Zealand


https://conf.researchr.org/home/sle-2022
http://www.sleconf.org/2022
Follow us on twitter: https://twitter.com/sleconf


We are pleased to invite you to submit papers to the 15th ACM SIGPLAN 
International Conference on Software Language Engineering (SLE 2022), held in 
conjunction with SPLASH, GPCE and SAS 2022. Based on the future developments 
the conference will be hosted in Auckland, New Zealand on December 5-10, 2022.


---
Topics of Interest
---

SLE covers software language engineering rather than engineering a specific 
software language. Topics of interest include, but are not limited to:

- Software Language Design and Implementation
- Approaches to and methods for language design
- Static semantics (e.g. design rules, well-formedness constraints)
- Techniques for specifying behavioral / executable semantics
- Generative approaches (incl. code synthesis, compilation)
- Meta-languages, meta-tools, language workbenches
- Software Language Validation
- Verification and formal methods for languages
- Testing techniques for languages
- Simulation techniques for languages
- Software Language Integration and Composition
- Coordination of heterogeneous languages and tools
- Mappings between languages (incl. transformation languages)
- Traceability between languages
- Deployment of languages to different platforms
- Software Language Maintenance
- Software language reuse
- Language evolution
- Language families and variability, language and software product 
lines 
- Domain-specific approaches for any aspects of SLE (design, implementation, 
validation, maintenance)
- Empirical evaluation and experience reports of language engineering tools
- User studies evaluating usability
- Performance benchmarks
- Industrial applications
- "Synergies between Language Engineering and emerging/promising research areas"
- AI and ML language engineering (e.g., ML compiler testing, code 
classification) Quantum language engineering (e.g., language design for quantum 
machines)
- Language engineering for physical systems (e.g., CPS, IoT, digital 
twins)
- Socio-technical systems and language engineering (e.g., language 
evolution to adapt to social requirements)
- Etc.

---
Types of Submissions
---

SLE accepts the following types of papers:

- **Research papers**: These are "traditional" papers detailing research 
contributions to SLE. Papers may range from 6 to 12 pages in length, and may 
optionally include 2 further pages of bibliography/appendices. Papers will be 
reviewed with an understanding that some results do not need 12 full pages and 
may be fully described in fewer pages.

- **New ideas / vision papers**: These are papers that may describe new, 
unconventional software language engineering research positions or approaches 
that depart from standard practice. They can describe well-defined research 
ideas that are at an early stage of investigation. They could also provide new 
evidence to challenge common wisdom, present new unifying theories about 
existing SLE research that provides novel insight or that can lead to the 
development of new technologies or approaches, or apply SLE technology to 
radically new application areas. New ideas / vision papers must not exceed 5 
pages, and may optionally include 1 further page of bibliography / appendices.

- **SLE Body of Knowledge**: The SLE Body of Knowledge (SLEBoK) is a 
community-wide effort to provide a unique and comprehensive description of the 
concepts, best practices, tools and methods developed by the SLE community. To 
this respect, the SLE conference will accept surveys, essays, open challenges, 
empirical observations and case study papers on the SLE topics. These can focus 
on but they are not limited to methods, techniques, best practices and teaching 
approaches. Papers in this category can have up to 20 pages, including 
bibliography/appendices.

- **Tool papers**: These are papers which focus on the tooling aspects which 
are often forgotten or neglected in research papers. A good tool paper focuses 
on practical insights that are likely to be useful to other implementers or 
users in the future. Any of the SLE topics of interest are appropriate areas 
for tool demonstrations. Submissions must not exceed 5 pages and may optionally 
include 1 further page of bibliography / appendices. They may optionally come 
with an appendix with a demo outline / screenshots and/or a short 
video/screencast illustrating 

[Pharo-users] CFP: SLE 2021 - 14th ACM SIGPLAN International Conference on Software Language Engineering

2021-05-13 Thread Andrei Chis

14th ACM SIGPLAN International Conference on Software Language Engineering
(SLE 2021)
October 17-19, 2021
Chicago, Illinois


https://conf.researchr.org/home/sle-2021
http://www.sleconf.org/2021
Follow us on twitter: https://twitter.com/sleconf


We are pleased to invite you to submit papers to the 14th ACM SIGPLAN
International Conference on Software Language Engineering (SLE 2021), held
in conjunction with SPLASH, GPCE and SAS 2021. Based on the future
developments the conference will be hosted in Chicago, Illinois, United
States on October 17-19, 2021 or will be held as a virtual event.

---
Scope
---

The ACM SIGPLAN International Conference on Software Language Engineering
(SLE) is devoted to the principles of software languages: their design,
their implementation, and their evolution.

With the ubiquity of computers, software has become the dominating
intellectual asset of our time. In turn, this software depends on software
languages, namely the languages it is written in, the languages used to
describe its environment, and the languages driving its development
process. Given that everything depends on software and that software
depends on software languages, it seems fair to say that for many years to
come, everything will depend on software languages.

Software language engineering (SLE) is the discipline of engineering
languages and their tools required for the creation of software. It
abstracts from the differences between programming languages, modelling
languages, and other software languages, and emphasizes the engineering
facet of the creation of such languages, that is, the establishment of the
scientific methods and practices that enable the best results. While SLE is
certainly driven by its metacircular character (software languages are
engineered using software languages), SLE is not self-satisfying: its scope
extends to the engineering of languages for all and everything.

Like its predecessors, the 14th edition of the SLE conference, SLE 2021,
will bring together researchers from different areas united by their common
interest in the creation, capture, and tooling of software languages. It
overlaps with traditional conferences on the design and implementation of
programming languages, model-driven engineering, and compiler construction,
and emphasizes the fusion of their communities. To foster the latter, SLE
traditionally fills a two-day program with a single track, with the only
temporal overlap occurring between co-located events.

---
Topics of Interest
---

SLE 2021 solicits high-quality contributions in areas ranging from
theoretical and conceptual contributions, to tools, techniques, and
frameworks in the domain of software language engineering. Broadly
speaking, SLE covers software language engineering rather than engineering
a specific software language. Topics of interest include, but are not
limited to:


* Software Language Design and Implementation
  - Approaches to and methods for language design
  - Static semantics (e.g., design rules, well-formedness constraints)
  - Techniques for specifying behavioral / executable semantics
  - Generative approaches (incl. code synthesis, compilation)
  - Meta-languages, meta-tools, language workbenches

* Software Language Validation
  - Verification and formal methods for languages
  - Testing techniques for languages
  - Simulation techniques for languages

* Software Language Integration and Composition
  - Coordination of heterogeneous languages and tools
  - Mappings between languages (incl. transformation languages)
  - Traceability between languages
  - Deployment of languages to different platforms

* Software Language Maintenance
  - Software language reuse
  - Language evolution
  - Language families and variability

* Domain-specific approaches for any aspects of SLE (design,
implementation, validation, maintenance)

* Empirical evaluation and experience reports of language engineering tools
  - User studies evaluating usability
  - Performance benchmarks
  - Industrial applications

---
Important Dates
---

All dates are Anywhere on Earth.

* Mon 5 Jul 2021 - Abstract Submissions
* Fri 9 Jul 2021 - Paper Submissions
* Wed 1 Sep 2021 - Review Notification
* Wed-Fri 1-3 Sep 2021 - Author Response Period
* Mon 13 Sep 2021 - Notification
* Wed 15 Sept 2021 - Artifact Submissions
* Tue 28 Sep 2021 - Artifact Kick-the-tires Author Response
* Tue 12 Oct 2021 - Artifact Notification
* Sun-Tue 17-19 Oct 2021 - SLE Conference

---
Types of Submissions
---

SLE 2021 solicits three types of papers:

* Research papers
These are "tra

Re: [Pharo-users] External Module not found - LGitLibrary

2019-12-20 Thread Andrei Chis
Hi,

We got a slightly similar error with Pharo 8 on a Linux CI  when loading
code quite often (but still randomly).
Does it happen for you when loading code or just when opening the image?
Which Pharo 8.0 build are you using?

Error: External module not found
ExternalLibraryFunction(Object)>>error:
ExternalLibraryFunction(Object)>>externalCallFailed
ExternalLibraryFunction(ExternalFunction)>>invokeWithArguments:
LGitCommit>>commit_tree:commit:
LGitCommit>>tree
LGitCommitStore>>nodeAt:ifPresent:ifAbsent:
LGitCommitStore(FileSystemStore)>>exists:
FileSystem>>exists:
FileReference>>exists
IceBasicProjectReader>>canReadProjectFromCommitish:
[ :any | any canReadProjectFromCommitish: anIceCommitish ] in
IceProjectReader class>>readProjectFrom: in Block: [ :any | any
canReadProjectFromCommitish: anIceCom...etc...
[ :each |
(aBlock value: each)
ifTrue: [ ^ foundBlock cull: each ] ] in
OrderedCollection(Collection)>>detect:ifFound:ifNone: in Block: [
:each | ...
OrderedCollection>>do:
OrderedCollection(Collection)>>detect:ifFound:ifNone:
OrderedCollection(Collection)>>detect:ifNone:
OrderedCollection(Collection)>>detect:
IceProjectReader class>>readProjectFrom:
[ IceProjectReader readProjectFrom: self ] in IceGitCommit>>project in
Block: [ IceProjectReader readProjectFrom: self ]
BlockClosure>>on:do:
IceGitCommit>>project
IceWorkingCopy>>refreshProjectFromRepository
IceWorkingCopy>>referenceCommit:
IceWorkingCopy>>adoptCommit:
IceGitCommit(IceCommit)>>adopt
IceCheckoutDoNotLoadPackages>>checkoutOn:
IceWorkingCopy>>checkout:
IceLibgitRepository(IceRepository)>>checkout:
IceGitLocalBranch(IceCommitish)>>checkout:
IceGitLocalBranch(IceCommitish)>>switch
IceLibgitRepository(IceRepository)>>switchToCommitishNamed:



On Fri, Dec 20, 2019 at 1:28 AM BrunoBB  wrote:

> Hi,
>
> Using Pharo on Windows time to time i got "External Module not found" for
> LGitLibrary.
>
> Not sure if i'm hitting:
> https://github.com/pharo-project/pharo-launcher/issues/307
>
> But this time the problem is not fixed. Other time after some trying to
> open
> the image in different way (PharoLaucher, from CommandLine, selecting
> Pharo.exe to open .image files, ..) the problem fixed itself.
>
> ExternalLibraryFunction(Object)>>error:
> ExternalLibraryFunction(Object)>>externalCallFailed
> ExternalLibraryFunction(ExternalFunction)>>invokeWithArguments:
> LGitLibrary>>libgit2_init
> FFICalloutAPI>>function:module:
> LGitLibrary(Object)>>ffiCall:
> LGitLibrary>>libgit2_init
> [ self libgit2_init.
> self recordInitializationSuccess ] in LGitLibrary>>initializeLibGit2 in
> Block: [ self libgit2_init
> BlockClosure>>on:do:
> LGitLibrary>>initializeLibGit2
> LGitLibrary class>>startUp:
> ClassSessionHandler>>startup:
> [ :each | each startup: isImageStarting ] in WorkingSession>>runStartup: in
> Block: [ :each | each startup: isImageStarting ]
> [ aBlock value: each ] in [ :each |
> [ aBlock value: each ]
> on: Exception
> do: [ :error | self errorHandler handleError: error ] ] in
> WorkingSession>>runList:do: in Block: [ aBlock value: each ]
> BlockClosure>>on:do:
> [ :each |
> [ aBlock value: each ]
> on: Exception
> do: [ :error | self errorHandler handleError: error ] ] in
> WorkingSession>>runList:do: in Block: [ :each | ...
> Array(SequenceableCollection)>>do:
> WorkingSession>>runList:do:
> WorkingSession>>runStartup:
> WorkingSession>>start:
> SessionManager>>launchSnapshot:andQuit:
> [ isImageStarting := self launchSnapshot: save andQuit: quit.
> wait signal ] in SessionManager>>snapshot:andQuit: in Block: [
> isImageStarting := self launchSnapshot: save and...etc...
> [ self value.
> Processor terminateActive ] in BlockClosure>>newProcess in Block: [ self
> value
>
>
>
>
> --
> Sent from: http://forum.world.st/Pharo-Smalltalk-Users-f1310670.html
>
>


[Pharo-users] SLE 2019: Call for Endorsements - Most Influential Paper (MIP) Award

2019-09-02 Thread Andrei Chis

Call for Endorsements: ACM SIGPLAN International Conference on
Software Language Engineering (SLE) - Most Influential Paper Award
SLE MIP Awards: http://www.sleconf.org/mip
Follow us on twitter: https://twitter.com/sleconf
SLE 2019: https://conf.researchr.org/home/sle-2019


Starting in 2019, the ACM SIGPLAN International Conference on Software
Language Engineering (SLE) delivers annually an award to the Most
Influential Paper (MIP) presented at the SLE conference held 10 years
prior to the award year. The SLE MIP Award distinguishes the authors
of the paper having the greatest impact (either scientific, societal
or industrial). The papers are judged by their influence over the past
decade. The SLE MIP Award is delivered by the current members of the
Steering Committee (SC) of the conference, considering: i)
endorsements from the community, and ii) the synthesis of some facts
and metrics collected in advance by selected SC members. The vote is
by majority of the SC members, after a discussion during the online
meetings. Authors are informed at once, and awarded at the coming
conference.

In 2019 we offer two awards: one for the authors of the MIP from the
2009 program (http://www.sleconf.org/2009/Program.html), and another
one for the authors of the MIP from the 2008 program
(http://www.sleconf.org/2008/program.html), back to the first edition
of the conference.

SLE MIP Award 2019:
- Program SLE 2009: http://www.sleconf.org/2009/Program.html;
- Endorsement: http://tiny.cc/slemip2019 (deadline: Sep. 20th, 2019)

SLE MIP Award 2018:
- Program SLE 2008: http://www.sleconf.org/2008/program.html;
- Endorsement: http://tiny.cc/slemip2018 (deadline: Sep. 20th, 2019)



[Pharo-users] Second Call for Papers: 12th ACM SIGPLAN International Conference on Software Language Engineering (SLE 2019)

2019-06-04 Thread Andrei Chis

Call for Papers:
12th ACM SIGPLAN International Conference on Software Language Engineering
(SLE 2019)
co-located with SPLASH 2019
Athens, Greece
October 21-22, 2019

https://conf.researchr.org/home/sle-2019
http://www.sleconf.org/2019
Follow us on twitter: https://twitter.com/sleconf


We are pleased to invite you to submit papers to the 12th ACM SIGPLAN
International Conference on Software Language Engineering (SLE 2019), held
in conjunction with SPLASH 2019 at Athens, Greece on October 21-22, 2019.

---
Topics of Interest
---

SLE 2019 solicits high-quality contributions in areas ranging from
theoretical and conceptual contributions, to tools, techniques, and
frameworks in the domain of software language engineering. Topics relevant
to SLE cover generic aspects of software languages development rather than
aspects of engineering a specific language. In particular, SLE is
interested in contributions from the following areas:


* Software Language Design and Implementation
  - Approaches to and methods for language design
  - Static semantics (e.g., design rules, well-formedness constraints)
  - Techniques for specifying behavioral / executable semantics
  - Generative approaches (incl. code synthesis, compilation)
  - Meta-languages, meta-tools, language workbenches

* Software Language Validation
  - Verification and formal methods for languages
  - Testing techniques for languages
  - Simulation techniques for languages

* Software Language Integration and Composition
  - Coordination of heterogeneous languages and tools
  - Mappings between languages (incl. transformation languages)
  - Traceability between languages
  - Deployment of languages to different platforms

* Software Language Maintenance
  - Software language reuse
  - Language evolution
  - Language families and variability

* Domain-specific approaches for any aspects of SLE (design,
implementation, validation, maintenance)

* Empirical evaluation and experience reports of language engineering tools
  - User studies evaluating usability
  - Performance benchmarks
  - Industrial applications

---
Important Dates
---

All dates are Anywhere on Earth.

* Fri 14 Jun 2019 - Abstract Submission
* Fri 21 Jun 2019 - Paper Submission
* Fri 9 Aug 2019 - Author Notification
* Fri 16 Aug 2019 - Artifact Submission
* Fri 30 Aug 2019 - Artifact Kick-the-tires Author Response (7 days)
* Fri 20 Sep 2019 - Camera ready deadline
* Wed 25 Sep 2019 - Artifact notification
* Fri 27 Sep 2019 - Artifact-related paper updates
* Mon-Tue 21-22 Oct 2018 - SLE Conference

---
Types of Submissions
---

SLE 2019 solicits three types of contributions: Research Papers, Tools
Papers, and New Ideas/Vision papers.

* Research papers
These should report a substantial research contribution to SLE or
successful application of SLE techniques or both. Full paper submissions
must not exceed 12 pages, excluding bibliography.

* Tool papers
Because of SLE’s interest in tools, we seek papers that present software
tools related to the field of SLE. Selection criteria include originality
of the tool, its innovative aspects, and relevance to SLE. Any of the SLE
topics of interest are appropriate areas for tool demonstrations.
Submissions must provide a tool description of 4 pages excluding
bibliography, and a demonstration outline including screenshots of up to 6
pages. Tool demonstrations must have the keywords “Tool Demo” or “Tool
Demonstration” in the title. The 4-page tool description will, if the
demonstration is accepted, be published in the proceedings. The 6-page
demonstration outline will be used by the program committee only for
evaluating the submission.

*New ideas / vision papers
New ideas papers should describe new, non-conventional SLE research
approaches that depart from standard practice. They are intended to
describe well-defined research ideas that are at an early stage of
investigation. Vision papers are intended to present new unifying theories
about existing SLE research that can lead to the development of new
technologies or approaches. New ideas / vision papers must not exceed 4
pages, excluding bibliography.

*Workshops
Workshops will be organized by SPLASH. Please inform us and contact the
SPLASH organizers if you would like to organize a workshop of interest to
the SLE audience. Information on how to submit workshops can be found at
the SPLASH 2019 Website.

---
Artifact Evaluation
---

SLE will continue to use an evaluation process for assessing the quality of
the artifacts on which papers are based to foster the culture of
experimental reproducibility. A

[Pharo-users] First Call for Papers: 12th ACM SIGPLAN International Conference on Software Language Engineering (SLE 2019)

2019-03-29 Thread Andrei Chis

Call for Papers:
12th ACM SIGPLAN International Conference on Software Language Engineering
(SLE 2019)
co-located with SPLASH 2019
Athens, Greece
October 21-22, 2019

https://conf.researchr.org/home/sle-2019
http://www.sleconf.org/2019
Follow us on twitter: https://twitter.com/sleconf


We are pleased to invite you to submit papers to the 12th ACM SIGPLAN
International Conference on Software Language Engineering (SLE 2019), held
in conjunction with SPLASH 2019 at Athens, Greece on October 21-22, 2019.

---
Topics of Interest
---

SLE 2019 solicits high-quality contributions in areas ranging from
theoretical and conceptual contributions, to tools, techniques, and
frameworks in the domain of software language engineering. Topics relevant
to SLE cover generic aspects of software languages development rather than
aspects of engineering a specific language. In particular, SLE is
interested in contributions from the following areas:


* Software Language Design and Implementation
  - Approaches to and methods for language design
  - Static semantics (e.g., design rules, well-formedness constraints)
  - Techniques for specifying behavioral / executable semantics
  - Generative approaches (incl. code synthesis, compilation)
  - Meta-languages, meta-tools, language workbenches

* Software Language Validation
  - Verification and formal methods for languages
  - Testing techniques for languages
  - Simulation techniques for languages

* Software Language Integration and Composition
  - Coordination of heterogeneous languages and tools
  - Mappings between languages (incl. transformation languages)
  - Traceability between languages
  - Deployment of languages to different platforms

* Software Language Maintenance
  - Software language reuse
  - Language evolution
  - Language families and variability

* Domain-specific approaches for any aspects of SLE (design,
implementation, validation, maintenance)

* Empirical evaluation and experience reports of language engineering tools
  - User studies evaluating usability
  - Performance benchmarks
  - Industrial applications

---
Important Dates
---

All dates are Anywhere on Earth.

* Fri 14 Jun 2019 - Abstract Submission
* Fri 21 Jun 2019 - Paper Submission
* Fri 9 Aug 2019 - Author Notification
* Fri 16 Aug 2019 - Artifact Submission
* Fri 30 Aug 2019 - Artifact Kick-the-tires Author Response (7 days)
* Fri 20 Sep 2019 - Camera ready deadline
* Wed 25 Sep 2019 - Artifact notification
* Fri 27 Sep 2019 - Artifact-related paper updates
* Mon-Tue 21-22 Oct 2018 - SLE Conference

---
Types of Submissions
---

SLE 2019 solicits three types of contributions: Research Papers, Tools
Papers, and New Ideas/Vision papers.

* Research papers
These should report a substantial research contribution to SLE or
successful application of SLE techniques or both. Full paper submissions
must not exceed 12 pages, excluding bibliography.

* Tool papers
Because of SLE’s interest in tools, we seek papers that present software
tools related to the field of SLE. Selection criteria include originality
of the tool, its innovative aspects, and relevance to SLE. Any of the SLE
topics of interest are appropriate areas for tool demonstrations.
Submissions must provide a tool description of 4 pages excluding
bibliography, and a demonstration outline including screenshots of up to 6
pages. Tool demonstrations must have the keywords “Tool Demo” or “Tool
Demonstration” in the title. The 4-page tool description will, if the
demonstration is accepted, be published in the proceedings. The 6-page
demonstration outline will be used by the program committee only for
evaluating the submission.

*New ideas / vision papers
New ideas papers should describe new, non-conventional SLE research
approaches that depart from standard practice. They are intended to
describe well-defined research ideas that are at an early stage of
investigation. Vision papers are intended to present new unifying theories
about existing SLE research that can lead to the development of new
technologies or approaches. New ideas / vision papers must not exceed 4
pages, excluding bibliography.

*Workshops
Workshops will be organized by SPLASH. Please inform us and contact the
SPLASH organizers if you would like to organize a workshop of interest to
the SLE audience. Information on how to submit workshops can be found at
the SPLASH 2019 Website.

---
Artifact Evaluation
---

SLE will continue to use an evaluation process for assessing the quality of
the artifacts on which papers are based to foster the culture of
experimental reproducibility. A

Re: [Pharo-users] Bloc Tutorial

2019-02-18 Thread Andrei Chis
In the same image you can do that from the Iceberg user interface. You can
open Iceberg from the Tools menu.
Then right click on the Tutorial project and from the context menu select
Pull.

On Mon, Feb 18, 2019 at 12:29 AM horrido  wrote:

> So how do I force Iceberg to reload?
>
>
> Andrei Chis wrote
> > If you use repositories that start with `github://` in Metacello you are
> > using Iceberg. Iceberg is used to clone and load the code. Metacello is
> > just the interface through which that is done.
> >
> > Running the loading instruction does not pull new changes from remote
> > repositories.
> >
> > On Sun, Feb 17, 2019 at 10:11 PM horrido <
>
> > horrido.hobbies@
>
> > > wrote:
> >
> >> ???
> >>
> >> I'm not using a cloned repository. I'm using Metacello just like in the
> >> snippet I showed you. Shouldn't it pull in the latest repo?
> >>
> >> I've never used Iceberg; I don't know how to use it. I don't really want
> >> to
> >> fuck around with GitHub. I don't want to be pulled into a rabbit hole.
> >>
> >>
> >>
> >> Andrei Chis wrote
> >> > If you already have the repository cloned, running the code that you
> >> > mentioned does not update the content of the repository.
> >> > Hence, the existing version will be loaded again.
> >> >
> >> > Instead you need to do a pull using Iceberg to update the content of
> >> the
> >> > repository and the code.
> >> >
> >> > Cheers,
> >> > Andrei
> >> >
> >> > On Sun, Feb 17, 2019 at 8:06 PM horrido <
> >>
> >> > horrido.hobbies@
> >>
> >> > > wrote:
> >> >
> >> >> If you're referring to this:
> >> >>
> >> >> Metacello new
> >> >> baseline: 'BlocTutorials';
> >> >> repository: 'github://pharo-graphics/Tutorials/src';
> >> >> load
> >> >>
> >> >> It made no difference. Same error message.
> >> >>
> >> >>
> >> >>
> >> >> Andrei Chis wrote
> >> >> > Hi,
> >> >> >
> >> >> > Thanks for the bug report.
> >> >> > Can you try loading the latest version for the code of the
> tutorial.
> >> I
> >> >> > fixed the deprecation warning.
> >> >> >
> >> >> > Let us know if you encounter any other issues.
> >> >> >
> >> >> > Cheers,
> >> >> > Andrei
> >> >> >
> >> >> > On Sun, Feb 17, 2019 at 6:49 PM Richard Kenneth Eng <
> >> >>
> >> >> > horrido.hobbies@
> >> >>
> >> >> >> wrote:
> >> >> >
> >> >> >> I'm following the tutorial in the MemoryGame booklet. When I run
> >> the
> >> >> game
> >> >> >> and click on any square, I get:
> >> >> >>
> >> >> >> The method BlBaseAnimation>>#startOn: called from
> >> >> >> MgCardElement>>#onFlippedFace has been deprecated.
> >> >> >> Use BlElement>>#addAnimation:
> >> >> >>
> >> >> >> The tutorial is out of sync. How can I proceed?
> >> >> >>
> >> >> >> Is there another way to learn how to use Bloc?
> >> >> >>
> >> >>
> >> >>
> >> >>
> >> >>
> >> >>
> >> >> --
> >> >> Sent from: http://forum.world.st/Pharo-Smalltalk-Users-f1310670.html
> >> >>
> >> >>
> >>
> >>
> >>
> >>
> >>
> >> --
> >> Sent from: http://forum.world.st/Pharo-Smalltalk-Users-f1310670.html
> >>
> >>
>
>
>
>
>
> --
> Sent from: http://forum.world.st/Pharo-Smalltalk-Users-f1310670.html
>
>


Re: [Pharo-users] Bloc Tutorial

2019-02-17 Thread Andrei Chis
If you use repositories that start with `github://` in Metacello you are
using Iceberg. Iceberg is used to clone and load the code. Metacello is
just the interface through which that is done.

Running the loading instruction does not pull new changes from remote
repositories.

On Sun, Feb 17, 2019 at 10:11 PM horrido  wrote:

> ???
>
> I'm not using a cloned repository. I'm using Metacello just like in the
> snippet I showed you. Shouldn't it pull in the latest repo?
>
> I've never used Iceberg; I don't know how to use it. I don't really want to
> fuck around with GitHub. I don't want to be pulled into a rabbit hole.
>
>
>
> Andrei Chis wrote
> > If you already have the repository cloned, running the code that you
> > mentioned does not update the content of the repository.
> > Hence, the existing version will be loaded again.
> >
> > Instead you need to do a pull using Iceberg to update the content of the
> > repository and the code.
> >
> > Cheers,
> > Andrei
> >
> > On Sun, Feb 17, 2019 at 8:06 PM horrido <
>
> > horrido.hobbies@
>
> > > wrote:
> >
> >> If you're referring to this:
> >>
> >> Metacello new
> >> baseline: 'BlocTutorials';
> >> repository: 'github://pharo-graphics/Tutorials/src';
> >> load
> >>
> >> It made no difference. Same error message.
> >>
> >>
> >>
> >> Andrei Chis wrote
> >> > Hi,
> >> >
> >> > Thanks for the bug report.
> >> > Can you try loading the latest version for the code of the tutorial. I
> >> > fixed the deprecation warning.
> >> >
> >> > Let us know if you encounter any other issues.
> >> >
> >> > Cheers,
> >> > Andrei
> >> >
> >> > On Sun, Feb 17, 2019 at 6:49 PM Richard Kenneth Eng <
> >>
> >> > horrido.hobbies@
> >>
> >> >> wrote:
> >> >
> >> >> I'm following the tutorial in the MemoryGame booklet. When I run the
> >> game
> >> >> and click on any square, I get:
> >> >>
> >> >> The method BlBaseAnimation>>#startOn: called from
> >> >> MgCardElement>>#onFlippedFace has been deprecated.
> >> >> Use BlElement>>#addAnimation:
> >> >>
> >> >> The tutorial is out of sync. How can I proceed?
> >> >>
> >> >> Is there another way to learn how to use Bloc?
> >> >>
> >>
> >>
> >>
> >>
> >>
> >> --
> >> Sent from: http://forum.world.st/Pharo-Smalltalk-Users-f1310670.html
> >>
> >>
>
>
>
>
>
> --
> Sent from: http://forum.world.st/Pharo-Smalltalk-Users-f1310670.html
>
>


Re: [Pharo-users] Bloc Tutorial

2019-02-17 Thread Andrei Chis
If you already have the repository cloned, running the code that you
mentioned does not update the content of the repository.
Hence, the existing version will be loaded again.

Instead you need to do a pull using Iceberg to update the content of the
repository and the code.

Cheers,
Andrei

On Sun, Feb 17, 2019 at 8:06 PM horrido  wrote:

> If you're referring to this:
>
> Metacello new
> baseline: 'BlocTutorials';
> repository: 'github://pharo-graphics/Tutorials/src';
> load
>
> It made no difference. Same error message.
>
>
>
> Andrei Chis wrote
> > Hi,
> >
> > Thanks for the bug report.
> > Can you try loading the latest version for the code of the tutorial. I
> > fixed the deprecation warning.
> >
> > Let us know if you encounter any other issues.
> >
> > Cheers,
> > Andrei
> >
> > On Sun, Feb 17, 2019 at 6:49 PM Richard Kenneth Eng <
>
> > horrido.hobbies@
>
> >> wrote:
> >
> >> I'm following the tutorial in the MemoryGame booklet. When I run the
> game
> >> and click on any square, I get:
> >>
> >> The method BlBaseAnimation>>#startOn: called from
> >> MgCardElement>>#onFlippedFace has been deprecated.
> >> Use BlElement>>#addAnimation:
> >>
> >> The tutorial is out of sync. How can I proceed?
> >>
> >> Is there another way to learn how to use Bloc?
> >>
>
>
>
>
>
> --
> Sent from: http://forum.world.st/Pharo-Smalltalk-Users-f1310670.html
>
>


Re: [Pharo-users] Bloc Tutorial

2019-02-17 Thread Andrei Chis
Hi,

Thanks for the bug report.
Can you try loading the latest version for the code of the tutorial. I
fixed the deprecation warning.

Let us know if you encounter any other issues.

Cheers,
Andrei

On Sun, Feb 17, 2019 at 6:49 PM Richard Kenneth Eng <
horrido.hobb...@gmail.com> wrote:

> I'm following the tutorial in the MemoryGame booklet. When I run the game
> and click on any square, I get:
>
> The method BlBaseAnimation>>#startOn: called from
> MgCardElement>>#onFlippedFace has been deprecated.
> Use BlElement>>#addAnimation:
>
> The tutorial is out of sync. How can I proceed?
>
> Is there another way to learn how to use Bloc?
>


Re: [Pharo-users] Running test

2019-02-06 Thread Andrei Chis
The Pharo VM works fine for me.

My understanding is that the problem is in the DrGeo.app
The app packages together two things:
  - the Pharo VM with is signed
  - other files/folders that are not signed
If gatekeeper (https://developer.apple.com/developer-id/) detects this the
it marks the app as damaged.
Gatekeeper wants the apps that you download from internet using a web
browser to be signed.





On Wed, Feb 6, 2019 at 6:07 PM Hilaire  wrote:

> In the other hand, I am suspecting this Mac VM[1] downloaded  from the
> Pharo download page may have issue.
>
> After all the Linux VM from this same page is defunct as I already
> report it. I had to get one from the Pharo Launcher. The Windows VM from
> this same Pharo download page is functional, though.
>
> Can someone with an Apple Macintosh confirm this Mac VM[1] is ok?
>
> Thanks
>
> Hilaire
>
> [1] https://files.pharo.org/get-files/70/pharo-mac-stable.zip
>
> Le 06/02/2019 à 17:19, Hilaire a écrit :
> > Can Mac OSX provides more usefull message?
>
> --
> Dr. Geo
> http://drgeo.eu
>
>
>
>


Re: [Pharo-users] Running test

2019-02-06 Thread Andrei Chis
In my case if I download the app using the web browser and put it in the
Applications folder I still get `“DrGeo” is damaged and can’t be opened.
You should move it to the Trash*.*`

On Tue, Feb 5, 2019 at 6:55 PM Hilaire  wrote:

> Thanks John and Andrei.
>
> And if you drag the app in the application folder does it work?
>
> Le 05/02/2019 à 11:06, Andrei Chis a écrit :
> > But this happens only if I click the download link and use the web
> > browser to download it.
> >
> > If I use wget I can open it but it does not find the image:
> >
> --
> Dr. Geo
> http://drgeo.eu
>
>
>
>


Re: [Pharo-users] #select was sent to nil

2019-01-16 Thread Andrei Chis
The bug seems to have been introduce in
Pharo7.0-SNAPSHOT.build.102.sha.3f660fc.arch.64bit by merging the pull
request https://github.com/pharo-project/pharo/pull/1847

On Wed, Jan 16, 2019 at 1:32 AM Hilaire via Pharo-users <
pharo-users@lists.pharo.org> wrote:

> Indeed, seems to only happen in a subclass of BlEement.
>
> Hilaire
>
> Le 15/01/2019 à 21:33, Andrei Chis a écrit :
> > It happens if you create methods in a class having a superclass with
> > traits. For example if you create a subclass of BlElement you will get
> > this error.
> >
> > What class are you editing when you get this errror?
> >
> --
> Dr. Geo
> http://drgeo.eu
>
>
>
>


Re: [Pharo-users] #select was sent to nil

2019-01-15 Thread Andrei Chis
It happens if you create methods in a class having a superclass with
traits. For example if you create a subclass of BlElement you will get this
error.

What class are you editing when you get this errror?

Cheers,
Andrei

On Tue, 15 Jan 2019, 21:17 Hilaire  Yes, it happens on two images. One fresh P7 where I installed GToolkit
> and DrGeo then use its tonel repo (save changes). And the other one from
> the GToolkit image download from gtoolkit.org and installed DrGeo then
> use its tonel repo (save changes)
>
> I don't use trait in DrGeo.
>
> Hilaire
>
> Le 15/01/2019 à 10:17, Denis Kudriashov a écrit :
> > Can you reproduce it?
>
> --
> Dr. Geo
> http://drgeo.eu
>
>
>
>


Re: [Pharo-users] #select was sent to nil

2019-01-15 Thread Andrei Chis
Hi Denis,

We debugged a bit and this is what we found:
https://pharo.manuscript.com/f/cases/22896/Creating-methods-in-a-subclass-with-a-class-using-a-trait
Could you try to reproduce and see if you get the same error?
Seems that adding methods to classes that have a superclass with traits is
broken.

Cheers,
Andrei


On Tue, Jan 15, 2019 at 5:36 PM Denis Kudriashov 
wrote:

> Hi Andrei.
> The error is related to absent package of selected method.
> Calypso assumes that method always has a package because otherwise many
> other things will not work.
> Even if this case will be protected by ifNotNil check it looks like a
> broken system state.
>
> Can you check following script?
>
> SystemNavigation default allMethodsSelect: [ :each | each package isNil ]
>
>
>
> вт, 15 янв. 2019 г. в 16:08, Andrei Chis :
>
>> I also get every few clicks the error below.
>>
>> [image: Screen Shot 2019-01-15 at 17.00.41.png]
>>
>> On Tue, Jan 15, 2019 at 4:59 PM Andrei Chis 
>> wrote:
>>
>>> I think I get the same error in a GToolkit image that I build today on
>>> top of
>>> Pharo-7.0.0+rc1.build.121.sha.0640e0d300e69541033fb1c4270c9b0d7d401b01 (64
>>> Bit).
>>>
>>> [image: Screen Shot 2019-01-15 at 16.52.51.png]
>>>
>>> In `ClyIcebergShowMethodVersionCommand>>canBeExecutedInContext:`
>>> executing `aToolContext lastSelectedMethod package` returns nil. So I get a
>>> compiled method having the package as nil.
>>>
>>> The error seems to happen more randomly, but after selecting 3-4 methods
>>> from a package where I did a commit using iceberg it mostly appears.
>>>
>>>
>>>
>>> UndefinedObject(Object)>>doesNotUnderstand: #name
>>> [ :each | each includesPackageNamed: aPackage name ] in IceRepository
>>> class>>registeredRepositoryIncludingPackage: in Block: [ :each | each
>>> includesPackageNamed: aPackage name...etc...
>>> [ :each |
>>> (aBlock value: each)
>>> ifTrue: [ ^ foundBlock cull: each ] ] in
>>> OrderedCollection(Collection)>>detect:ifFound:ifNone: in Block: [ :each |
>>> ...
>>> OrderedCollection>>do:
>>> OrderedCollection(Collection)>>detect:ifFound:ifNone:
>>> OrderedCollection(Collection)>>detect:ifNone:
>>> IceRepository class>>registeredRepositoryIncludingPackage:
>>> ClyIcebergShowMethodVersionCommand class>>canBeExecutedInContext:
>>> ClyMethodContextOfFullBrowser(CmdToolContext)>>allowsExecutionOf:
>>>
>>> ClyBrowserTabCommandActivation(CmdCommandActivationStrategy)>>isActiveInContext:
>>> CmdCommandActivator>>canExecuteCommand
>>> CmdCommandActivator>>buildBrowserTabActions
>>> CmdCommandMenuItem>>buildBrowserTabActions
>>> [ :each | each buildBrowserTabActions ] in
>>> CmdRootMenuGroup(CmdMenuGroup)>>buildBrowserTabActions in Block: [ :each |
>>> each buildBrowserTabActions ]
>>> [ :each | col addAll: (aBlock value: each) ] in
>>> SortedCollection(Collection)>>flatCollect:as: in Block: [ :each | col
>>> addAll: (aBlock value: each) ]
>>> SortedCollection(OrderedCollection)>>do:
>>> SortedCollection(Collection)>>flatCollect:as:
>>> SortedCollection>>flatCollect:
>>> CmdRootMenuGroup(CmdMenuGroup)>>buildBrowserTabActions
>>> CmdMenu>>buildBrowserTabActions
>>> ClyMethodCodeEditorToolMorph(ClyBrowserToolMorph)>>createTab
>>> ClyTabManager>>addTool:
>>> [ :each | self addTool: each ] in ClyTabManager>>updateTabsWith: in
>>> Block: [ :each | self addTool: each ]
>>> OrderedCollection>>do:
>>> ClyTabManager>>updateTabsWith:
>>> [ newTools := OrderedCollection new.
>>> browser
>>> navigationContextsDo: [ :each | self buildToolsOn: newTools for: each ].
>>> needsNewSelection := self requiresNewDesiredSelection.
>>> selectedTools := self selectedTools.
>>> currentTools := tools copy.
>>> self updateTabsWith: newTools.
>>> tools ~= currentTools | needsNewSelection
>>> ifTrue: [ self restoreSelectedTools: selectedTools ] ] in
>>> ClyTabManager>>updateTools in Block: [ newTools := OrderedCollection new
>>> BlockClosure>>ensure:
>>> ClyTabManager>>updateToolsBy:
>>> ClyTabManager>>updateTools
>>> ClyFullBrowser(ClyBrowserMorph)>>rebuildAllTools
>>>
>>>
>>> On Tue, Jan 15, 2019 at 10:23 AM Denis Kudriashov 
>>> wrote:
>>>
>>>> Hi Hilaire.
>>>>
>>>> Can you reproduce it?
>>>>
>>>> пн, 14 янв. 2019 г. в 23:24, Hilaire via Pharo-users <
>>>> pharo-users@lists.pharo.org>:
>>>>
>>>>> Hi,
>>>>>
>>>>> After installing drgeo and save some modification on tonel repo. I got
>>>>> this persisting error on calypso whatever the button I click on the
>>>>> browser ui.
>>>>>
>>>>> Hilaire
>>>>>
>>>>> --
>>>>> Dr. Geo
>>>>> http://drgeo.eu
>>>>>
>>>>>


Re: [Pharo-users] Set programatically the selection for a fastTreeTable

2018-10-04 Thread Andrei Chis
On Thu, Oct 4, 2018 at 3:46 AM Arturo Zambrano 
wrote:

> Thanks Andrei!
>
>  I tried:
>
>  browser transmit
> to: #Example port: #selection;
> transformed: [ Abort ].
>
> using also #strongSelection and #rawSelection,but I missed #
> fromOutsideEntityPort   :)
>
>
> So, I have two additional questions: When #selection: and
> #strongSelection: can be used ?
>

Strong selection is in list/tree/table presentations associated with double
clicking on an element. So it's a "stronger" selection than just clicking
once.


>
> Also, what is the difference among selection strongSelection and
> rawSelection  ports ? I saw some transmission example
> using #strongSelection port, and some discussion in the mailing list where
> #rawSelection port is mentioned.
>

There is no connection between #strongSelection and #rawSelection ports.
Only between #selection and #rawSelection.
#rawSelection will hold the exact value that was selected. Before putting
this value in the #selection port a transformation
can be applied on it using GLMBasicPresentation>>#send:. Have a look for
example at Date>>gtInspectorDetailsIn:. The table
displays a list of associations, but on selection we want to navigate to
the value in that association. #rawSelection will hold the
association and #selection the value in that association.

Cheers,
Andrei

>
> Thanks
>
>
>
> On Wed, Oct 3, 2018 at 5:31 PM Andrei Chis 
> wrote:
>
>> Hi Arturo,
>>
>> Normally what you want should be achieved with a transmission:
>>
>>  browser transmit
>> fromOutsideEntityPort;
>> to: #Example port: #selection;
>> transformed: #first.
>>
>> Just I see that doesn't work as expected with #fastTreeTable.
>>
>> The closest thing that looks similar to what you want is:
>>
>> | browser |
>> browser := GLMTabulator new.
>> browser row: #Example.
>> browser transmit
>> to: #Example;
>> andShow: [ :a |
>> a table
>>   column: 'Class Name' evaluated:[:clazz| clazz name];
>>   children:[:clazz| clazz subclasses];
>>   shouldRootsExpand: true ].
>> browser transmit
>> fromOutsideEntityPort;
>> to: #Example port: #selection;
>> transformed: [ Abort ].
>> browser openOn: {Object}.
>>
>> Cheers,
>> Andrei
>>
>>
>>
>> On Wed, Oct 3, 2018 at 9:53 PM Arturo Zambrano 
>> wrote:
>>
>>> Hi all,
>>>  I'm trying to do what subject says. I tried something like that
>>> (in the example I'm trying to get Abort class selected)
>>> :
>>> | browser |
>>> browser := GLMTabulator new.
>>> browser row: #Example.
>>> browser transmit
>>> to: #Example;
>>> andShow: [ :a | a fastTreeTable
>>> column: 'Class Name' evaluated:[:clazz| clazz name];
>>> children:[:clazz| clazz subclasses];
>>> allExpanded;
>>> "this has no effect" strongSelection:Abort;
>>> "this has no effect" selection: Abort
>>> browser openOn: {Object}
>>>
>>>  Could you please point me what I'm missing?
>>>
>>>   TIA
>>> Arturo
>>>
>>>
>>>
>>>


Re: [Pharo-users] Set programatically the selection for a fastTreeTable

2018-10-03 Thread Andrei Chis
Hi Arturo,

Normally what you want should be achieved with a transmission:

 browser transmit
fromOutsideEntityPort;
to: #Example port: #selection;
transformed: #first.

Just I see that doesn't work as expected with #fastTreeTable.

The closest thing that looks similar to what you want is:

| browser |
browser := GLMTabulator new.
browser row: #Example.
browser transmit
to: #Example;
andShow: [ :a |
a table
  column: 'Class Name' evaluated:[:clazz| clazz name];
  children:[:clazz| clazz subclasses];
  shouldRootsExpand: true ].
browser transmit
fromOutsideEntityPort;
to: #Example port: #selection;
transformed: [ Abort ].
browser openOn: {Object}.

Cheers,
Andrei



On Wed, Oct 3, 2018 at 9:53 PM Arturo Zambrano 
wrote:

> Hi all,
>  I'm trying to do what subject says. I tried something like that
> (in the example I'm trying to get Abort class selected)
> :
> | browser |
> browser := GLMTabulator new.
> browser row: #Example.
> browser transmit
> to: #Example;
> andShow: [ :a | a fastTreeTable
> column: 'Class Name' evaluated:[:clazz| clazz name];
> children:[:clazz| clazz subclasses];
> allExpanded;
> "this has no effect" strongSelection:Abort;
> "this has no effect" selection: Abort
> browser openOn: {Object}
>
>  Could you please point me what I'm missing?
>
>   TIA
> Arturo
>
>
>
>


[Pharo-users] Second Call for Papers: 11th ACM SIGPLAN International Conference on Software Language Engineering (SLE 2018)

2018-05-29 Thread Andrei Chis

Call for Papers:
11th ACM SIGPLAN International Conference on Software Language Engineering
(SLE 2018)
co-located with SPLASH 2018
November 5-6, 2018
Boston, Massachusetts, United States
https://conf.researchr.org/track/sle-2018/papers


We are pleased to invite you to submit papers to the 11th ACM SIGPLAN
International Conference on Software Language Engineering (SLE 2018), held
in conjunction with SPLASH 2018 at Boston, Massachusetts on November 5-6,
2018.

---
Scope
---

With the ubiquity of computers, software has become the dominating
intellectual asset of our time. In turn, this software depends on software
languages, namely the languages it is written in, the languages used to
describe its environment, and the languages driving its development
process. Given that everything depends on software and that software
depends on software languages, it seems fair to say that for many years to
come, everything will depend on software languages.

Software language engineering (SLE) is the discipline of engineering
languages and their tools required for the creation of software. It
abstracts from the differences between programming languages, modelling
languages, and other software languages, and emphasizes the engineering
facet of the creation of such languages, that is, the establishment of the
scientific methods and practices that enable the best results. While SLE is
certainly driven by its metacircular character (software languages are
engineered using software languages), SLE is not self-satisfying: its scope
extends to the engineering of languages for all and everything.

Like its predecessors, the 11th edition of the SLE conference, SLE 2018,
will bring together researchers from different areas united by their common
interest in the creation, capture, and tooling of software languages. It
overlaps with traditional conferences on the design and implementation of
programming languages, model-driven engineering, and compiler construction,
and emphasizes the fusion of their communities. To foster the latter, SLE
traditionally fills a two-day program with a single track, with the only
temporal overlap occurring between co-located events.

---
Topics of Interest
---

SLE 2018 solicits high-quality contributions in areas ranging from
theoretical and conceptual contributions, to tools, techniques, and
frameworks in the domain of software language engineering. Topics relevant
to SLE cover generic aspects of software languages development rather than
aspects of engineering a specific language. In particular, SLE is
interested in contributions from the following areas:

* Software Language Design and Implementation
  - Approaches to and methods for language design
  - Static semantics (e.g., design rules, well-formedness constraints)
  - Techniques for specifying behavioral / executable semantics
  - Generative approaches (incl. code synthesis, compilation)
  - Meta-languages, meta-tools, language workbenches
* Software Language Validation
  - Verification and formal methods for languages
  - Testing techniques for languages
  - Simulation techniques for languages
* Software Language Integration and Composition
  - Coordination of heterogeneous languages and tools
  - Mappings between languages (incl. transformation languages)
  - Traceability between languages
  - Deployment of languages to different platforms
* Software Language Maintenance
  - Software language reuse
  - Language evolution
  - Language families and variability
* Domain-specific approaches for any aspects of SLE (design,
implementation, validation, maintenance)
* Empirical evaluation and experience reports of language engineering tools
  - User studies evaluating usability
  - Performance benchmarks
  - Industrial applications

---
Important Dates
---

All dates are Anywhere on Earth.

* Fri 29 June 2018 -  Abstract Submission
* Fri 6 July 2018 - Paper Submission
* Fri 24 August 2018 - Author Notification
* Fri 31 August 2018 - Artifact Submission
* Fri 14 September 2018 - Artifact Kick-the-Tires Evaluation Author Response
* Fri 5 October 2018 - Camera Ready Deadline
* Wed 10 October 2018 - Artifact Notification
* Fri 12 October 2018 - Deadline for Artifact-Related Paper Updates
* Sun 4 Nov 2018 - SLE Workshops
* Mon 5 Nov - Tue 6 Nov 2018 - SLE Conference

---
Types of Submissions
---

* Research papers
These should report a substantial research contribution to SLE or
successful application of SLE techniques or both. Full paper submissions
must not exceed 12 pages excluding bibliography.

* Tool papers
Because of SLE’s interest in tools, we s

Re: [Pharo-users] Dynamically updating the inspector window

2018-02-28 Thread Andrei Chis
Hi,

Are you in Pharo 6.1? There is a setting to enable automatic refresh in the
inspector. I think it's called Step Refresh in the settings browser.
Should be enabled by default in Pharo 7.
Just now all presentations from the inspector have the automatic refresh
implemented.

Cheers,
Andrei

On Thu, Mar 1, 2018 at 12:52 AM, Andy Burnett <
andy.burn...@knowinnovation.com> wrote:

> Is there a way to make the inspector automatically update itself, when the
> value it is inspecting changes?  For example, if I were inspecting an
> array, and at:1 put: 'blah' I would like the inspector to reflect that
> change.
>
> I know I can get the window to update by clicking the refresh icon, I just
> wondered if there is a 'live' way to do this?
>
> Cheers
> Andy
>


[Pharo-users] First Call for Papers: 11th ACM SIGPLAN International Conference on Software Language Engineering (SLE 2018)

2018-02-16 Thread Andrei Chis

Call for Papers:
11th ACM SIGPLAN International Conference on Software Language Engineering
(SLE 2018)
co-located with SPLASH 2018
November 5-6, 2018
Boston, Massachusetts, United States
https://conf.researchr.org/track/sle-2018/papers


We are pleased to invite you to submit papers to the 11th ACM SIGPLAN
International Conference on Software Language Engineering (SLE 2018), held
in conjunction with SPLASH 2018 at Boston, Massachusetts on November 5-6,
2018.

---
Scope
---

With the ubiquity of computers, software has become the dominating
intellectual asset of our time. In turn, this software depends on software
languages, namely the languages it is written in, the languages used to
describe its environment, and the languages driving its development
process. Given that everything depends on software and that software
depends on software languages, it seems fair to say that for many years to
come, everything will depend on software languages.

Software language engineering (SLE) is the discipline of engineering
languages and their tools required for the creation of software. It
abstracts from the differences between programming languages, modelling
languages, and other software languages, and emphasizes the engineering
facet of the creation of such languages, that is, the establishment of the
scientific methods and practices that enable the best results. While SLE is
certainly driven by its metacircular character (software languages are
engineered using software languages), SLE is not self-satisfying: its scope
extends to the engineering of languages for all and everything.

Like its predecessors, the 11th edition of the SLE conference, SLE 2018,
will bring together researchers from different areas united by their common
interest in the creation, capture, and tooling of software languages. It
overlaps with traditional conferences on the design and implementation of
programming languages, model-driven engineering, and compiler construction,
and emphasizes the fusion of their communities. To foster the latter, SLE
traditionally fills a two-day program with a single track, with the only
temporal overlap occurring between co-located events.

---
Topics of Interest
---

SLE 2018 solicits high-quality contributions in areas ranging from
theoretical and conceptual contributions, to tools, techniques, and
frameworks in the domain of software language engineering. Topics relevant
to SLE cover generic aspects of software languages development rather than
aspects of engineering a specific language. In particular, SLE is
interested in contributions from the following areas:

* Software Language Design and Implementation
  - Approaches to and methods for language design
  - Static semantics (e.g., design rules, well-formedness constraints)
  - Techniques for specifying behavioral / executable semantics
  - Generative approaches (incl. code synthesis, compilation)
  - Meta-languages, meta-tools, language workbenches
* Software Language Validation
  - Verification and formal methods for languages
  - Testing techniques for languages
  - Simulation techniques for languages
* Software Language Integration and Composition
  - Coordination of heterogeneous languages and tools
  - Mappings between languages (incl. transformation languages)
  - Traceability between languages
  - Deployment of languages to different platforms
* Software Language Maintenance
  - Software language reuse
  - Language evolution
  - Language families and variability
* Domain-specific approaches for any aspects of SLE (design,
implementation, validation, maintenance)
* Empirical evaluation and experience reports of language engineering tools
  - User studies evaluating usability
  - Performance benchmarks
  - Industrial applications

---
Important Dates
---

All dates are Anywhere on Earth.

* Fri 29 June 2018 -  Abstract Submission
* Fri 6 July 2018 - Paper Submission
* Fri 24 August 2018 - Author Notification
* Fri 31 August 2018 - Artifact Submission
* Fri 5 October 2018 - Camera Ready Deadline
* Wed 10 October 2018 - Artifact Notification
* Fri 12 October 2018 - Deadline for Artifact-Related Paper Updates
* Sun 4 Nov 2018 - SLE Workshops
* Mon 5 Nov - Tue 6 Nov 2018 - SLE Conference

---
Types of Submissions
---

* Research papers
These should report a substantial research contribution to SLE or
successful application of SLE techniques or both. Full paper submissions
must not exceed 12 pages excluding bibliography.

* Tool papers
Because of SLE’s interest in tools, we seek papers that present software
tools related to the field of SLE. Selection

Re: [Pharo-users] Roassal2 in recent Pharo 7 causes DNU #asTraitComposition

2017-10-17 Thread Andrei Chis
On Tue, Oct 17, 2017 at 1:04 PM, Alistair Grant 
wrote:

> On Tue, Oct 17, 2017 at 09:33:39AM +, Alistair Grant wrote:
> > On Tue, Oct 17, 2017 at 06:28:05AM +, Alistair Grant wrote:
> > > Hi All,
> > >
> > > I'm attempting to load Roassal2 in to Pharo7 and am getting:
> > >
> > > UndefinedObject(Object)>>doesNotUnderstand: #asTraitComposition
> > >
> > >
> > > It can be reproduced in a clean Pharo7 image, e.g.
> > > Pharo7.0-32bit-d1b0e3e.image (downloaded 16 Oct 2017), and executing:
> > >
> > > Gofer it
> > > smalltalkhubUser: 'ObjectProfile' project: 'Roassal2';
> > > configurationOf: 'Roassal2';
> > > loadStable.
> > >
> > >
> > > OS: Ubuntu 16.04.
> > >
> > > I last rebuilt my image on 3 October without any problems.
> > >
> > > Any suggestions?  I suspect the combination of Monticello and Traits
> > > will take me quite a while to figure out.
> >
> > This could simply be an ordering issue, i.e. maybe Monticello /
> > Metacello needs to ensure that the traits are loaded before the classes.
> >
> > Presumably at some point during the load there is a list of classes that
> > are going to be loaded.  If someone can point me to the correct location
> > it will save some time tracking it down.
>
> OK, it looks like Roassal has gone through quite a bit of development in
> the last couple of months, and that TGTExampleIcon is simply missing
> from the repository
> (https://github.com/feenkcom/gtoolkit-examples/tree/master/
> src/GToolkit-Examples.package,
> I hope) but is still referenced somewhere.
>
> Using ConfigurationOfRoassal2-AlexandreBergel.111 (the version I loaded
> on 3 Oct) loads successfully, while
> ConfigurationOfRoassal2-AlexandreBergel.114 fails as described above.
>

I added for now the trait back. Can you check that the loading works?

But better would be to release a new stable version of roassal that links
with the new version of gtexamples, or update the current version of
roassal to load the gtexample version before the change.

@Alexandre I can make a new stable version with the current version of
roassal + gt examples

Cheers,
Andrei



>
> Cheers,
> Alistair
>
>
>


Re: [Pharo-users] how to update a pane in a customized inspector

2017-10-10 Thread Andrei Chis
Hi,

On Tue, Oct 10, 2017 at 11:31 AM, Steven Costiou 
wrote:

> Hi,
>
> I am trying to customize an inspector with a code browser, and I have in a
> compose method of my own browser the following:
>
> [...]
>
> browser transmit
> from: #methods;
> fromOutsidePort: #entity;
> to: #source;
> when: [ :method | method notNil ];
> andShow: [ :a :method :object | self sourceOf: method for:
> object in: a ].
>
> browser transmit
> from: #links;
> fromOutsidePort: #entity;
> to: #selectedLink;
> when: [ :link | link notNil ];
> andShow: [ :a :link | self inspectSelectedLink: link
> inPresenter: a ].
>
> [...]
>
> Is there an easy way to update the #source pane whenever one of my links
> is selected in my #link pane ?
>
> In my case, the source code is displayed first, and when i select a link
> in the #link pane i want to highlight specific parts of this source code
> and the easiest way would be to re-trigger the first block above. I did not
> try it, but it seems that i could retrieve the #source pane and the
> selected method manually and re-trigger the method from the second block
> (i.e. when a link is selected), but i am not sure that is the right way to
> do it...
>
If you know the interval that you want to highlight when selecting a link,
you can create a transmission from the #selection port of the #link pane to
the #selectionInterval port of the #source pane. If you go to
GLMBasicExamples, textPortsExamples and textSelection show how to use the
selectionInterval port.

>
>
> Also i was wondering if there was a video of the moldable inspector
> tutorial from pharo days 17 somewhere on the web, because i did not find it
> on youtube.
>
Not sure if the Pharo Days videos are available but you can see the same
presentation from ESUG here: https://www.youtube.com/watch?v=wj5IWvAYSlw

Cheers,
Andrei


[Pharo-users] Call for Participation: SLE 2017 (10th ACM SIGPLAN International Conference on Software Language Engineering)

2017-09-20 Thread Andrei Chis


** Call for Participation **

10th ACM SIGPLAN International Conference on Software Language Engineering
(SLE 2017)

23-24 October 2017, Vancouver, Canada

(Collocated with SPLASH 2017)

http://conf.researchr.org/track/sle-2017/sle-2017-papers
http://www.sleconf.org/2017
Follow us on twitter: https://twitter.com/sleconf



Software Language Engineering (SLE) is the application of systematic,
disciplined, and measurable approaches to the development, use, deployment,
and maintenance of software languages. The term "software language" is used
broadly, and includes: general-purpose programming languages;
domain-specific languages (e.g. BPMN, Simulink, Modelica); modeling and
metamodeling languages (e.g. SysML and UML); data models and ontologies
(e.g. XML-based and OWL-based languages and vocabularies).


** REGISTRATION **

Friday, 22 September 2017 (Early Registration Deadline)
Contact: i...@splashcon.org
http://2017.splashcon.org/attending/registration

** VENUE **

Hyatt Regency Vancouver
Hotel reservations: https://2017.splashcon.org/venue/hyattregency


## Program Highlights

### Keynote

-  Peter D. Mosses
   Engineering meta-languages for specifying software languages

https://conf.researchr.org/track/sle-2017/sle-2017-papers#Keynote-Peter-D-Mosses

### Awards

During the conference, we will announce the following awards:

- Distinguished paper. Award for most notable paper, as determined by the
PC chairs based on the recommendations of the program committee.

- Distinguished reviewer. Award for distinguished reviewer, as determined
by the PC chairs using feedback from the authors.

- Distinguished artefact. Award for the artifact most significantly
exceeding expectations, as determined by the AEC chairs based on the
recommendations of the artifact evaluation committee. Sponsored by Raincode.


### Accepted Papers

- Metacasanova: an optimized meta-compiler for Domain-Specific Languages,
  Francesco Di Giacomo, Mohamed Abbadi, Agostino Cortesi, Pieter Spronck,
Giuseppe Maggiore

- Safe Modular Parsing,
  Haoyuan Zhang, Huang Li, Bruno C. d. S. Oliveira

- Concrete Syntax: A Multi-Paradigm Approach,
  Yentl Van Tendeloo, Simon Van Mierlo, Bart Meyers, Hans Vangheluwe

- A Domain-Specific Controlled English Language for Automated Regulatory
Compliance,
  Suman Roychoudhury, Sagar Sunkle, Deepali Kholkar, Vinay Kulkarni

- Debugging with Domain-Specific Events,
  Xiangqi Li, Matthew Flatt

- Deep Priority Conflicts in the Wild - A Pilot Study,
  Luís Eduardo de Souza Amorim, Michael J. Steindorfer, Eelco Visser

- Comparison of the Expressiveness and Performance of Template-based Code
Generation Tools,
  Lechanceux Luhunu, Eugene Syriani

- Incremental Packrat Parsing,
  Patrick Dubroy, Alessandro Warth

- Ensuring Non-interference of Composable Language Extensions,
  Ted Kaminski, Eric Van Wyk

- A Formalisation of Parameterised Reference Attribute Grammars,
  Scott Buckley, Anthony Sloane

- A Symbol-based Extension of Parsing Expression Grammars and
Context-Sensitive Packrat Parsing,
  Kimio Kuramitsu

- Structural Model Subtyping with OCL Constraints,
  Artur Boronat

- A Requirements Engineering Approach for Usability-Driven DSL Development,
  Ankica Barisic, Dominique Blouin, Vasco Amaral, Miguel Goulao

- Tool Demonstration: A development environment for the Alf language within
the MagicDraw UML tool,
  Ed Seidewitz

- FlowSpec: Declarative Dataflow Analysis Specification,
  Jeff Smits, Eelco Visser

- Robust Programs with Filtered Iterators,
  Jiasi Shen, Martin Rinard

- Energy Efficiency across Programming Languages: How does energy, time,
and memory relate?,
  Rui Pereira, Marco Couto, Francisco Ribeiro, Rui Rua, Jácome Cunha, João
Paulo Fernandes, João Saraiva

- Concurrent Circular Reference Attribute Grammars,
  Jesper Öqvist, Görel Hedin

- Better Call the Crowd. Using Crowdsourcing to Shape your Domain-Specific
Languages,
  Marco Brambilla, Jordi Cabot, Javier Luis Canovas Izquierdo, Andrea Mauri

- Robust Projectional Editing,
  Friedrich Steimann, Marcus Frenkel, Markus Voelter

- Towards a Taxonomy of Grammar Smells,
  Mats Stijlaart, Vadim Zaytsev

- Red Shift: Procedural Shift-Reduce Parsing,
  Nicolas Laurent

- Virtual Textual Model Composition for Supporting Maintenance and
Aspect-Orientation,
  Robert Bill, Patrick Neubauer, Manuel Wimmer

- A Chrestomathy of DSL implementations,
  Simon Schauss, Ralf Lämmel, Johannes Härtel, Marcel Heinz, Kevin Klein,
Lukas Härtel, Thorsten Berger


Re: [Pharo-users] GTInspect auto-update in raw view?

2017-08-18 Thread Andrei Chis
However, we still need the update button. The automatic refresh only works
for the Raw view. A general solution for the update is not yet implemented.

Cheers,
Andrei

On Fri, Aug 18, 2017 at 10:21 PM, Stephane Ducasse 
wrote:

> Cool
> Because I hate so much this update button :)
> Stef
>
>
> On Fri, Aug 18, 2017 at 7:22 PM, Andrei Chis 
> wrote:
> >
> >
> > On Thu, Aug 17, 2017 at 9:24 AM, Esteban Lorenzano 
> > wrote:
> >>
> >>
> >> On 17 Aug 2017, at 01:02, Aliaksei Syrel  wrote:
> >>
> >> Hello Esteban,
> >>
> >> You can enable auto-refresh with: GTInspector enableStepRefresh
> >> For performance reasons it is disabled by default. If you are curious
> why
> >> I think Andrei could explain a bit more :)
> >>
> >>
> >> I want to know why is disabled and more than that, when will we be able
> to
> >> make it enabled by default, as before.
> >
> >
> > Mostly because it was finished just before the Pharo 6 release.
> > I'd say we can enable it by default for Pharo 7 and see if there are any
> > issues.
> >
> > Cheers,
> > Andrei
> >
> >>
> >>
> >> Esteban
> >>
> >>
> >> Cheers,
> >> Alex
> >>
> >> On 17 August 2017 at 00:56, Esteban A. Maringolo 
> >> wrote:
> >>>
> >>> Hi all,
> >>>
> >>> Is there a way to enable the auto-update of instance variables display
> in
> >>> the GTInspector?
> >>>
> >>> There are cases where the instance is nil, I then initialize it
> somehow,
> >>> but the variable is still displayed as nil.
> >>>
> >>> I know there is an "Update" button, which BTW should be labeled
> "refresh"
> >>> instead, to do it manually, but hey, this is Smalltalk, we invented
> MVC :D
> >>>
> >>> We can consider the previous as a feature, but what I think it is a bug
> >>> is that if the variable is nil, and later it is initialized, nil is
> still
> >>> displayed, but when clicked the nodes below it shows the variables of
> the
> >>> new object in the instance variable.
> >>>
> >>> E.g.
> >>> 
> >>>
> >>> Is this a bug or a feature?
> >>>
> >>> Regards!
> >>>
> >>> Esteban A. Maringolo
> >>
> >>
> >>
> >
>
>


Re: [Pharo-users] GTInspect auto-update in raw view?

2017-08-18 Thread Andrei Chis
On Thu, Aug 17, 2017 at 9:24 AM, Esteban Lorenzano 
wrote:

>
> On 17 Aug 2017, at 01:02, Aliaksei Syrel  wrote:
>
> Hello Esteban,
>
> You can enable auto-refresh with: GTInspector enableStepRefresh
> For performance reasons it is disabled by default. If you are curious why
> I think Andrei could explain a bit more :)
>
>
> I want to know why is disabled and more than that, when will we be able to
> make it enabled by default, as before.
>

Mostly because it was finished just before the Pharo 6 release.
I'd say we can enable it by default for Pharo 7 and see if there are any
issues.

Cheers,
Andrei


>
> Esteban
>
>
> Cheers,
> Alex
>
> On 17 August 2017 at 00:56, Esteban A. Maringolo 
> wrote:
>
>> Hi all,
>>
>> Is there a way to enable the auto-update of instance variables display in
>> the GTInspector?
>>
>> There are cases where the instance is nil, I then initialize it somehow,
>> but the variable is still displayed as nil.
>>
>> I know there is an "Update" button, which BTW should be labeled "refresh"
>> instead, to do it manually, but hey, this is Smalltalk, we invented MVC :D
>>
>> We can consider the previous as a feature, but what I think it is a bug
>> is that if the variable is nil, and later it is initialized, nil is still
>> displayed, but when clicked the nodes below it shows the variables of the
>> new object in the instance variable.
>>
>> E.g.
>> 
>>
>> Is this a bug or a feature?
>>
>> Regards!
>>
>> Esteban A. Maringolo
>>
>
>
>


Re: [Pharo-users] gtInspector override default select behavior

2017-08-09 Thread Andrei Chis
On Mon, Aug 7, 2017 at 11:11 PM, Evan Donahue  wrote:

> Perfect.
>
> Do you know if these methods are systematically documented anywhere? I feel
> like if I understood Glamour better these things might be more obvious, but
> I can never manage to infer the gtInspector calls from the Glamour docs.
>

The best way to learn about the inspector is by browsing the glamour
examples (GLMBasicExamples open) and the inspector presentations from the
image (Inspect the class GTInspector and switch to the Extensions tab).
Also themoosebook.org has some documentation about glamour.

Cheers,
Andrei


>
> Thanks.
>
>
>
> --
> View this message in context: http://forum.world.st/
> gtInspector-override-default-select-behavior-tp4959037p4959141.html
> Sent from the Pharo Smalltalk Users mailing list archive at Nabble.com.
>
>


Re: [Pharo-users] gtInspector override default select behavior

2017-08-07 Thread Andrei Chis
Hi,

On Mon, Aug 7, 2017 at 5:28 AM, Evan Donahue  wrote:

> Hello,
>
> I have a gtInspector extension a tree-structured object. By default, when
> I click on one of the objects in the gtInspector, the inspector opens up
> another inspector on that node (using the finder-style display).
>
> What I would like to know is, is it possible to override the default click
> behavior so that, instead of opening the next inspector on that node of the
> tree, it opens on the result of a block run on that tree. Specifically, I
> have this:
>
> gtInspectorSource: composite
> 
> 
> composite tree
> title: 'Source';
> children: [ :r | r sourceChildren ];
> format: [ :r | r sourceName ];
> display: self
>
> and I was hoping there was some way I could do something like this:
>
> ...
> display: self;
> onSelectAction: [ :r | r next ]
>
> so when I click, I get an inspector not on the node of the tree r, but on
> r next.
>

You can get this behaviour by using #send:. This method gets a block that
is executed to determine the value that will be sent to the next column.

 composite tree
title: 'Source';
children: [ :r | r sourceChildren ];
format: [ :r | r sourceName ];
display: self
send: [ :r | r next ]


Cheers,
Andrei



>
> Thanks,
>
> Evan
>


Re: [Pharo-users] What sets the Monticello Local Cache Directory default in a new image?

2017-08-03 Thread Andrei Chis
On Wed, Aug 2, 2017 at 2:37 PM, Tim Mackinnon  wrote:

> Hey thanks - that seems like a good strategy (I hadn’t though of sharing
> the GT ones as well).
>
> *However, I’m still curious how/why a new image would pick up settings
> from what I did in another image (at least I think thats what its done -
> certainly the directory it shows in my fresh image is not File
> @pharo-local/package-cache like I would expect it to be?*
>
> With regards to the GT settings - how does it work if you share them - do
> they happily co-exist?
>

They should co-exits with no issues if you share the play-cash and
play-stash folders between multiple images.


> The stash one is also quite new to me - Sven mentioned it a few weeks ago
> as I was confused how the playground got saved (I’m still not clear) - but
> he suggested double-clicking the title and giving the tab a name. Are these
> named ones the stashed ones (it looks like it). And do stashed ones honour
> cmd-s to save them? Which then leads to the question, that in different
> images - if you share the stash then I guess if you want to reload a file,
> you close that playground and then pick it again from the list?
>

The play-stash is for scripts you explicitly give a name. You can double
click on the tab and enter a name. Then a file with that name plus a
timestamp is created in the play-stash folder. The content gets then saved
to that file. Right now you can access the stashed scripts again though
spotter by searching for the script name or typing #play to get the cached
and stashed pages.

Cheers,
Andrei


>
> Its quite a cool way of working (not perfect) but a real time saver.
> Thanks for sharing.
>
> Tim
>
> On 2 Aug 2017, at 13:24, Mariano Martinez Peck 
> wrote:
>
>
>
> On Wed, Aug 2, 2017 at 9:16 AM, Tim Mackinnon  wrote:
>
>> Hi - I’ve noticed that when I download a new image+vm with zeroconf (in a
>> fresh directory) - that when I launch it, the setting Tools | Software
>> Config Mgnmnt | Monticello | Local Cache Directory has a value that points
>> to a directory from one of my earlier images.
>>
>> Is this normal (does it store this information somewhere on my computer
>> so that different setups can access it)?
>>
>> At first I thought this was annoying - but I’m now wondering if this is
>> useful as I’m guessing that there isn’t any reason to have separate caches
>> for version controlled libraries and so maybe I should actually set it to
>> some common directory?
>>
>> What is the recommended strategy?
>>
>>
> My strategy is to use a shared repository for all my images. As part of my
> build image scripts I do something like this:
>
>
> " === Personal Settings  "
> MCCacheRepository cacheDirectory: '/Users/mariano/Pharo/localRepo/' 
> asFileReference.MCGitHubRepository cacheDirectory: 
> '/Users/mariano/Pharo/localRepo/' asFileReference.GTPlayBook cacheDirectory: 
> '/Users/mariano/Pharo/play-cache/' asFileReference.
>
> GTPlayBook stashDirectory: '/Users/mariano/Pharo/play-stash/'
> asFileReference.
>
>
> I guess you save stuff:
>
> find /Users/mariano/Pharo/localRepo/ -type f | wc -l
>
>*32301*
>
>  du -sh /Users/mariano/Pharo/localRepo
> *6.1G*/Users/mariano/Pharo/localRepo
>
>
> Not only you save disk space, but also:
> 1) Each image build is likely to take less time as many files will be
> already in the cache (no need to redownload it).
> 2) it works as a yet another backup of your code and other packages.
>
>
>
> --
> Mariano
> http://marianopeck.wordpress.com
>
>
>


Re: [Pharo-users] Glamour: update presenter with new text

2017-07-03 Thread Andrei Chis
If I'm not mistaken CompiledMethod instances are immutable. When you
run 'compiledMethod
methodClass compile: presentation text' another CompiledMethod object is
created and installed in the methods dictionary. So in the display block
'aCompiledMethod' references the old method. To make this work you'll need
to not reference the compiled method object directly or also refresh the
list of methods.

Cheers,
Andrei





On Mon, Jul 3, 2017 at 5:48 PM, Hilaire  wrote:

> Ah sorry no it is not working as expected.
>
> When I saved a modified method, the presenter got its source text
> updated (good), but the morph view is reversed to its previous content.
>
> Here is the code I use, anything wrong in the code bellow?
>
> Thanks
>
> Hilaire
>
> sourceIn: composite ^ composite pharoMethod title: 'Source code'
> translated; smalltalkClass: [ :each | each methodClass]; display: [
> :aCompiledMethod | aCompiledMethod sourceCode ]; act: [ :presentation
> :compiledMethod | compiledMethod methodClass compile: presentation text.
> presentation update.] on: $s entitled: 'Save' translated
>
> --
> Dr. Geo
> http://drgeo.eu
>
>
>
>


Re: [Pharo-users] [Moose-dev] Glamour accordion presentation

2017-07-03 Thread Andrei Chis
Hi,

Unfortunately the accordion widget is a bit underdeveloped. A few more
comments below.

On Mon, Jul 3, 2017 at 2:42 PM, Peter Uhnák  wrote:

> Hi,
>
> I'm playing around with Glamour and accordion presentation, however there
> are couple things I'm struggling with.
>
> I have a simple presentation:
>
> ```
> | browser data|
> data := {
> 'First' -> #(1 2 3).
> 'Second' -> #(a b c).
> 'Third' -> #(A B C).
> 'Fourth' -> #(! @ #'#').
> }.
>
> browser := GLMTabulator new.
> browser column: #accordion.
> browser transmit to: #accordion; andShow: [ :a |
> a accordionArrangement.
> a title: 'Accordion'.
> data do: [ :pair |
> a fastList
> title: pair key;
> display: pair value
> ].
> a list.
> ].
>
> browser openOn: #().
> ```
>
>
>
>
> * Is it possible to tell the accordion to not take more space than is
> needed? E.g. after item 3, and after item $c there's lot of empty space.
> * Is it possible to close accordions upwards? I have added an empty list
> at the end to consume extra white space, but it is insufficient (see point
> above) and ugly.
> * Is it possible to control which accordions are opened/closed by default?
> * Is it possible to connect all the lists so only one item can be selected
> at any time? Currently I can select independently in the lists.
>

I don't think any of the above things are supported by the current
accordion implementation. The current implementation is
in GLMMorphicAccordionRenderer>>render:. It's quite small and it could use
some improvements.

* Is it possible to build the lists from the input data (=openOn: XXX)? I
> can fill the data, but if I am making multiple lists then I am lost.
>

You should be able. The #andShow: block can take as a second parameter the
value passed on the entity port (so the value passed to openOn: in your
case)

Cheers,
Andrei


>
> (I could use tree to fix most of the problems, but Accordion looks much
> nicer :))
>
> Any pointers appreciated,
> Peter
>
> ___
> Moose-dev mailing list
> moose-...@list.inf.unibe.ch
> https://www.list.inf.unibe.ch/listinfo/moose-dev
>
>


Re: [Pharo-users] Syntax colouring in Glamouros script presentation

2017-07-03 Thread Andrei Chis
Hi,

By default the GLMPharoMethodPresentation should do syntax highlighting.
You just need to set the class in whose context syntax highlighting will be
done using  #smalltalkClass:. If this doesn't work some code of how to
reproduce the problem would help.

Cheers,
Andrei

On Mon, Jul 3, 2017 at 2:10 PM, Hilaire  wrote:

> Hi,
>
> Is it possible to have colouring in PharoMethod presenter.
>
> When I use it from my method presenter in the DrGeoScrpitBrowser it is
> not colouring.
>
> Thanks
>
> Hilaire
>
> --
> Dr. Geo
> http://drgeo.eu
>
>
>
>


Re: [Pharo-users] Glamour: update presenter with new text

2017-07-02 Thread Andrei Chis
Hi,

You should send #update to the presentation. By default the presentation
does not update when an action is executed, as the action could be anything.

sourceIn: composite
^ composite text
title: 'Source code' translated;
display: [ :aCompiledMethod | aCompiledMethod sourceCode ];
act: [ :presentation :compiledMethod |
compiledMethod methodClass compile: presentation text.
presentation update ]
on: $s
entitled: 'Save' translated

Cheers,
Andrei

On Sun, Jul 2, 2017 at 7:47 PM, Hilaire  wrote:

> Hi,
>
> In the method bellow, when the method is recompiled, the presenter's
> text is still the same (i.e. select another method, then the modified
> method: the former source code is still presented).
>
> How to request an update of the presenter's text with the newer method
> source?
>
> sourceIn: composite
> ^ composite text
> title: 'Source code' translated;
> display: [ :aCompiledMethod | aCompiledMethod sourceCode ];
> act: [ :presentation :compiledMethod |
> compiledMethod methodClass compile: presentation text]
> on: $s
> entitled: 'Save' translated
>
> Thanks
>
> Hilaire
>
> --
> Dr. Geo
> http://drgeo.eu
>
>
>
>


Re: [Pharo-users] Custom Glamour browser for Dr. Geo scripting

2017-07-01 Thread Andrei Chis
Hi,

If I understood the issue correctly then the script below should address it.
It starts from the solution Juraj proposed but wraps each  presentation in
a wrapper.
The script is not that obvious as this is not really a use case glamour
supports out of the box.
Also in glamour multiple presentations displayed within a composite share
the selection. To avoid that they need to be wrapped. The simplest solution
is to use a GLMWrapper.

-=-=-=--=-=-=--=-=-=--=-=-=--=-=-=--=-=-=--=-=-=--=-=-=--=-=-=--=-=-=-
-=-=-=--=-=-=-

browser := GLMTabulator new
column: #one;
column: #two;
column: #three;
yourself.
browser transmit to: #one; andShow: [ :composite |
composite fastList ].

browser transmit from: #one; to: #two; andShow: [ :composite |
composite wrapper
title: [ 'Instance' translated ];
show: [ :wrapper |
wrapper fastList
display: [ :aClass | aClass methods ];
format: [ :aCompiledMethod | aCompiledMethod selector asString ] ].
composite wrapper
title: [ 'Class side' translated ];
show: [ :wrapper |
wrapper fastList
display: [ :aClass | aClass class methods ];
format: [ :aCompiledMethod | aCompiledMethod selector asString ] ].
composite onChangeOfPort: #activePresentation act: [ :presentation |
(presentation pane port: #activePresentation) value
ifNotNil: [ :activePresentation |
((browser paneNamed: #two) port: #selection) value: (activePresentation
defaultPane port: #selection) value ] ] ].

browser transmit
from: #two; to: #three;
andShow: [ :composite | composite text
display: [ :aCompiledMethod | aCompiledMethod sourceCode ] ].

browser openOn: Collection allSubclasses.
-=-=-=--=-=-=--=-=-=--=-=-=--=-=-=--=-=-=--=-=-=--=-=-=--=-=-=--=-=-=-
-=-=-=--=-=-=-

Cheers,
Andrei

On Sat, Jul 1, 2017 at 4:46 PM, Juraj Kubelka 
wrote:

> Hi,
>
> I am able to produce this:
>
> -=-=-=-
> browser := GLMTabulator new
> column: #one;
> column: #two;
> column: #three;
> yourself.
> browser transmit to: #one; andShow: [ :composite |
> composite fastList ].
>
> browser transmit from: #one; to: #two; andShow: [ :composite |
> composite fastList
> title: [ 'Instance' translated ];
> display: [ :aClass | aClass methods ];
> format: [ :aCompiledMethod | aCompiledMethod selector asString ].
> composite fastList
> title: [ 'Class side' translated ];
> display: [ :aClass | aClass class methods ];
> format: [ :aCompiledMethod | aCompiledMethod selector asString ].
> *composite onChangeOfPort: #activePresentation act: [ :presentation | *
> * (presentation pane port: #activePresentation) value*
> * ifNotNil: [ :activePresentation | *
> * self inform: activePresentation printString.*
> * self inform: activePresentation selection ] ]* ].
>
> browser transmit
> from: #two; to: #three;
> andShow: [ :composite | composite text
> display: [ :aCompiledMethod | aCompiledMethod sourceCode ] ].
>
>
> browser openOn: Collection allSubclasses.
> -=-=-=-
>
> But I do not know how to change the column #three, because the selection
> is shared between the two lists.
>
> I hope it helps and someone else can improve it :-)
>
> Cheers,
> Juraj
>
>
>
>
> El 01-07-2017, a las 10:48, Nicolai Hess  escribió:
>
>
>
> 2017-06-30 9:55 GMT+02:00 Hilaire :
>
>> I extended the browser definition with:
>>
>> browser transmit
>> from: #scripts;
>> from: #categories;
>> to: #methods;
>> when: [ :a :b |  a isMeta not ];
>> andShow: [:a | self methodsIn: a  ].
>> browser transmit
>> from: #scripts;
>> from: #categories;
>> to: #methods;
>> when: [ :a | a isMeta ];
>> andShow: [:a | self classMethodsIn: a  ].
>>
>>
>> However it does not work as #when: message always receive a class, so
>> the wrong methods a re list in the method pane.
>>
>> I enclosed a Fileout of the browser. It works independently of DrGeo.
>> When one select class methods, still the instance methods are displayed
>> in right most pane.
>>
>> Any tips?
>>
>
> I don't have a solution. I just want to make more clear what the problem
> is.
> See attached screenshot.
> The question is, is it possible to make the population of the "methods"
> list
> dependent of the focused "Instance Methods"/"Class Methods" pane ?
>
> I tried to wire a "#focus" port, but I don't think the "categories"-pane
> exports
> any port that could be used to distinguish between the selected tabs.
>
>
>
>
>
>
>>
>> Thanks
>>
>> Hilaire
>>
>>
>> Le 29/06/2017 à 14:59, Hilaire a écrit :
>> > but something is missing to get the listed method right depending on the
>> > category is instance or class side. I don't how to do it.
>>
>> --
>> Dr. Geo
>> http://drgeo.eu
>>
>>
> 
>
>
>


[Pharo-users] Deadline Extension - SLE 2017 (10th ACM SIGPLAN International Conference on Software Language Engineering)

2017-06-04 Thread Andrei Chis


**Call for Papers** - **Deadline Extension**

**Abstract Submission**: Friday  9, June 2017
**Paper Submission**:Friday 16, June 2017



10th ACM SIGPLAN International Conference on Software Language Engineering
(SLE 2017)

23-24 October 2017, Vancouver, Canada

(Co-located with SPLASH 2017)

General chair:

   Benoit Combemale, University of Rennes 1, France

Program co-chairs:

   Marjan Mernik, University of Maribor, Slovenia
   Bernhard Rumpe, RWTH Aachen University, Germany

Artifact evaluation chairs:

   Tanja Mayerhofer, TU Wien, Austria
   Laurence Tratt, King's College London, UK


Keynote Speaker:

Peter D. Mosses, Swansea University, UK (http://cs.swan.ac.uk/~cspdm/)


http://conf.researchr.org/track/sle-2017/sle-2017-papers
http://www.sleconf.org/2017
Follow us on twitter: https://twitter.com/sleconf



Software Language Engineering (SLE) is the application of systematic,
disciplined, and measurable approaches to the development, use, deployment,
and maintenance of software languages. The term "software language" is used
broadly, and includes: general-purpose programming languages;
domain-specific languages (e.g. BPMN, Simulink, Modelica); modeling and
metamodeling languages (e.g. SysML and UML); data models and ontologies
(e.g. XML-based and OWL-based languages and vocabularies).

### Important Dates

Fri  9 Jun 2017 - Abstract Submission
Fri 16 Jun 2017 - Paper Submission
Fri  4 Aug 2017 - Author Notification
Thu 10 Aug 2017 - Artifact Submission
Fri  1 Sep 2017 - Artifact Notification
Fri  8 Sep 2017 - Camera Ready Deadline
Sun 22 Oct - SLE workshops
Mon 23 Oct - Tue 24 Oct 2017 - SLE Conference

### Topics of Interest

SLE aims to be broad-minded and inclusive about relevance and scope. We
solicit high-quality contributions in areas ranging from theoretical and
conceptual contributions to tools, techniques, and frameworks in the domain
of language engineering. Topics relevant to SLE cover generic aspects of
software languages development rather than aspects of engineering a
specific language. In particular, SLE is interested in principled
engineering approaches and techniques in the following areas:

* Language Design and Implementation
   * Approaches and methodologies for language design
   * Static semantics (e.g., design rules, well-formedness constraints)
   * Techniques for behavioral / executable semantics
   * Generative approaches (incl. code synthesis, compilation)
   * Meta-languages, meta-tools, language workbenches

* Language Validation
   * Verification and formal methods for languages
   * Testing techniques for languages
   * Simulation techniques for languages

* Language Integration and Composition
   * Coordination of heterogeneous languages and tools
   * Mappings between languages (incl. transformation languages)
   * Traceability between languages
   * Deployment of languages to different platforms

* Language Maintenance
   * Software language reuse
   * Language evolution
   * Language families and variability

* Domain-specific approaches for any aspects of SLE (design,
implementation, validation, maintenance)

* Empirical evaluation and experience reports of language engineering tools
   * User studies evaluating usability
   * Performance benchmarks
   * Industrial applications

### Types of Submissions

* **Research papers**: These should report a substantial research
contribution to SLE or successful application of SLE techniques or both.
Full paper submissions must not exceed 12 pages including bibliography in
ACM SIGPLAN acmart conference style (
http://www.sigplan.org/Resources/Author/).

* **Tool papers**: Because of SLE's interest in tools, we seek papers that
present software tools related to the field of SLE. Selection criteria
include originality of the tool, its innovative aspects, and relevance to
SLE. Any of the SLE topics of interest are appropriate areas for tool
demonstrations. Submissions must provide a tool description of 4 pages
including bibliography in ACM SIGPLAN acmart conference style (
http://www.sigplan.org/Resources/Author/), and a demonstration outline
including screenshots of up to 6 pages. Tool demonstrations must have the
keywords “Tool Demo” or “Tool Demonstration” in the title. The 4-page tool
description will, if the demonstration is accepted, be published in the
proceedings. The 6-page demonstration outline will be used by the program
committee only for evaluating the submission.

* **Industrial papers**: These should describe real-world application
scenarios of SLE in industry, explained in their context with an analysis
of the challenges that were overcome and the lessons which the audience can
learn from this experience. Industry paper submissions must not exceed 6
pages including bibliography in ACM SI

Re: [Pharo-users] smalltalkhub.com down?

2017-05-09 Thread Andrei Chis
Also pharo.org looks down.
http://downforeveryoneorjustme.com/pharo.org

On Tue, May 9, 2017 at 11:09 PM, Dale Henrichs <
dale.henri...@gemtalksystems.com> wrote:

> http://downforeveryoneorjustme.com/http://smalltalkhub.com/
> mc/dkh/metacello/main/?C=M;O=D
>
>
>


[Pharo-users] 2nd CfP: SLE 2017 (10th ACM SIGPLAN International Conference on Software Language Engineering)

2017-05-08 Thread Andrei Chis


**Call for Papers**

10th ACM SIGPLAN International Conference on Software Language
Engineering (SLE 2017)

23-24 October 2017, Vancouver, Canada

(Co-located with SPLASH 2017)

General chair:

   Benoit Combemale, University of Rennes 1, France

Program co-chairs:

   Marjan Mernik, University of Maribor, Slovenia
   Bernhard Rumpe, RWTH Aachen University, Germany

Artifact evaluation chairs:

   Tanja Mayerhofer, TU Wien, Austria
   Laurence Tratt, King's College London, UK


Keynote Speaker:

Peter D. Mosses, Swansea University, UK (http://cs.swan.ac.uk/~cspdm/)


http://conf.researchr.org/track/sle-2017/sle-2017-papers
http://www.sleconf.org/2017
Follow us on twitter: https://twitter.com/sleconf



Software Language Engineering (SLE) is the application of systematic,
disciplined, and measurable approaches to the development, use,
deployment, and maintenance of software languages. The term "software
language" is used broadly, and includes: general-purpose programming
languages; domain-specific languages (e.g. BPMN, Simulink, Modelica);
modeling and metamodeling languages (e.g. SysML and UML); data models
and ontologies (e.g. XML-based and OWL-based languages and
vocabularies).

### Important Dates

Fri 2 Jun 2017 - Abstract Submission
Fri 9 Jun 2017 - Paper Submission
Fri 4 Aug 2017 - Author Notification
Thu 10 Aug 2017 - Artifact Submission
Fri 1 Sep 2017 - Artifact Notification
Fri 8 Sep 2017 - Camera Ready Deadline
Sun 22 Oct - SLE workshops
Mon 23 Oct - Tue 24 Oct 2017 - SLE Conference

### Topics of Interest

SLE aims to be broad-minded and inclusive about relevance and scope.
We solicit high-quality contributions in areas ranging from
theoretical and conceptual contributions to tools, techniques, and
frameworks in the domain of language engineering. Topics relevant to
SLE cover generic aspects of software languages development rather
than aspects of engineering a specific language. In particular, SLE is
interested in principled engineering approaches and techniques in the
following areas:

* Language Design and Implementation
   * Approaches and methodologies for language design
   * Static semantics (e.g., design rules, well-formedness constraints)
   * Techniques for behavioral / executable semantics
   * Generative approaches (incl. code synthesis, compilation)
   * Meta-languages, meta-tools, language workbenches

* Language Validation
   * Verification and formal methods for languages
   * Testing techniques for languages
   * Simulation techniques for languages

* Language Integration and Composition
   * Coordination of heterogeneous languages and tools
   * Mappings between languages (incl. transformation languages)
   * Traceability between languages
   * Deployment of languages to different platforms

* Language Maintenance
   * Software language reuse
   * Language evolution
   * Language families and variability

* Domain-specific approaches for any aspects of SLE (design,
implementation, validation, maintenance)

* Empirical evaluation and experience reports of language engineering tools
   * User studies evaluating usability
   * Performance benchmarks
   * Industrial applications

### Types of Submissions

* **Research papers**: These should report a substantial research
contribution to SLE or successful application of SLE techniques or
both. Full paper submissions must not exceed 12 pages including
bibliography in ACM SIGPLAN acmart conference style
(http://www.sigplan.org/Resources/Author/).

* **Tool papers**: Because of SLE's interest in tools, we seek papers
that present software tools related to the field of SLE. Selection
criteria include originality of the tool, its innovative aspects, and
relevance to SLE. Any of the SLE topics of interest are appropriate
areas for tool demonstrations. Submissions must provide a tool
description of 4 pages including bibliography in ACM SIGPLAN acmart
conference style (http://www.sigplan.org/Resources/Author/), and a
demonstration outline including screenshots of up to 6 pages. Tool
demonstrations must have the keywords “Tool Demo” or “Tool
Demonstration” in the title. The 4-page tool description will, if the
demonstration is accepted, be published in the proceedings. The 6-page
demonstration outline will be used by the program committee only for
evaluating the submission.

* **Industrial papers**: These should describe real-world application
scenarios of SLE in industry, explained in their context with an
analysis of the challenges that were overcome and the lessons which
the audience can learn from this experience. Industry paper
submissions must not exceed 6 pages including bibliography in ACM
SIGPLAN acmart conference style
(http://www.sigplan.org/Resources/Author/).

* **New ideas / vision papers**: New ideas papers should describe new,
non-conventional SLE research approaches that depart 

Re: [Pharo-users] How can I set the SmaccDebugParser in Moose

2017-04-14 Thread Andrei Chis
Not exactly sure how to do to it because I never used it.
>From what I see in SmaCCParserDebugger>>handlesContext: if you have in the
stack a context created by  SmaCCParser>>parse you should have a
'SmaCCParser' button at the top right of the window. But maybe John can
provide you with more details.

Cheers,
Andrei


On Fri, Apr 14, 2017 at 2:45 PM, Stephane Ducasse 
wrote:

> Andrei?
> Help?
>
>
>
> On Fri, Apr 7, 2017 at 3:14 PM, Stephane Ducasse 
> wrote:
>
>> Hi
>>
>> I found the SmaCCParserDebugger and I found the debug menu in the Smacc
>> tool.
>> Now I get a GT and byteCode debugger but I do not find a way to make the
>> new debugger actif.
>>
>> Stef
>>
>
>


Re: [Pharo-users] Fast Table causes Instances of Matrix are not indexable?

2017-02-25 Thread Andrei Chis
Hi Alistair,

I do not have access to a computer right now but indeed this is related to
GTInspector moving to fast table. You should be able to temporarily solve
this be defining a custom Items presentation in the Matrix class that in
the display block transforms the martix to an ordered collection.

We'll integrate a fix at the beginning of next week to solve this in the
inspector without requiring a new presentation.

Cheers,
Andeei

On Feb 25, 2017 12:10 PM, "Alistair Grant"  wrote:

Hi All,

I've just upgrade from Pharo 60395 to 60411 and am now unable to
inspect instances of Matrix.

I think I read somewhere that the GTInspector is now using fast tables,
and am guessing that it is this change that is causing the problem.

I've included code below to reproduce the problem and a stack trace.
The sample code creates a 3 x 3 matrix.

FTTableContainerMorph>>updateExposedRows suggests that the matrix is
being treated as a one-dimensional collection:

self owner numberOfRows  => 9 "expected 3"
self owner numberOfColumns  => 1 "expected 3"

I'll keep investigating, but if someone more familiar can point me in
the right direction, any hints will be appreciated.

Thanks,
Alistair

Pharo 6.0
Latest update: #60411
OS: 4.9.8-1-ARCH



| m |

m := Matrix rows: 3 columns: 3.
1 to: 3 do: [ :i |
1 to: 3 do: [ :j |
m at: i at: j put: 'C', i printString, j printString ] ].
m inspect



Matrix(Object)>>error:
Matrix(Object)>>errorNotIndexable
Matrix(Object)>>at:
GLMFastListDataSource(FTSimpleDataSource)>>elementAt:
GLMFastListDataSource>>cellColumn:row:
FTTableContainerMorph>>updateExposedRows
FTTableMorph>>resetPosition
FTTableMorph>>resizeAllSubviews
FTTableMorph>>extent:
FTTableMorph(Morph)>>bounds:
FTTableMorph(Morph)>>layoutInBounds:
FTTableMorph(Morph)>>layoutProportionallyIn:
[ :m | m layoutProportionallyIn: newBounds ] in
ProportionalLayout>>layout:in: in Block: [ :m | m
layoutProportionallyIn: newBounds ]
Array(SequenceableCollection)>>do:
GLMPanelMorph(Morph)>>submorphsDo:
ProportionalLayout>>layout:in:
GLMPanelMorph(Morph)>>doLayoutIn:
[ self doLayoutIn: self layoutBounds ] in
GLMPanelMorph(Morph)>>computeFullBounds in Block: [ self doLayoutIn:
self layoutBounds ]
BlockClosure>>on:do:
GLMPanelMorph(Morph)>>computeFullBounds
GLMPanelMorph(Morph)>>fullBounds
[ :m |
| subBox |
m visible
ifTrue: [ subBox := m fullBounds.
box
ifNil: [ box := subBox copy ]
ifNotNil: [ box := box quickMerge: subBox ] ] ] in
GLMPanelMorph(Morph)>>submorphBounds in Block: [ :m | ...
Array(SequenceableCollection)>>do:
GLMPanelMorph(Morph)>>submorphBounds
GLMPanelMorph(Morph)>>privateFullBounds
GLMPanelMorph(Morph)>>doLayoutIn:
[ self doLayoutIn: self layoutBounds ] in
GLMPanelMorph(Morph)>>computeFullBounds in Block: [ self doLayoutIn:
self layoutBounds ]
BlockClosure>>on:do:
GLMPanelMorph(Morph)>>computeFullBounds
GLMPanelMorph(Morph)>>fullBounds


[Pharo-users] 1st CfP: SLE 2017 (10th ACM SIGPLAN International Conference on Software Language Engineering)

2017-02-09 Thread Andrei Chis


**Call for Papers**

10th ACM SIGPLAN International Conference on Software Language Engineering
(SLE 2017)

23-24 October 2017, Vancouver, Canada

(Co-located with SPLASH 2017)

General chair:

   Benoit Combemale, University of Rennes 1, France

Program co-chairs:

   Marjan Mernik, University of Maribor, Slovenia
   Bernhard Rumpe, RWTH Aachen University, Germany

Artifact evaluation chairs

   Tanja Mayerhofer, TU Wien, Austria
   Laurence Tratt, King's College London, UK

http://conf.researchr.org/track/sle-2017/sle-2017-papers
http://www.sleconf.org/2017
Follow us on twitter: https://twitter.com/sleconf



Software Language Engineering (SLE) is the application of systematic,
disciplined, and measurable approaches to the development, use, deployment,
and maintenance of software languages. The term "software language" is used
broadly, and includes: general-purpose programming languages;
domain-specific languages (e.g. BPMN, Simulink, Modelica); modeling and
metamodeling languages (e.g. SysML and UML); data models and ontologies
(e.g. XML-based and OWL-based languages and vocabularies).

### Important Dates

Fri 2 Jun 2017 - Abstract Submission
Fri 9 Jun 2017 - Paper Submission
Fri 4 Aug 2017 - Author Notification
Thu 10 Aug 2017 - Artifact Submission
Fri 1 Sep 2017 - Artifact Notification
Fri 8 Sep 2017 - Camera Ready Deadline
Sun 22 Oct - SLE workshops
Mon 23 Oct - Tue 24 Oct 2017 - SLE Conference

### Topics of Interest

SLE aims to be broad-minded and inclusive about relevance and scope. We
solicit high-quality contributions in areas ranging from theoretical and
conceptual contributions to tools, techniques, and frameworks in the domain
of language engineering. Topics relevant to SLE cover generic aspects of
software languages development rather than aspects of engineering a
specific language. In particular, SLE is interested in principled
engineering approaches and techniques in the following areas:

* Language Design and Implementation
   * Approaches and methodologies for language design
   * Static semantics (e.g., design rules, well-formedness constraints)
   * Techniques for behavioral / executable semantics
   * Generative approaches (incl. code synthesis, compilation)
   * Meta-languages, meta-tools, language workbenches

* Language Validation
   * Verification and formal methods for languages
   * Testing techniques for languages
   * Simulation techniques for languages

* Language Integration and Composition
   * Coordination of heterogeneous languages and tools
   * Mappings between languages (incl. transformation languages)
   * Traceability between languages
   * Deployment of languages to different platforms

* Language Maintenance
   * Software language reuse
   * Language evolution
   * Language families and variability

* Domain-specific approaches for any aspects of SLE (design,
implementation, validation, maintenance)

* Empirical evaluation and experience reports of language engineering tools
   * User studies evaluating usability
   * Performance benchmarks
   * Industrial applications

### Types of Submissions

* **Research papers**: These should report a substantial research
contribution to SLE or successful application of SLE techniques or both.
Full paper submissions must not exceed 12 pages including bibliography in
ACM SIGPLAN conference style (http://www.sigplan.org/Resources/Author/).

* **Tool papers**: Because of SLE's interest in tools, we seek papers that
present software tools related to the field of SLE. Selection criteria
include originality of the tool, its innovative aspects, and relevance to
SLE. Any of the SLE topics of interest are appropriate areas for tool
demonstrations. Submissions must provide a tool description of 4 pages
including bibliography in ACM SIGPLAN conference style (
http://www.sigplan.org/Resources/Author/), and a demonstration outline
including screenshots of up to 6 pages. Tool demonstrations must have the
keywords “Tool Demo” or “Tool Demonstration” in the title. The 4-page tool
description will, if the demonstration is accepted, be published in the
proceedings. The 6-page demonstration outline will be used by the program
committee only for evaluating the submission.

* **Industrial papers**: These should describe real-world application
scenarios of SLE in industry, explained in their context with an analysis
of the challenges that were overcome and the lessons which the audience can
learn from this experience. Industry paper submissions must not exceed 6
pages including bibliography in ACM SIGPLAN conference style (
http://www.sigplan.org/Resources/Author/).

* **New ideas / vision papers**: New ideas papers should describe new,
non-conventional SLE research approaches that depart from standard
practice. They are intended to describe well-defined research ideas that
are at an early stage of inve

Re: [Pharo-users] DNU on materializing a fueled out exception

2016-12-19 Thread Andrei Chis
Hi Holgen,

This should be fixed by updating #serializeTestFailureContext:toFileNamed:.
The API of the debugger was refactored in Pharo 5 and it seems like
#serializeTestFailureContext:toFileNamed:
was not updated in Pharo 5. Created an issue case 19477
.
Also currently on mac there is another issue when fueling out the stack  (case
19064 )

Cheers,
Andrei

On Mon, Dec 19, 2016 at 9:53 AM, Holger Freyther  wrote:

> Hi,
>
> I showed Pharo to a friend and wanted to show the nice feature of fueling
> out an exception and then using FLMaterializer 
> class>>#materializeFromFileNamed:
> to load it back and get a debugger up. In Pharo5 I am presented a DNU
> instead.
>
> The DNU is on GTGenericStackDebugger as it doesn't understand the message
> Fuel is sending. What to fix, Fuel to use the new protocol or
> GTGenericStackDebugger to honor the old protocol?
>
> FueldOutStackDebugAction>>#serializeTestFailureContext: aContext
> toFileNamed: aFilename
> | serializer |
>
> serializer := FLSerializer newDefault.
> self encodeDebugInformationOn: serializer.
> serializer addPostMaterializationAction: [ :materialization |
> Smalltalk tools debugger
> openOn: Processor activeProcess
> context: materialization root
> label: 'External stack'
> contents: nil
> fullView: false ].
>
> So it looks like now it should create a debug session first and then pass
> it to the debugger? I think loading new fuel in Pharo3.x is still possible
> so maybe it is best to re-add that protocol?
>
> comments?
>
> holger
>


Re: [Pharo-users] GTPlayground status: open or close

2016-08-30 Thread Andrei Chis
Hi Frederico,

Do you want to verify that a particular instance of GTPlayground is opened
or if there is just any GTPlayground opened in the current image?

For the first case a playground knows it's window. So you can check if
there is a window and the window is in the world:

aPlayground window
ifNotNil: [ :aWindow | aWindow isInWorld ]
ifNil: [ false ]

For the second case something like the following script should work:

(World submorphs select: [ :aMorph | aMorph isSystemWindow ])
detect: [ :aWindow | aWindow model class = GTPlayground ]
ifFound: [ true ]
ifNone: [ false ]


Cheers,
Andrei

On Tue, Aug 30, 2016 at 8:51 PM, Federico.Balaguer <
federico.balag...@gmail.com> wrote:

> Hello,
>
> BotArena is a tool for teaching objects that we are using in my University.
> The tool allow students to enter Smalltalk expressions using an instance of
> GTPlayground.
>
> There is a "reset" scenario where BotArena needs to know if there is a
> Playground open so it does refresh bindings to given objects.
>
> So how can someone check whether a Playground is open or closed?
>
> Thanks! Federico
>
>
>
>
> --
> View this message in context: http://forum.world.st/
> GTPlayground-status-open-or-close-tp4913257.html
> Sent from the Pharo Smalltalk Users mailing list archive at Nabble.com.
>
>


Re: [Pharo-users] [Moose-dev] Re: [ANN] Release of Agile Visualization

2016-08-14 Thread Andrei Chis
Looks awesome !!!

Andrei

On Sun, Aug 14, 2016 at 11:45 PM, Tudor Girba  wrote:

> Great work!
>
> Doru
>
>
> > On Aug 14, 2016, at 11:19 PM, Alexandre Bergel 
> wrote:
> >
> > Dear Colleagues and Friends,
> >
> > It is a great pleasure to announce the release of Agile Visualization.
> Agile Visualization is a book about the Roassal Visualization engine.
> >
> > Paperback, eBook (PDF), and a free HTML format chapters are available
> from http://AgileVisualization.com
> > The book has 235 pages and covers the essential aspects of Roassal.
> Copies of the book will be sold at ESUG’16.
> >
> > Screenshots and codes contained in the book were produced on Pharo.
> However, most of the covered code and topics _equally_run on VisualWorks
> (from version 7.4 (!)).
> >
> > We would like to thank all the contributors and users of Roassal who
> have deeply impacted and shaped Agile Visualization. The book is dedicated
> to the Smalltalk community at large. Big big thanks to our sponsors, Lam
> Research, Object Profile, and ESUG.
> > And thanks to you for being as you are and making Smalltalk such a great
> platform.
> >
> > Thanks
> > Alexandre
> >
> > ___
> > Moose-dev mailing list
> > moose-...@list.inf.unibe.ch
> > https://www.list.inf.unibe.ch/listinfo/moose-dev
>
> --
> www.tudorgirba.com
> www.feenk.com
>
> "One cannot do more than one can do."
>
>
>
>
> ___
> Moose-dev mailing list
> moose-...@list.inf.unibe.ch
> https://www.list.inf.unibe.ch/listinfo/moose-dev
>


[Pharo-users] 2nd CfP: SLE 2016 (9th ACM SIGPLAN International Conference on Software Language Engineering)

2016-06-01 Thread Andrei Chis
**Call for Papers**



9th ACM SIGPLAN International Conference on Software Language Engineering
(SLE 2016)

Oct 31-Nov 1, 2016, Amsterdam, Netherlands

(Co-located with SPLASH 2016)

General chair:

   Tijs van der Storm, CWI, Netherlands

Program co-chairs:

   Dániel Varro,  Budapest University of Technology and Economics, Hungary

   Emilie Balland, Sensational AG, Switzerland

http://conf.researchr.org/track/sle-2016/sle-2016-papers
http://www.sleconf.org/2016/
Follow us on twitter: https://twitter.com/sleconf



Software Language Engineering (SLE) is the application of systematic,
disciplined, and measurable approaches to the development, use, deployment,
and maintenance of software languages. The term "software language" is used
broadly, and includes: general-purpose programming languages;
domain-specific languages (e.g. BPMN, Simulink, Modelica); modeling and
metamodeling languages (e.g. SysML and UML); data models and ontologies
(e.g. XML-based and OWL-based languages and vocabularies).

### Important Dates

Fri 17 Jun 2016 - Abstract Submission
Fri 24 Jun 2016 - Paper Submission
Fri 26 Aug 2016 - Notification
Fri 2 Sep 2016 - Artifact submission
Fri 16 Sep 2016 - Artifact notification
Fri 16 Sep 2016 - Camera ready deadline
Mon 31 Oct 09:00 - Tue 1 Nov 18:00 2016 Conference

### Topics of Interest

SLE aims to be broad-minded and inclusive about relevance and scope. We
solicit high-quality contributions in areas ranging from theoretical and
conceptual contributions to tools, techniques, and frameworks in the domain
of language engineering. Topics relevant to SLE cover generic aspects of
software languages development rather than aspects of engineering a
specific language. In particular, SLE is interested in principled
engineering approaches and techniques in the following areas:

* Language Design and Implementation
* Approaches and methodologies for language design
* Static semantics (e.g., design rules, well-formedness constraints)
* Techniques for behavioral / executable semantics
* Generative approaches (incl. code synthesis, compilation)
* Meta-languages, meta-tools, language workbenches

* Language Validation
* Verification and formal methods for languages
* Testing techniques for languages
* Simulation techniques for languages

* Language Integration
* Coordination between of heterogeneous languages and tools
* Mappings between languages (incl. transformation languages)
* Traceability between languages
* Deployment of languages to different platforms

* Language Maintenance
* Software language reuse
* Language evolution
* Language families and variability

* Domain-specific approaches for any aspects of SLE (design,
implementation, validation, maintenance)

* Empirical evaluation and experience reports of language engineering tools
* User studies evaluating usability
* Performance benchmarks
* Industrial applications

### Types of Submissions

* **Research papers**: These should report a substantial research
contribution to SLE or successful application of SLE techniques or both.
Full paper submissions must not exceed 12 pages excluding bibliography (in
ACM SIGPLAN conference style (http://www.sigplan.org/Resources/Author/)).

* **Tool papers**: Because of SLE’s interest in tools, we seek papers that
present software tools related to the field of SLE. Selection criteria
include originality of the tool, its innovative aspects, and relevance to
SLE. Any of the SLE topics of interest are appropriate areas for tool
demonstrations. Submissions must provide a tool description of 4 pages in
SIGPLAN proceedings style (see above), with 1 optional additional page for
bibliographic references, and a demonstration outline including screenshots
of up to 4 pages. Tool demonstrations must have the keywords "Tool Demo" or
“Tool Demonstration” in the title. The 4-page tool description will, if the
demonstration is accepted, be published in the proceedings. The 4-page
demonstration outline will be used by the program committee only for
evaluating the submission.

### Artifact evaluation

Authors of accepted papers at SLE 2016 are encouraged to submit their
experiment results used for underpinning research statements to an artifact
evaluation process carried out in early September 2016. This submission is
voluntary and will not influence the final decision regarding the papers.

Papers that go through the Artifact Evaluation process successfully receive
a seal of approval printed on the first page of the paper in the
proceedings. Authors of papers with accepted artifacts are encouraged to
make these materials publicly available upon publication of the
proceedings, by including them as "source materials" in the ACM Digital
Library.

### Publications

All submitted papers will be reviewed by at lea

Re: [Pharo-users] GLMFormatedPresentation>>format bug?

2016-05-15 Thread Andrei Chis
Hi Alistair,

Try something like this. Now 100% sure it will work.

gtInspectIn: composite


^ composite text
title: 'Meme';
format: [self asText].

The display block should return the object to be displayed, which is this
case is self.

Cheers,
Andrei


On Sun, May 15, 2016 at 11:58 PM, Alistair Grant 
wrote:

> Hi All,
>
> I'm currently porting my personal documentation system from Python /
> Django to Pharo and am trying to display formatted text in a new pane in
> the inspector.  If I execute something like:
>
> | text |
>
> text := 'Hello World' asText.
> text addAttribute: TextColor green from: 1 to: 6.
> text
>
> in a playground using "Do it and go", the text is displayed correctly
> (with formatting).
>
> If I add a method in the object I want to inspect:
>
> gtInspectIn: composite
> 
>
> ^ composite text
> title: 'Meme';
> display: [self asText].
>
> the formatting disappears.
>
> I'm able to "fix" the problem by changing:
>
> GLMFormatedPresentation>>format
> ^ format ifNil: [ format := #asString ]
>
> to:
>
> GLMFormatedPresentation>>format
> ^ format ifNil: [ format := #asText ]
>
> Is someone more knowledgable about Glamour able to confirm that this is
> really a bug?  If so, I'll submit a formal bug report on fogbugz.  (If
> there's a better solution, that would be great too).
>
> Thanks!
> Alistair
>
>


Re: [Pharo-users] GTPlayground/Inspector stacked vertically

2016-04-29 Thread Andrei Chis
Hi Peter,

I made a quick prototype of a playground that stacks the fist two panes
vertically and allows resizing of those panes. You can change to make the
resize horizontal.

You can load the class and execute 'GTPlaygroundVertical open'.
Bare in mind that it's just a quick prototype. It works well but it has
bugs (you cannot close panes in the inspector, the title of the inspector
had to be there, initially the code take only a small place, etc)

Cheers,
Andrei



[image: Inline image 1])


On Fri, Apr 29, 2016 at 2:44 PM, Johan Fabry  wrote:

>
> On Apr 29, 2016, at 09:03, Peter Uhnák  wrote:
>
> On Fri, Apr 29, 2016 at 1:49 PM, Johan Fabry  wrote:
>
>>
>> For this specific case you may want to use the SpecEasel which is an
>> example of the of the Roassal2Spec package. You can change the layout of
>> the boxes there by changing the defaultSpec method at class side (but some
>> minimal Spec knowledge is required).
>>
>
> Well I certainly have enough knowledge to change a layout, but the lacking
> code support (mainly syntax highlighting) is a real pain (certainly worse
> than having a large window).
> But at least I can add it to my todo and see if it can be improved…
>
>
> Ah well, the SpecEasel was a quick example not meant to be used
> intensively, which is why there is no syntax highlighting. If you change
> the text widget for a Rubric one and you configure it to be for Smalltalk
> (there is a setting for that) you should get syntax highlighting and all
> other bells and whistles for free.
>
>
> ---> Save our in-boxes! http://emailcharter.org <---
>
> Johan Fabry   -   http://pleiad.cl/~jfabry
> PLEIAD and RyCh labs  -  Computer Science Department (DCC)  -  University
> of Chile
>
>


GTPlaygroundVertical.st
Description: Binary data


[Pharo-users] 1st CFP: SLE 2016 (9th ACM SIGPLAN International Conference on Software Language Engineering)

2016-04-26 Thread Andrei Chis
**Call for Papers**



9th ACM SIGPLAN International Conference on Software Language Engineering
(SLE 2016)

Oct 31-Nov 1, 2016, Amsterdam, Netherlands

(Co-located with SPLASH 2016)

General chair:

   Tijs van der Storm, CWI, Netherlands

Program co-chairs:

   Dániel Varro,  Budapest University of Technology and Economics, Hungary

   Emilie Balland, Sensational AG, Switzerland

http://conf.researchr.org/track/sle-2016/sle-2016-papers
http://www.sleconf.org/2016/
Follow us on twitter: https://twitter.com/sleconf



Software Language Engineering (SLE) is the application of systematic,
disciplined, and measurable approaches to the development, use, deployment,
and maintenance of software languages. The term "software language" is used
broadly, and includes: general-purpose programming languages;
domain-specific languages (e.g. BPMN, Simulink, Modelica); modeling and
metamodeling languages (e.g. SysML and UML); data models and ontologies
(e.g. XML-based and OWL-based languages and vocabularies).


### Important Dates

Fri 17 Jun 2016 - Abstract Submission
Fri 24 Jun 2016 - Paper Submission
Fri 26 Aug 2016 - Notification
Fri 2 Sep 2016 - Artifact submission
Fri 16 Sep 2016 - Artifact notification
Fri 16 Sep 2016 - Camera ready deadline
Mon 31 Oct 09:00 - Tue 1 Nov 18:00 2016 Conference


### Topics of Interest

SLE aims to be broad-minded and inclusive about relevance and scope. We
solicit high-quality contributions in areas ranging from theoretical and
conceptual contributions to tools, techniques, and frameworks in the domain
of language engineering. Topics relevant to SLE cover generic aspects of
software languages development rather than aspects of engineering a
specific language. In particular, SLE is interested in principled
engineering approaches and techniques in the following areas:

* Language Design and Implementation
* Approaches and methodologies for language design
* Static semantics (e.g., design rules, well-formedness constraints)
* Techniques for behavioral / executable semantics
* Generative approaches (incl. code synthesis, compilation)
* Meta-languages, meta-tools, language workbenches

* Language Validation
* Verification and formal methods for languages
* Testing techniques for languages
* Simulation techniques for languages

* Language Integration
* Coordination between of heterogeneous languages and tools
* Mappings between languages (incl. transformation languages)
* Traceability between languages
* Deployment of languages to different platforms

* Language Maintenance
* Software language reuse
* Language evolution
* Language families and variability

* Domain-specific approaches for any aspects of SLE (design,
implementation, validation, maintenance)

* Empirical evaluation and experience reports of language engineering tools
* User studies evaluating usability
* Performance benchmarks
* Industrial applications


### Types of Submissions

* **Research papers**: These should report a substantial research
contribution to SLE or successful application of SLE techniques or both.
Full paper submissions must not exceed 12 pages excluding bibliography (in
ACM SIGPLAN conference style (http://www.sigplan.org/Resources/Author/)).

* **Tool papers**: Because of SLE’s interest in tools, we seek papers that
present software tools related to the field of SLE. Selection criteria
include originality of the tool, its innovative aspects, and relevance to
SLE. Any of the SLE topics of interest are appropriate areas for tool
demonstrations. Submissions must provide a tool description of 4 pages in
SIGPLAN proceedings style (see above), with 1 optional additional page for
bibliographic references, and a demonstration outline including screenshots
of up to 4 pages. Tool demonstrations must have the keywords "Tool Demo" or
“Tool Demonstration” in the title. The 4-page tool description will, if the
demonstration is accepted, be published in the proceedings. The 4-page
demonstration outline will be used by the program committee only for
evaluating the submission.


### Artifact evaluation

Authors of accepted papers at SLE 2016 are encouraged to submit their
experiment results used for underpinning research statements to an artifact
evaluation process carried out in early September 2016. This submission is
voluntary and will not influence the final decision regarding the papers.

Papers that go through the Artifact Evaluation process successfully receive
a seal of approval printed on the first page of the paper in the
proceedings. Authors of papers with accepted artifacts are encouraged to
make these materials publicly available upon publication of the
proceedings, by including them as "source materials" in the ACM Digital
Library.


### Publications

All submitted papers will be reviewed by a

[Pharo-users] Spotter Survey

2016-03-29 Thread Andrei Chis
Hello everybody,

We are conducting a small survey about Spotter.
It would help us if you would complete the survey at:
http://spotter.limequery.com/index.php/216683/lang-en

We will use the data from this survey both in a research tasks and to help
us to further improve Spotter.
The survey should take you less than 5 minutes to complete.

Thanks for your help!

Cheers,
Andrei


Re: [Pharo-users] [ann] gtdebugger in pharo 5.0

2016-01-14 Thread Andrei Chis
Hi Nicolai,

Thanks for reporting these issues. They are indeed bugs and we are working
on fixing them.

Cheers,
Andrei

On Tue, Jan 12, 2016 at 11:24 PM, Nicolai Hess 
wrote:

>
>
> 2016-01-08 11:24 GMT+01:00 Tudor Girba :
>
>> Hi,
>>
>> We are about to integrate in Pharo a new member of the Glamorous Toolkit:
>> the GTDebugger. As this is a significant change that might affect your
>> workflow, here is some background information to help you deal with the
>> change.
>>
>> First, you should know that the change is not irreversible and it is
>> easily possible to disabled the new debugger through a setting. However,
>> please do take the time to provide us feedback if something does not work
>> out for you. We want to know what can be improved and we try to react as
>> fast as we can.
>>
>> A practical change comes from the fact that the variables are manipulated
>> through a GTInspector, which makes it cheaper to maintain in the longer run.
>>
>
> Accept and Cancel buttons shouldn't be there
> or should not act on if the codepane hasn't changed.
> (every press on "accept" writes a new method version, although the
> contents didn't changed - tested on
> Latest update: #50524 )
>
> Most (all?) other tools don't have Accept/Cancel buttons.
>
> - I really miss the "List Methods using 'varname'/List Methods storing
> into 'varname'
> - is "stackTop" now gone ? I thought you wanted to add it to the stack ?
> - thisContext is gone as well ?
> - the Bytecode/GT button is badly placed, it looks like the "downarrow"
> window menu icon
>   is a dropdown menu with label "Bytecode" (since when do we put buttons
> in the title pane?
> - the evaluator pane is shown as "dirty", as it does not make a difference
> if we
>   accept the text in this pane, there shouldn't be a dirty indicator.
> - you can not use the inspector pane to change inst var values
> - there is no way to refresh the inspector pane
>
> I don't open bugtracker entries now, I 'll wait maybe this issues aren't
> bugs but
> features.
>
>
> nicolai
>
>
>


Re: [Pharo-users] [Moose-dev] Re: gtdebugger in pharo 5.0

2016-01-08 Thread Andrei Chis
On Fri, Jan 8, 2016 at 2:23 PM, Dimitris Chloupis 
wrote:

> is there any documentation about this ? or i just look at the relevant
> classes ?
>

Not really.  Now you'll need to look in UITheme>>styleContext:from:, but
I'll refactor that method shortly.



> On Fri, Jan 8, 2016 at 3:20 PM Andrei Chis 
> wrote:
>
>> On Fri, Jan 8, 2016 at 2:09 PM, Dimitris Chloupis 
>> wrote:
>>
>>> does the GTDebugger respect the pharo themes support or is it like
>>> GTSpotter ?
>>>
>>
>> It behaves just as GTInspector regrading the theme.  Just if you are
>> using a custom theme and want to have the coloring of the stack enabled you
>> need to provide the appropriate colors in your theme (styleContext:from:)
>>
>> Cheers,
>> Andrei
>>
>>
>>
>>>
>>> On Fri, Jan 8, 2016 at 1:08 PM Tudor Girba  wrote:
>>>
>>>> Hi,
>>>>
>>>> We are about to integrate in Pharo a new member of the Glamorous
>>>> Toolkit: the GTDebugger. As this is a significant change that might affect
>>>> your workflow, here is some background information to help you deal
>>>> with the change.
>>>>
>>>> First, you should know that the change is not irreversible and it is
>>>> easily possible to disabled the new debugger through a setting. However,
>>>> please do take the time to provide us feedback if something does not work
>>>> out for you. We want to know what can be improved and we try to react as
>>>> fast as we can.
>>>>
>>>> A practical change comes from the fact that the variables are
>>>> manipulated through a GTInspector, which makes it cheaper to maintain in
>>>> the longer run.
>>>>
>>>> While the first thing that will capture the attention is the default
>>>> generic interface, the real power comes from the moldable nature of the
>>>> debugger. Like all other GT tools, GTDebugger is also moldable by design.
>>>> This means that we can construct custom debuggers for specific libraries at
>>>> small costs (often measured in a couple of hundred lines of code).
>>>>
>>>> For example, the core configuration includes also the SUnit and the
>>>> bytecode debugger. These are around 150 lines of code. Here is how the
>>>> bytecode debugger looks like:
>>>>
>>>>
>>>>
>>>> You can find more information in an introductory overview blog post
>>>> that also includes some links for further reading:
>>>>
>>>> http://www.humane-assessment.com/blog/gtdebugger-in-pharo/
>>>>
>>>> Please let us know what you think.
>>>>
>>>> Cheers,
>>>> Doru
>>>>
>>>>
>>>> --
>>>> www.tudorgirba.com
>>>> www.feenk.com
>>>>
>>>> "What is more important: To be happy, or to make happy?"
>>>>
>>>> ___
>>>> Moose-dev mailing list
>>>> moose-...@list.inf.unibe.ch
>>>> https://www.list.inf.unibe.ch/listinfo/moose-dev
>>>>
>>>
>>> ___
>>> Moose-dev mailing list
>>> moose-...@list.inf.unibe.ch
>>> https://www.list.inf.unibe.ch/listinfo/moose-dev
>>>
>>> ___
>> Moose-dev mailing list
>> moose-...@list.inf.unibe.ch
>> https://www.list.inf.unibe.ch/listinfo/moose-dev
>>
>


Re: [Pharo-users] [Moose-dev] Re: gtdebugger in pharo 5.0

2016-01-08 Thread Andrei Chis
On Fri, Jan 8, 2016 at 2:09 PM, Dimitris Chloupis 
wrote:

> does the GTDebugger respect the pharo themes support or is it like
> GTSpotter ?
>

It behaves just as GTInspector regrading the theme.  Just if you are using
a custom theme and want to have the coloring of the stack enabled you need
to provide the appropriate colors in your theme (styleContext:from:)

Cheers,
Andrei



>
> On Fri, Jan 8, 2016 at 1:08 PM Tudor Girba  wrote:
>
>> Hi,
>>
>> We are about to integrate in Pharo a new member of the Glamorous Toolkit:
>> the GTDebugger. As this is a significant change that might affect your
>> workflow, here is some background information to help you deal with the
>> change.
>>
>> First, you should know that the change is not irreversible and it is
>> easily possible to disabled the new debugger through a setting. However,
>> please do take the time to provide us feedback if something does not work
>> out for you. We want to know what can be improved and we try to react as
>> fast as we can.
>>
>> A practical change comes from the fact that the variables are manipulated
>> through a GTInspector, which makes it cheaper to maintain in the longer run.
>>
>> While the first thing that will capture the attention is the default
>> generic interface, the real power comes from the moldable nature of the
>> debugger. Like all other GT tools, GTDebugger is also moldable by design.
>> This means that we can construct custom debuggers for specific libraries at
>> small costs (often measured in a couple of hundred lines of code).
>>
>> For example, the core configuration includes also the SUnit and the
>> bytecode debugger. These are around 150 lines of code. Here is how the
>> bytecode debugger looks like:
>>
>>
>>
>> You can find more information in an introductory overview blog post that
>> also includes some links for further reading:
>>
>> http://www.humane-assessment.com/blog/gtdebugger-in-pharo/
>>
>> Please let us know what you think.
>>
>> Cheers,
>> Doru
>>
>>
>> --
>> www.tudorgirba.com
>> www.feenk.com
>>
>> "What is more important: To be happy, or to make happy?"
>>
>> ___
>> Moose-dev mailing list
>> moose-...@list.inf.unibe.ch
>> https://www.list.inf.unibe.ch/listinfo/moose-dev
>>
>
> ___
> Moose-dev mailing list
> moose-...@list.inf.unibe.ch
> https://www.list.inf.unibe.ch/listinfo/moose-dev
>
>


Re: [Pharo-users] Someone broke startup scripts on ubuntu

2015-12-15 Thread Andrei Chis
I get the same error in moose. In  the latest moose image (build on top of
the latest Pharo 5 image) executing 'StartupPreferencesLoader
preferencesVersionFolder' returns nil.

Cheers,
Andrei

On Tue, Dec 15, 2015 at 11:14 AM, Dimitris Chloupis 
wrote:

> I get my pharo on ubuntu 14 64 bit with
>
> cd Ephestos; wget -O- get.pharo.org/alpha+vmLatest | bash
>
> looks like startup scripts on ubuntu has been broken
>
> StartupPreferencesLoader preferencesGeneralFolder .
>
> returns nil, looking inside the method's source if I do
>
> FileLocator preferences asFileReference
>
> gives me a nice error Cant find the requested origin
>
> trying with
>
> cd Ephestos; wget -O- get.pharo.org/alpha+vm | bash
>
> for getting the stable default vm, same problem, so I assume this is an
> image problem
>
> here is the stack
>
> UnixResolver(PlatformResolver)>>cantFindOriginError [ self
> cantFindOriginError ] in
> UnixResolver(PlatformResolver)>>directoryFromEnvVariableNamed: in Block: [
> self cantFindOriginError ] [ ^ aBlock value ] in
> UnixResolver(PlatformResolver)>>directoryFromEnvVariableNamed:or: in Block:
> [ ^ aBlock value ] BlockClosure>>cull: Context>>evaluateSignal:
> Context>>handleSignal: Error(Exception)>>signal Error(Exception)>>signal:
> Error class(Exception class)>>signal: FFICallout>>loaderForArgNamed:
> FFICallout>>loaderForArgNamed:indirectIndex:
> FFICallout>>argName:indirectIndex:type:ptrArity:
> FFIFunctionParser>>parseArgument FFIFunctionParser>>parseArguments
> FFIFunctionParser>>parseNamedFunction:
> FFICalloutMethodBuilder>>parseSignature: FFICalloutMethodBuilder>>generate
> FFICalloutMethodBuilder>>build: FFICalloutAPI>>function:module:
> UnixEnvironment(Object)>>ffiCall:module:
> UnixEnvironment(OSEnvironment)>>getEnv:
> UnixEnvironment(OSEnvironment)>>at:ifAbsent: [ Smalltalk os environment at:
> aString ifAbsent: [ nil ] ] in
> UnixResolver(PlatformResolver)>>directoryFromEnvVariableNamed:or: in Block:
> [ Smalltalk os environment at: aString ifAbsent: [...etc...
> BlockClosure>>on:do:
> UnixResolver(PlatformResolver)>>directoryFromEnvVariableNamed:or:
> UnixResolver(PlatformResolver)>>directoryFromEnvVariableNamed:
> UnixResolver>>home [ self home / '.config' ] in UnixResolver>>preferences
> in Block: [ self home / '.config' ] [ ^ aBlock value ] in
> UnixResolver(PlatformResolver)>>directoryFromEnvVariableNamed:or: in Block:
> [ ^ aBlock value ] BlockClosure>>cull:
>
>
>


Re: [Pharo-users] Changing playground and monticello shortcuts

2015-11-11 Thread Andrei Chis
>
> Hi,
>
> I am totally against it because it's too much time to open it with the
> spotter. A shortcut need to be a shortcut. If I need to open it via the
> Spotter, I will use the mouse because it's the same time.
> One more reason, when the image become too big sometime, the Spotter
> need some time to initialize. On one of my latest image the spotter
> needed ~3-4sec to open and initialize.
>

Just regarding the slowdown, if the image has no private data could you
maybe share it?
If you cannot can I send you some logging statements to see what takes so
long.
Normally there shouldn't be such a big slowdown.

One thing that slows down spotter is the fact that we display now all
entries from the world menu, which we should change.
Also the extension for CatalogBrowser does an HTTP request every time one
opens spotter. I am for changing this, or
at least for not displaying the CatalogBrowser by default until one starts
searching.


Cheers,
Andrei


>
> There is a lot of things that we cannot do easily only with the
> keyboard, this is bad. So please, do not remove what works for now.
>
> --
> Cyril Ferlicot
>
> http://www.synectique.eu
>
> 165 Avenue Bretagne
> Lille 59000 France
>
>


Re: [Pharo-users] loading GToolkit in Pharo 3.0 no longer works

2015-10-18 Thread Andrei Chis
How are you loading it?
What errors do you get?

The moose 5 job from the CI that loads moose on top of pharo 3 still works.
https://ci.inria.fr/moose/job/moose-5.0/

Cheers,
Andrei

On Sun, Oct 18, 2015 at 8:40 PM, p...@highoctane.be 
wrote:

> It used to but the configurations have been really messed up.
>
> e.g. I get "Bricks" mentions...
>
> Phil
>


Re: [Pharo-users] MNU: RubPluggableTextMorph>>appendEntry

2015-10-09 Thread Andrei Chis
This error happens now in Moose every time something is printed to the
transcript.
Seems that rubric has diverged a bit in Pharo


On Fri, Oct 9, 2015 at 8:16 AM, Alain Plantec via Pharo-users <
pharo-users@lists.pharo.org> wrote:

>
>
> -- Forwarded message --
> From: Alain Plantec 
> To: Any question about pharo is welcome 
> Cc:
> Date: Fri, 9 Oct 2015 08:16:00 +0200
> Subject: Re: [Pharo-users] MNU: RubPluggableTextMorph>>appendEntry
> Hello,
> I’ve just tested.
> It seems to  works well with the last version of Pharo 5
> Cheers
> Alain
>
> > On 08 Oct 2015, at 22:40, Alexandre Bergel 
> wrote:
> >
> > Hi!
> >
> > A new Pharo user bumps into a nasty bug. No idea why it appears time to
> time.
> > The method ThreadSafeTranscript>>stepGlobal does a "self changed:
> #appendEntry.” This apparently update by RubPluggableTextMorph by calling
> "RubPluggableTextMorph >>update:  #appendEntry”. All this ultimately sends
> #appendEntry to RubPluggableTextMorph, which is not understood.
> >
> > What is the solution for this?
> >
> >
> https://pharo.fogbugz.com/f/cases/16749/MNU-RubPluggableTextMorph-appendEntry
> >
> > Alexandre
> >
> >
> > --
> > _,.;:~^~:;._,.;:~^~:;._,.;:~^~:;._,.;:~^~:;._,.;:
> > Alexandre Bergel  http://www.bergel.eu
> > ^~:;._,.;:~^~:;._,.;:~^~:;._,.;:~^~:;._,.;:~^~:;.
> >
> >
> >
> >
>
>
>
>


Re: [Pharo-users] GTInspector: add view tab for custom object

2015-10-02 Thread Andrei Chis
Hi Mark,

There is an initializeView: method that you could you use to create a
custom view

composite roassal2
title: 'Complexity';
titleIcon: MooseIcons mooseSystemComplexity;
initializeView: [ RTMondrian new ];
painting: [ :view :each |
"build views" ]

Does this help?

Cheers,
Andrei

On Fri, Oct 2, 2015 at 10:47 AM, Mark Rizun  wrote:

> Hi everyone,
>
> I would like to extend GTInspector for custom object - add a roassal view
> tab.
> I found this kind of code to do this:
>
> gtInspectorViewIn: composite
> 
> composite roassal2
> title: 'View';
> painting: [ :view | self viewOn: view ]
>
> The problem is, that I want to use a view that I already have, but not the
> one which is passed as an argument to block [ :view | self viewOn: view ].
> It should be simple. Am I missing something?
>
> Best regards,
> Mark
>
>
>
> --
> View this message in context:
> http://forum.world.st/GTInspector-add-view-tab-for-custom-object-tp4853161.html
> Sent from the Pharo Smalltalk Users mailing list archive at Nabble.com.
>
>


Re: [Pharo-users] Zn / Connection closed while waiting for data

2015-09-30 Thread Andrei Chis
In my case it's still failing with 'Connection closed while waiting for
data.'

Cheers,
Andrei

On Wed, Sep 30, 2015 at 9:29 AM, Sven Van Caekenberghe  wrote:

>
> > On 30 Sep 2015, at 08:16, Volkert 
> wrote:
> >
> > For your information: today i tried again and know it works as expected
> ...
>
> OK, thanks for letting us know.
>
> > Same net
> > Same pharo-vm/image
> > Same ubuntu/kernel
> >
> > Strange  maybe the "blood moon" on monday ...
>
> Yes, weird.
>
> > $ ./pharo Pharo.image eval "'
> http://bl.ocks.org/ostock/raw/4063318/dji.csv' asUrl retrieveContents"
> > 'Date,Open,High,Low,Close,Volume,Adj Close
> > 2010-10-01,10789.72,10907.41,10759.14,10829.68,429891,10829.68
> > 2010-09-30,10835.96,10960.99,10732.27,10788.05,428416,10788.05
> > 2010-09-29,10857.98,10901.96,10759.75,10835.28,399028,10835.28
> > 2010-09-28,10809.85,10905.44,10714.03,10858.14,402584,10858.14
> > 2010-09-27,10860.03,10902.52,10776.44,10812.04,358786,10812.04
> > 2010-09-24,10664.39,10897.83,10664.39,10860.26,412395,10860.26
> > 2010-09-23,10738.48,10779.65,10610.12,10662.42,384785,10662.42
> > 2010-09-22,10761.11,10829.75,10682.40,10739.31,391107,10739.31
> > 2010-09-21,10753.39,10844.89,10674.83,10761.03,417566,10761.03
> > 2010-09-20,10608.08,10783.51,10594.38,10753.62,336408,10753.62
> >
> > 
> >
> >
> > On 25.09.2015 19:58, stepharo wrote:
> >> Thanks for spotting this problem.
> >>
> >>
> >> Le 21/9/15 11:33, Volkert a écrit :
> >>> Switching the socket implementation works ...
> >>>
> >>> $./pharo Pharo.image eval "ZnNetworkingUtils default
> socketStreamClass: SocketStream. '
> http://bl.ocks.org/mbostock/raw/4063318/dji.csv' asUrl retrieveContents"
> >>> 'Date,Open,High,Low,Close,Volume,Adj Close
> >>> 2010-10-01,10789.72,10907.41,10759.14,10829.68,429891,10829.68
> >>> 2010-09-30,10835.96,10960.99,10732.27,10788.05,428416,10788.05
> >>> 2010-09-29,10857.98,10901.96,10759.75,10835.28,399028,10835.28
> >>> 2010-09-28,10809.85,10905.44,10714.03,10858.14,402584,10858.14
> >>> 2010-09-27,10860.03,10902.52,10776.44,10812.04,358786,10812.04
> >>>
> >>> 
> >>>
> >>> The dedault implementation not ...
> >>>
> >>> $ ./pharo Pharo.image eval "'
> http://bl.ocks.org/mbostock/raw/4063318/dji.csv' asUrl
> retrieveContents" Startup Error: ConnectionClosed: Connection closed
> while waiting for data.
> >>> [ ConnectionClosed signal: 'Connection closed while waiting for data.'
> ] in Socket>>waitForDataFor: in Block: [ ConnectionClosed signal:
> 'Connection closed whil...etc...
> >>> Socket>>waitForDataFor:ifClosed:ifTimedOut:
> >>> Socket>>waitForDataFor:
> >>> ZdcSocketStream(ZdcAbstractSocketStream)>>socketWaitForData
> >>> ZdcSocketStream>>readInto:startingAt:count:
> >>> ZnUTF8Encoder>>optimizedReadInto:startingAt:count:fromStream:
> >>> ZnUTF8Encoder>>readInto:startingAt:count:fromStream:
> >>> [
> >>> read := encoder
> >>>readInto: buffer
> >>>startingAt: 1
> >>>count: buffer size
> >>>fromStream: readStream ] in ZnStringEntity>>readFrom: in Block: [
> ...
> >>> BlockClosure>>on:do:
> >>> ZnStringEntity>>readFrom:
> >>> ZnEntity class>>readFrom:usingType:andLength:
> >>> ZnEntityReader>>readFrom:usingType:andLength:
> >>> ZnEntityReader>>readEntityFromStream
> >>> [ entity := self readEntityFromStream ] in ZnEntityReader>>readEntity
> in Block: [ entity := self readEntityFromStream ]
> >>> [
> >>> p psValueAt: index put: anObject.
> >>> aBlock value ] in
> ZnDefaultCharacterEncoder(DynamicVariable)>>value:during: in Block: [ ...
> >>> BlockClosure>>ensure:
> >>> ZnDefaultCharacterEncoder(DynamicVariable)>>value:during:
> >>> ZnDefaultCharacterEncoder class(DynamicVariable class)>>value:during:
> >>> ZnEntityReader>>withDefaultUtf8Decoding:
> >>> ZnEntityReader>>readEntity
> >>> ZnResponse(ZnMessage)>>readEntityFrom:
> >>> ZnResponse>>readEntityFrom:
> >>> ZnResponse(ZnMessage)>>readFrom:
> >>> ZnResponse cl

Re: [Pharo-users] Integrating a custom spotter, reusing current code

2015-09-25 Thread Andrei Chis
Hi Stefan,

Now when using a filter you can configure each processor individually.
Here is a full example of an implementors browser on a method with dive in
support: http://ws.stfx.eu/GK4T298XWAS8

I just added the minimum API to configure individual processors.

I added more examples that you can see by inspecting the GTSpotter class
and selecting the 'Examples' presentation.

For now this only works in the latest moose image.

Cheers,
Andrei



On Wed, Sep 23, 2015 at 2:06 PM, Alexandre Bergel 
wrote:

> It would be great to have this accessible from the Help Browser. It is
> easy to write helps and really useful!
>
> Alexandre
>
> > On Sep 23, 2015, at 6:30 AM, Andrei Chis 
> wrote:
> >
> > Hi Stephan,
> >
> > Right now you can just filter processors in spotter:
> >
> > GTSpotterMorph new
> >   extent: 600@700;
> >   spotterModel: (GTSpotter
> >   on: Object>>#printString
> >   withProcessors: {
> >   CompiledMethod>>#spotterForImplementorsFor:});
> >   openCenteredInWorld.
> >
> > However this does not work if you need to override properties of a
> search, like actLogic.
> >
> > An alternative would be also add a way to override properties of a
> search, like for example:
> >
> > GTSpotterMorph new
> >   extent: 600@700;
> >   spotterModel: (GTSpotter
> >   on: Object>>#printString
> >   withProcessor: {
> >   CompiledMethod>>#spotterForImplementorsFor:}
> >   initializedWith: [:aProcessor | aProcessor
> >   candidatesLimit: 100;
> >   actLogic: [""] ]);
> >   openCenteredInWorld
> >
> >
> >
> > Cheers,
> > Andrei
> >
> > On Tue, Sep 22, 2015 at 2:15 PM, Stephan Eggermont 
> wrote:
> > On 22-09-15 14:02, Peter Uhnák wrote:
> > Also, how do I get to a list
> > of the implementers/senders/references/etc of the method/class?
> > What is the improved and approved way to do this :) ?
> >
> > do you mean sending them #senders and #implementors? Or am I missing
> something?
> >
> > No, how do I get a spotter morph showing the implementors so I can
> choose one. Without duplicating too much.
> >
> > Stephan
> >
> >
> >
> >
>
> --
> _,.;:~^~:;._,.;:~^~:;._,.;:~^~:;._,.;:~^~:;._,.;:
> Alexandre Bergel  http://www.bergel.eu
> ^~:;._,.;:~^~:;._,.;:~^~:;._,.;:~^~:;._,.;:~^~:;.
>
>
>
>
>


Re: [Pharo-users] Integrating a custom spotter, reusing current code

2015-09-23 Thread Andrei Chis
Hi Stephan,

Right now you can just filter processors in spotter:

GTSpotterMorph new
extent: 600@700;
spotterModel: (GTSpotter
on: Object>>#printString
withProcessors: {
CompiledMethod>>#spotterForImplementorsFor:});
openCenteredInWorld.

However this does not work if you need to override properties of a search,
like actLogic.

An alternative would be also add a way to override properties of a search,
like for example:

GTSpotterMorph new
extent: 600@700;
spotterModel: (GTSpotter
on: Object>>#printString
withProcessor: {
CompiledMethod>>#spotterForImplementorsFor:}
initializedWith: [:aProcessor | aProcessor
candidatesLimit: 100;
actLogic: [""] ]);
openCenteredInWorld



Cheers,
Andrei

On Tue, Sep 22, 2015 at 2:15 PM, Stephan Eggermont  wrote:

> On 22-09-15 14:02, Peter Uhnák wrote:
>
>> Also, how do I get to a list
>>> of the implementers/senders/references/etc of the method/class?
>>> What is the improved and approved way to do this :) ?
>>>
>>
>> do you mean sending them #senders and #implementors? Or am I missing
>> something?
>>
>
> No, how do I get a spotter morph showing the implementors so I can choose
> one. Without duplicating too much.
>
> Stephan
>
>
>
>


Re: [Pharo-users] Zn / Connection closed while waiting for data

2015-09-21 Thread Andrei Chis
Somehow I replied only to Sven.
Forwarded the email.

On Mon, Sep 21, 2015 at 2:46 PM, Sven Van Caekenberghe  wrote:

>
> > On 21 Sep 2015, at 13:45, Andrei Chis 
> wrote:
> >
> > Hi Sven,
> >
> > Switching from ZdcSocketStream to SocketStream fixes the problem.
>
> Thanks Andrei & Volkert for testing. At least you have a workaround now.
>
> > If you want I can give you access to a virtual box installation within
> the network.
> > The easier solution would be through
> https://www.teamviewer.com/en/index.aspx
>
> OK, I'll keep that in mind. But first, when I find the time, I have to
> compare ZdcSocketStream to ZdcSecureSocketStream, since some patches were
> applied to the latter to solve similar issues. This is all quite tricky
> stuff.
>
> Sven
>
> > Cheers,
> > Andrei
> >
> >
> >
> > On Mon, Sep 21, 2015 at 12:07 PM, Sven Van Caekenberghe 
> wrote:
> >
> > > On 21 Sep 2015, at 11:45, Andrei Chis 
> wrote:
> > >
> > > So adding #beOneShot on some networks that are behind proxies, fails
> the request.
> >
> > Well, I was already afraid that (possibly transparent) proxies were
> involved.
> >
> > The problem is, it is simply impossible for me to debug this remotely.
> >
> > One things that you could try is switching the socket stream
> implementation used by Zn,
> >
> >   ZnNetworkingUtils default socketStreamClass: SocketStream.
> >
> > to no longer use ZdcSocketStream.
> >
> > Sven
> >
> > PS: Note that this is global setting
> >
> >
> >
>
>


Re: [Pharo-users] Zn / Connection closed while waiting for data

2015-09-21 Thread Andrei Chis
When executing " 'http://bl.ocks.org/mbostock/raw/4063318/dji.csv' asUrl
retrieveContents " on the same machine I also get a "Connection closed
while waiting for data" depending on what network I am.

On the current network, which is behind a proxy server, the following
script fails with "Connection closed while waiting for data"

ZnClient new
beOneShot;
url: 'http://bl.ocks.org/mbostock/raw/4063318/dji.csv';
get.

However, this script works:

ZnClient new
url: 'http://bl.ocks.org/mbostock/raw/4063318/dji.csv';
get.

So adding #beOneShot on some networks that are behind proxies, fails the
request.

Tested on:
Pharo5.0
Latest update: #50334
current stable vm
os x yosemite 10.10.3

Cheers,
Andrei



On Mon, Sep 21, 2015 at 9:20 AM, Volkert 
wrote:

>
>
> On 20.09.2015 17:13, Sven Van Caekenberghe wrote:
>
>> On 20 Sep 2015, at 14:47, Volkert 
>>> wrote:
>>>
>>> here mine. is the same version
>>>
>> Then I (currently) am out of ideas.
>>
>> I am assuming you did all your tests from machines with the same network
>> connection, maybe you could try from another place, or from some server
>> locate somewhere else ?
>>
> I have test it from an other place with the same machine and it works 
> strange.
>
>
> $ ./pharo --version
>>> 3.9-7 #1 Thu Apr  2 00:51:45 CEST 2015 gcc 4.6.3 [Production ITHB VM]
>>> NBCoInterpreter NativeBoost-CogPlugin-EstebanLorenzano.21 uuid:
>>> 4d9b9bdf-2dfa-4c0b-99eb-5b110dadc697 Apr  2 2015
>>> NBCogit NativeBoost-CogPlugin-EstebanLorenzano.21 uuid:
>>> 4d9b9bdf-2dfa-4c0b-99eb-5b110dadc697 Apr  2 2015
>>> https://github.com/pharo-project/pharo-vm.git Commit:
>>> 32d18ba0f2db9bee7f3bdbf16bdb24fe4801cfc5 Date: 2015-03-24 11:08:14 +0100
>>> By: Esteban Lorenzano  Jenkins build #14904
>>> Linux pharo-linux 3.2.0-31-generic-pae #50-Ubuntu SMP Fri Sep 7 16:39:45
>>> UTC 2012 i686 i686 i386 GNU/Linux
>>> plugin path: /home/volkert/Pharo/latest/pharo-vm/ [default:
>>> /home/volkert/Pharo/latest/pharo
>>>
>>> On 20.09.2015 14:03, Sven Van Caekenberghe wrote:
>>>
 I am not sure we have to go that deep (yet).

 It is a public URL/site, we access it with the same client software
 (standard 4.0 with the included Zn), it works for most/everyone, on
 multiple platforms, but not for Volkert.

 Maybe a VM difference ?

 Mine on Ubuntu was

 $ ./pharo/bin/pharo --version
 3.9-7 #1 Thu Apr  2 00:51:45 CEST 2015 gcc 4.6.3 [Production ITHB VM]
 NBCoInterpreter NativeBoost-CogPlugin-EstebanLorenzano.21 uuid:
 4d9b9bdf-2dfa-4c0b-99eb-5b110dadc697 Apr  2 2015
 NBCogit NativeBoost-CogPlugin-EstebanLorenzano.21 uuid:
 4d9b9bdf-2dfa-4c0b-99eb-5b110dadc697 Apr  2 2015
 https://github.com/pharo-project/pharo-vm.git Commit:
 32d18ba0f2db9bee7f3bdbf16bdb24fe4801cfc5 Date: 2015-03-24 11:08:14 +0100
 By: Esteban Lorenzano  Jenkins build #14904
 Linux pharo-linux 3.2.0-31-generic-pae #50-Ubuntu SMP Fri Sep 7
 16:39:45 UTC 2012 i686 i686 i386 GNU/Linux
 plugin path: /home/t3/pharo/bin/pharo-vm/ [default:
 /home/t3/pharo/bin/pharo-vm/]

 On 20 Sep 2015, at 13:53, Ben Coman  wrote:
>
> You might also try tcpflow
>
> http://unix.stackexchange.com/questions/6279/on-the-fly-monitoring-http-requests-on-a-network-interface
> cheers -ben
>
> On Sun, Sep 20, 2015 at 7:43 PM, Ben Coman 
> wrote:
>
>> Maybe something shows up comparing telnet tests [1]...
>>
>> $ telnet zn.stfx.eu 80
>> GET /zn/numbers.txt HTTP/1.1
>> Host: zn.stfx.eu
>>
>> $ telnet bl.ocks.org 80
>> GET /mbostock/raw/4063318/dji.csv HTTP/1.1
>> Host: bl.ocks.org
>>
>> btw, what user-agent does Zinc use?
>>
>> [1]
>> http://www.esqsoft.com/examples/troubleshooting-http-using-telnet.htm
>>
>> cheers -ben
>>
>>
>> On Sun, Sep 20, 2015 at 6:22 PM, Volkert
>>  wrote:
>>
>>> same behavior ... :-(
>>>
>>>
>>> On 20.09.2015 11:55, Sven Van Caekenberghe wrote:
>>>
 The response is chunked, but that should be no problem.

 You could try the following:

 ZnDefaultCharacterEncoder value: ZnNullEncoder new during: [
 'http://bl.ocks.org/mbostock/raw/4063318/dji.csv' asUrl
 retrieveContents ].

 On 20 Sep 2015, at 11:37, Volkert 
> wrote:
>
> No
>
> On 20.09.2015 11:20, Sven Van Caekenberghe wrote:
>
>> Any proxying involved ?
>>
>> On 20 Sep 2015, at 11:16, Volkert <
>>> volk...@komponentenwerkstatt.de>
>>> wrote:
>>>
>>> $ cat /etc/issue
>>> Ubuntu 14.04.3 LTS \n \l
>>>
>>> $ uname -a
>>> Linux jupiter 3.16.0-49-generic #65~14.04.1-Ubuntu SMP Wed Sep 9
>>> 10:03:23 UTC 2015 x86_64 x86_64 x86_64 GNU/Linux
>>>
>>> $ ./pharo Pharo.image printVersion
>>> [version] 4.0 #40621
>>>
>>> ./pha

Re: [Pharo-users] GTDebugger create method

2015-09-17 Thread Andrei Chis
Hi,

Yes it does. There should be an icon with a plus sign when a
#doesNotUnderstand happens.

It seems there is a bug related to displaying tooltips.

Cheers,
Andrei

On Thu, Sep 17, 2015 at 2:19 PM, Peter Uhnák  wrote:

> Hi,
>
> does GTDebugger support creation of new methods?
>
> Also not having tooltips on the buttons isn't entirely helpful.
>
>
> Thanks,
> Peter
>


Re: [Pharo-users] Pharo 4.0 -- Inspecting a recursive data structure is slow

2015-08-29 Thread Andrei Chis
Was there an issue/fix for this in Pharo 5?
It might be worth backporting to Pharo 4.

On Sat, Aug 29, 2015 at 12:06 PM, Marcus Denker 
wrote:

> It seems to be fixed in Pharo5 already. Debugger comes up within less than
> a second and is usable.
>
> Marcus
> > On 29 Aug 2015, at 11:57, H. Hirzel  wrote:
> >
> > Andrei,
> >
> > Thanks for confirming the bug.
> >
> > Report is here
> >
> >
> https://pharo.fogbugz.com/f/cases/16425/Pharo-4-0-Inspecting-a-recursive-data-structure-is-slow
> >
> > --Hannes
> >
> > On 8/29/15, Andrei Chis  wrote:
> >> Hi Hannes,
> >>
> >> Can open a bug report?
> >> I though most recursive problems were fixed in the new inspector.
> >> Seems that there are still some related to printing recursive
> structures.
> >>
> >> You can switch to the previous inspector (GTInspector
> >> setGTInspectorEnabledStatus: false),
> >> however, this bug seem to also kill that inspector.
> >>
> >> Cheers,
> >> Andrei
> >>
> >> On Sat, Aug 29, 2015 at 7:16 AM, H. Hirzel 
> wrote:
> >>
> >>> Hello
> >>>
> >>> I have realized that inspecting a recursive data structure is very
> >>> slow in Pharo 4.0
> >>>
> >>> A test case:
> >>>
> >>> | myDict |
> >>> myDict := Dictionary new.
> >>> myDict at: #hello put: 'hello'.
> >>> myDict at: #recurHello put: myDict.
> >>> myDict inspect
> >>>
> >>> It takes a long time for the inspector to come up. And the image
> >>> freezes later on if you continue.
> >>>
> >>> The problem is with the inspector because if I do
> >>> | myDict |
> >>> myDict := Dictionary new.
> >>> myDict at: #hello put: 'hello'.
> >>> myDict at: #recurHello put: myDict.
> >>> 3 + 4 inspect
> >>>
> >>> it comes up instantly.
> >>>
> >>>
> >>> As a comparison I attach the Cuis ** test result. The inspector comes
> >>> up instantly and the image does not have any problems.
> >>>
> >>>
> >>> What are the workarounds in Pharo 4.0?
> >>>
> >>> - Setting a time out somewhere?
> >>> - Disabling certain functions?
> >>> - Loading a simpler inspector?
> >>>
> >>> Regards
> >>>
> >>> Hannes
> >>>
> >>>
> >>> ** current build  2463.image
> >>> https://github.com/Cuis-Smalltalk/Cuis-Smalltalk-Dev
> >>>
> >>
> >
>
>
>


Re: [Pharo-users] Pharo 4.0 -- Inspecting a recursive data structure is slow

2015-08-29 Thread Andrei Chis
Hi Hannes,

Can open a bug report?
I though most recursive problems were fixed in the new inspector.
Seems that there are still some related to printing recursive structures.

You can switch to the previous inspector (GTInspector
setGTInspectorEnabledStatus: false),
however, this bug seem to also kill that inspector.

Cheers,
Andrei

On Sat, Aug 29, 2015 at 7:16 AM, H. Hirzel  wrote:

> Hello
>
> I have realized that inspecting a recursive data structure is very
> slow in Pharo 4.0
>
> A test case:
>
> | myDict |
> myDict := Dictionary new.
> myDict at: #hello put: 'hello'.
> myDict at: #recurHello put: myDict.
> myDict inspect
>
> It takes a long time for the inspector to come up. And the image
> freezes later on if you continue.
>
> The problem is with the inspector because if I do
> | myDict |
> myDict := Dictionary new.
> myDict at: #hello put: 'hello'.
> myDict at: #recurHello put: myDict.
> 3 + 4 inspect
>
> it comes up instantly.
>
>
> As a comparison I attach the Cuis ** test result. The inspector comes
> up instantly and the image does not have any problems.
>
>
> What are the workarounds in Pharo 4.0?
>
> - Setting a time out somewhere?
> - Disabling certain functions?
> - Loading a simpler inspector?
>
> Regards
>
> Hannes
>
>
> ** current build  2463.image
> https://github.com/Cuis-Smalltalk/Cuis-Smalltalk-Dev
>


Re: [Pharo-users] "Oops! Invalid username or password" when saving Settings on smalltalkhub

2015-08-06 Thread Andrei Chis
>From what I remember the logout issue is caused by proxies caches and the
fact that smalltalk hub does not set any headers that prevent/invalidate
caching.

We are having this problem all the time on our university network. To make
it worse sometimes after I log out I get the home page of the previous
logged in user that accessed smalltalk hub.

If the underlying cause is caching then smalltalk hub could add some
headers to invalidate it. We really only get these kinds of problems on
smalltalk hub.

Cheers,
Andrei



On Thu, Aug 6, 2015 at 7:59 PM, Avdi Grimm  wrote:

> I'm seeing the same thing when I try to create a new project.
>
> Potentially related: "Logout" appears to have no effect, and leaves me
> (apparently) still logged-in.
>
> On Wed, Jun 24, 2015 at 5:39 AM Damien Cassou 
> wrote:
>
>> Hi,
>>
>> I'm trying to update the description of the Pillar project at
>> http://www.smalltalkhub.com/#!/~Pier/Pillar/settings. Unfortunately,
>> when I press the green "Update" button, I face a
>>
>> Oops! Invalid username or password
>>
>> red warning on top of the page and my changes are not saved.
>>
>> --
>> Damien Cassou
>> http://damiencassou.seasidehosting.st
>>
>> "Success is the ability to go from one failure to another without
>> losing enthusiasm." --Winston Churchill
>>
>>


Re: [Pharo-users] Recoverying a crashed Moose image/Pharo5

2015-07-30 Thread Andrei Chis
On Thu, Jul 30, 2015 at 9:41 AM, Hilaire  wrote:

> Le 30/07/2015 15:13, Nicolai Hess a écrit :
> >
> > Yes, looks like an error on FT access
>
> If I stick to Pharo4+Moose6, does this problem occur?
>
> >
> >
> > The used VM works fine with a fresh Moose6.0 image. Btw, the
> > http://www.moosetechnology.org/ is down right now.
> > I would like to recover the script codes in the playgrounds, is
> > there a
> > way to access it?
> >
> >
> > Maybe you will found the scripts in your play-cache folder.
>
> Cool, I did not know about this feature!
>

All code that you type in the Playground is saved by default in a
play-cache directory.
There is a file per playground.

If you then open spotter it will also search through all scripts. You can
type #pl (from playground)
to only see the scripts.

In the playground if you double click on the Page tab you can give the
script an explicit name.
Then the script will be saved in a play-stash directory. If you set the
same directory for all your images
then you get manage your scripts globally.

Cheers,
Andrei


>
> Thanks
>
> Hilaire
>
> --
> Dr. Geo
> http://drgeo.eu
> http://google.com/+DrgeoEu
>
>
>
>


Re: [Pharo-users] saving text files from inspector

2015-07-24 Thread Andrei Chis
Another solution would be to add the action for saving as long as the
content is not truncated.

Cheers,
Andrei

On Fri, Jul 24, 2015 at 11:44 PM, Peter Uhnák  wrote:

>
> On Fri, Jul 24, 2015 at 10:44 PM, Tudor Girba 
> wrote:
>
>> The problem is that if you have a larger text file (let's say 100Mb),
>> Rubric still takes too long to open. Thus, we cannot show the whole file,
>> and because of that, we also cannot provide complete editing options. This
>> will change with TxText.
>>
>> I see... even though it sounds weird... I mean not only will most editors
> irrespective of language choke on 100Mb files, but such file will be
> obviously generated and why would you edit such a beast by hand?
>
> So if I want it I should write a custom presenter (or just copy the script
> one).
>
> Thanks,
> Peter
>


Re: [Pharo-users] Alt-tab between windows

2015-05-20 Thread Andrei Chis
On Wed, May 20, 2015 at 5:13 PM, Ben Coman  wrote:

>
>
> On Wed, May 20, 2015 at 11:04 PM, Avdi Grimm  wrote:
>
>>
>> On Wed, May 20, 2015 at 10:19 AM, Esteban A. Maringolo <
>> emaring...@gmail.com> wrote:
>>
>>>
>>> Regarding a tab based environment, Dolphin X6 also included that in a
>>> concept called "Idea Space", you can open as many idea spaces as you want,
>>> and as you browse classes, inspect objects or look for references, all the
>>> usual new windows will open inside the idea space where the command was
>>> issued. There also was the option to save the open tabs, to restore them
>>> later. And you could move between tabs using only the keyboard; in fact you
>>> could do everything without a mouse.
>>>
>>
>> For the record, I find tabs to be almost as much of a UI dead-end as
>> myriad windows. They are often incompatible with the need to see several
>> things at once, and they become unmanageable past a dozen or so.
>>
>> Personally I prefer environments where the number of windows/tabs/buffers
>> is a non-issue, something managed by the environment. All I care about is:
>>
>> a) Navigating back and forth between the thing I'm looking at now and the
>> last ~10 things I looked at; and
>> b) Quickly finding and foregrounding new things by whatever searchable
>> aspect I can remember about them.
>>
>>
> GTSpotter has a "history" category (not that I've used it so far, perhaps
> time to try).
>
> It might be an interesting experiment for GTSpotter to have an "open
> window" category.
>


Interesting idea.
Could be easily done :)

Cheers,
Andrei


>
> cheers -ben
>


Re: [Pharo-users] Glamorous Toolkit questions

2015-05-04 Thread Andrei Chis
On Mon, May 4, 2015 at 2:52 PM, Mariano Martinez Peck  wrote:

>
>
> On Mon, May 4, 2015 at 6:03 AM, Andrei Chis 
> wrote:
>
>> Hi,
>>
>>
>> On Mon, May 4, 2015 at 2:21 AM, Mariano Martinez Peck <
>> marianop...@gmail.com> wrote:
>>
>>> Hi guys,
>>>
>>> I am already enjoying GTSpotter every day. I cannot believe how good it
>>> is. And I tell youI have been using this kind of tool since the first
>>> available one we have YEARS ago (Algernon, then Spotlight etc...). And
>>> GTSpotter is a life better than those. So...thank you VERY MUCH.
>>>
>>> My only problem right now is that I am afraid I am not yet using 100% of
>>> it's power. I think it has features that I read randomly in different
>>> emails and posts so I am afraid it has more...
>>>
>>> A couple of questions:
>>>
>>> 1) Is there a way to force GTSpotter preview via preferences or somehow
>>> via code so that I can build it as part of my app images?  I know GTSpotter
>>> then remembers that but I would like to build images directly with that
>>> (some users of my images may now be aware of such features so I want them
>>> to see it out of the box).
>>>
>>
>> Right now there isn't a setting for that, which is a bug.
>> You can still execute 'GTSpotter showPreview' to enable the preview
>>
>>
>
> Thanks, that works perfect.
>
>
>>
>>
>
>>> 2) How does it work regex or similar when you search? I seem to see
>>> things like "M B"  or "M #a" etc...so...which are all symbols (#, * , ^
>>> etc)  allowed?
>>>
>>
>> For the moment the query language that does not support regex. You can
>> just use # to filter the categories that are displayed.
>> If you enter 'copy #i' than you will only get implementors.
>>
>
>  how can I filter the subclasses?  I am trying "Collection #sub" and
> nothing. Then I try even diving into the class and then type "#sub" but
> still nothing. Am I doing something wrong?
>

To filter for the subclasses of a class you have to:
- search for the class
- dive in the class
- enter #all

Right now the category containing subclasses is labeled 'All subclasses'.
Maybe a better name would be 'Subclasses (all)'

 Cheers,
Andrei



>
>>
>> Still you can create your own custom searches that use regex.
>> For example look in spotterForCachedPlaygroundPagesFor:. In your searches
>> instead of GTFilterSubstring you can you GTFilterRegex, GTFilterAlike, etc.
>>
>
> I think it would be super cool if you at least could implement by default
> the # and *. That would give us some power. (similar to what #matches:)
> does.
>
>
>>
>>
>>>
>>> 3) Are there more "actions" than the default action? For example, when
>>> browser classes, methods etc... default action opens a new system browser.
>>> So..are there OTHER possible actions? If true, which ones? How can I know
>>> all of the available ones?
>>>
>>
>> Again for the moment there aren't any extra actions. Just enter that
>> opens the entity in a browser/inspector/etc, and dive-in.
>> Specific actions for each type of element are on the way
>>
>
> Ok, good to hear about that.
>
>
>>
>>
>>>
>>> 4) GTPlayground seems to have tabs and it seems I can even rename a
>>> current playground. However...I cannot seem to be able to add more tabs and
>>> then easily move across tabs. I have to open other playgrounds for it.
>>> So...I am doing something wrong? If multiple tabs are not allow then I
>>> think the tabs are a bit confusing here.
>>>
>>
>> As others said for the moment you cannot add more tabs.
>> You can rename the tab label which will create a file with that name in
>> the play-stash folder in the image directory.
>>
>>
> Cool thanks.
>
>
>
>> Cheers,
>> Andrei
>>
>>
>>>
>>> 5) What are GTPlayground "Bindings" and in which case does the "Refresh"
>>> make sense?
>>>
>>> I probably have more questions but I wanted to ask this at least.
>>>
>>> Thanks in advance,
>>>
>>>
>>>
>>> --
>>> Mariano
>>> http://marianopeck.wordpress.com
>>>
>>
>>
>
>
> --
> Mariano
> http://marianopeck.wordpress.com
>


Re: [Pharo-users] Issue with GT-Debugger

2015-05-04 Thread Andrei Chis
I made a slice for backporting the fix to Pharo 4:
https://pharo.fogbugz.com/f/cases/15423/Backport-Pharo4-15422-SHTextStyler-styleInBackgroundProcess-should-not-set-the-text-if-styling-process-was-terminated
Can you load it and check that it fixes the problem.

Cheers,
Andrei

On Mon, May 4, 2015 at 11:18 AM, Andrei Chis 
wrote:

> I need to double check again that the fix solves this problem and then
> backport it from Pharo 5 to Pharo 4.
>
> Cheers,
> Andrei
>
> On Sun, May 3, 2015 at 10:12 PM, Tudor Girba  wrote:
>
>> Indeed, it's a known issue and Andrei already investigated it. There is a
>> discussion on the Pharo-dev mailing list.
>>
>> Cheers,
>> Doru
>>
>> On Sun, May 3, 2015 at 11:11 PM, Alexandre Bergel <
>> alexandre.ber...@me.com> wrote:
>>
>>> Hi!
>>>
>>> When tracing the execution in GT-debugger the text selection does not
>>> always reflect the real position of the program counter. Consider the
>>> following screenshot:
>>>
>>> I have simply pressed the step-into button, nothing more. The selection
>>> is not meaningful.
>>> Am I the only one to have noticed this?
>>> It would be great to have it fixed…
>>>
>>> Cheers,
>>> Alexandre
>>>
>>> --
>>> _,.;:~^~:;._,.;:~^~:;._,.;:~^~:;._,.;:~^~:;._,.;:
>>> Alexandre Bergel  http://www.bergel.eu
>>> ^~:;._,.;:~^~:;._,.;:~^~:;._,.;:~^~:;._,.;:~^~:;.
>>>
>>>
>>>
>>>
>>
>>
>> --
>> www.tudorgirba.com
>>
>> "Every thing has its own flow"
>>
>
>


Re: [Pharo-users] Issue with GT-Debugger

2015-05-04 Thread Andrei Chis
I need to double check again that the fix solves this problem and then
backport it from Pharo 5 to Pharo 4.

Cheers,
Andrei

On Sun, May 3, 2015 at 10:12 PM, Tudor Girba  wrote:

> Indeed, it's a known issue and Andrei already investigated it. There is a
> discussion on the Pharo-dev mailing list.
>
> Cheers,
> Doru
>
> On Sun, May 3, 2015 at 11:11 PM, Alexandre Bergel  > wrote:
>
>> Hi!
>>
>> When tracing the execution in GT-debugger the text selection does not
>> always reflect the real position of the program counter. Consider the
>> following screenshot:
>>
>> I have simply pressed the step-into button, nothing more. The selection
>> is not meaningful.
>> Am I the only one to have noticed this?
>> It would be great to have it fixed…
>>
>> Cheers,
>> Alexandre
>>
>> --
>> _,.;:~^~:;._,.;:~^~:;._,.;:~^~:;._,.;:~^~:;._,.;:
>> Alexandre Bergel  http://www.bergel.eu
>> ^~:;._,.;:~^~:;._,.;:~^~:;._,.;:~^~:;._,.;:~^~:;.
>>
>>
>>
>>
>
>
> --
> www.tudorgirba.com
>
> "Every thing has its own flow"
>


Re: [Pharo-users] Glamorous Toolkit questions

2015-05-04 Thread Andrei Chis
On Mon, May 4, 2015 at 3:40 AM, Mariano Martinez Peck  wrote:

>
>
> On Sun, May 3, 2015 at 9:21 PM, Mariano Martinez Peck <
> marianop...@gmail.com> wrote:
>
>> Hi guys,
>>
>> I am already enjoying GTSpotter every day. I cannot believe how good it
>> is. And I tell youI have been using this kind of tool since the first
>> available one we have YEARS ago (Algernon, then Spotlight etc...). And
>> GTSpotter is a life better than those. So...thank you VERY MUCH.
>>
>>
> What is so funny is that I was reviewing an old blog of mine:
> https://marianopeck.wordpress.com/2012/05/19/pharo-tips-and-tricks/
> and the new gt tools and latest Pharo 4.0 almost removes half of my needed
> "tricks"
>

Two more tricks from spotter just in case you missed them:

- copying an URL with a smalltalk code from Sven's service for sharing code
in Spotter will show you the code; on enter a playground is opened with
that code (to try it out: http://ws.stfx.eu/57CRUZKXOUIO)
- you also can search through all dirty packages; if you dive into a
package and choose a repo on enter you can directly commit that package.
Though with the new support from versioner that feature is no longer so
impressive :)

Cheers,
Andrei


Re: [Pharo-users] Glamorous Toolkit questions

2015-05-04 Thread Andrei Chis
Hi,


On Mon, May 4, 2015 at 2:21 AM, Mariano Martinez Peck  wrote:

> Hi guys,
>
> I am already enjoying GTSpotter every day. I cannot believe how good it
> is. And I tell youI have been using this kind of tool since the first
> available one we have YEARS ago (Algernon, then Spotlight etc...). And
> GTSpotter is a life better than those. So...thank you VERY MUCH.
>
> My only problem right now is that I am afraid I am not yet using 100% of
> it's power. I think it has features that I read randomly in different
> emails and posts so I am afraid it has more...
>
> A couple of questions:
>
> 1) Is there a way to force GTSpotter preview via preferences or somehow
> via code so that I can build it as part of my app images?  I know GTSpotter
> then remembers that but I would like to build images directly with that
> (some users of my images may now be aware of such features so I want them
> to see it out of the box).
>

Right now there isn't a setting for that, which is a bug.
You can still execute 'GTSpotter showPreview' to enable the preview


>
> 2) How does it work regex or similar when you search? I seem to see things
> like "M B"  or "M #a" etc...so...which are all symbols (#, * , ^ etc)
>  allowed?
>

For the moment the query language that does not support regex. You can just
use # to filter the categories that are displayed.
If you enter 'copy #i' than you will only get implementors.

Still you can create your own custom searches that use regex.
For example look in spotterForCachedPlaygroundPagesFor:. In your searches
instead of GTFilterSubstring you can you GTFilterRegex, GTFilterAlike, etc.


>
> 3) Are there more "actions" than the default action? For example, when
> browser classes, methods etc... default action opens a new system browser.
> So..are there OTHER possible actions? If true, which ones? How can I know
> all of the available ones?
>

Again for the moment there aren't any extra actions. Just enter that opens
the entity in a browser/inspector/etc, and dive-in.
Specific actions for each type of element are on the way


>
> 4) GTPlayground seems to have tabs and it seems I can even rename a
> current playground. However...I cannot seem to be able to add more tabs and
> then easily move across tabs. I have to open other playgrounds for it.
> So...I am doing something wrong? If multiple tabs are not allow then I
> think the tabs are a bit confusing here.
>

As others said for the moment you cannot add more tabs.
You can rename the tab label which will create a file with that name in the
play-stash folder in the image directory.

Cheers,
Andrei


>
> 5) What are GTPlayground "Bindings" and in which case does the "Refresh"
> make sense?
>
> I probably have more questions but I wanted to ask this at least.
>
> Thanks in advance,
>
>
>
> --
> Mariano
> http://marianopeck.wordpress.com
>


Re: [Pharo-users] GTInspector: editable custom presentation?

2015-05-01 Thread Andrei Chis
On May 2, 2015 12:57 AM, "Johan Fabry"  wrote:
>
>
>> On May 1, 2015, at 18:59, Andrei Chis  wrote:
>>
>> Use #column:evaluated:modified:
>
>
> Cool that works, thanks a lot!
>
> BTW, in the Pharo4 image, this method is in the ‘as yet unclassified’
protocol.

I saw that now. Will be fixed.

>
>> Regarding documentation, if you inspect the class GTInspector you will
get a presentation showing all custom presentation from the image.
>
>
> I would have never thought of that … So looking at the list, it seems
that it is sufficient to add a pragma . I
suggest the addition of one or two phrases talking about this pragma to
http://scg.unibe.ch/research/moldableinspector ?

I definetly need to improve that page.
However, there are a lot of posts on the humaine assesment blog that Doru
posted on the mail list about extending the inspector.

Cheers,
Andrei

>
>
> ---> Save our in-boxes! http://emailcharter.org <---
>
> Johan Fabry   -   http://pleiad.cl/~jfabry
> PLEIAD lab  -  Computer Science Department (DCC)  -  University of Chile
>


Re: [Pharo-users] GTInspector: editable custom presentation?

2015-05-01 Thread Andrei Chis
Use #column:evaluated:modified:

Regarding documentation, if you inspect the class GTInspector you will get
a presentation showing all custom presentation from the image.

Cheers,
Andrei

On Fri, May 1, 2015 at 11:43 PM, Johan Fabry  wrote:

> Hi all,
>
> I’m trying to make a custom GT Inspector presentation for a variable store
> (i.e. something like a dictionary). The code I have right now shows me the
> data I want:
>
> gtInspectorDetailsIn: composite
> 
>
> composite table
> title: 'Details';
> display: [ self allVariables ];
> column: 'Variable' evaluated: #key;
> column: 'Value' evaluated: #value;
> send: #value
>
> But, what I would like to do is to take advantage of the edit ability of
> the inspector to change what is displayed in the Value column and save this
> directly to the store. I have the method for that (setVariable: withValue:
> ) but I cannot find how to tell the GTInspector to add the edit
> functionality and to call this method when an edit action is made. How
> should I do this?
>
> This is Pharo 4.0 BTW.
>
> PS: I was very impressed with the customizability of the GT inspector …
> until I wanted to make my own presentation and I found almost no
> documentation on how to do it. For such a major feature I thought there
> would be HOWTO’s easily found online but there are none. Not in the GT
> toolkit page http://gt.moosetechnology.org/ and the pages it points to,
> nor in the various blogs that talk about the GT Inspector. I did find a
> starting point on how to do it, but no clear information. Did I overlook
> something? If so, I think it would be better that this info is more easily
> found.
>
>
> ---> Save our in-boxes! http://emailcharter.org <---
>
> Johan Fabry   -   http://pleiad.cl/~jfabry
> PLEIAD lab  -  Computer Science Department (DCC)  -  University of Chile
>
>
>


Re: [Pharo-users] Pharo 4 Playground open file menu

2015-04-30 Thread Andrei Chis
Depending on what you want to do playground has a way to manage external
files with smalltalk scripts.
If you double click in the Page tab in the playground you will be able to
rename it. If you rename it to
'customScript' and hit enter a file is created in the folder play-stash
from the current image directory.
Then whatever you type in the playground is saved in that file.

If you then open spotter and search for 'customScript'  you will see the
file. Select the file and hit enter
and then a playground is opened linked again with that file.

Cheers,
Andrei

On Thu, Apr 30, 2015 at 9:49 PM, Cyril Ferlicot 
wrote:

> There is a way to have both I think but I don't have my laptop now to
> check
>
> Le jeudi 30 avril 2015, Esteban A. Maringolo  a
> écrit :
>
>> 2015-04-30 16:29 GMT-03:00 Cyril Ferlicot :
>> > Just for info: you can get back the workspace into the settings
>> (uncheck the
>> > playground button)
>>
>> Thanks, but that is an either-or choice.
>>
>> I do love Playground, but for exploratory coding and or interactions.
>> If it is meant to replace the Workspace I want to preserve its basic
>> features (open/save at least).
>>
>> Regards,
>>
>> Esteban.
>>
>>
>
> --
> Cheers
> Cyril Ferlicot
>
>


Re: [Pharo-users] class initialization and class-side variables

2015-04-29 Thread Andrei Chis
Aha, now I understand your question.
>From what I remember #initialize might only be send to classes if they
contain an explicit initialize method, but I might remember wrongly.

Cheers,
Andrei

On Wed, Apr 29, 2015 at 3:08 PM, Jan Blizničenko 
wrote:

> Thank you both for reply. Unfortunately, it seems I didn't describe my goal
> well.
>
> I want both (all) classes to have separate variables, not shared among
> subclasses, but still initialized on class side, not instance side. So I
> want those variables to be class-side variables, my problem is with their
> initialization. I have a tree of classes, top class (superclass of the
> rest)
> should have class-side variable initialized as empty collection, and almost
> all it's subclasses to have, by default, also an empty colletion. But there
> will be few classes in this tree, whose collections should contain
> something.
>
> So to return to my previous example... I want SomeClass class-side variable
> "SomeCollection" to contain OrderedCollection()... SubClass along with many
> more subclasses to also contain OrderedCollection... but also to have a
> SpecificSubClass, whose class-side variable "SomeCollection" will contain
> OrderedCollection(something, somethingElse...).
>
> Jan
>
>
> Sean P. DeNigris wrote
> > What you created is a class-side instance variable, which is private to
> > just that class. What you want is a class variable, which is shared by
> all
> > subclasses and instances. You declare it in the class definition with
> > #classVariableNames:. There is a very nice explanation of these basic
> (but
> > confusing!) concepts in the "Pharo By Example" book.
>
>
> Andrei Chis wrote
> > Hi,
> >
> > SomeClass and SubClass are two different objects.
> > Based on your setup, if you do not call any initialize method, initially
> > calling both  "SomeClass isOk" and  "SubClass isOk" should return nil.
> >
> > Running "SomeClass initialize" initializes only the SomeClass object. So
> > now "SomeClass isOk"  returns true and "SubClass isOk" returns nil, as
> its
> > another object that has not been initialized.
> > You get the same behaviour if you first call "SubClass initialize".
> > Now "SomeClass
> > isOk"  returns nil because you did not initialize the SomeClass object,
> > but
> > the SubClass.
> >
> > Even if you add initialize in the SubClass class and call it first
> > "SomeClass
> > isOk" will still return false.
> > SomeClass and SubClass are just two different objects of types SomeClass
> > class and  SubClass class. It's the same behaviour that you get when you
> > create two instances of these classes. Just because you create an
> instance
> > of the type SubClass and call super initialize,
> > it doesn't mean that another instance of SomeClass will be initialized.
> >
> > Hope this makes sense/answers your question.
> >
> > Cheers,
> > Andrei
>
>
>
>
>
> --
> View this message in context:
> http://forum.world.st/class-initialization-and-class-side-variables-tp4822869p4822886.html
> Sent from the Pharo Smalltalk Users mailing list archive at Nabble.com.
>
>


Re: [Pharo-users] class initialization and class-side variables

2015-04-29 Thread Andrei Chis
Hi,

SomeClass and SubClass are two different objects.
Based on your setup, if you do not call any initialize method, initially
calling both  "SomeClass isOk" and  "SubClass isOk" should return nil.

Running "SomeClass initialize" initializes only the SomeClass object. So
now "SomeClass isOk"  returns true and "SubClass isOk" returns nil, as its
another object that has not been initialized.
You get the same behaviour if you first call "SubClass initialize".
Now "SomeClass
isOk"  returns nil because you did not initialize the SomeClass object, but
the SubClass.

Even if you add initialize in the SubClass class and call it first "SomeClass
isOk" will still return false.
SomeClass and SubClass are just two different objects of types SomeClass
class and  SubClass class. It's the same behaviour that you get when you
create two instances of these classes. Just because you create an instance
of the type SubClass and call super initialize,
it doesn't mean that another instance of SomeClass will be initialized.

Hope this makes sense/answers your question.

Cheers,
Andrei

On Wed, Apr 29, 2015 at 2:25 PM, Jan Blizničenko 
wrote:

> Hello
>
> It seems I misunderstood some concept of classes in Pharo. My problem is
> following:
> Let's say I have class named SomeClass (subclass of Object) and class named
> SubClass (subclass of SomeClass).
>
> If I create instance variable on SomeClass and SomeClass>>#initialize which
> initializes the variable, it gets initialized also when SubClass instance
> is
> created.
>
> Now I'm trying to do something similar for class-side variables, but with
> no
> success.
> If I create class-side variable on SomeClass and SomeClass
> class>>#initialize which initializes the variable, it gets initialized only
> in SomeClass class, but not in SubClass class.
>
> What I mean:
>
> Object subclass: #SomeClass
>
>  SomeClass class
>  instanceVariableNames: 'Ok'
>
>  SomeClass class>>#initialize
> super initialize.
> Ok := true
>
>  SomeClass class>>#isOk
> ^ Ok
>
> SomeClass subclass: #SubClass
>
> calling "SomeClass isOk" returns true.
> calling "SubClass isOk" returns nil.
>
>
> now If I create method
>
>  SubClass class>>#initialize
> super initialize.
>
> SubClass initializes as I would expect from my experience with instance
> initialization, so "SubClass isOk" now returns true.
>
>
> I will appreciate any help.
>
> Jan
>
>
>
> --
> View this message in context:
> http://forum.world.st/class-initialization-and-class-side-variables-tp4822869.html
> Sent from the Pharo Smalltalk Users mailing list archive at Nabble.com.
>
>


Re: [Pharo-users] deploying a desktop GUI based image

2015-04-21 Thread Andrei Chis
Why not execute this code:

| browser |
browser := GLMTabulator new.
(browser openOn: ($a to: $d)) openFullscreen.

When calling 'GLMSystemWindow allInstances first' you must have only a
single
window in the system (including windows that have been closed but not
garbaged collected).

Cheers,
Andrei


On Tue, Apr 21, 2015 at 4:51 PM, Sebastian Heidbrink 
wrote:

>  Hi Chris,
>
> this is the basic idea. One will have to find the right instance. In my
> case this is executed suring the startup process while there are no windows
> opened.
>
>
> | browser |
> browser := GLMTabulator new.
> browser openOn: ($a to: $d).
>
> GLMSystemWindow allInstances first openFullscreen
>
>
> Hope that helps
> Sebastian
>
>
>
> Am 21.04.2015 um 07:33 schrieb Andrei Chis:
>
> Hi Sebastian,
>
>  Can you give us more info about the error that you are getting and maybe
> a way to reproduce it.
>
>  Cheers,
> Andrei
>
>
> On Tue, Apr 21, 2015 at 4:28 PM, Sebastian Heidbrink 
> wrote:
>
>>  Hi Thierry,
>>
>> This does somehow not really work.
>> I get an error due to the fact that a BrickWrapper's state is undefined
>> and therefore does not understand  "isOnParent".
>>
>> So this is why I thought there must be a different way for
>> GLMSystemWindow or other non SPEC windows.
>>
>> I'll check with the Moose guys again!
>> Thank you!
>> Sebastian
>>
>>
>>
>> Am 21.04.2015 um 06:55 schrieb Thierry Goubier:
>>
>> Hi Sebastian,
>>
>>  there is a top-level approach to do that via Morphic, which is to call
>> openFullScreen in a StandardWindow instance.
>>
>>  If you can get a hold of the top-level window of your Glamour before it
>> opens, then you just have to send openFullScreen to it. SpecWindow inherit
>> from StandardWindow, so I suspect this is what it uses.
>>
>>  Beware, it's really full screen: once launched, closing that window
>> interactively is challenging.
>>
>>  Thierry
>>
>> 2015-04-21 15:46 GMT+02:00 Sebastian Heidbrink :
>>
>>> Hi all!
>>>
>>> I asked this question on the Moose list already ,but it seems nobody can
>>> help me there.
>>>
>>> I would liek to deploy a pharo app based on Glamour and Roassal as a
>>> "hands on demo".
>>>
>>> I was told Damien's Pharo launcher is currently somehow the reference
>>> implementation for a "fullscreen" pharo application.
>>> The pharo launcher is SPEC based and this provides some functionality
>>> regarding that but Glamour doesn't. So I assume there must be a "general"
>>> way to do it.
>>> Unfortunately I am not able to tell the Galmour Browser to be
>>> "fullscreen" and i also want to make sure nobody is able to get access to
>>> the code or pharo related tools.
>>>
>>> Does anybody here have experience in that or has a link to a
>>> documentation regarding this?
>>> The only stuff Ia was able to find is seaside headless related
>>> deployment but nothing for UI based images.
>>>
>>> Thank you for any help!
>>> Sebastian
>>>
>>>
>>
>>
>
>


Re: [Pharo-users] deploying a desktop GUI based image

2015-04-21 Thread Andrei Chis
Hi Sebastian,

Can you give us more info about the error that you are getting and maybe a
way to reproduce it.

Cheers,
Andrei


On Tue, Apr 21, 2015 at 4:28 PM, Sebastian Heidbrink 
wrote:

>  Hi Thierry,
>
> This does somehow not really work.
> I get an error due to the fact that a BrickWrapper's state is undefined
> and therefore does not understand  "isOnParent".
>
> So this is why I thought there must be a different way for GLMSystemWindow
> or other non SPEC windows.
>
> I'll check with the Moose guys again!
> Thank you!
> Sebastian
>
>
>
> Am 21.04.2015 um 06:55 schrieb Thierry Goubier:
>
> Hi Sebastian,
>
>  there is a top-level approach to do that via Morphic, which is to call
> openFullScreen in a StandardWindow instance.
>
>  If you can get a hold of the top-level window of your Glamour before it
> opens, then you just have to send openFullScreen to it. SpecWindow inherit
> from StandardWindow, so I suspect this is what it uses.
>
>  Beware, it's really full screen: once launched, closing that window
> interactively is challenging.
>
>  Thierry
>
> 2015-04-21 15:46 GMT+02:00 Sebastian Heidbrink :
>
>> Hi all!
>>
>> I asked this question on the Moose list already ,but it seems nobody can
>> help me there.
>>
>> I would liek to deploy a pharo app based on Glamour and Roassal as a
>> "hands on demo".
>>
>> I was told Damien's Pharo launcher is currently somehow the reference
>> implementation for a "fullscreen" pharo application.
>> The pharo launcher is SPEC based and this provides some functionality
>> regarding that but Glamour doesn't. So I assume there must be a "general"
>> way to do it.
>> Unfortunately I am not able to tell the Galmour Browser to be
>> "fullscreen" and i also want to make sure nobody is able to get access to
>> the code or pharo related tools.
>>
>> Does anybody here have experience in that or has a link to a
>> documentation regarding this?
>> The only stuff Ia was able to find is seaside headless related deployment
>> but nothing for UI based images.
>>
>> Thank you for any help!
>> Sebastian
>>
>>
>
>


Re: [Pharo-users] Display morph in GT inspector

2015-04-06 Thread Andrei Chis
Glamour has a morph presentation that can embed any morph.
Have a look in Morph>>gtInspectorMorphIn:


Cheers,
Andrei

On Mon, Apr 6, 2015 at 2:45 PM, Norbert Hartl  wrote:

> I tried to figure out how I can display a morph inside a GT inspector
> presentation. How can I add a non-string representation to a composite
> given in an gtAnyIn: method?
>
> thanks,
>
> Norbert
>
>
>


Re: [Pharo-users] [Moose-dev] loading Glamour in Pharo 4

2015-03-31 Thread Andrei Chis
Still in this case the problem seems to be that version 0.1 from
ConfigurationOfForum wants to load the development version of Glamour in a
Moose 5.0 image, which is not going to work.


Cheers,
Andrei

On Tue, Mar 31, 2015 at 4:46 PM, Stephan Eggermont  wrote:

> These configurations/the metacello handling of them are
> still pretty seriously broken. In Forum from the
> Moose CI I cannot run the script because it throws an
> error which triggers the broken debugger. As does opening
> the workspace. I suspect there are quite some broken
> green builds on ci atm.
>
> Stephan
>
>


Re: [Pharo-users] GTSpotter with no results

2015-03-31 Thread Andrei Chis
I got this error once or twice but could not reproduce it.


Cheers,
Andrei

On Tue, Mar 31, 2015 at 10:47 AM, Christophe Demarey <
christophe.dema...@inria.fr> wrote:

> Hi,
>
> I would like to know if some of you already got this problem: when I open
> GTSpotter (with the shortcut) and I start to type quickly (before any
> result appears) in the text I'm searching for, I get no result at all. Even
> If I remove all characters from the search field, GTSpotter still presents
> an empty list.
>
> Thanks,
> Christophe.


Re: [Pharo-users] [Moose-dev] loading Glamour in Pharo 4

2015-03-27 Thread Andrei Chis
The same problem appeared on jenkins now. To be fixed really soon.


Cheers,
Andrei

On Fri, Mar 27, 2015 at 6:44 PM, Johan Fabry  wrote:

> Running the update script in the latest image (40585) causes a DNU:
> Instances of UndefinedObject are not indexable. :-(
>
> I can only see the stack trace in the pre-debugger. Clicking in the
> pre-debugger or trying to close a window causes the DNU again. The problem
> seems to be in RubFindReplaceService>>textArea:
>
>
> On Mar 23, 2015, at 14:53, Andrei Chis  wrote:
>
> There are several tools in Pharo that depend on Glamour.
> If you update glamour to the latest version you also need to update the
> tools that depend on it.
>
> This script updated everything:
>
> {   { 'ConfigurationOfRubric'. 'AlainPlantec'. 'Rubric' }.
> { 'ConfigurationOfGlamourCore'. 'Moose'. 'Glamour' }.
> { 'ConfigurationOfGTInspectorCore'. 'Moose'. 'GToolkit' }.
> { 'ConfigurationOfGTPlaygroundCore'. 'Moose'. 'GToolkit' }.
> { 'ConfigurationOfGTSpotter'. 'Moose'. 'GToolkit' }.
> { 'ConfigurationOfGToolkitCore'. 'Moose'. 'GToolkit' }.
> } do: [ :spec |
> Gofer new
> smalltalkhubUser: spec second project: spec third;
> package: spec first;
> load ].
> ConfigurationOfGToolkitCore loadDevelopment.
>
>
>
>
> ---> Save our in-boxes! http://emailcharter.org <---
>
> Johan Fabry   -   http://pleiad.cl/~jfabry
> PLEIAD lab  -  Computer Science Department (DCC)  -  University of Chile
>
>


Re: [Pharo-users] [ANN] Quality Assistant: live code critics feedback

2015-03-27 Thread Andrei Chis
Hi Uko,

You found no mail, as there is no email about that. It's a recent addition.

Search for the class GTCritics in Spotter and then dive in the class.
There should be a category Critics that lets's you see and search through
all the critics of that class.


Cheers,
Andrei

On Fri, Mar 27, 2015 at 2:53 PM, Yuriy Tymchuk  wrote:

>
> On 27 Mar 2015, at 14:40, Tudor Girba  wrote:
>
> Nice, Uko.
>
>
> Thank you.
>
>
> We should definitely see next Tuesday how this can complement the future
> GT efforts :)
>
>
> Yes, I’m looking forward.
>
>
> In the meantime, you could look at the code critics support from Spotter.
> It was recently introduced by Stefan Reichhart,
>
>
> Can you give me more information, because searching mail/image and
> goggling didn’t help :)
>
> Cheers,
> Uko
>
>
> Cheers,
> Doru
>
>
>
>
> On Fri, Mar 27, 2015 at 12:05 PM, Yuriy Tymchuk 
> wrote:
>
>> Oh, actually it turns out that I didn’t remove my old experiments with
>> GT, so you can see critics tab in inspector. Navigation in not useful yet
>> though.
>>
>> 
>>
>> Uko
>>
>>
>> On 27 Mar 2015, at 09:47, Damien Cassou  wrote:
>>
>> Hi Yuriy,
>>
>> Yuriy Tymchuk  writes:
>>
>> As you already know I am working on providing better code quality support
>> in Pharo. You can use Code Critics in Pharo to detect bad practices and
>> potential bugs. But launching the Critics Browser and running it on your
>> code every now and then requires additional effort which demotivates many
>> people in doing it.
>> It runs SmallLint rules on the code that you save and provides you with a
>> critic feedback directly in the place where you code: the Nautilus Browser.
>>
>>
>>
>> that's great news and I'm looking forward to use it! Nevertheless, I
>> tend to code more and more in the debugger and in the inspector. Maybe
>> your tool could be shown in the bottom of the Pharo window instead?
>>
>> Best
>>
>> --
>> Damien Cassou
>> http://damiencassou.seasidehosting.st
>>
>> "Success is the ability to go from one failure to another without
>> losing enthusiasm." --Winston Churchill
>>
>>
>>
>
>
> --
> www.tudorgirba.com
>
> "Every thing has its own flow"
>
>
>


Re: [Pharo-users] Question about loading Roassal2 in Pharo4

2015-03-24 Thread Andrei Chis
Use:

Gofer new
smalltalkhubUser: 'Moose' project: 'Glamour';
package: 'Glamour-Tools';
package: 'Glamour-Roassal2-Presentations';
load


On Tue, Mar 24, 2015 at 6:15 PM, Javier Pimás 
wrote:

> Loading Glamour-Tools was ok with:
>
> Gofer new
> smalltalkhubUser: 'Moose' project: 'GToolkit';
> package: 'Glamour-Tools';
> load
>
> Yet, I don't know where to find Glamour-Roassal2-Presentations package
>
>
> On Mon, Mar 23, 2015 at 5:17 PM, Andrei Chis 
> wrote:
>
>> You should also load the packages Glamour-Tools
>> and Glamour-Roassal2-Presentations from the Glamour repo.
>>
>>
>> Cheers,
>> Andrei
>>
>> On Mon, Mar 23, 2015 at 8:49 PM, Javier Pimás > > wrote:
>>
>>> Hi guys, I see the same problem with latest pharo4. I loaded gt
>>> extensions for roassal but now I get a message not understood when
>>> selecting the examples. I'm loading roassal and the extensions with
>>>
>>> Gofer it
>>> smalltalkhubUser: 'ObjectProfile' project: 'Roassal2';
>>> configurationOf: 'Roassal2';
>>> loadStable.
>>>
>>> Gofer new
>>> smalltalkhubUser: 'Moose' project: 'GToolkit';
>>> package: 'GT-InspectorExtensions-CoreRoassal';
>>> load
>>>
>>> am I doing something wrong?
>>>
>>> Cheers
>>>
>>> On Thu, Jan 8, 2015 at 5:17 AM, stepharo  wrote:
>>>
>>>>  You understand what I wrote in the Pharo vision document about the
>>>> process that we should get automated and in place before
>>>> really be fully modular.
>>>>
>>>> Stef
>>>>
>>>>  Hi,
>>>>
>>>>  Let's not panic :).
>>>>
>>>>  The situation is like this:
>>>> - in Pharo 4, we have ConfigurationOfGlamourCore loaded which does not
>>>> have the Roassal2 presentation
>>>> - to get the Roassal2 presentation, you have to load
>>>> ConfigurationOfGlamour (so, the full Glamour)
>>>> - an extra problem can come from the configurations in the image not
>>>> being the latest versions so there can be loading incompatibilities due to
>>>> that. That is why, for the current Moose jobs we load manually the latest
>>>> versions of the ConfigurationOf* classes (fun).
>>>> - then you can use the GT-InspectorExtensions-CoreRoassal
>>>>
>>>>
>>>>  This situation has to improve, but in the meantime, you can use the
>>>> gtoolkit or the moose 5.1 image which already has everything loaded
>>>> correctly.
>>>>
>>>>  Cheers,
>>>> Doru
>>>>
>>>>
>>>> On Wed, Jan 7, 2015 at 2:26 PM, Alexandre Bergel <
>>>> alexandre.ber...@me.com> wrote:
>>>>
>>>>> You also need Glamour-Roassal2-Presentations. But the last version
>>>>> does not seem to load.
>>>>>
>>>>> Any idea how to fix this situation?
>>>>>
>>>>> Cheers,
>>>>> Alexandre
>>>>> --
>>>>> _,.;:~^~:;._,.;:~^~:;._,.;:~^~:;._,.;:~^~:;._,.;:
>>>>> Alexandre Bergel  http://www.bergel.eu
>>>>> ^~:;._,.;:~^~:;._,.;:~^~:;._,.;:~^~:;._,.;:~^~:;.
>>>>>
>>>>>
>>>>>
>>>>>  > On Jan 7, 2015, at 10:22 AM, Sven Van Caekenberghe 
>>>>> wrote:
>>>>> >
>>>>> > Thx.
>>>>> >
>>>>> > I loaded GT-InspectorExtensions-CoreRoassal-AndreiChis.25
>>>>> >
>>>>> > but then I get
>>>>> >
>>>>> > Author: SvenVanCaekenberghe
>>>>> > Date: 2015-01-07T14:20:37.659713+01:00
>>>>> >
>>>>> > GLMCompositePresentation(Object)>>doesNotUnderstand: #roassal2
>>>>> > RTView>>gtInspectorViewIn:
>>>>> > [ :eachPragma |
>>>>> > (eachPragma selector findTokens: $:) size = 1
>>>>> >   ifTrue: [ self perform: eachPragma selector with: composite ].
>>>>> > (eachPragma selector findTokens: $:) size = 2
>>>>> >   ifTrue: [ self perform: eachPragma selector with: composite
>>>>> with: aGTInspector ] ] in
>>>>> RTView(Object)>>gtInspectorPresentationsIn:inContext

Re: [Pharo-users] Question about loading Roassal2 in Pharo4

2015-03-23 Thread Andrei Chis
display: [ :x | (GLMCompositePresentation new
>>> with: [ :d | each gtInspectorPresentationsIn: d inContext: self ]) startOn:
>>> x ] ] ] in GTInspector>>compose
>>> > GLMCompositePresentation(GLMPresentation)>>with:
>>> > [ :x | (GLMCompositePresentation new with: [ :d | each
>>> gtInspectorPresentationsIn: d inContext: self ]) startOn: x ] in [ :a :each
>>> |
>>> > a title: [ self printObjectAsAnItem: each ].
>>> > a dynamicActions: [ :aPresentation | each gtInspectorActions
>>> asOrderedCollection ].
>>> > a titleAction: [ :aPresentation | self closeActionFor: aPresentation ].
>>> > a dynamic
>>> >   display: [ :x | (GLMCompositePresentation new with: [ :d | each
>>> gtInspectorPresentationsIn: d inContext: self ]) startOn: x ] ] in [
>>> :browser |
>>> > browser fixedSizePanes: self class numberOfInspectorPanes.
>>> > browser
>>> >   show: [ :a :each |
>>> >   a title: [ self printObjectAsAnItem: each ].
>>> >   a dynamicActions: [ :aPresentation | each
>>> gtInspectorActions asOrderedCollection ].
>>> >   a titleAction: [ :aPresentation | self closeActionFor:
>>> aPresentation ].
>>> >   a dynamic
>>> >   display: [ :x | (GLMCompositePresentation new
>>> with: [ :d | each gtInspectorPresentationsIn: d inContext: self ]) startOn:
>>> x ] ] ] in GTInspector>>compose
>>> > BlockClosure>>glamourValueWithArgs:
>>> > BlockClosure(Object)>>glamourValue:
>>> > GLMDynamicPresentation(GLMPresentation)>>displayValue
>>> > GLMDynamicPresentation>>currentPresentation
>>> > GLMMorphicDynamicRenderer>>render:
>>> > GLMMorphicDynamicRenderer class(GLMMorphicWidgetRenderer
>>> class)>>render:from:
>>> > GLMMorphicRenderer>>renderDynamicPresentation:
>>> > GLMDynamicPresentation>>renderGlamorouslyOn:
>>> > GLMMorphicRenderer(GLMRenderer)>>render:
>>> > GLMMorphicTabbedRenderer(GLMMorphicWidgetRenderer)>>renderObject:
>>> >
>>> GLMMorphicTabbedRenderer(GLMMorphicWidgetRenderer)>>renderWithTitleOrNil:
>>> > GLMMorphicTabbedRenderer>>render:
>>> > GLMMorphicTabbedRenderer class(GLMMorphicWidgetRenderer
>>> class)>>render:from:
>>> > GLMMorphicRenderer>>renderTabbedCompositePresentation:
>>> > GLMTabbedArrangement>>renderGlamorouslyOn:
>>> > GLMCompositePresentation>>renderGlamorouslyOn:
>>> > GLMMorphicRenderer(GLMRenderer)>>render:
>>> > GLMMorphicPaneRenderer(GLMMorphicWidgetRenderer)>>renderObject:
>>> > GLMMorphicPaneRenderer>>renderContainerFor:
>>> > GLMMorphicPaneRenderer>>render:
>>> > GLMMorphicPaneRenderer class(GLMMorphicWidgetRenderer
>>> class)>>render:from:
>>> > GLMMorphicRenderer>>renderPane:
>>> > GLMPane>>renderGlamorouslyOn:
>>> > GLMMorphicRenderer(GLMRenderer)>>render:
>>> > GLMMorphicPagerRenderer(GLMMorphicWidgetRenderer)>>renderObject:
>>> > GLMMorphicPagerRenderer>>actOnPaneReplaced:
>>> > MessageSend>>value:
>>> > MessageSend>>cull:
>>> > MessageSend>>cull:cull:
>>> > [ action cull: anAnnouncement cull: announcer ] in
>>> AnnouncementSubscription>>deliver:
>>> > BlockClosure>>on:do:
>>> > [ Processor terminateActive ] in on: exception fork: handlerAction
>>> >   "Activate the receiver. In case of exception, fork a new
>>> process, which will handle an error.
>>> >   An original process will continue running as if receiver
>>> evaluation finished and answered nil,
>>> >   i.e., an expression like:
>>> >
>>> >   [ self error: 'some error'] on: Error fork: [:ex |  123 ]
>>> >
>>> >   will always answer nil for original process, not 123.
>>> >
>>> >   The context stack , starting from context which sent this
>>> message to receiver and
>>> >   up to the top of the stack will be transferred to forked
>>> process, with handlerAction on top.
>>> >   (so when the forked process will be resuming, it will enter the
>>> handlerAction)
>>> >"
>>> >
>>> >   ^ self
>

Re: [Pharo-users] loading Glamour in Pharo 4

2015-03-23 Thread Andrei Chis
There are several tools in Pharo that depend on Glamour.
If you update glamour to the latest version you also need to update the
tools that depend on it.

This script updated everything:

{   { 'ConfigurationOfRubric'. 'AlainPlantec'. 'Rubric' }.
{ 'ConfigurationOfGlamourCore'. 'Moose'. 'Glamour' }.
{ 'ConfigurationOfGTInspectorCore'. 'Moose'. 'GToolkit' }.
{ 'ConfigurationOfGTPlaygroundCore'. 'Moose'. 'GToolkit' }.
{ 'ConfigurationOfGTSpotter'. 'Moose'. 'GToolkit' }.
{ 'ConfigurationOfGToolkitCore'. 'Moose'. 'GToolkit' }.
} do: [ :spec |
Gofer new
smalltalkhubUser: spec second project: spec third;
package: spec first;
load ].
ConfigurationOfGToolkitCore loadDevelopment.

If you are interested just in the Roassal presented you could try and only
load the package Glamour-Roassal2-Presentations + Roassal.
However, depending on what changes you might need to also update glamour.


Cheers,
Andrei



On Mon, Mar 23, 2015 at 6:47 PM, Peter Uhnák  wrote:

> After loading Glamour dev in Pharo 40
> ~~~
> Gofer new
>   smalltalkhubUser: 'Moose' project: 'Glamour';
>   package: 'ConfigurationOfGlamour';
>   load.
> (Smalltalk at: #ConfigurationOfGlamour)
>   perform: #loadDevelopment
> ~~~
>
> when I try opening Playground I get
> AnObsoleteGLMLiveStringBrick(Object)>>doesNotUnderstand: #textLogic:
>
> And Spotter throws
> GLMHintableActionButtonBrick(Object)>>doesNotUnderstand: #addUpAction:
>
> Am I missing some extra dependency?
>
> Thanks,
> Peter
>


Re: [Pharo-users] Opening filtered Setting Browser in Pharo 4.0

2015-03-12 Thread Andrei Chis
What about:

SettingBrowser new
changePackageSet: (RPackage organizer packageNamed:
'GT-Spotter-EventRecorder') asOrderedCollection;
open;
expandAll.


Cheers,
Andrei

On Thu, Mar 12, 2015 at 7:08 PM, Juraj Kubelka 
wrote:

> Hi,
>
> I am looking for how we can open Setting Browser with only desired setting
> items and found this solution:
>
> SettingBrowser new changeSearchedText: 'sendUsageData'; open;
> expandAll
>
> Is there a better way? We want to have a possibility to open
> SettingBrowser from Spotter as it was discussed recently.
>
> Thanks!
> Juraj
>


Re: [Pharo-users] Searching package for comment content

2015-03-09 Thread Andrei Chis
Or you can add


and then search for methods using the pragma todo:


Andrei

On Mon, Mar 9, 2015 at 3:51 PM, Marcus Denker 
wrote:

>
> > On 09 Mar 2015, at 15:44, sergio_101  wrote:
> >
> > Hi, all.
> >
> > Does anyone have any ideas on this?
> >
> > I would like to be able to do a quick text search in all classes and
> methods in a package for text.
> >
> > for instance, when i see an opportunity for a refactor, i put a comment
> something like:
> >
> > "TODO: break this method apart here"
> >
> > and move on..
> >
> > it would be great if i could quickly find all methods in my package that
> contain the text "TODO" in a comment somewhere.
> >
>
> You can just add
>
> self flag: #TODO. “do this complex thing later…"
>
> search for senders of TODO -> list of everything.
>
> Or add the description as the argument to #flag:
>
> self flag ‘TODO: break this method apart here’.
>
>
>
> Marcus
>
>
>


Re: [Pharo-users] Installing GToolkit

2015-02-03 Thread Andrei Chis
GTDebugger can be loaded and works in Pharo 4.
As Marcus said the UI still needs a few more iterations.

Cheers,
Andrei

On Tue, Feb 3, 2015 at 9:02 PM, Craig  wrote:

> Ahh Ok – I looked for the debugger and when I didn’t find it, I assumed
> that none of the toolkit was there.
>
>
>
> Sorry to bother.
>
>
>
> Craig
>
>
>
> *From:* Pharo-users [mailto:pharo-users-boun...@lists.pharo.org] *On
> Behalf Of *Marcus Denker
> *Sent:* 03 February 2015 09:56 PM
> *To:* Any question about pharo is welcome
> *Subject:* Re: [Pharo-users] Installing GToolkit
>
>
>
>
>
> On 03 Feb 2015, at 20:50, Craig  wrote:
>
>
>
> Anybody got any ideas if and when GToolkit will be available on Pharo 4?
>
>
>
>
>
> We are shipping with it since some time before christmas.
>


Re: [Pharo-users] History not available in Playground

2015-01-23 Thread Andrei Chis
Hi,

Do you have a package-cache folder in the same location as the image and
changes files?

The very first time you download a new image in a new location you will
have no ... menu.
You can use the settings browser to change the path where the playground
looks for the  package-cache folder.

Cheers,
Andrei

On Fri, Jan 23, 2015 at 10:09 PM, nacho <0800na...@gmail.com> wrote:

> Hi!
> I don't see the ... icon in the Playground anymore.
> Seems the history is not there.
> Could be something that happens in my image only?
> Best
> Nacho
>
>
>
> -
> Nacho
> Smalltalker apprentice.
> Buenos Aires, Argentina.
> --
> View this message in context:
> http://forum.world.st/History-not-available-in-Playground-tp4801314.html
> Sent from the Pharo Smalltalk Users mailing list archive at Nabble.com.
>
>


Re: [Pharo-users] [ANN] A simple debugger for stepping though bytecodes.

2015-01-16 Thread Andrei Chis
On Thu, Jan 15, 2015 at 10:40 PM, Alexandre Bergel 
wrote:

> I am quite interested in plugin a Roassal visualization to a debugger.
> I will discuss with Rosario, but maybe you have worked on something on
> your side? Would it be hard to have this?
>

I didn't got a chance to work more on it, but a simple version is quite
easy to implement following the same implementation as the one from the
RProfiler debugger.


Cheers,
Andrei


>
> Cheers,
> Alexandre
>
>
> > On Jan 15, 2015, at 6:22 PM, Andrei Chis 
> wrote:
> >
> > Hi all,
> >
> > We've just made a simple debugger for stepping through bytecodes. It's
> still just the first version so a lot of things can still be improved.
> >
> > More info here:
> https://chisvasileandrei.wordpress.com/2015/01/15/a-bytecode-debugger/
> >
> > Cheers,
> > Andrei
>
> --
> _,.;:~^~:;._,.;:~^~:;._,.;:~^~:;._,.;:~^~:;._,.;:
> Alexandre Bergel  http://www.bergel.eu
> ^~:;._,.;:~^~:;._,.;:~^~:;._,.;:~^~:;._,.;:~^~:;.
>
>
>
>
>


  1   2   >