jbzfn, to programming
@jbzfn@mastodon.social avatar

:blobwizard: Prolog, Erlang, Elixir, a side-by-side reference sheet | Hyperpolyglot

https://hyperpolyglot.org/logic

hrefna, to Java
@hrefna@hachyderm.io avatar

It's fascinating to me looking at beginning language guides and thinking "what does this say about the culture of the language"

When I was delving into it was (with affection) "here's hello world and here's a dense academic paper on implementing event systems in OCaml 5!"

guides used to be centered on the assumption that you were a web programmer looking to do applets, even long after that assumption died.

generally seems to assume a background in programming w/ a CLI.

tetrislife,

@hrefna I know syntax matters to people (and I haven't yet written #Erlang, only some #Prolog), but it is just a language. Just pattern-matching and immutability make it better than most by a long shot. So, I think the Erlang inventors got the language quite all right, and Elixir might just be a nicer way to write OTP style.

ovid, to javascript
@ovid@fosstodon.org avatar

I started programming in 1982. Though I'm known as a developer, I tried to remember every other languages I've programmed in.

, #C, 6809 Assembler, , VBScript (and its many variants), , , , , , , Easytrieve, and probably a few others.

I wish I had gotten a job in Prolog, primarily because I loved what I could create with it. I don't love programming; I love creating.

What are you languages?

abucci, to ProgrammingLanguages
@abucci@buc.ci avatar

A weird thing about being 50 is that there are programming languages that I've used regularly for longer than some of the software developers I work with have been alive. I first wrote BASIC code in the 1980s. The first time I wrote an expression evaluator--a fairly standard programming puzzle or homework--was in 1990. I wrote it in Pascal for an undergraduate homework assignment. I first wrote perl in the early 1990s, when it was still perl 4.036 (5.38.2 now). I first wrote java in 1995-ish, when it was still java 1.0 (1.21 now). I first wrote scala, which I still use for most things today, in 2013-ish, when it was still scala 2.8 (3.4.0 now). At various times I've been "fluent" in 8086 assembly, BASIC, C, Pascal, perl, python, java, scala; and passable in LISP/Scheme, Prolog, old school Mathematica, (early days) Objective C, matlab/octave, and R. I've written a few lines of Fortran and more than a few lines of COBOL that I ran in a production system once. I could probably write a bit of Haskell if pressed but for some reason I really dislike its syntax so I've never been enthusiastic about learning it well. I've experimented with Clean, Flix, Curry, Unison, Factor, and Joy and learned bits and pieces of each of those. I'm trying to decide whether I should try learning Idris, Agda, and/or Lean. I'm pretty sure I'm forgetting a few languages. Bit of 6502 assembly long ago. Bit of Unix/Linux shell scripting languages (old enough to have lived and breathed tcsh before switching to bash; I use fish now mostly).

When I say passable: in graduate school I wrote a Prolog interpreter in java (including parsing source code or REPL input), within which I could run the classic examples like append or (very simple) symbolic differentiation/integration. As an undergraduate I wrote a Mathematica program to solve the word recognition problem for context-free formal languages. But I'd need some study time to be able to write these languages again.

I don't know what the hell prompted me to reminisce about programming languages. I hope it doesn't come off as a humblebrag but rather like old guy spinning yarns. I think I've been through so many because I'm never quite happy with any one of them and because I've had a varied career that started when I was pretty young.

I guess I'm also half hoping to find people on here who have similar interests so I'm going to riddle this post with hashtags:

#C #R

rwxrwxrwx, to math
@rwxrwxrwx@mathstodon.xyz avatar

From the introduction of [1]:

"Our principal ambition for this paper is to make invitations to pure mathematicians to consider deploying constraint logic programming systems to assist in research, and to enthusiasts of the logic programming paradigm to consider applying their skills to problems in Lie theory. To this end we narrate a recent adventure searching for new simple Lie algebras over the field F2 = GF(2) of two elements in dialogue with the Prolog programming environment"

[1] D. Cushing, G. Stagg, and D. Stewart, “A Prolog assisted search for new simple Lie algebras,” Math. Comp., vol. 93, no. 347, pp. 1473–1495, May 2024, https://www.ams.org/journals/mcom/2024-93-347/S0025-5718-2023-03889-3/home.html

#prolog #math

afilina, (edited ) to random
@afilina@phpc.social avatar

Let's try something fun. When coding, what part do you start with? If other, please specify in replies.

aleks,
@aleks@hachyderm.io avatar

@afilina Yes, absolutely. Like Lego. Just need to make it all fit together, and the compiler tells me what I'm doing wrong.

Which also means that I'm hopeless in dynamic languages. The only ones I've been able to write any non-trivial code in are #lisp like #emacs Lisp, #racket and also #prolog. But I do it the same way there: I write the signatures first, and keep types in my head, or in docstrings right above the functions.

rzeta0, to ai
@rzeta0@mastodon.social avatar

If you struggled with the traditional #Prolog textbooks .. this short course was developed just for you.

✅ Develop understanding through hands-on bite-size examples.

✅ Example code is minimal to avoid distraction.

✅ Talk through how new ideas work, step-by-step.

✅ Avoid terminology and jargon if it is likely to hinder more than help.

YouTube: https://www.youtube.com/@prologbyexample/videos

Web: https://prologbyexample.blogspot.com/p/toc.html

GitHub: https://github.com/prologbyexample/code

Book: https://www.amazon.com/dp/B0BTQ7P69H/

#AI #logic #metaprogramming

eibriel, to retrocomputing
@eibriel@sigmoid.social avatar
teledyn, to emacs
@teledyn@mstdn.ca avatar

It's always something, even when doing nothing! For reasons likely unknown until holiday chaos settles, no longer saves, kicking up

Debugger entered--Lisp error: (wrong-type-argument integer-or-marker-p nil)
org-roam-link-replace-at-point()

Messages shows:

Wrote ./daily/2023-12-24.org
org-roam-db-map-links: Wrong type argument: integer-or-marker-p, nil

tried org-roam-db-sync and there are now several dozen files kicking up that error (should I clear the db first?)

teledyn,
@teledyn@mstdn.ca avatar

@choanmusic

As it turned out, reverting to distro was a simple matter of deleting the site-lisp/org and restarting, and magically is working again, so that's a plus. Lilypond will just need to wait.

I spent years coding in , so my general solution to problematic things is "revert back to before your last decision, and make a different one" 🤣

mxp, to retrocomputing
@mxp@mastodon.acm.org avatar

Maybe Tesla should have called Turboman! #Prolog #retrocomputing

MegaMichelle, to programming
@MegaMichelle@a2mi.social avatar

I've been reading about #Erlang lately. I'm a little disappointed. Erlang seems real good and powerful, but it's not nearly as weird as I thought. I had somehow gotten the impression that it was #Prolog-level weird, but it's only #Lisp-level weird, which is not actually all that weird these days, since everybody else added some functional elements to their languages.

So I was ready to have my mind blown, but instead I only got it expanded.

rml, to Java
@rml@functional.cafe avatar

#Algol, #C, #Java et al: deontology
#Scheme, #Lisp, etc: metaontology
#Haskell, #ML, etc: ontology

#Prolog, #Minikanren: phenomenology

leobm, to Lisp German
@leobm@norden.social avatar

Lisprolog - Interpreter (compiler) for a simple #Lisp, written in #Prolog

https://www.metalevel.at/lisprolog/

anarchopunk_girl, to ArtificialIntelligence

Does anyone on here know how to make a faster? I'm writing a language ala in Rust and it's already pretty slow (takes 1.11 seconds to find 20 answers) at even four rules deep and a database with 84 facts. Might it be string comparisons for variable names and such? If so, how would I accelerate that?

timfinin, to ai

This free book is part of 2022's Year of Prolog, which celebrated the 50th anniversary of the first logic programming language. Its 31 chapters cover Prolog's state of the art and future. Free to download as pdf or epub. #prolog #ai #logic #prolog
https://link.springer.com/book/10.1007/978-3-031-35254-6

nil, to Lisp
@nil@functional.cafe avatar

In a different shard of the multiverse SaaS means #Smalltalk as a Service. And it’s awesome. Instant deployment of code to all client images. Replaces what we call the database, the internet and the browser. Obviously has a flavor of #lisp layered on top and #prolog upon that. I want to live in that shard. Also in this dimension smalltalk is predicated upon a typed pi-calculus not classes and inheritance. Ok that’s my fever dream.

ology, to music
@ology@fosstodon.org avatar
rml, to random
@rml@functional.cafe avatar

wow, the #Chez #Scheme implementation of the #Shen #Prolog logic programming system[1] performs 4x faster than the #SBCL #Lisp implementation[2].

It seems like Mark Tarver, the author of Shen who reported these results, authored both implementations.

[1] https://shen-language.github.io/
[2] https://groups.google.com/g/chez-scheme/c/vTyTn_yh9vg/m/D8t-jooBGAAJ

lorddimwit, to programming
@lorddimwit@mastodon.social avatar

My 18yo nephew asked me what my favorite is and I don’t actually know the answer.

I use #C and for applications. I write for data munging and scripts and small apps. I’ve written many thousands of lines of each. I sponsor .

But is one of them my favorite?

I think my favorite would probably be something like or or or or or or or or or or or or or…

rml, to random
@rml@functional.cafe avatar

This video on term rewriting systems in #prolog is worth watching to admire the vlogger's #emacs configuration alone, that the content is good is the cherry on top!

https://www.youtube.com/watch?v=b2Px7cu2a68

chemoelectric, to random
@chemoelectric@masto.ai avatar

Hmm. #Prolog and #Mercury require variable names start with uppercase. Otherwise they would be mistaken for predicates (or functions).

Camel case and snake case - Rosetta Code https://rosettacode.org/wiki/Camel_case_and_snake_case

rzeta0, to ai
@rzeta0@mastodon.social avatar

⭐️ FREE - for a limited period only !

.. don't miss out saving ~ $10 .. offer is open on all amazon stores
https://www.amazon.com/dp/B0BTQ7P69H/

#prolog #learntocode #AI #computerscience #university

hrefna, to random
@hrefna@hachyderm.io avatar

I wish that there were more appreciation for (and ) in our industry.

Like I'm really pleased to see languages like and developments along those lines, but I get so frustrated by the continued reinventing C or BASIC syntaxes for what are fundamentally declarative problems.

boilingsteam, to ai
@boilingsteam@mastodon.cloud avatar
gvrooyen, to random
@gvrooyen@c.im avatar

Currently upping my #prolog -fu as a potential solution for a client who requires a scriptable rule engine. What a pleasure!

  • All
  • Subscribed
  • Moderated
  • Favorites
  • megavids
  • thenastyranch
  • rosin
  • GTA5RPClips
  • osvaldo12
  • love
  • Youngstown
  • slotface
  • khanakhh
  • everett
  • kavyap
  • mdbf
  • DreamBathrooms
  • ngwrru68w68
  • provamag3
  • magazineikmin
  • InstantRegret
  • normalnudes
  • tacticalgear
  • cubers
  • ethstaker
  • modclub
  • cisconetworking
  • Durango
  • anitta
  • Leos
  • tester
  • JUstTest
  • All magazines