IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

C Discussion :

C3 : un langage de programmation système basé sur le C, permet un accès sécurisé aux tableaux


Sujet :

C

  1. #21
    Membre éprouvé
    Profil pro
    programmeur du dimanche
    Inscrit en
    Novembre 2003
    Messages
    957
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations professionnelles :
    Activité : programmeur du dimanche
    Secteur : Santé

    Informations forums :
    Inscription : Novembre 2003
    Messages : 957
    Par défaut
    Citation Envoyé par Madmac Voir le message
    Les types utilisés se limitaient à indiquer le nombre de bits des variables.
    Et encore, de manière carrée avec les "Fixed width integer types" du C99 . Sinon pour connaître la taille d'un int c'était sizeof(int) pour pas avoir une blague du compilateur...

  2. #22
    Membre chevronné
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Septembre 2019
    Messages
    302
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Morbihan (Bretagne)

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Septembre 2019
    Messages : 302
    Par défaut
    Citation Envoyé par jbrosset Voir le message
    Bonjour à tous,
    J'ai appris l'informatique en 1981... c'est-à-dire à une époque où les moyens informatiques étaient extrêmement limités (processeur, mémoire...) et déjà je considérais C comme un mauvais langage par le peu de sécurité qu'il apportait.
    Mon premier langage de prédilection a été Pascal qui évidemment était plus contraignant mais infiniment plus sûr.
    J'ai appris et pratiqué d'autres langages impératifs comme Ada et j'en garde un souvenir ébloui pour la fiabilité des résultats obtenus : ah oui, c'était moins drôle de programmer qu'avec C parce que le compilateur trouvait souvent à redire, mais les messages d'erreurs étaient hyper précis et les bugs étaient éliminés si rapidement !
    Je n'arrive pas à comprendre qu'aujourd'hui, avec les moyens immenses de mémoire et puissance de calcul dont on dispose, on en soit resté à des langages aussi basique que C et ses compères, qui sont des usines à bugs !
    Ca coûte des milliards et des milliards, les logiciels bugués, alors qu'un langage avec des concepts propres et sécurisés apporte une efficacité de développement GLOBALE bien meilleure : certes ça va moins vite au départ, mais quel gain de temps et de fiabilité ensuite !
    Aujourd'hui, j'ai pris du large avec le développement informatique... mais je constate toujours énormément de bugs dans les logiciels que j'utilise, certains dont je devine la cause (des contrôles sémantiques pas faits), et je me dis... mais pourquoi ??? pourquoi fait-on tant de progrès par ailleurs et si peu en Génie Logiciel ? ça me semble aberrant.
    Suis-je le seul vieux schnock à penser ça ?
    La réponse est simple: ce n'est pas un problème de langage, mais un problème de conception. Il suffit de comparer avec l'électronique: pour le moindre composant électronique, il y a un cahier des charges précis, avec des courbes de fonctionnement en fonction de la température/humidité où je ne sais quoi, et autres nombreuses informations. En informatique, ça reste le bordel, chacun fait ce qu'il veut. Il suffit de lire les contrats quand on installe un logiciel: grosso modo, si votre disque dur est effacé après installation du logiciel, ce n'est pas la faute du logiciel.
    Et quand un site web fonctionne parfaitement avec une interface ergonomique, un guignol décide qu'il faut tout changer, juste pour le principe de changer (exemple la scnf).
    Sinon, je suis d'accord: Ada correspond le mieux à un langage destiné à l'ingénierie logicielle.

  3. #23
    Membre très actif
    Profil pro
    Inscrit en
    Décembre 2004
    Messages
    586
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2004
    Messages : 586
    Par défaut
    Ouais, vivement le Crust...

  4. #24
    Communiqués de presse

    Femme Profil pro
    Traductrice Technique
    Inscrit en
    Juin 2023
    Messages
    2 260
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : France

    Informations professionnelles :
    Activité : Traductrice Technique

    Informations forums :
    Inscription : Juin 2023
    Messages : 2 260
    Par défaut Tsoding s'attaque à C3 : C3 est-il l'avenir de C ? Ou de D ? Ou doit-on attendre C4 ?
    « Ils ont fait une suite à C », Tsoding s'attaque à C3 : C3 est-il l'avenir de C ? Ou de D ? Ou doit-on attendre C4 ?

    Voici la présentation du langage de programmation C3. Puis, le développeur Tsonding explore les particularités du langage.

    C3 est un langage de programmation qui s'appuie sur la syntaxe et la sémantique du langage C, dans le but de le faire évoluer tout en conservant sa familiarité pour les programmeurs C. Le langage de programmation C3 est une évolution, pas une révolution : un genre de C pour les programmeurs qui aiment le C. Le langage de programmation C3 se veut simple, rapide, sûr, compilé pour développer des logiciels faciles à maintenir.

    Grâce à une compatibilité ABI complète avec C, il est possible de mélanger C et C3 dans le même projet sans aucun effort. Comme démonstration, vkQuake a été compilé avec une petite partie du code converti en C3 et compilé avec le compilateur c3c.

    Nom : 1.jpg
