[Esug-list] Re: GSoC Idea: Swazoo web server/Grease improvements

Previous Topic Next Topic
 
classic Classic list List threaded Threaded
7 messages Options
Reply | Threaded
Open this post in threaded view
|

[Esug-list] Re: GSoC Idea: Swazoo web server/Grease improvements

Mariano Martinez Peck
Excellent. Thanks. I have just add it.

Cheers

Mariano

On Fri, Mar 12, 2010 at 8:46 AM, Paolo Bonzini <[hidden email]> wrote:
The development of Swazoo, a web server written in Smalltalk, has been
relatively slow recently.  This project proposes a series of tasks to
improve Swazoo's position in the panorama of portable Smalltalk
projects, and a series of infrastructure improvements that could be
enabled by changes to Swazoo.

Some such task are refactorings of Swazoo with the following goals:

- improving the set of abstractions that Swazoo uses and provides; for
example, GNU Smalltalk include a few changes to Swazoo that add
support for SCGI and make it also faster in general.

- Swazoo is currently using a cross-dialect portability layer known as
Sport.  Most of it could be replaced by Seaside's Grease layer, whose
development was initially started and is now coordinated by Julian
Fitzell.  Grease allows the user to write code more naturally than
with Sport, by defining a series of extensions to the
ANSI/Smalltalk-80 standard classes that are tested by Grease's test
suite.

- the only part of Sport that is not included in Grease is support for
sockets.  There are two approaches to solving this.  One is to add a
small per-dialect layer to Swazoo, basically by inlining Sport's
classes into Swazoo.  The second is to add socket support to Grease.
The student could evaluate the relative advantages of these approaches
and implement the one that is deemed better.

- regarding the latter possibility, Paolo Bonzini agreed to relicense
GNU Smalltalk's Socket and File implementation under a different
license for use within Grease or within other dialects.  This
implementation is relatively large and it could be used as part of
Grease.

To sum up, the goals of this project are:
- Incorporate the changes and speedups that went into the version of
Swazoo distributed with GNU Smalltalk
- Incorporate and refactor Nicolas Petton's implementation of SCGI for Swazoo
- Replace the Sport dependency with Grease as much as possible
- Augment Grease with new functionality

Additional goals could include development of a common HTTP request
framework to be used by Swazoo, Seaside, AidaWeb, Iliad and so on.

Technical Details
===========
Swazoo and Grease have good test suites.  Test-driven development will
ensure that existing facilities remain functional.  In addition,
stand-alone benchmark programs such as the Apache benchmark (ab) will
be used.

Benefits to the Student
===============
Better understanding of the commonalities and differences between
different Smalltalk dialects.  Learning the performance impact of
using different abstractions provided by the Smalltalk virtual
machines, and the  necessary trade-offs to be employed by a
high-performance component such as a web server.

Benefits to the Community
===============
Modernizing the Swazoo portability infrastructure to match more
closely other cross-platform projects that the Smalltalk community has
developed.  Improving performance and functionality of the Swazoo web
server.

Possible mentors
================
Paolo Bonzini, Julian Fitzell, Janko Mivšek, John O'Keefe (in
alphabetical order :-)


_______________________________________________
Esug-list mailing list
[hidden email]
http://lists.esug.org/listinfo/esug-list
Reply | Threaded
Open this post in threaded view
|

AW: [Esug-list] Re: GSoC Idea: Swazoo web server/Grease improvements

Nowak, Helge

Dear Mariano and Janko,

 

as promised here is our proposal.

 

Cheers

Helge

 

Title: Concurrency Architectures in Smalltalk

 

Mentor: Andreas Tönne

 

Co-Mentor: TBD

 

Level: Medium to Advanced

 

Description/technical details:

Modern hardware architectures provide parallel computing power from the low end segment with multi-CPU boards and multi-core CPUs up to massively parallel systems, clusters and grids with thousands of processors. Traditional software development has been based mainly on assumptions of non-concurrent processing. The theoretical basics of parallel processing are researched and well understood since the 1960-ies. Theory and practice show there is no silver bullet, no solution that fits all circumstances.

 

On the other hand today’s software architectures such as Web Applications and Service Oriented Architectures as well as ever growing demands to the solutions of complex domain problems require software systems to leverage the power that is provided by the hardware. Software developers have to learn how to use the potential of parallel processing. System developers have to provide the necessary support by frameworks and tools. For quick adoption such frameworks and tools should not be grass-root new but be implemented in technologies already in use. A good part of software systems in production written in Smalltalk fall into the categories mentioned and would benefit from being able to resort to standard architectures, frameworks and tools.

 

This project shall examine the various approaches to concurrent processing and their implications on the applications in terms of performance, scalability, robustness and security. The solutions shall be based on multiple virtual machines and images communicating among each others. The Actor model and Data Centric Computing are examples of the architectures to be considered. The students will develop Smalltalk reference models on the basis of the assumption that the virtual machines are a given and not changeable. An important part of the project is to provide tools to examine and further develop the frameworks. From the point of view of the application developer the frameworks need to be intuitively to use and leave the application code easy to maintain. Any frameworks and tools developed shall be implemented under the Smalltalk principles of Simplicity, Power, Genericity and Ease of Use.

 

Benefits to the Students:

The students will learn about the aspects of parallel computing which is vital for all future software architectures. They will learn how to implement reference models and frameworks for everyday use by application developers. Last but not least they will learn about the importance of tooling around any such basic technology to ensure reaching the goals.

 

Benefits to the Community:

The whole Smalltalk community - the academic users, the open source community, the vendors and the commercial and non-commercial users - will benefit from being able to resort to standard architectures, frameworks and tools as a basis for their specific needs. Not only existing projects will be able to enhance their systems in operation but also new ideas will be more easily realized by being able to start from well examined sound ground.

 

 

Von: Nowak, Helge
Gesendet: Freitag, 12. März 2010 10:55
An: 'Mariano Martinez Peck'; Janko Mivšek
Betreff: AW: [Esug-list] Re: GSoC Idea: Swazoo web server/Grease improvements

 

Dear Mariano and Janko,

 

please expect a proposal from us about concurrency during this day. It won’t be before 15:00 GMT+1 though.

 

Do you have any problems with that?

 

Many thanks in advance

