Developpez.com - Rubrique Linux

Le Club des Développeurs et IT Pro

IBM lance IBM Swift Sandbox

Un navigateur capable d'exécuter du code Swift en ligne

Le 2015-12-05 22:58:53, par Malick, Community Manager
IBM lance IBM Swift Sandbox
Un navigateur capable d’exécuter du code Swift en ligne dans un environnement Linux

IBM vient d’annoncer la disponibilité d’un nouveau navigateur qui offre aux développeurs la possibilité d'écrire du code Swift et de l’exécuter directement en ligne. Ce dernier, baptisé IBM Swift Sandbox, n’est utilisable que dans un environnement Linux.

Cette annonce intervient juste après le passage en open source de Swift du célèbre langage de programmation d'Apple.

Selon les développeurs, IBM Swift Sandbox supporte les dernières versions de Swift et favorise l’utilisation des fonctions et des bibliothèques standards de ce langage. Son interface se présente en deux parties :

  • une première partie se trouvant à gauche et permettant d'écrire les lignes de code ;
  • et une seconde partie située à droite et dans laquelle s’affichera le résultat après l’exécution du code.


Source : IBM developerWorks

Et vous ?

Que pensez-vous du nouveau navigateur IBM Swift Sandbox ?
Allez-vous l’essayer ?

Voir aussi : forum Swift
  Discussion forum