Affichages : 166729
Taille : 20,9 Ko

    Voici quelques particularités du langage C3 :

    • Compatibilité ABI C complète : C3 s'intègre directement dans votre application C/C++ avec une compatibilité ABI C complète : pas besoin de types ou de fonctions spéciales "compatibles C", pas de limitations sur les fonctionnalités de C3 que vous pouvez utiliser à partir de C.
    • Système de modules : Un système de modules simple et direct qui n'entrave pas le travail avec des valeurs par défaut qui ont du sens.
    • Macros sémantiques : Des macros qui sont aussi faciles à lire et à écrire que des fonctions normales. Avec beaucoup plus de puissance que le préprocesseur du C, elles sont délibérément équilibrées pour s'assurer que la lecture du code n'est pas rendue difficile.
    • Contrats graduels : C3 apporte la programmation par contrat au grand public avec des contrats discrets qui sont utilisés pour exprimer les contraintes d'exécution et de compilation.
    • Erreurs sans surcharge : La gestion des erreurs combine les meilleurs aspects des erreurs "Result" avec l'utilisation facile des exceptions et s'intègre de façon transparente avec le langage C.
    • Tranches et découpage intégrés : Les tranches sont des types sûrs « pointeur + longueur » qui supportent nativement la copie et la comparaison.
    • Modules génériques : Les modules génériques de C3 offrent une simplicité et une clarté supérieures pour la création de types génériques.
    • Réflexion à l'exécution et à la compilation : L'introspection de type est disponible à la fois à la compilation et à l'exécution, alimentant des macros et des fonctions flexibles.
    • Assemblage en ligne : Écrire de l'asm comme du code en ligne normal sans utiliser de chaînes ou de contraintes cryptiques.
    • Débogage avec contrôles de sécurité : Soyez confiant dans l'exactitude de votre code : en mode débogage, le compilateur insère des contrôles de limites et des contrôles de valeurs étendus au moment de l'exécution, qui, avec les contrats, vous permettront de détecter les bogues rapidement.
    • Traces de pile détaillées : Fini les erreurs anonymes de type « segmentation fault » : la bibliothèque standard de C3 permet d'obtenir des traces de piles détaillées pour vos constructions de débogage.


    Dans la vidéo suivante, le développeur Tsoding explore les possibilités et les performances du langage C3 :


    Et vous ?

    Avez-vous utilisé ce langage pour votre usage ou le développement d'applications, et si oui qu'en pensez-vous ?

    Voir aussi :

    C3 : un langage de programmation système basé sur le C, permet un accès sécurisé aux tableaux, les conteneurs de haut niveau et manipulation des chaînes de caractères

    Est-il possible de remplacer le C ? Le créateur du langage C3 donne des raisons pour lesquelles ce type d'initiative est voué à l'échec, au moment où le noyau Linux s'ouvre de plus en plus au Rust

    C23 : un C légèrement meilleur. Le langage de programmation C continue d'évoluer, lentement et prudemment, par Daniel Lemire
    Publication de communiqués de presse en informatique. Contribuez au club : corrections, suggestions, critiques, ... Contactez le service news et Rédigez des actualités

  5. #25
    Membre très actif
    Profil pro
    DIRLO
    Inscrit en
    Juillet 2009
    Messages
    214
    Détails du profil
    Informations personnelles :
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : DIRLO

    Informations forums :
    Inscription : Juillet 2009
    Messages : 214
    Par défaut
    ça fait penser plutôt à du C2S ou du C SE ... cheap non ?

    C4 est stable mais reste dangereux ( https://fr.wikipedia.org/wiki/Composition_C-4 )

Discussions similaires

  1. Réponses: 10
    Dernier message: 24/04/2021, 10h30
  2. Quel langage pour une interface qui interagit avec l'utilisateur ?
    Par captain dans le forum Langages de programmation
    Réponses: 3
    Dernier message: 04/12/2007, 09h46
  3. Qqch qui ressemble à une fonction Last()
    Par epfyffer dans le forum Deski
    Réponses: 1
    Dernier message: 08/05/2007, 10h06
  4. Quel langage pour une application qui gère des contrats et des factures ?
    Par pigpen dans le forum Langages de programmation
    Réponses: 7
    Dernier message: 12/02/2007, 19h06
  5. [langage] Creer une fonction qui met en majuscule ?
    Par Cyber@l dans le forum Langage
    Réponses: 6
    Dernier message: 04/12/2003, 18h44

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo