Sign Up

Sign Up to our social questions and Answers Engine to ask questions, answer people’s questions, and connect with other people.

Have an account? Sign In

Have an account? Sign In Now

Sign In

Login to our social questions & Answers Engine to ask questions answer people’s questions & connect with other people.

Sign Up Here

Forgot Password?

Don't have account, Sign Up Here

Forgot Password

Lost your password? Please enter your email address. You will receive a link and will create a new password via email.

Have an account? Sign In Now

You must login to ask a question.

Forgot Password?

Need An Account, Sign Up Here

Please briefly explain why you feel this question should be reported.

Please briefly explain why you feel this answer should be reported.

Please briefly explain why you feel this user should be reported.

Sign InSign Up

The Archive Base

The Archive Base Logo The Archive Base Logo

The Archive Base Navigation

  • SEARCH
  • Home
  • About Us
  • Blog
  • Contact Us
Search
Ask A Question

Mobile menu

Close
Ask a Question
  • Home
  • Add group
  • Groups page
  • Feed
  • User Profile
  • Communities
  • Questions
    • New Questions
    • Trending Questions
    • Must read Questions
    • Hot Questions
  • Polls
  • Tags
  • Badges
  • Buy Points
  • Users
  • Help
  • Buy Theme
  • SEARCH
Home/ Questions/Q 7789773
In Process

The Archive Base Latest Questions

Editorial Team
  • 0
Editorial Team
Asked: June 1, 20262026-06-01T21:24:00+00:00 2026-06-01T21:24:00+00:00

There is a project I’m about to build in Smalltalk (Pharo). And there is

  • 0

There is a project I’m about to build in Smalltalk (Pharo). And there is a python library which I intend to use for the same. Now, there are 3 options:

  • Smalltalk wrapper for those python libraries
  • Porting the python library to Smalltalk
  • Write the library from scratch (in Smalltalk) for use in my project

The following are my queries:

  1. What are ‘basic’ differences in porting/wrapping (No satisfactory explanation found anywhere yet)
  2. How to know when to use which (of all the three)?
  3. Any resources or pointers where I can get further help/some kick-start into my project.

Thanks!

  • 1 1 Answer
  • 0 Views
  • 0 Followers
  • 0
Share
  • Facebook
  • Report

Leave an answer
Cancel reply

You must login to add an answer.

Forgot Password?

Need An Account, Sign Up Here

1 Answer

  • Voted
  • Oldest
  • Recent
  • Random
  1. Editorial Team
    Editorial Team
    2026-06-01T21:24:02+00:00Added an answer on June 1, 2026 at 9:24 pm

    Wrapper

    Write functions in the native language whose sole purpose is to call the functions in the external library. The goal is to do as little as possible in the native language. For example, translating data types from the native language to the external library language, etc.

    Wrappers make sense when the external library is:

    • written in a more efficient language than the native code (eg, a C++ library called from Python)
    • large/complex and would be time-consuming or error prone to translate
    • regularly updated; in a well-maintained library the interfaces (what your wrapper is concerned with) will change less often than the implementation of the features; so if you have wrappers around the functionality, updating to a new version of the library should be fairly straightforward

    Porting

    A port is simply a translation from one language to another. In general, the same logic is maintained as much as possible.

    Porting makes sense when:

    • the native language is more efficient than the external library
    • the library is simple and one wants to save on the overhead involved with wrapping
    • one intends to make and maintain changes to the ported code in the native language
    • there are no plans to use the external library in its own language
    • one wants to learn one or both of the languages involved

    Re-Write

    Think of a Re-Write as a Port with a lot of refactoring. The goal is to take advantage of features of the native language to improve the library in some way (efficiency, readability, etc.)

    Re-Writing makes sense in all of the same scenarios as porting. Deciding whether to do a simple port or a full re-write usually comes down to one question:

    • Is there a better way to implement the features of the external library in the native language?
    • 0
    • Reply
    • Share
      Share
      • Share on Facebook
      • Share on Twitter
      • Share on LinkedIn
      • Share on WhatsApp
      • Report

Sidebar

Related Questions

In my project there is a listview which contains textview and checkbox..Here is my
In my project there are large no. of FIXME / TODO which are to
In my project there are some code snippets which uses StringBuffer objects, and the
In my project there are certain directories and certain php files which are very
in my mvvm project there is one interface which contain add,update,delete interface.therefore interface is
In my current project there is a Form class which looks like this: public
HI there My project's images are designed for iphone4, which are, if i am
In our Project there is one critical thing which we need to implement .
In my project there is an UI which contains a combobox and the combobox
In my project there is an UserControl which includes a NumericUpDown ctrl, and its

Explore

  • Home
  • Add group
  • Groups page
  • Communities
  • Questions
    • New Questions
    • Trending Questions
    • Must read Questions
    • Hot Questions
  • Polls
  • Tags
  • Badges
  • Users
  • Help
  • SEARCH

Footer

© 2021 The Archive Base. All Rights Reserved
With Love by The Archive Base

Insert/edit link

Enter the destination URL

Or link to existing content

    No search term specified. Showing recent items. Search or use up and down arrow keys to select an item.