Helge

 

**************************************************************

Helge K. Nowak

Technical Account Manager Cincom Smalltalk

Cincom Systems GmbH & Co. oHG

Am Kronberger Hang 4

D-65824 Schwalbach/Ts.

Tel.: +49-(0)89-89664494

Mobil: +49-(0)172-7400402

Fax: +49-(0)89-89664495

Email: [hidden email]

Web: http://www.cincom.com

 

All about Cincom Smalltalk:

http://www.cincomsmalltalk.com

 

A standpoint is an intellectual horizon of radius zero.

-- Albert Einstein

 

Geschäftsführer/Managing Directors: Thomas M. Nies, Gerald L. Shawhan

oHG mit Sitz/based in Schwalbach/Ts. (Amtsgericht Königstein/Ts. HRA 2653)

Pers. haftender Gesellschafter/Partner liable to unlimited extent:

Cincom Systems Verwaltungsgesellschaft mbH (Amtsgericht Königstein/Ts. HRB 5069)

**************************************************************

 

 

 

Von: [hidden email] [mailto:[hidden email]] Im Auftrag von Mariano Martinez Peck
Gesendet: Freitag, 12. März 2010 10:51
An: Paolo Bonzini
Cc: ESUG Mailing list; Janko Mivšek; John O'Keefe
Betreff: [Esug-list] Re: GSoC Idea: Swazoo web server/Grease improvements

 

Excellent. Thanks. I have just add it.

Cheers

Mariano

On Fri, Mar 12, 2010 at 8:46 AM, Paolo Bonzini <[hidden email]> wrote:

The development of Swazoo, a web server written in Smalltalk, has been
relatively slow recently.  This project proposes a series of tasks to
improve Swazoo's position in the panorama of portable Smalltalk
projects, and a series of infrastructure improvements that could be
enabled by changes to Swazoo.

Some such task are refactorings of Swazoo with the following goals:

- improving the set of abstractions that Swazoo uses and provides; for
example, GNU Smalltalk include a few changes to Swazoo that add
support for SCGI and make it also faster in general.

- Swazoo is currently using a cross-dialect portability layer known as
Sport.  Most of it could be replaced by Seaside's Grease layer, whose
development was initially started and is now coordinated by Julian
Fitzell.  Grease allows the user to write code more naturally than
with Sport, by defining a series of extensions to the
ANSI/Smalltalk-80 standard classes that are tested by Grease's test
suite.

- the only part of Sport that is not included in Grease is support for
sockets.  There are two approaches to solving this.  One is to add a
small per-dialect layer to Swazoo, basically by inlining Sport's
classes into Swazoo.  The second is to add socket support to Grease.
The student could evaluate the relative advantages of these approaches
and implement the one that is deemed better.

- regarding the latter possibility, Paolo Bonzini agreed to relicense
GNU Smalltalk's Socket and File implementation under a different
license for use within Grease or within other dialects.  This
implementation is relatively large and it could be used as part of
Grease.

To sum up, the goals of this project are:
- Incorporate the changes and speedups that went into the version of
Swazoo distributed with GNU Smalltalk
- Incorporate and refactor Nicolas Petton's implementation of SCGI for Swazoo
- Replace the Sport dependency with Grease as much as possible
- Augment Grease with new functionality

Additional goals could include development of a common HTTP request
framework to be used by Swazoo, Seaside, AidaWeb, Iliad and so on.

Technical Details
===========
Swazoo and Grease have good test suites.  Test-driven development will
ensure that existing facilities remain functional.  In addition,
stand-alone benchmark programs such as the Apache benchmark (ab) will
be used.

Benefits to the Student
===============
Better understanding of the commonalities and differences between
different Smalltalk dialects.  Learning the performance impact of
using different abstractions provided by the Smalltalk virtual
machines, and the  necessary trade-offs to be employed by a
high-performance component such as a web server.

Benefits to the Community
===============
Modernizing the Swazoo portability infrastructure to match more
closely other cross-platform projects that the Smalltalk community has
developed.  Improving performance and functionality of the Swazoo web
server.

Possible mentors
================
Paolo Bonzini, Julian Fitzell, Janko Mivšek, John O'Keefe (in
alphabetical order :-)

 


_______________________________________________
Esug-list mailing list
[hidden email]
http://lists.esug.org/listinfo/esug-list
Reply | Threaded
Open this post in threaded view
|

Re: GSoC Idea: Swazoo web server/Grease improvements

Mariano Martinez Peck
Thanks. I have just add it.

Cheers

Mariano


On Fri, Mar 12, 2010 at 4:23 PM, Nowak, Helge <[hidden email]> wrote:

Dear Mariano and Janko,

 

as promised here is our proposal.

 

Cheers

Helge

 

Title: Concurrency Architectures in Smalltalk

 

Mentor: Andreas Tönne

 

Co-Mentor: TBD

 

Level: Medium to Advanced

 

Description/technical details:

Modern hardware architectures provide parallel computing power from the low end segment with multi-CPU boards and multi-core CPUs up to massively parallel systems, clusters and grids with thousands of processors. Traditional software development has been based mainly on assumptions of non-concurrent processing. The theoretical basics of parallel processing are researched and well understood since the 1960-ies. Theory and practice show there is no silver bullet, no solution that fits all circumstances.

 

On the other hand today’s software architectures such as Web Applications and Service Oriented Architectures as well as ever growing demands to the solutions of complex domain problems require software systems to leverage the power that is provided by the hardware. Software developers have to learn how to use the potential of parallel processing. System developers have to provide the necessary support by frameworks and tools. For quick adoption such frameworks and tools should not be grass-root new but be implemented in technologies already in use. A good part of software systems in production written in Smalltalk fall into the categories mentioned and would benefit from being able to resort to standard architectures, frameworks and tools.

 

This project shall examine the various approaches to concurrent processing and their implications on the applications in terms of performance, scalability, robustness and security. The solutions shall be based on multiple virtual machines and images communicating among each others. The Actor model and Data Centric Computing are examples of the architectures to be considered. The students will develop Smalltalk reference models on the basis of the assumption that the virtual machines are a given and not changeable. An important part of the project is to provide tools to examine and further develop the frameworks. From the point of view of the application developer the frameworks need to be intuitively to use and leave the application code easy to maintain. Any frameworks and tools developed shall be implemented under the Smalltalk principles of Simplicity, Power, Genericity and Ease of Use.

 

