This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
# python_julia_connector.py | |
import os | |
from juliacall import Main as jl | |
# from juliacall import JuliaError # To specifically catch Julia errors if needed | |
# --- Environment Management & Initialization --- | |
# You might need to configure JuliaCall if Julia is not in your PATH | |
# or if you want to use a specific Julia project environment. | |
# For example: | |
# from juliacall import JuliaCall # For more control |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
New features get merged into `development` | |
New corrections get merged into `release` | |
Every new merge creates a new version. | |
A release has the versioning 2024.06.12-1 | |
Binaries are called release-2024.06.12-1 and | |
development-2025.07.23-2 |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
homoiconic transpiler toolchain |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Semantic transparency | |
Examples: | |
-- Multiple dispatch - ECS | |
-- Lambda principle - Lisp interpreter | |
An implementation can match the semantics of the architecture of the underlying system. | |
The tool ideally matches the product. |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
If CVEs in C++ code were 98% lower (2% of today) in the four key buckets -- initialization safety, type safety, bounds safety, and lifetime safety -- then we wouldn't be having this conversation. There would be no problem. | |
Cpp2 today has | |
guaranteed initialization safety (better than C# or Java), | |
guaranteed type safety (via safe is type queries and as casts), | |
bounds safety (via subscript checking, banning pointer arithmetic, and safe-by-construction iteration such as range-for) except for naked use of raw STL iterators, and |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
--Rich Hickey's infamous transducers, demonstrating reversed function composition. | |
--Look closely. | |
function transduce(tf, rf, init, iter) | |
for i in iter do | |
init = tf(rf)(init, i) | |
end | |
return init | |
end |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
// Type definitions for method signatures and dispatch information | |
private typedef MethodSignature = { | |
var paramTypes:Array<Class<Dynamic>>; | |
var method:Dynamic; | |
} | |
// Dispatcher implementation that could be used by a transpiler | |
class GenericDispatcher { | |
// Static registry for all multi-methods | |
private static var methodRegistry:Map<String, Array<MethodSignature>> = new Map(); |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
class Type | |
attr_accessor :name | |
attr_accessor :supertype | |
def initialize(name, supertype = nil) | |
@name = name | |
@supertype = supertype | |
end | |
def is?(type) |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Implemented in Terra | |
Transpiler from Logic to Terra | |
Using the Julia type system and type checker through the C API |
NewerOlder