User Tools

Site Tools


ischeme:example_applications

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revision Previous revision
Next revision
Previous revision
ischeme:example_applications [2011/03/19 17:30]
ebainomu
ischeme:example_applications [2011/04/08 18:34] (current)
ebainomu
Line 1: Line 1:
 ====== Example Applications ====== ====== Example Applications ======
-[[ischeme]] has been used to develop non-trivial distributed iPhone applications. +[[ischeme]] has been used to develop non-trivial distributed iPhone applications. Below are the representative example applications:
  
 +  * [[#AmbiScrabble_Game_for_the_iPhone | AmbiScrabble Game for the iPhone ]]
 +  * [[#PolyGlot_Chat_Application| PolyGlot Chat Application]]
  
 ===== AmbiScrabble Game for the iPhone ===== ===== AmbiScrabble Game for the iPhone =====
Line 34: Line 35:
 Thanks to Nick De Cooman for undertaking the AmbiScrabble project (under supervision of [[http://soft.vub.ac.be/~ebainomu|Engineer Bainomugisha]] and [[http://soft.vub.ac.be/~egonzale|Elisa Gonzalez Boix]]) to validate the Scheme and Objective-C symbiosis Thanks to Nick De Cooman for undertaking the AmbiScrabble project (under supervision of [[http://soft.vub.ac.be/~ebainomu|Engineer Bainomugisha]] and [[http://soft.vub.ac.be/~egonzale|Elisa Gonzalez Boix]]) to validate the Scheme and Objective-C symbiosis
  
 +
 +===== PolyGlot Chat Application =====
 +PolyGlot chat is a distributed chat application that enables users to write text messages in their preferred language and have the text message translated in realtime to the receiver's language. 
 +
 +==== How the chat works ====
 +The application works as follows: When a chat application is started the user is prompted to specify the preferred language.  Then a text chat conversation can begin with a selected a buddy. When a chat message is received from a buddy,  it is automatically translated from the buddy's language to the user's specified language. For instance, if Bob (an English speaker), sends a message "Hello there" to Tim (a Dutch speaker), the message is displayed as "Hallo daar" on Tim's chat window.
 +
 +{{:ischeme:polyglotchatshot.png|:ischeme:polyglotchatshot.png}}
 +==== Application design and implementation ====
 +
 +The PolyGlot chat application has been designed in a peer-to-peer fashion without assuming a centralised server. We implement the chat logic and distribution concerns of the application in [[iScheme|iScheme]], while the graphical user interface (GUI) is implemented in Objective-C using the Cocoa framework. The translation happens using the Google translator API which is accessible from iScheme, thanks to the Objective-C and Scheme symbiosis. 
ischeme/example_applications.1300552217.txt.gz · Last modified: 2011/03/22 23:30 (external edit)