Benefits to the Students:

The students will learn about the aspects of parallel computing which is vital for all future software architectures. They will learn how to implement reference models and frameworks for everyday use by application developers. Last but not least they will learn about the importance of tooling around any such basic technology to ensure reaching the goals.

 

Benefits to the Community:

The whole Smalltalk community - the academic users, the open source community, the vendors and the commercial and non-commercial users - will benefit from being able to resort to standard architectures, frameworks and tools as a basis for their specific needs. Not only existing projects will be able to enhance their systems in operation but also new ideas will be more easily realized by being able to start from well examined sound ground.

 

 

Von: Nowak, Helge
Gesendet: Freitag, 12. März 2010 10:55
An: 'Mariano Martinez Peck'; Janko Mivšek
Betreff: AW: [Esug-list] Re: GSoC Idea: Swazoo web server/Grease improvements

 

Dear Mariano and Janko,

 

please expect a proposal from us about concurrency during this day. It won’t be before 15:00 GMT+1 though.

 

Do you have any problems with that?

 

Many thanks in advance

Helge

 

**************************************************************

Helge K. Nowak

Technical Account Manager Cincom Smalltalk

Cincom Systems GmbH & Co. oHG

Am Kronberger Hang 4

D-65824 Schwalbach/Ts.

Tel.: +49-(0)89-89664494

Mobil: +49-(0)172-7400402

Fax: +49-(0)89-89664495

Email: [hidden email]

Web: http://www.cincom.com

 

All about Cincom Smalltalk:

http://www.cincomsmalltalk.com

 

A standpoint is an intellectual horizon of radius zero.

-- Albert Einstein

 

Geschäftsführer/Managing Directors: Thomas M. Nies, Gerald L. Shawhan

oHG mit Sitz/based in Schwalbach/Ts. (Amtsgericht Königstein/Ts. HRA 2653)

Pers. haftender Gesellschafter/Partner liable to unlimited extent:

Cincom Systems Verwaltungsgesellschaft mbH (Amtsgericht Königstein/Ts. HRB 5069)

**************************************************************

 

 

 

Von: [hidden email] [mailto:[hidden email]] Im Auftrag von Mariano Martinez Peck
Gesendet: Freitag, 12. März 2010 10:51
An: Paolo Bonzini
Cc: ESUG Mailing list; Janko Mivšek; John O'Keefe
Betreff: [Esug-list] Re: GSoC Idea: Swazoo web server/Grease improvements

 

Excellent. Thanks. I have just add it.

Cheers

Mariano

On Fri, Mar 12, 2010 at 8:46 AM, Paolo Bonzini <[hidden email]> wrote:

The development of Swazoo, a web server written in Smalltalk, has been
relatively slow recently.  This project proposes a series of tasks to
improve Swazoo's position in the panorama of portable Smalltalk
projects, and a series of infrastructure improvements that could be
enabled by changes to Swazoo.

Some such task are refactorings of Swazoo with the following goals:

- improving the set of abstractions that Swazoo uses and provides; for
example, GNU Smalltalk include a few changes to Swazoo that add
support for SCGI and make it also faster in general.

- Swazoo is currently using a cross-dialect portability layer known as
Sport.  Most of it could be replaced by Seaside's Grease layer, whose
development was initially started and is now coordinated by Julian
Fitzell.  Grease allows the user to write code more naturally than
with Sport, by defining a series of extensions to the
ANSI/Smalltalk-80 standard classes that are tested by Grease's test
suite.

- the only part of Sport that is not included in Grease is support for
sockets.  There are two approaches to solving this.  One is to add a
small per-dialect layer to Swazoo, basically by inlining Sport's
classes into Swazoo.  The second is to add socket support to Grease.
The student could evaluate the relative advantages of these approaches
and implement the one that is deemed better.

- regarding the latter possibility, Paolo Bonzini agreed to relicense
GNU Smalltalk's Socket and File implementation under a different
license for use within Grease or within other dialects.  This
implementation is relatively large and it could be used as part of
Grease.

To sum up, the goals of this project are:
- Incorporate the changes and speedups that went into the version of
Swazoo distributed with GNU Smalltalk
- Incorporate and refactor Nicolas Petton's implementation of SCGI for Swazoo
- Replace the Sport dependency with Grease as much as possible
- Augment Grease with new functionality

Additional goals could include development of a common HTTP request
framework to be used by Swazoo, Seaside, AidaWeb, Iliad and so on.

Technical Details
===========
Swazoo and Grease have good test suites.  Test-driven development will
ensure that existing facilities remain functional.  In addition,
stand-alone benchmark programs such as the Apache benchmark (ab) will
be used.

Benefits to the Student
===============
Better understanding of the commonalities and differences between
different Smalltalk dialects.  Learning the performance impact of
using different abstractions provided by the Smalltalk virtual
machines, and the  necessary trade-offs to be employed by a
high-performance component such as a web server.

Benefits to the Community
===============
Modernizing the Swazoo portability infrastructure to match more
closely other cross-platform projects that the Smalltalk community has
developed.  Improving performance and functionality of the Swazoo web
server.

Possible mentors
================
Paolo Bonzini, Julian Fitzell, Janko Mivšek, John O'Keefe (in
alphabetical order :-)

 



_______________________________________________
Esug-list mailing list
[hidden email]
http://lists.esug.org/listinfo/esug-list
Reply | Threaded
Open this post in threaded view
|

Re: AW: [Esug-list] Re: GSoC Idea: Swazoo web server/Grease improvements

Alexandre Bergel
In reply to this post by Nowak, Helge
Here is my proposal

-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=
Visualization of profiling information in Pharo and Squeak
Mentor: Alexandre Bergel

Level: Moderate to Difficult

Description:

Even though computing resources are abundant, execution optimization  
through
code profiling remains an important software development activity. A  
CPU time
profiler is a crucial tool to identify bottlenecks - program elements  
that take a
large part of the execution time. Today, it is inconceivable to ship a  
programming
environment without a code profiler included or provided by a third  
party.

Unfortunately, Smalltalk environments did not receive deserved  
attention on code profiling tools, and especially in Pharo and Squeak.  
MessageTally is currently the only profiling tool on these platforms.  
Whereas quite useful, profiling information would greatly benefit from  
a graphical (instead of textual) rendering. Inspiring example could be  
found on http://www.bootchart.org/images/bootchart.png

Technical detail:
The visualization part is offered by Mondrian (www.moosetechnology.org/tools/Mondrian)
. Technical challenges will be in getting the dynamic information and  
determining relevant and defining compelling visualizations. A first  
step was already done using the Spy framework (http://www.moosetechnology.org/tools/Spy 
)

Benefits to the students:
The student will have the potential to make a great impact on the  
Smalltalk community. Depending on the student taste, the project goal  
may range from getting expressive visualizations and getting an  
efficient implementation (e.g., with little runtime overhead). This  
project is also suitable for research activities. The current state of  
the art in this field is rather poor.

Benefits to the community:
MessageTally hasn’t significantly evolved over the last years. This  
cannot last forever :-)
-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=

On 12 Mar 2010, at 12:23, Nowak, Helge wrote:

> Dear Mariano and Janko,
>
> as promised here is our proposal.
>
> Cheers
> Helge
>
> Title: Concurrency Architectures in Smalltalk
>
> Mentor: Andreas Tönne
>
> Co-Mentor: TBD
>
> Level: Medium to Advanced
>
> Description/technical details:
> Modern hardware architectures provide parallel computing power from  
> the low end segment with multi-CPU boards and multi-core CPUs up to  
> massively parallel systems, clusters and grids with thousands of  
> processors. Traditional software development has been based mainly  
> on assumptions of non-concurrent processing. The theoretical basics  
> of parallel processing are researched and well understood since the  
> 1960-ies. Theory and practice show there is no silver bullet, no  
> solution that fits all circumstances.
>
> On the other hand today’s software architectures such as Web  
> Applications and Service Oriented Architectures as well as ever  
> growing demands to the solutions of complex domain problems require  
> software systems to leverage the power that is provided by the  
> hardware. Software developers have to learn how to use the potential  
> of parallel processing. System developers have to provide the  
> necessary support by frameworks and tools. For quick adoption such  
> frameworks and tools should not be grass-root new but be implemented  
> in technologies already in use. A good part of software systems in  
> production written in Smalltalk fall into the categories mentioned  
> and would benefit from being able to resort to standard  
> architectures, frameworks and tools.
>
> This project shall examine the various approaches to concurrent  
> processing and their implications on the applications in terms of  
> performance, scalability, robustness and security. The solutions  
> shall be based on multiple virtual machines and images communicating  
> among each others. The Actor model and Data Centric Computing are  
> examples of the architectures to be considered. The students will  
> develop Smalltalk reference models on the basis of the assumption  
> that the virtual machines are a given and not changeable. An  
> important part of the project is to provide tools to examine and  
> further develop the frameworks. From the point of view of the  
> application developer the frameworks need to be intuitively to use  
> and leave the application code easy to maintain. Any frameworks and  
> tools developed shall be implemented under the Smalltalk principles  
> of Simplicity, Power, Genericity and Ease of Use.
>
> Benefits to the Students:
> The students will learn about the aspects of parallel computing  
> which is vital for all future software architectures. They will  
> learn how to implement reference models and frameworks for everyday  
> use by application developers. Last but not least they will learn  
> about the importance of tooling around any such basic technology to  
> ensure reaching the goals.
>
> Benefits to the Community:
> The whole Smalltalk community - the academic users, the open source  
> community, the vendors and the commercial and non-commercial users -  
> will benefit from being able to resort to standard architectures,  
> frameworks and tools as a basis for their specific needs. Not only  
> existing projects will be able to enhance their systems in operation  
> but also new ideas will be more easily realized by being able to  
> start from well examined sound ground.
>
>
> Von: Nowak, Helge
> Gesendet: Freitag, 12. März 2010 10:55
> An: 'Mariano Martinez Peck'; Janko Mivšek
> Betreff: AW: [Esug-list] Re: GSoC Idea: Swazoo web server/Grease  
> improvements
>
> Dear Mariano and Janko,
>
> please expect a proposal from us about concurrency during this day.  
> It won’t be before 15:00 GMT+1 though.
>
> Do you have any problems with that?
>
> Many thanks in advance
> Helge
>
> **************************************************************
> Helge K. Nowak
> Technical Account Manager Cincom Smalltalk
> Cincom Systems GmbH & Co. oHG
> Am Kronberger Hang 4
> D-65824 Schwalbach/Ts.
> Tel.: +49-(0)89-89664494
> Mobil: +49-(0)172-7400402
> Fax: +49-(0)89-89664495
> Email: mailto:[hidden email]
> Web: http://www.cincom.com
>
> All about Cincom Smalltalk:
> http://www.cincomsmalltalk.com
>
> A standpoint is an intellectual horizon of radius zero.
> -- Albert Einstein
>
> Geschäftsführer/Managing Directors: Thomas M. Nies, Gerald L.  
> Shawhan
> oHG mit Sitz/based in Schwalbach/Ts. (Amtsgericht Königstein/Ts. HRA  
> 2653)
> Pers. haftender Gesellschafter/Partner liable to unlimited extent:
> Cincom Systems Verwaltungsgesellschaft mbH (Amtsgericht Königstein/
> Ts. HRB 5069)
> **************************************************************
>
>
>
> Von: [hidden email] [mailto:[hidden email]
> ] Im Auftrag von Mariano Martinez Peck
> Gesendet: Freitag, 12. März 2010 10:51
> An: Paolo Bonzini
> Cc: ESUG Mailing list; Janko Mivšek; John O'Keefe
> Betreff: [Esug-list] Re: GSoC Idea: Swazoo web server/Grease  
> improvements
>
> Excellent. Thanks. I have just add it.
>
> Cheers
>
> Mariano
>
> On Fri, Mar 12, 2010 at 8:46 AM, Paolo Bonzini <[hidden email]>  
> wrote:
> The development of Swazoo, a web server written in Smalltalk, has been
> relatively slow recently.  This project proposes a series of tasks to
> improve Swazoo's position in the panorama of portable Smalltalk
> projects, and a series of infrastructure improvements that could be
> enabled by changes to Swazoo.
>
> Some such task are refactorings of Swazoo with the following goals:
>
> - improving the set of abstractions that Swazoo uses and provides; for
> example, GNU Smalltalk include a few changes to Swazoo that add
> support for SCGI and make it also faster in general.
>
> - Swazoo is currently using a cross-dialect portability layer known as
> Sport.  Most of it could be replaced by Seaside's Grease layer, whose
> development was initially started and is now coordinated by Julian
> Fitzell.  Grease allows the user to write code more naturally than
> with Sport, by defining a series of extensions to the
> ANSI/Smalltalk-80 standard classes that are tested by Grease's test
> suite.
>
> - the only part of Sport that is not included in Grease is support for
> sockets.  There are two approaches to solving this.  One is to add a
> small per-dialect layer to Swazoo, basically by inlining Sport's
> classes into Swazoo.  The second is to add socket support to Grease.
> The student could evaluate the relative advantages of these approaches
> and implement the one that is deemed better.
>
> - regarding the latter possibility, Paolo Bonzini agreed to relicense
> GNU Smalltalk's Socket and File implementation under a different
> license for use within Grease or within other dialects.  This
> implementation is relatively large and it could be used as part of
> Grease.
>
> To sum up, the goals of this project are:
> - Incorporate the changes and speedups that went into the version of
> Swazoo distributed with GNU Smalltalk
> - Incorporate and refactor Nicolas Petton's implementation of SCGI  
> for Swazoo
> - Replace the Sport dependency with Grease as much as possible
> - Augment Grease with new functionality
>
> Additional goals could include development of a common HTTP request
> framework to be used by Swazoo, Seaside, AidaWeb, Iliad and so on.
>
> Technical Details
> ===========
> Swazoo and Grease have good test suites.  Test-driven development will
> ensure that existing facilities remain functional.  In addition,
> stand-alone benchmark programs such as the Apache benchmark (ab) will
> be used.
>
> Benefits to the Student
> ===============
> Better understanding of the commonalities and differences between
> different Smalltalk dialects.  Learning the performance impact of
> using different abstractions provided by the Smalltalk virtual
> machines, and the  necessary trade-offs to be employed by a
> high-performance component such as a web server.
>
> Benefits to the Community
> ===============
> Modernizing the Swazoo portability infrastructure to match more
> closely other cross-platform projects that the Smalltalk community has
> developed.  Improving performance and functionality of the Swazoo web
> server.
>
> Possible mentors
> ================
> Paolo Bonzini, Julian Fitzell, Janko Mivšek, John O'Keefe (in
> alphabetical order :-)
>
> _______________________________________________
> Esug-list mailing list
> [hidden email]
> http://lists.esug.org/listinfo/esug-list

