Search code examples
clojure

What is the difference between core.clj and inope.clj in a clojure project?


What is the difference between core & inope?

I have a very brief idea that core is like the main equivalent in Java. And inope is like an interface between java and clojure, although I dont understand the purpose of inope entirely.

I found this in a project and this is my understanding: inope.clj is used for writing java clojure interoperable functions.

The namespace contents imply that it functions like core.clj here.

in this inope.clj file, they have imported dependencies and defined java-clojure interoperable functions in gen-class as such :

 (ns prject-avon.inope
  (:require [prject-avon.ioutil :as utl]
            [aero.core :as aero-core :refer (read-config)]
            [clojure.java.data :as clj-data]
            [malli.core :as m]
            [malli.util :as mu]
            [malli.instrument :as mi]
            [malli.error :as me]
            [malli.json-schema :as json-schema]
            
  (:gen-class
    :methods [ ^{:static true} [validateData [Object String] Boolean]
              ]))
   <Functions are defined here>

Solution

  • Those are just names, there's no significance to them. In particular, I've never heard of inope myself. The only way you can reliably judge is by the namespace's contents and their usage. It's also very possible that a single namespace contains all sorts of unrelated stuff.