# Programming Languages

IronWeave offers significant flexibility when it comes to programming languages, distinguishing itself from many other blockchain platforms.

Here's a breakdown of IronWeave's approach compared to other blockchains:

## **Language Agnosticism and Accessibility**

IronWeave's APIs are **accessible by any modern programming language**. This means developers can use their preferred and familiar languages to interact with the IronWeave network. This capability widens the potential development community to include traditional enterprise companies, institutions, agencies, large integrators, and solution providers, who might not typically engage with blockchain development due to specialized language requirements.

In addition to being able to use the programming languages they already know, ssers **do not need to have their own nodes** to create chains, develop, or interact with the fabric.

## **Contrast with Other Blockchains (Monolithic Blockchains):**

Unlike many monolithic blockchains that often require a specialized language for applications (e.g., Solidity for Ethereum), IronWeave **does not require a specialized language** for application development. It's also **not necessary to deploy applications onto the chain network as open-source smart contracts** in IronWeave.

IronWeave-enabled applications can run on virtually any platform, cloud, server, or device, and then interact with the network using high-performance, industry-standard gRPC APIs. This design is a distinct and welcome departure from the constraints of most monolithic blockchains, where developers might need to "bribe miners with high gas fees" to ensure quick transaction recording.

## **Flexibility for Smart Contracts:**

While smart contracts on IronWeave operate similarly to those on other blockchains, **each smart contract is its own chain**, enabling immutability and tracking of operations. IronWeave will support **Web Assembly (WASM)**, when its smart contract infrastructure is made available making smart contracts more flexible and secure, as they can be built with any modern programming language. This makes exploits more difficult.

Importantly and notably, tokens on IronWeave can be exchanged in-fabric **with or without a smart contract**.

{% hint style="info" %}
The IronWeave smart contract infrastructure will be released before the release of Mainnet.
{% endhint %}

## **Enabling Diverse Applications:**

IronWeave's programming language flexibility, combined with IronWeave's flexible block sizes and types, supports an unlimited range of applications. Developers can define their own custom block types or entire categories of blocks, tailored to specific data or compliance requirements.

This open developer platform accelerates blockchain integration with unmatched ease and security, providing a suite of APIs and SDKs. IronWeave will also open-source software patterns to empower developers to create robust, privacy-centric applications. This software pattern library will allow for and facilitate the integration of legacy applications *and* the building of Web3 DApps.


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://docs.ironweave.io/flexibility/programming-languages.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