9 commentaires
  • Paul TOTH
    Expert éminent sénior
    le site en question propose de taper un source Swift, de l'exécuter sur le serveur IBM et d'afficher le résultat dans la page web, ce n'est donc pas équivalent à Java/SilverLight/Flash

    il n'y a qu'à voir cet exemple
    Code :
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    /* Writes a "Hello world" program in C++ and Python
       compiling and running both. This shows one of the ways
       Swift can interact with other languages.
    */
    
    #if os(OSX) || os(iOS) || os(watchOS) || os(tvOS)
        import Darwin
    #else
        import Glibc
    #endif
    
    system("touch a.cpp")
    var stream = fopen("a.cpp", "r+")
    var program = "#include <iostream>\n using namespace std;\n int main() {\n" +
    "cout << \"hello c++\" << endl;\n}"
    
    fwrite(program,1,program.characters.count,stream)
    fclose(stream)
    
    system("clang++ a.cpp")
    system("./a.out")
    
    system("touch a.py")
    stream = fopen("a.py", "r+")
    program = "print \"hello python\""
    
    fwrite(program,1,program.characters.count,stream)
    fclose(stream)
    
    system("python a.py")
    le programme crée un programme "a.cpp" qu'il compile en "a.out" avec clang++ avant de l'exécuter, puis crée un programme python "a.py" qu'il exécute avec "python a.py"

    tout cela se déroule sur le serveur évidemment.
  • codec_abc
    Membre confirmé
    Envoyé par sazearte
    Pour les utilisateurs Windows sa ne change rien:

    En regardant sur internet ils parle bien d'un web browser, donc d'un navigateur web.

    http://9to5mac.com/2015/12/04/swift-...e-ibm-sandbox/
    http://apple.shianberry.com/?p=7839

    Pourquoi faire un navigateur si ce n'est pour exécuter du code a distance ? comme avec flash, silverlight ou les activX ?
    Je pense que tu n'a pas compris. Le postulat de départ pour ce genre d'outil est que c'est lourd à installer quand tu veux juste jouer avec le langage. Typiquement, si tu as apprend le C/C++ te farcir une installation de Visual (par exemple) juste pour faire un "hello world" c'est assez pénible. Du coup l'idée c'est que des personnes sympathique mettent à disposition des serveurs web qui te compilent ton code et l’exécute à ta place. Comme ça tu n'a qu'a ouvrir ton navigateur, taper ton code et cliquer sur un bouton. En plus, si tu es sur une plateforme que ton langage ne supporte pas (ex : Windows pour Swift) tu peux expérimenter le langage facilement. Par exemple, voila un équivalent pour Rust.

    Edit : D'ailleurs dans la page de l'article il y a un lien qui permet de tester la chose :Ici
  • codec_abc
    Membre confirmé
    Effectivement, il n' est pas du tout question d'un nouveau navigateur. C'est "juste" un nouveau serveur web qui permet aux utilisateurs de compiler et d’exécuter (dans une certaine mesure) du code Swift sur le serveur afin d’expérimenter avec le langage. D'ailleurs il serait bien que les rédacteurs s'assurent un peu du contenu de leur news avant de les poster. Ce n'est pas la première fois que cela arrive et je finis par me demander s'ils comprennent vraiment les informations qu'ils relaient.

    Pour en revenir au sujet je trouve ça très bien. Quand on regarde un langage par curiosité c'est bien de pouvoir le tester rapidement sans se farcir une installation assez lourde. Sans parler, des utilisateur sous Windows qui n'ont pas d'autre choix.
  • psychadelic
    Expert confirmé
    Il y a à peine quelque jours, Apple a rendu swift OpenSource.
    Donc IBM profite de l' occase pour dévoiler son "truc" sur swift.

    swift est un bon langage (même si c'est Apple qui l'a "fait", qui profite des derniers aboutissements, paradigmes, sécurités, adaptabilités, (etc.. toute une panoplie) en matière de langages de programmation.
    d'ailleurs Apple à clairement indiqué qu'il allait laisser tomber ObjectiveC pour swift.

    On verra ce que l'avenir nous réserve, mais l'idée d'avoir un seul langage commun pour tous les constructeurs et toutes les plateformes est plutôt séduisante.
  • gstratege
    Membre actif
    Je ne pense pas que le but d'IBM et de créer un vrai navigateur, c'est juste une plateforme pour pouvoir développer et exécuter du code Swift en dehors d'un environnement Apple.
  • Haseo86
    Membre éclairé
    On verra ce que l'avenir nous réserve, mais l'idée d'avoir un seul langage commun pour tous les constructeurs et toutes les plateformes est plutôt séduisante.
    Y'en a qu'ont essayé :p
  • Envoyé par sazearte
    Il y'a 20ans MS crée les ActivX permettant d'exécuter du code C++ dans le navigateur.
    Il y'a 20ans Macromedia crée Macromedia Flash qui est aujourd'hui Adobe Flash.

    Que pensez-vous du nouveau navigateur IBM Swift Sandbox ?
    Un futur logiciel truffer de failles et que même dans 20ans il y'en auras toujours autant

    Swift et moins permissif sous IOS que le C++ sous Windows 95, mais des virus codé en swift sa existe quand même sous IOS.
    Pour ActivX j'en savais rien du coté transparence du codage C++... J'ai toujours cru que c'était du compilé et "linker" puisque c'est un plugin en soit.
    Merci pour l'info mais je préfère la mettre dans la case peu probable...

    Envoyé par sazearte
    Pour les utilisateurs Windows sa ne change rien:

    En regardant sur internet ils parle bien d'un web browser, donc d'un navigateur web.

    http://9to5mac.com/2015/12/04/swift-...e-ibm-sandbox/
    http://apple.shianberry.com/?p=7839

    Pourquoi faire un navigateur si ce n'est pour exécuter du code a distance ? comme avec flash, silverlight ou les activX ?
    Au moins là tu l'as le code source du front-end, non?
    A JavaScript tu peux même avoir le code source de certaines tâches que les serveurs web ne veulent plus faire...
  • RyzenOC
    Inactif
    Il y'a 20ans MS crée les ActivX permettant d'exécuter du code C++ dans le navigateur.
    Il y'a 20ans Macromedia crée Macromedia Flash qui est aujourd'hui Adobe Flash.

    Que pensez-vous du nouveau navigateur IBM Swift Sandbox ?
    Un futur logiciel truffer de failles et que même dans 20ans il y'en auras toujours autant

    Swift et moins permissif sous IOS que le C++ sous Windows 95, mais des virus codé en swift sa existe quand même sous IOS.
  • RyzenOC
    Inactif
    Quand on regarde un langage par curiosité c'est bien de pouvoir le tester rapidement sans se farcir une installation assez lourde. Sans parler, des utilisateur sous Windows qui n'ont pas d'autre choix.
    Pour les utilisateurs Windows sa ne change rien:
    Ce dernier, baptisé IBM Swift Sandbox, n’est utilisable que dans un environnement Linux.
    En regardant sur internet ils parle bien d'un web browser, donc d'un navigateur web.

    http://9to5mac.com/2015/12/04/swift-...e-ibm-sandbox/
    http://apple.shianberry.com/?p=7839

    Pourquoi faire un navigateur si ce n'est pour exécuter du code a distance ? comme avec flash, silverlight ou les activX ?