--
_,.;:~^~:;._,.;:~^~:;._,.;:~^~:;._,.;:~^~:;._,.;:
Alexandre Bergel  http://www.bergel.eu
^~:;._,.;:~^~:;._,.;:~^~:;._,.;:~^~:;._,.;:~^~:;.





_______________________________________________
Esug-list mailing list
[hidden email]
http://lists.esug.org/listinfo/esug-list
Reply | Threaded
Open this post in threaded view
|

Re: AW: [Esug-list] Re: GSoC Idea: Swazoo web server/Grease improvements

Mariano Martinez Peck
Sorry. I have just seen this message. I guess it is too late, but I don't know.

Janko do you know ?

Cheers

Mariano

On Fri, Mar 12, 2010 at 7:29 PM, Alexandre Bergel <[hidden email]> wrote:
Here is my proposal

-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=
Visualization of profiling information in Pharo and Squeak
Mentor: Alexandre Bergel

Level: Moderate to Difficult

Description:

Even though computing resources are abundant, execution optimization through
code profiling remains an important software development activity. A CPU time
profiler is a crucial tool to identify bottlenecks - program elements that take a
large part of the execution time. Today, it is inconceivable to ship a programming
environment without a code profiler included or provided by a third party.

Unfortunately, Smalltalk environments did not receive deserved attention on code profiling tools, and especially in Pharo and Squeak. MessageTally is currently the only profiling tool on these platforms. Whereas quite useful, profiling information would greatly benefit from a graphical (instead of textual) rendering. Inspiring example could be found on http://www.bootchart.org/images/bootchart.png

Technical detail:
The visualization part is offered by Mondrian (www.moosetechnology.org/tools/Mondrian). Technical challenges will be in getting the dynamic information and determining relevant and defining compelling visualizations. A first step was already done using the Spy framework (http://www.moosetechnology.org/tools/Spy)

Benefits to the students:
The student will have the potential to make a great impact on the Smalltalk community. Depending on the student taste, the project goal may range from getting expressive visualizations and getting an efficient implementation (e.g., with little runtime overhead). This project is also suitable for research activities. The current state of the art in this field is rather poor.

Benefits to the community:
MessageTally hasn’t significantly evolved over the last years. This cannot last forever :-)
-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=


On 12 Mar 2010, at 12:23, Nowak, Helge wrote:

Dear Mariano and Janko,

as promised here is our proposal.

Cheers
Helge

Title: Concurrency Architectures in Smalltalk

Mentor: Andreas Tönne

Co-Mentor: TBD

Level: Medium to Advanced

Description/technical details:
Modern hardware architectures provide parallel computing power from the low end segment with multi-CPU boards and multi-core CPUs up to massively parallel systems, clusters and grids with thousands of processors. Traditional software development has been based mainly on assumptions of non-concurrent processing. The theoretical basics of parallel processing are researched and well understood since the 1960-ies. Theory and practice show there is no silver bullet, no solution that fits all circumstances.

On the other hand today’s software architectures such as Web Applications and Service Oriented Architectures as well as ever growing demands to the solutions of complex domain problems require software systems to leverage the power that is provided by the hardware. Software developers have to learn how to use the potential of parallel processing. System developers have to provide the necessary support by frameworks and tools. For quick adoption such frameworks and tools should not be grass-root new but be implemented in technologies already in use. A good part of software systems in production written in Smalltalk fall into the categories mentioned and would benefit from being able to resort to standard architectures, frameworks and tools.

This project shall examine the various approaches to concurrent processing and their implications on the applications in terms of performance, scalability, robustness and security. The solutions shall be based on multiple virtual machines and images communicating among each others. The Actor model and Data Centric Computing are examples of the architectures to be considered. The students will develop Smalltalk reference models on the basis of the assumption that the virtual machines are a given and not changeable. An important part of the project is to provide tools to examine and further develop the frameworks. From the point of view of the application developer the frameworks need to be intuitively to use and leave the application code easy to maintain. Any frameworks and tools developed shall be implemented under the Smalltalk principles of Simplicity, Power, Genericity and Ease of Use.

Benefits to the Students:
The students will learn about the aspects of parallel computing which is vital for all future software architectures. They will learn how to implement reference models and frameworks for everyday use by application developers. Last but not least they will learn about the importance of tooling around any such basic technology to ensure reaching the goals.

Benefits to the Community:
The whole Smalltalk community - the academic users, the open source community, the vendors and the commercial and non-commercial users - will benefit from being able to resort to standard architectures, frameworks and tools as a basis for their specific needs. Not only existing projects will be able to enhance their systems in operation but also new ideas will be more easily realized by being able to start from well examined sound ground.


Von: Nowak, Helge
Gesendet: Freitag, 12. März 2010 10:55
An: 'Mariano Martinez Peck'; Janko Mivšek
Betreff: AW: [Esug-list] Re: GSoC Idea: Swazoo web server/Grease improvements

Dear Mariano and Janko,

please expect a proposal from us about concurrency during this day. It won’t be before 15:00 GMT+1 though.

Do you have any problems with that?

Many thanks in advance
Helge

**************************************************************
Helge K. Nowak
Technical Account Manager Cincom Smalltalk
Cincom Systems GmbH & Co. oHG
Am Kronberger Hang 4
D-65824 Schwalbach/Ts.
Tel.: +49-(0)89-89664494
Mobil: +49-(0)172-7400402
Fax: +49-(0)89-89664495
Email: mailto:[hidden email]
Web: http://www.cincom.com

All about Cincom Smalltalk:
http://www.cincomsmalltalk.com

A standpoint is an intellectual horizon of radius zero.
-- Albert Einstein

Geschäftsführer/Managing Directors: Thomas M. Nies, Gerald L. Shawhan
oHG mit Sitz/based in Schwalbach/Ts. (Amtsgericht Königstein/Ts. HRA 2653)
Pers. haftender Gesellschafter/Partner liable to unlimited extent:
Cincom Systems Verwaltungsgesellschaft mbH (Amtsgericht Königstein/Ts. HRB 5069)
**************************************************************



Von: [hidden email] [mailto:[hidden email]] Im Auftrag von Mariano Martinez Peck
Gesendet: Freitag, 12. März 2010 10:51
An: Paolo Bonzini
Cc: ESUG Mailing list; Janko Mivšek; John O'Keefe
Betreff: [Esug-list] Re: GSoC Idea: Swazoo web server/Grease improvements

Excellent. Thanks. I have just add it.

Cheers

Mariano

On Fri, Mar 12, 2010 at 8:46 AM, Paolo Bonzini <[hidden email]> wrote:
The development of Swazoo, a web server written in Smalltalk, has been
relatively slow recently.  This project proposes a series of tasks to
improve Swazoo's position in the panorama of portable Smalltalk
projects, and a series of infrastructure improvements that could be
enabled by changes to Swazoo.

Some such task are refactorings of Swazoo with the following goals:

- improving the set of abstractions that Swazoo uses and provides; for
example, GNU Smalltalk include a few changes to Swazoo that add
support for SCGI and make it also faster in general.

- Swazoo is currently using a cross-dialect portability layer known as
Sport.  Most of it could be replaced by Seaside's Grease layer, whose
development was initially started and is now coordinated by Julian
Fitzell.  Grease allows the user to write code more naturally than
with Sport, by defining a series of extensions to the
ANSI/Smalltalk-80 standard classes that are tested by Grease's test
suite.

- the only part of Sport that is not included in Grease is support for
sockets.  There are two approaches to solving this.  One is to add a
small per-dialect layer to Swazoo, basically by inlining Sport's
classes into Swazoo.  The second is to add socket support to Grease.
The student could evaluate the relative advantages of these approaches
and implement the one that is deemed better.

- regarding the latter possibility, Paolo Bonzini agreed to relicense
GNU Smalltalk's Socket and File implementation under a different
license for use within Grease or within other dialects.  This
implementation is relatively large and it could be used as part of
Grease.

To sum up, the goals of this project are:
- Incorporate the changes and speedups that went into the version of
Swazoo distributed with GNU Smalltalk
- Incorporate and refactor Nicolas Petton's implementation of SCGI for Swazoo
- Replace the Sport dependency with Grease as much as possible
- Augment Grease with new functionality

Additional goals could include development of a common HTTP request
framework to be used by Swazoo, Seaside, AidaWeb, Iliad and so on.

Technical Details
===========
Swazoo and Grease have good test suites.  Test-driven development will
ensure that existing facilities remain functional.  In addition,
stand-alone benchmark programs such as the Apache benchmark (ab) will
be used.

Benefits to the Student
===============
Better understanding of the commonalities and differences between
different Smalltalk dialects.  Learning the performance impact of
using different abstractions provided by the Smalltalk virtual
machines, and the  necessary trade-offs to be employed by a
high-performance component such as a web server.

Benefits to the Community
===============
Modernizing the Swazoo portability infrastructure to match more
closely other cross-platform projects that the Smalltalk community has
developed.  Improving performance and functionality of the Swazoo web
server.

Possible mentors
================
Paolo Bonzini, Julian Fitzell, Janko Mivšek, John O'Keefe (in
alphabetical order :-)

_______________________________________________
Esug-list mailing list
[hidden email]
http://lists.esug.org/listinfo/esug-list

--
_,.;:~^~:;._,.;:~^~:;._,.;:~^~:;._,.;:~^~:;._,.;:
Alexandre Bergel  http://www.bergel.eu
^~:;._,.;:~^~:;._,.;:~^~:;._,.;:~^~:;._,.;:~^~:;.







_______________________________________________
Esug-list mailing list
[hidden email]
http://lists.esug.org/listinfo/esug-list
Reply | Threaded
Open this post in threaded view
|

Re: AW: [Esug-list] Re: GSoC Idea: Swazoo web server/Grease improvements

Paolo Bonzini-2
On 03/15/2010 10:57 AM, Mariano Martinez Peck wrote:
> Sorry. I have just seen this message. I guess it is too late, but I
> don't know.
>
> Janko do you know ?

I think you can still update the site, the ideas are just ideas and a
student can come up with his own proposal.  The submission time is not a
hard limit for making updates.

Paolo
_______________________________________________
Esug-list mailing list
[hidden email]
http://lists.esug.org/listinfo/esug-list
Reply | Threaded
Open this post in threaded view
|

Re: AW: [Esug-list] Re: GSoC Idea: Swazoo web server/Grease improvements

Janko Mivšek
In reply to this post by Mariano Martinez Peck
On 15. 03. 2010 10:57, Mariano Martinez Peck wrote:
> Sorry. I have just seen this message. I guess it is too late, but I
> don't know.

It is not yet, as Paolo said, and I just added it to the Ideas page.
Sorry Alexandre to miss you in past week.

Best regards
Janko


>
> Janko do you know ?
>
> Cheers
>
> Mariano
>
> On Fri, Mar 12, 2010 at 7:29 PM, Alexandre Bergel <[hidden email]
> <mailto:[hidden email]>> wrote:
>
>     Here is my proposal
>
>     -=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=
>     Visualization of profiling information in Pharo and Squeak
>     Mentor: Alexandre Bergel
>
>     Level: Moderate to Difficult
>
>     Description:
>
>     Even though computing resources are abundant, execution optimization
>     through
>     code profiling remains an important software development activity. A
>     CPU time
>     profiler is a crucial tool to identify bottlenecks - program elements
>     that take a
>     large part of the execution time. Today, it is inconceivable to ship
>     a programming
>     environment without a code profiler included or provided by a third
>     party.
>
>     Unfortunately, Smalltalk environments did not receive deserved
>     attention on code profiling tools, and especially in Pharo and
>     Squeak. MessageTally is currently the only profiling tool on these
>     platforms. Whereas quite useful, profiling information would greatly
>     benefit from a graphical (instead of textual) rendering. Inspiring
>     example could be found on http://www.bootchart.org/images/bootchart.png
>
>     Technical detail:
>     The visualization part is offered by Mondrian
>     (www.moosetechnology.org/tools/Mondrian
>     <http://www.moosetechnology.org/tools/Mondrian>). Technical
>     challenges will be in getting the dynamic information and
>     determining relevant and defining compelling visualizations. A first
>     step was already done using the Spy framework
>     (http://www.moosetechnology.org/tools/Spy)
>
>     Benefits to the students:
>     The student will have the potential to make a great impact on the
>     Smalltalk community. Depending on the student taste, the project
>     goal may range from getting expressive visualizations and getting an
>     efficient implementation (e.g., with little runtime overhead). This
>     project is also suitable for research activities. The current state
>     of the art in this field is rather poor.
>
>     Benefits to the community:
>     MessageTally hasn’t significantly evolved over the last years. This
>     cannot last forever :-)
>     -=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=
>
>
>     On 12 Mar 2010, at 12:23, Nowak, Helge wrote:
>
>         Dear Mariano and Janko,
>
>         as promised here is our proposal.
>
>         Cheers
>         Helge
>
>         Title: Concurrency Architectures in Smalltalk
>
>         Mentor: Andreas Tönne
>
>         Co-Mentor: TBD
>
>         Level: Medium to Advanced
>
>         Description/technical details:
>         Modern hardware architectures provide parallel computing power
>         from the low end segment with multi-CPU boards and multi-core
>         CPUs up to massively parallel systems, clusters and grids with
>         thousands of processors. Traditional software development has
>         been based mainly on assumptions of non-concurrent processing.
>         The theoretical basics of parallel processing are researched and
>         well understood since the 1960-ies. Theory and practice show
>         there is no silver bullet, no solution that fits all circumstances.
>
>         On the other hand today’s software architectures such as Web
>         Applications and Service Oriented Architectures as well as ever
>         growing demands to the solutions of complex domain problems
>         require software systems to leverage the power that is provided
>         by the hardware. Software developers have to learn how to use
>         the potential of parallel processing. System developers have to
>         provide the necessary support by frameworks and tools. For quick
>         adoption such frameworks and tools should not be grass-root new
>         but be implemented in technologies already in use. A good part
>         of software systems in production written in Smalltalk fall into
>         the categories mentioned and would benefit from being able to
>         resort to standard architectures, frameworks and tools.
>
>         This project shall examine the various approaches to concurrent
>         processing and their implications on the applications in terms
>         of performance, scalability, robustness and security. The
>         solutions shall be based on multiple virtual machines and images
>         communicating among each others. The Actor model and Data
>         Centric Computing are examples of the architectures to be
>         considered. The students will develop Smalltalk reference models
>         on the basis of the assumption that the virtual machines are a
>         given and not changeable. An important part of the project is to
>         provide tools to examine and further develop the frameworks.
>         From the point of view of the application developer the
>         frameworks need to be intuitively to use and leave the
>         application code easy to maintain. Any frameworks and tools
>         developed shall be implemented under the Smalltalk principles of
>         Simplicity, Power, Genericity and Ease of Use.
>
>         Benefits to the Students:
>         The students will learn about the aspects of parallel computing
>         which is vital for all future software architectures. They will
>         learn how to implement reference models and frameworks for
>         everyday use by application developers. Last but not least they
>         will learn about the importance of tooling around any such basic
>         technology to ensure reaching the goals.
>
>         Benefits to the Community:
>         The whole Smalltalk community - the academic users, the open
>         source community, the vendors and the commercial and
>         non-commercial users - will benefit from being able to resort to
>         standard architectures, frameworks and tools as a basis for
>         their specific needs. Not only existing projects will be able to
>         enhance their systems in operation but also new ideas will be
>         more easily realized by being able to start from well examined
>         sound ground.
>
>
>         Von: Nowak, Helge
>         Gesendet: Freitag, 12. März 2010 10:55
>         An: 'Mariano Martinez Peck'; Janko Mivšek
>         Betreff: AW: [Esug-list] Re: GSoC Idea: Swazoo web server/Grease
>         improvements
>
>         Dear Mariano and Janko,
>
>         please expect a proposal from us about concurrency during this
>         day. It won’t be before 15:00 GMT+1 though.
>
>         Do you have any problems with that?
>
>         Many thanks in advance
>         Helge
>
>         **************************************************************
>         Helge K. Nowak
>         Technical Account Manager Cincom Smalltalk
>         Cincom Systems GmbH & Co. oHG
>         Am Kronberger Hang 4
>         D-65824 Schwalbach/Ts.
>         Tel.: +49-(0)89-89664494
>         Mobil: +49-(0)172-7400402
>         Fax: +49-(0)89-89664495
>         Email: mailto:[hidden email] <mailto:[hidden email]>
>         Web: http://www.cincom.com
>
>         All about Cincom Smalltalk:
>         http://www.cincomsmalltalk.com
>
>         A standpoint is an intellectual horizon of radius zero.
>         -- Albert Einstein
>
>         Geschäftsführer/Managing Directors: Thomas M. Nies, Gerald L.
>         Shawhan
>         oHG mit Sitz/based in Schwalbach/Ts. (Amtsgericht Königstein/Ts.
>         HRA 2653)
>         Pers. haftender Gesellschafter/Partner liable to unlimited extent:
>         Cincom Systems Verwaltungsgesellschaft mbH (Amtsgericht
>         Königstein/Ts. HRB 5069)
>         **************************************************************
>
>
>
>         Von: [hidden email]
>         <mailto:[hidden email]>
>         [mailto:[hidden email]
>         <mailto:[hidden email]>] Im Auftrag von
>         Mariano Martinez Peck
>         Gesendet: Freitag, 12. März 2010 10:51
>         An: Paolo Bonzini
>         Cc: ESUG Mailing list; Janko Mivšek; John O'Keefe
>         Betreff: [Esug-list] Re: GSoC Idea: Swazoo web server/Grease
>         improvements
>
>         Excellent. Thanks. I have just add it.
>
>         Cheers
>
>         Mariano
>
>         On Fri, Mar 12, 2010 at 8:46 AM, Paolo Bonzini <[hidden email]
>         <mailto:[hidden email]>> wrote:
>         The development of Swazoo, a web server written in Smalltalk,
>         has been
>         relatively slow recently.  This project proposes a series of
>         tasks to
>         improve Swazoo's position in the panorama of portable Smalltalk
>         projects, and a series of infrastructure improvements that could be
>         enabled by changes to Swazoo.
>
>         Some such task are refactorings of Swazoo with the following goals:
>
>         - improving the set of abstractions that Swazoo uses and
>         provides; for
>         example, GNU Smalltalk include a few changes to Swazoo that add
>         support for SCGI and make it also faster in general.
>
>         - Swazoo is currently using a cross-dialect portability layer
>         known as
>         Sport.  Most of it could be replaced by Seaside's Grease layer,
>         whose
>         development was initially started and is now coordinated by Julian
>         Fitzell.  Grease allows the user to write code more naturally than
>         with Sport, by defining a series of extensions to the
>         ANSI/Smalltalk-80 standard classes that are tested by Grease's test
>         suite.
>
>         - the only part of Sport that is not included in Grease is
>         support for
>         sockets.  There are two approaches to solving this.  One is to add a
>         small per-dialect layer to Swazoo, basically by inlining Sport's
>         classes into Swazoo.  The second is to add socket support to Grease.
>         The student could evaluate the relative advantages of these
>         approaches
>         and implement the one that is deemed better.
>
>         - regarding the latter possibility, Paolo Bonzini agreed to
>         relicense
>         GNU Smalltalk's Socket and File implementation under a different
>         license for use within Grease or within other dialects.  This
>         implementation is relatively large and it could be used as part of
>         Grease.
>
>         To sum up, the goals of this project are:
>         - Incorporate the changes and speedups that went into the version of
>         Swazoo distributed with GNU Smalltalk
>         - Incorporate and refactor Nicolas Petton's implementation of
>         SCGI for Swazoo
>         - Replace the Sport dependency with Grease as much as possible
>         - Augment Grease with new functionality
>
>         Additional goals could include development of a common HTTP request
>         framework to be used by Swazoo, Seaside, AidaWeb, Iliad and so on.
>
>         Technical Details
>         ===========
>         Swazoo and Grease have good test suites.  Test-driven
>         development will
>         ensure that existing facilities remain functional.  In addition,
>         stand-alone benchmark programs such as the Apache benchmark (ab)
>         will
>         be used.
>
>         Benefits to the Student
>         ===============
>         Better understanding of the commonalities and differences between
>         different Smalltalk dialects.  Learning the performance impact of
>         using different abstractions provided by the Smalltalk virtual
>         machines, and the  necessary trade-offs to be employed by a
>         high-performance component such as a web server.
>
>         Benefits to the Community
>         ===============
>         Modernizing the Swazoo portability infrastructure to match more
>         closely other cross-platform projects that the Smalltalk
>         community has
>         developed.  Improving performance and functionality of the
>         Swazoo web
>         server.
>
>         Possible mentors
>         ================
>         Paolo Bonzini, Julian Fitzell, Janko Mivšek, John O'Keefe (in
>         alphabetical order :-)
>
>         _______________________________________________
>         Esug-list mailing list
>         [hidden email] <mailto:[hidden email]>
>         http://lists.esug.org/listinfo/esug-list
>
>
>     --
>     _,.;:~^~:;._,.;:~^~:;._,.;:~^~:;._,.;:~^~:;._,.;:
>     Alexandre Bergel  http://www.bergel.eu
>     ^~:;._,.;:~^~:;._,.;:~^~:;._,.;:~^~:;._,.;:~^~:;.
>
>
>
>
>
>
>
>
> _______________________________________________
> Esug-list mailing list
> [hidden email]
> http://lists.esug.org/listinfo/esug-list

--
Janko Mivšek
Svetovalec za informatiko
Eranova d.o.o.
Ljubljana, Slovenija
www.eranova.si
tel:  01 514 22 55
faks: 01 514 22 56
gsm: 031 674 565
_______________________________________________
Esug-list mailing list
[hidden email]
http://lists.esug.org/listinfo/esug-list