Instantly convert code snippets from Haskell to C with our free online code converter. Transform your code easily and accurately.
We prioritize your code's security and privacy. Your code is not stored on our servers and is only temporarily processed for conversion. We use OpenAI's secure servers for the conversion process, ensuring your code remains confidential.
Haskell is a purely functional programming language.
C is a general-purpose, procedural computer programming language supporting structured programming, lexical variable scope, and recursion, with a static type system.
import Data.Char (isAlphaNum, toLower)
isPalindrome :: String -> Bool
isPalindrome str = clean == reverse clean
  where clean = map toLower $ filter isAlphaNum str
main :: IO ()
main = do
  print $ isPalindrome "A man, a plan, a canal: Panama" -- True
  print $ isPalindrome "race a car" -- False#include <stdio.h>
#include <string.h>
#include <ctype.h>
int isPalindrome(export const char* str) {
    char clean[1000];
    int j = 0;
    
    // Clean the string
    for(int i = 0; str[i]; i++) {
        if(isalnum(str[i])) {
            clean[j++] = tolower(str[i]);
        }
    }
    clean[j] = '\0';
    
    // Check palindrome
    int left = 0;
    int right = strlen(clean) - 1;
    while(left < right) {
        if(clean[left] != clean[right]) return 0;
        left++;
        right--;
    }
    return 1;
}
int main() {
    printf("%d\n", isPalindrome("A man, a plan, a canal: Panama")); // 1
    printf("%d\n", isPalindrome("race a car")); // 0
    return 0;
}bubbleSort :: Ord a => [a] -> [a]
bubbleSort xs = foldr (\_ -> bubble) xs [1..length xs - 1]
  where
    bubble [] = []
    bubble [x] = [x]
    bubble (x:y:xs)
      | x > y     = y : bubble (x:xs)
      | otherwise = x : bubble (y:xs)
main :: IO ()
main = print $ bubbleSort [64, 34, 25, 12, 22, 11, 90]#include <stdio.h>
void bubbleSort(int arr[], int n) {
    for(int i = 0; i < n; i++) {
        for(int j = 0; j < n - i - 1; j++) {
            if(arr[j] > arr[j + 1]) {
                int temp = arr[j];
                arr[j] = arr[j + 1];
                arr[j + 1] = temp;
            }
        }
    }
}
int main() {
    int arr[] = {64, 34, 25, 12, 22, 11, 90};
    int n = sizeof(arr)/sizeof(arr[0]);
    
    bubbleSort(arr, n);
    
    for(int i = 0; i < n; i++) {
        printf("%d ", arr[i]);
    }
    return 0;
} Haskell→
Haskell→Convert Haskell to Python
Open Converter Haskell→
Haskell→Convert Haskell to JavaScript
Open Converter Haskell→
Haskell→Convert Haskell to TypeScript
Open Converter Haskell→
Haskell→Convert Haskell to Java
Open Converter Haskell→
Haskell→Convert Haskell to C++
Open Converter Haskell→
Haskell→Convert Haskell to C#
Open Converter Haskell→
Haskell→Convert Haskell to Go
Open Converter Haskell→
Haskell→Convert Haskell to Dart
Open Converter Haskell→
Haskell→Convert Haskell to Ruby
Open Converter Haskell→
Haskell→ Swift
SwiftConvert Haskell to Swift
Open Converter Haskell→
Haskell→Convert Haskell to Kotlin
Open Converter Haskell→
Haskell→Convert Haskell to Rust
Open Converter Haskell→
Haskell→ Scala
ScalaConvert Haskell to Scala
Open Converter Haskell→
Haskell→Convert Haskell to PHP
Open Converter Haskell→
Haskell→ R
RConvert Haskell to R
Open Converter Haskell→
Haskell→ Julia
JuliaConvert Haskell to Julia
Open Converter Haskell→
Haskell→ MATLAB
MATLABConvert Haskell to MATLAB
Open Converter Haskell→
Haskell→ Lua
LuaConvert Haskell to Lua
Open Converter Haskell→
Haskell→ Assembly
AssemblyConvert Haskell to Assembly
Open Converter Haskell→
Haskell→Convert Haskell to Perl
Open Converter Haskell→
Haskell→ Groovy
GroovyConvert Haskell to Groovy
Open Converter Haskell→
Haskell→ Elixir
ElixirConvert Haskell to Elixir
Open Converter Haskell→
Haskell→ F#
F#Convert Haskell to F#
Open Converter Haskell→
Haskell→ Clojure
ClojureConvert Haskell to Clojure
Open Converter Haskell→
Haskell→ Delphi
DelphiConvert Haskell to Delphi
Open Converter