Code Monkey home page Code Monkey logo

Comments (2)

alex-chew avatar alex-chew commented on July 29, 2024

@robin-aws I think it's possible for the file I/O externs to support both --unicode-char options at the same time. The exposed methods use string only for the file path parameter and the error message types (the read/written bytes are seq<bv8> and not string). Does the following approach make sense to you?

  • In target languages that support method overloading, like Java and C#, define a method overload for each compiled char type (char and Dafny.Rune in C#, or char and Dafny.CodePoint in Java)
  • In target languages that don't support method overloading but are dynamically typed, like JS and Python, branch on the path argument's type and return the error message (if applicable) as the same type
  • In Golang, define a union interface of the _dafny.Char and _dafny.CodePoint wrappers, and (like the JS/Python approach) branch on the argument's actual types (returning an appropriate error message type)

(Python and Golang aren't supported yet, but I want to check that this approach is feasible so we don't have to change our minds when we do add support.)

from libraries.

davidcok avatar davidcok commented on July 29, 2024

OK - though the proof is in the doing.

from libraries.

Related Issues (20)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.