Live data from Hacker News

Carp – A statically typed Lisp, without a GC, for real-time applications

github.com

11–20 of 139 posts

Re: Carp – A statically typed Lisp, without a GC, for real-time applications

#11

"Real-time" has a specific meaning in embedded and computing context. Does it mean that programs written in Carp have any guarantee on their order or duration of execution?

For "real-time", they would need a real-tune OS, datastructures with forward guarantees, non-blocking IO and so on. GC is like the least of the problems.

Re: Carp – A statically typed Lisp, without a GC, for real-time applications

#12
post #10

"Real-time" has a specific meaning in embedded and computing context. Does it mean that programs written in Carp have any guarantee on their order or duration of execution?

Unless it has a scheduler for a concurrency or threading framework, what other characteristics beyond memory management would be relevant? I guess maybe certain types of built-in data structures--you'd probably want a map/dictionary based on red-black or AVL trees rather than a hash table.

Any shared datastructure needs some kind of forward gurantess; e.g. being lock-free might not be sufficient.

Re: Carp – A statically typed Lisp, without a GC, for real-time applications

#13
https://invincivlepvt.com/" rel="nofollow">Graphic Designing https://invincivlepvt.com/" rel="nofollow">Digital Marketing https://invincivlepvt.com/" rel="nofollow">Digital Marketing Jalandhar https://invincivlepvt.com/" rel="nofollow">Graphic Designing Jalandhar https://invincivlepvt.com/" rel="nofollow">Digital Marketing Punjab https://invincivlepvt.com/" rel="nofollow">Website Designing Punjab https://invincivlepvt.com/" rel="nofollow">Website Development Punjab https://invincivlepvt.com/" rel="nofollow">Website Designing Jalandhar https://invincivlepvt.com/" rel="nofollow">Website Designing Jalandhar https://invincivlepvt.com/" rel="nofollow">Website Development Jalandhar https://invincivlepvt.com/" rel="nofollow">Website Designing https://invincivlepvt.com/" rel="nofollow">Website Development https://invincivlepvt.com/" rel="nofollow">Graphic Designing Agency jalandhar https://invincivlepvt.com/" rel="nofollow">Graphic Designing Company jalandhar https://invincivlepvt.com/" rel="nofollow">Digital marketing Company jalandhar https://invincivlepvt.com/" rel="nofollow">Digital marketing Agency jalandhar https://invincivlepvt.com/" rel="nofollow">Graphic Designing Agency Punjab https://invincivlepvt.com/" rel="nofollow">Graphic Designing Company Punjab https://invincivlepvt.com/" rel="nofollow">Website Designing company jalandhar https://invincivlepvt.com/" rel="nofollow">Website Designing company Punjab https://invincivlepvt.com/" rel="nofollow"> Website Development company Punjab https://invincivlepvt.com/" rel="nofollow">Website Development company Jalandhar

Re: Carp – A statically typed Lisp, without a GC, for real-time applications

#14
Best" rel="nofollow">https://invincivlepvt.com/website-designing-jalandhar-2/">Be... Web Designing Jalandhar Best" rel="nofollow">https://invincivlepvt.com/website-designing-jalandhar-2/">Be... Web Designer Jalandhar Best" rel="nofollow">https://invincivlepvt.com/website-designing-jalandhar-2/">Be... Website Designing Jalandhar Best" rel="nofollow">https://invincivlepvt.com/website-designing-jalandhar-2/">Be... Website Designer Jalandhar Best" rel="nofollow">https://invincivlepvt.com/website-designing-jalandhar-2/">Be... Website Designing Best" rel="nofollow">https://invincivlepvt.com/website-designing-jalandhar-2/">Be... Web Designing Best" rel="nofollow">https://invincivlepvt.com/website-designing-jalandhar-2/">Be... Website Designer Best" rel="nofollow">https://invincivlepvt.com/website-designing-jalandhar-2/">Be... Web Designer Best" rel="nofollow">https://invincivlepvt.com/website-designing-jalandhar-2/">Be... Web Designing agency jalandhar Best" rel="nofollow">https://invincivlepvt.com/website-designing-jalandhar-2/">Be... Website Designing agency jalandhar

Best" rel="nofollow">https://invincivlepvt.com/website-development-jalandhar/">Be... Web Development Jalandhar Best" rel="nofollow">https://invincivlepvt.com/website-development-jalandhar/">Be... Website Development Jalandhar Best" rel="nofollow">https://invincivlepvt.com/website-development-jalandhar/">Be... Web Development Best" rel="nofollow">https://invincivlepvt.com/website-development-jalandhar/">Be... Website Development Best" rel="nofollow">https://invincivlepvt.com/website-development-jalandhar/">Be... Web Development agency Jalandhar Best" rel="nofollow">https://invincivlepvt.com/website-development-jalandhar/">Be... Website Development agency Jalandhar Best" rel="nofollow">https://invincivlepvt.com/website-development-jalandhar/">Be... Website Developer Jalandhar Best" rel="nofollow">https://invincivlepvt.com/website-development-jalandhar/">Be... Web Developer Jalandhar Best" rel="nofollow">https://invincivlepvt.com/website-development-jalandhar/">Be... Website Developer Punjab Best" rel="nofollow">https://invincivlepvt.com/website-development-jalandhar/">Be... Web Developer Punjab Website" rel="nofollow">https://invincivlepvt.com/website-development-jalandhar/">We... Developer Web" rel="nofollow">https://invincivlepvt.com/website-development-jalandhar/">We... Developer

Re: Carp – A statically typed Lisp, without a GC, for real-time applications

#15
post #10

"Real-time" has a specific meaning in embedded and computing context. Does it mean that programs written in Carp have any guarantee on their order or duration of execution?

Unless it has a scheduler for a concurrency or threading framework, what other characteristics beyond memory management would be relevant? I guess maybe certain types of built-in data structures--you'd probably want a map/dictionary based on red-black or AVL trees rather than a hash table.

... or a hash table using RB/AVL trees rather than linked lists for hash buckets.

Re: Carp – A statically typed Lisp, without a GC, for real-time applications

#16
post #15
post #10

Earlier quoted context omitted.

Unless it has a scheduler for a concurrency or threading framework, what other characteristics beyond memory management would be relevant? I guess maybe certain types of built-in data structures--you'd probably want a map/dictionary based on red-black or AVL trees rather than a hash table.

... or a hash table using RB/AVL trees rather than linked lists for hash buckets.

the doubling of the sizes is an issue. Yet, I'd consider all single threaded datastructures a non-issue. The hard part is multithreading.

Flip note: java's hashmap uses red/black tree for nodes when there are too many collisions (and the keys are Comparable)

Re: Carp – A statically typed Lisp, without a GC, for real-time applications

#19
post #6
post #4

Earlier quoted context omitted.

I have not used carp, and janet only briefly. However, other than both using lisp syntax, there are very little similarities between the two. Janet has a garbage collector, no static types, no ownership tracking - the perf. is similar to lua, so is not be ideal for low-level/realtime systems, which carp is targeting.

> the perf. is similar to lua, so is not be ideal for low-level/realtime systems Lua runs on a bunch of low level systems, and not just for hobbyists (it's at the core of VxWorks, for example). Can you expand on why you think the language doesn't meet your performance criteria?

I think generally Lua is considered a scripting language - it is suited for gluing together performance critical components built in faster languages like C, C++ or Rust - the kinds of GC-less languages you can make a VM, game engine or OS in. So Carp is intended to join that list of fast GC-less languages that you make the fast foundation that others then call from scripts using languages like Lua.
Post reply on HN